Top Fields Constructors Methods
org.hibernate.query.sqm.tree.expression

public Class SqmWindow

extends AbstractSqmNode
implements JpaWindow, SqmVisitableNode
Class Inheritance
All Implemented Interfaces
org.hibernate.query.sqm.tree.SqmVisitableNode, org.hibernate.query.sqm.tree.SqmNode, org.hibernate.query.criteria.JpaCriteriaNode, java.io.Serializable, org.hibernate.query.criteria.JpaWindow
Annotations
@Incubating
Imports
java.util.ArrayList, .List, org.hibernate.Incubating, org.hibernate.query.criteria.JpaWindow, .JpaWindowFrame, org.hibernate.query.sqm.FrameExclusion, .FrameKind, .FrameMode, .NodeBuilder, .SemanticQueryWalker, org.hibernate.query.sqm.tree.AbstractSqmNode, .SqmCopyContext, .SqmVisitableNode, org.hibernate.query.sqm.tree.select.SqmSortSpecification, jakarta.persistence.criteria.Expression, .Order

Author
Marco Belladelli

Field Summary

Modifier and TypeField and Description
private SqmExpression<?>
private FrameKind
private FrameExclusion
private FrameMode
private final List<SqmSortSpecification>
private final List<SqmExpression<?>>
private SqmExpression<?>
private FrameKind

Constructor Summary

AccessConstructor and Description
public
SqmWindow(NodeBuilder nodeBuilder)

public
SqmWindow(NodeBuilder nodeBuilder, List<SqmExpression<?>> partitions, List<SqmSortSpecification> orderList, FrameMode mode, FrameKind startKind, SqmExpression<?> startExpression, FrameKind endKind, SqmExpression<?> endExpression, FrameExclusion exclusion)

Method Summary

Modifier and TypeMethod and Description
public <X> X
accept(SemanticQueryWalker<X> walker)

Implements org.hibernate.query.sqm.tree.SqmVisitableNode.accept.

Accept the walker per visitation
public void
public SqmWindow
public JpaWindow
frameExclude(FrameExclusion
the frame exclusion
frameExclusion
)

Implements org.hibernate.query.criteria.JpaWindow.frameExclude.

Set a FrameExclusion for this window's frame.
public JpaWindow
frameGroups(JpaWindowFrame
the start frame
startFrame
,
JpaWindowFrame
the optional end frame
endFrame
)

Implements org.hibernate.query.criteria.JpaWindow.frameGroups.

Add a GROUPS frame clause to the window and define start and end JpaWindowFrame specifications.
public JpaWindow
frameRange(JpaWindowFrame
the start frame
startFrame
,
JpaWindowFrame
the optional end frame
endFrame
)

Implements org.hibernate.query.criteria.JpaWindow.frameRange.

Add a RANGE frame clause to the window and define start and end JpaWindowFrame specifications.
public JpaWindow
frameRows(JpaWindowFrame
the start frame
startFrame
,
JpaWindowFrame
the optional end frame
endFrame
)

Implements org.hibernate.query.criteria.JpaWindow.frameRows.

Add a ROWS frame clause to the window and define start and end JpaWindowFrame specifications.
public SqmExpression<?>
public FrameKind
public FrameExclusion
public FrameMode
public List<SqmSortSpecification>
public List<SqmExpression<?>>
public SqmExpression<?>
public FrameKind
public JpaWindow
orderBy(Order...
the order by expressions
orders
)

Implements org.hibernate.query.criteria.JpaWindow.orderBy.

Add order by expressions to the window.
public JpaWindow
partitionBy(Expression<?>...
the partition by expressions
expressions
)

Implements org.hibernate.query.criteria.JpaWindow.partitionBy.

Add partition by expressions to the window.
private static void
private SqmWindow
setFrames(FrameMode frameMode, JpaWindowFrame startFrame, JpaWindowFrame endFrame)

Inherited from org.hibernate.query.sqm.tree.AbstractSqmNode:
nodeBuilder

Field Detail

endExpressionback to summary
private SqmExpression<?> endExpression
endKindback to summary
private FrameKind endKind
exclusionback to summary
private FrameExclusion exclusion
modeback to summary
private FrameMode mode
orderListback to summary
private final List<SqmSortSpecification> orderList
partitionsback to summary
private final List<SqmExpression<?>> partitions
startExpressionback to summary
private SqmExpression<?> startExpression
startKindback to summary
private FrameKind startKind

Constructor Detail

SqmWindowback to summary
public SqmWindow(NodeBuilder nodeBuilder)
SqmWindowback to summary
public SqmWindow(NodeBuilder nodeBuilder, List<SqmExpression<?>> partitions, List<SqmSortSpecification> orderList, FrameMode mode, FrameKind startKind, SqmExpression<?> startExpression, FrameKind endKind, SqmExpression<?> endExpression, FrameExclusion exclusion)

Method Detail

acceptback to summary
public <X> X accept(SemanticQueryWalker<X> walker)

Implements org.hibernate.query.sqm.tree.SqmVisitableNode.accept.

Doc from org.hibernate.query.sqm.tree.SqmVisitableNode.accept.

Accept the walker per visitation

Annotations
@Override
appendHqlStringback to summary
public void appendHqlString(StringBuilder sb)

Implements org.hibernate.query.sqm.tree.SqmVisitableNode.appendHqlString.

Annotations
@Override
copyback to summary
public SqmWindow copy(SqmCopyContext context)

Implements org.hibernate.query.sqm.tree.SqmNode.copy.

frameExcludeback to summary
public JpaWindow frameExclude(FrameExclusion frameExclusion)

Implements org.hibernate.query.criteria.JpaWindow.frameExclude.

Doc from org.hibernate.query.criteria.JpaWindow.frameExclude.

Set a FrameExclusion for this window's frame.

Parameters
frameExclusion:FrameExclusion

the frame exclusion

Returns:JpaWindow

the modified window

Annotations
@Override
frameGroupsback to summary
public JpaWindow frameGroups(JpaWindowFrame startFrame, JpaWindowFrame endFrame)

Implements org.hibernate.query.criteria.JpaWindow.frameGroups.

Doc from org.hibernate.query.criteria.JpaWindow.frameGroups.

Add a GROUPS frame clause to the window and define start and end JpaWindowFrame specifications.

Parameters
startFrame:JpaWindowFrame

the start frame

endFrame:JpaWindowFrame

the optional end frame

Returns:JpaWindow

the modified window

Annotations
@Override
frameRangeback to summary
public JpaWindow frameRange(JpaWindowFrame startFrame, JpaWindowFrame endFrame)

Implements org.hibernate.query.criteria.JpaWindow.frameRange.

Doc from org.hibernate.query.criteria.JpaWindow.frameRange.

Add a RANGE frame clause to the window and define start and end JpaWindowFrame specifications.

Parameters
startFrame:JpaWindowFrame

the start frame

endFrame:JpaWindowFrame

the optional end frame

Returns:JpaWindow

the modified window

Annotations
@Override
frameRowsback to summary
public JpaWindow frameRows(JpaWindowFrame startFrame, JpaWindowFrame endFrame)

Implements org.hibernate.query.criteria.JpaWindow.frameRows.

Doc from org.hibernate.query.criteria.JpaWindow.frameRows.

Add a ROWS frame clause to the window and define start and end JpaWindowFrame specifications.

Parameters
startFrame:JpaWindowFrame

the start frame

endFrame:JpaWindowFrame

the optional end frame

Returns:JpaWindow

the modified window

Annotations
@Override
getEndExpressionback to summary
public SqmExpression<?> getEndExpression()
getEndKindback to summary
public FrameKind getEndKind()
getExclusionback to summary
public FrameExclusion getExclusion()
getModeback to summary
public FrameMode getMode()
getOrderListback to summary
public List<SqmSortSpecification> getOrderList()
getPartitionsback to summary
public List<SqmExpression<?>> getPartitions()
getStartExpressionback to summary
public SqmExpression<?> getStartExpression()
getStartKindback to summary
public FrameKind getStartKind()
orderByback to summary
public JpaWindow orderBy(Order... orders)

Implements org.hibernate.query.criteria.JpaWindow.orderBy.

Doc from org.hibernate.query.criteria.JpaWindow.orderBy.

Add order by expressions to the window.

Parameters
orders:Order[]

the order by expressions

Returns:JpaWindow

the modified window

Annotations
@Override
partitionByback to summary
public JpaWindow partitionBy(Expression<?>... expressions)

Implements org.hibernate.query.criteria.JpaWindow.partitionBy.

Doc from org.hibernate.query.criteria.JpaWindow.partitionBy.

Add partition by expressions to the window.

Parameters
expressions:Expression<?>[]

the partition by expressions

Returns:JpaWindow

the modified window

Annotations
@Override
renderFrameKindback to summary
private static void renderFrameKind(StringBuilder sb, FrameKind kind, SqmExpression<?> expression)
setFramesback to summary
private SqmWindow setFrames(FrameMode frameMode, JpaWindowFrame startFrame, JpaWindowFrame endFrame)