|
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.BetweenExpression
public final class BetweenExpression
Used in conditional expression to determine whether the result of an expression falls within an inclusive range of values. Numeric, string and date expression can be evaluated in this way.
between_expression ::= arithmetic_expression [NOT] BETWEEN arithmetic_expression AND arithmetic_expression |
string_expression [NOT] BETWEEN string_expression AND string_expression |
datetime_expression [NOT] BETWEEN datetime_expression AND datetime_expression
Field Summary | |
---|---|
private AbstractExpression |
expression The Expression to be tested for an inclusive range of values. |
private boolean |
hasAnd Determines whether the identifier AND was parsed. |
private boolean |
hasNot Determines whether the identifier NOT was parsed. |
private boolean |
hasSpaceAfterAnd Determines whether a whitespace was found after AND. |
private boolean |
hasSpaceAfterBetween Determines whether a whitespace was found after BETWEEN. |
private boolean |
hasSpaceAfterLowerBound Determines whether a whitespace was found after the lower bound expression. |
private AbstractExpression |
lowerBoundExpression The Expression representing the lower bound expression. |
private AbstractExpression |
upperBoundExpression The Expression representing the upper bound expression. |
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 | |
---|---|
BetweenExpression(AbstractExpression parent, AbstractExpression expression) Creates a new BetweenExpression . |
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 representing the expression to be tested for a range of values. |
java.lang.String |
getIdentifier() Returns the identifier for this expression that may include NOT if it was parsed. |
Expression |
getLowerBoundExpression() Returns the Expression representing the lower bound expression. |
JPQLQueryBNF |
getQueryBNF() Returns the BNF of this Expression . |
Expression |
getUpperBoundExpression() Returns the Expression representing the upper bound expression. |
boolean |
hasAnd() Determines whether the identifier AND was part of the query. |
boolean |
hasExpression() Determines whether the expression before the identifier was parsed. |
boolean |
hasLowerBoundExpression() Determines whether the lower bound expression was parsed. |
boolean |
hasNot() Determines whether the identifier NOT was part of the query. |
boolean |
hasSpaceAfterAnd() Determines whether a whitespace was found after AND. |
boolean |
hasSpaceAfterBetween() Determines whether a whitespace was found after BETWEEN. |
boolean |
hasSpaceAfterLowerBound() Determines whether a whitespace was found after the lower bound expression. |
boolean |
hasUpperBoundExpression() Determines whether the upper bound expression was parsed. |
(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
to be tested for an inclusive range of values.private boolean hasAnd
private boolean hasNot
private boolean hasSpaceAfterAnd
private boolean hasSpaceAfterBetween
private boolean hasSpaceAfterLowerBound
private AbstractExpression lowerBoundExpression
Expression
representing the lower bound expression.private AbstractExpression upperBoundExpression
Expression
representing the upper bound expression.Constructor Detail |
---|
BetweenExpression(AbstractExpression parent, AbstractExpression expression)
BetweenExpression
.
parent
- The parent of this expressionexpression
- The Expression
that is tested to be inclusive in a range of valuesMethod 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
representing the expression to be tested for a range of values.public java.lang.String getIdentifier()
public Expression getLowerBoundExpression()
Expression
representing the lower bound expression.public JPQLQueryBNF getQueryBNF()
Expression
.getQueryBNF
in class AbstractExpression
JPQLQueryBNF
, which represents the grammar of this Expression
public Expression getUpperBoundExpression()
Expression
representing the upper bound expression.public boolean hasAnd()
true
if the identifier AND was parsed; false
otherwisepublic boolean hasExpression()
true
if the query has the expression before BETWEEN; false
otherwisepublic boolean hasLowerBoundExpression()
true
if the query has the lower bound expression; false
otherwisepublic boolean hasNot()
true
if the identifier NOT was parsed; false
otherwisepublic boolean hasSpaceAfterAnd()
true
if there was a whitespace after AND; false
otherwisepublic boolean hasSpaceAfterBetween()
true
if there was a whitespace after BETWEEN; false
otherwisepublic boolean hasSpaceAfterLowerBound()
true
if there was a whitespace after the lower bound expression; false
otherwisepublic boolean hasUpperBoundExpression()
true
if the query has the upper bound expression; 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 |