|
Oracle Fusion Middleware Java API Reference for Oracle TopLink 11g Release 1 (11.1.1) E28847-01 |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object
org.eclipse.persistence.jpa.internal.jpql.parser.StringExpression
org.eclipse.persistence.jpa.internal.jpql.parser.AbstractExpression
org.eclipse.persistence.jpa.internal.jpql.parser.OrderByItem
public final class OrderByItem
An orderby_item must be one of the following:
state_field_path_expression
that evaluates to an orderable state field of an entity or embeddable class abstract schema type designated in the SELECT clause by one of the following:
state_field_path_expression
that evaluates to the same state field of the same entity or embeddable abstract schema type as a state_field_path_expression
in the SELECT clauseresult_variable
that refers to an orderable item in the SELECT clause for which the same result_variable
has been specified. This may be the result of an aggregate_expression, a scalar_expression
, or a state_field_path_expression
in the SELECT clause.The keyword ASC specifies that ascending ordering be used for the associated orderby_item; the keyword DESC specifies that descending ordering be used. Ascending ordering is the default.
JPA 1.0:
orderby_item ::= state_field_path_expression [ ASC | DESC ]
JPA 2.0
orderby_item ::= state_field_path_expression | result_variable [ ASC | DESC ]
Nested Class Summary | |
---|---|
static class |
OrderByItem.Ordering This enumeration lists all the possible choices for ordering an item. |
Field Summary | |
---|---|
private AbstractExpression |
expression The Expression representing the order by expression. |
private boolean |
hasSpaceAfterExpression Determines whether a whitespace was parsed after the order by expression. |
private OrderByItem.Ordering |
ordering The keyword ASC specifies that ascending ordering be used; the keyword DESC specifies that descending ordering be used. |
Fields inherited from class org.eclipse.persistence.jpa.internal.jpql.parser.AbstractExpression |
---|
COMMA, DOT, DOUBLE_QUOTE, LEFT_CURLY_BRACKET, LEFT_PARENTHESIS, NOT_DEFINED, RIGHT_CURLY_BRACKET, RIGHT_PARENTHESIS, SINGLE_QUOTE, SPACE, UNDERSCORE |
Constructor Summary | |
---|---|
OrderByItem(AbstractExpression parent) Creates a new OrderByItem . |
Method Summary | |
---|---|
void |
accept(ExpressionVisitor visitor) Visits this Expression by the given visitor . |
void |
acceptChildren(ExpressionVisitor visitor) Visits the children of this Expression . |
(package private) void |
addChildrenTo(java.util.Collection<Expression> children) Adds the children of this Expression to the given collection. |
(package private) void |
addOrderedChildrenTo(java.util.List<StringExpression> children) Adds the StringExpressions representing this Expression . |
Expression |
getExpression() Returns the Expression that represents the order by expression. |
OrderByItem.Ordering |
getOrdering() Returns the enum constant representing the ordering type. |
JPQLQueryBNF |
getQueryBNF() Returns the BNF of this Expression . |
boolean |
hasExpression() Determines whether the order by expression was parsed. |
boolean |
hasSpaceAfterExpression() Determines whether a whitespace was parsed after the order by expression. |
boolean |
isAscending() Determines whether the ordering was specified as being ascendant. |
boolean |
isDefault() Determines whether the ordering was not specified. |
boolean |
isDescending() Determines whether the ordering was specified as being descendant. |
(package private) boolean |
isParsingComplete(WordParser wordParser, java.lang.String word, Expression expression) Determines whether the parsing is complete based on what is left in the given text. |
(package private) void |
parse(WordParser wordParser, boolean tolerant) Parses the query by starting at the current position, which is part of the given WordParser . |
(package private) void |
toParsedText(java.lang.StringBuilder writer, boolean includeVirtual) Generates a string representation of this Expression . |
Methods inherited from class org.eclipse.persistence.jpa.internal.jpql.parser.AbstractExpression |
---|
buildExpressionFromFallingBack, buildNullExpression, buildStringExpression, buildStringExpression, buildUnknownExpression, children, expressionFactory, expressionFactoryForIdentifier, findQueryBNF, getChildren, getJPAVersion, getParent, getRoot, getText, handleAggregate, identifierRole, identifiers, identifiers, identifierVersion, isAncestor, isIdentifier, isNull, isTolerant, isUnknown, isVirtual, orderedChildren, parse, parseSingleExpression, populatePosition, queryBNF, readdLeadingSpaces, rebuildActualText, rebuildParsedText, setParent, setText, shouldParseWithFactoryFirst, shouldSkipLiteral, toActualText, toParsedText, toString |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
private AbstractExpression expression
Expression
representing the order by expression.private boolean hasSpaceAfterExpression
private OrderByItem.Ordering ordering
Constructor Detail |
---|
OrderByItem(AbstractExpression parent)
OrderByItem
.
parent
- The parent of this expressionMethod Detail |
---|
public void accept(ExpressionVisitor visitor)
Expression
by the given visitor
.visitor
- The visitor
to visit this objectpublic void acceptChildren(ExpressionVisitor visitor)
Expression
. This method can be used to optimize traversing the children since a new list is not created every time Expression.children()
or Expression.getChildren()
is called.
This does not traverse the Expression
sub-hierarchy, use an subclass of AbstractTraverseChildrenVisitor
in order to traverse the entire sub-hierarchy.
visitor
- The visitor
to visit the children of this object.void addChildrenTo(java.util.Collection<Expression> children)
Expression
to the given collection.addChildrenTo
in class AbstractExpression
children
- The collection used to store the childrenvoid addOrderedChildrenTo(java.util.List<StringExpression> children)
StringExpressions
representing this Expression
.addOrderedChildrenTo
in class AbstractExpression
children
- The list used to store the string representation of this Expression
public Expression getExpression()
Expression
that represents the order by expression.public OrderByItem.Ordering getOrdering()
OrderByItem.Ordering.DEFAULT
is returnedpublic JPQLQueryBNF getQueryBNF()
Expression
.getQueryBNF
in class AbstractExpression
JPQLQueryBNF
, which represents the grammar of this Expression
public boolean hasExpression()
true
if the order by expression was parsed; false
otherwisepublic boolean hasSpaceAfterExpression()
true
if there was a whitespace after the order by expression; false
otherwisepublic boolean isAscending()
true
if ASC was parsed; false
otherwisepublic boolean isDefault()
true
if no ordering was parsed; false
otherwisepublic boolean isDescending()
true
if DESC was parsed; false
otherwiseboolean isParsingComplete(WordParser wordParser, java.lang.String word, Expression expression)
isParsingComplete
in class AbstractExpression
wordParser
- The text to parse based on the current position of the cursorword
- The word that was retrieved from the given text, which is the first word in the textexpression
- The Expression
that has already been parsedtrue
if the text no longer can't be parsed by the current expression; false
if more can be parsedvoid parse(WordParser wordParser, boolean tolerant)
WordParser
.parse
in class AbstractExpression
wordParser
- The text to parse based on the current position of the cursortolerant
- Determines whether the parsing system should be tolerant, meaning if it should try to parse invalid or incomplete queriesvoid toParsedText(java.lang.StringBuilder writer, boolean includeVirtual)
Expression
.toParsedText
in class AbstractExpression
writer
- The buffer used to append this Expression
's string representationincludeVirtual
- Determines whether to include any characters that are considered virtual, i.e. that was parsed when the query is incomplete and is needed for functionality like content assist
|
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |