|
EclipseLink 2.4.2, build 'v20130514-5956486' API Reference | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.eclipse.persistence.jpa.jpql.model.query.AbstractStateObject
org.eclipse.persistence.jpa.jpql.model.query.BetweenExpressionStateObject
public class BetweenExpressionStateObject
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
BetweenExpression
Field Summary | |
---|---|
static java.lang.String |
LOWER_STATE_OBJECT_PROPERTY
Notifies the StateObject representing the lower bound expression has changed. |
static java.lang.String |
NOT_PROPERTY
Notifies the visibility of the NOT identifier has changed. |
static java.lang.String |
STATE_OBJECT_PROPERTY
Notifies the state object property has changed. |
static java.lang.String |
UPPER_STATE_OBJECT_PROPERTY
Notifies the StateObject representing the upper bound expression has changed. |
Constructor Summary | |
---|---|
BetweenExpressionStateObject(StateObject parent)
Creates a new BetweenExpressionStateObject . |
|
BetweenExpressionStateObject(StateObject parent,
StateObject stateObject,
boolean not,
StateObject lowerBound,
StateObject upperBound)
Creates a new BetweenExpressionStateObject . |
|
BetweenExpressionStateObject(StateObject parent,
StateObject stateObject,
StateObject lowerBound,
StateObject upperBound)
Creates a new BetweenExpressionStateObject . |
|
BetweenExpressionStateObject(StateObject parent,
java.lang.String jpqlFragment,
boolean not,
java.lang.String lowerBoundJpqlFragment,
java.lang.String upperBoundJpqlFragment)
Creates a new BetweenExpressionStateObject . |
|
BetweenExpressionStateObject(StateObject parent,
java.lang.String jpqlFragment,
java.lang.String lowerBoundJpqlFragment,
java.lang.String upperBoundJpqlFragment)
Creates a new BetweenExpressionStateObject . |
Method Summary | |
---|---|
void |
accept(StateObjectVisitor visitor)
Visits this StateObject by the given visitor . |
protected void |
addChildren(java.util.List<StateObject> children)
Adds the children of this StateObject to the given list. |
BetweenExpressionStateObject |
addNot()
Makes sure the NOT identifier is specified. |
BetweenExpression |
getExpression()
Returns the actual parsed object if this StateObject representation of the JPQL query
was created by parsing an existing JPQL query. |
StateObject |
getLowerBound()
Returns the StateObject representing the lower bound of the range. |
StateObject |
getStateObject()
Returns the StateObject representing the expression to determine if its result falls
within the lower and upper bounds. |
StateObject |
getUpperBound()
Returns the StateObject representing the upper bound of the range. |
boolean |
hasLowerBound()
Determines whether the StateObject representing the lower bound is defined or not. |
boolean |
hasNot()
Determines whether the NOT identifier is used or not. |
boolean |
hasStateObject()
Determines whether the StateObject representing the expression to determine if its
result falls within the lower and upper bounds has been defined or not. |
boolean |
hasUpperBound()
Determines whether the StateObject representing the upper bound is defined or not. |
boolean |
isEquivalent(StateObject stateObject)
Determines whether the given StateObject is equivalent to this one, i.e. the
information of both StateObject is the same. |
void |
parse(java.lang.String jpqlFragment)
Parses the given JPQL fragment, which will represent the expression to compare its result to the lower and upper bounds. |
void |
parseLowerBound(java.lang.String jpqlFragment)
Parses the given JPQL fragment, which will represent the lower bound of the range. |
void |
parseUpperBound(java.lang.String jpqlFragment)
Parses the given JPQL fragment, which will represent the upper bound of the range. |
void |
removeNot()
Makes sure the NOT identifier is not specified. |
void |
setExpression(BetweenExpression expression)
Keeps a reference of the parsed object object, which should only be
done when this object is instantiated during the conversion of a parsed JPQL query into
StateObjects . |
void |
setLowerBound(StateObject lowerBound)
Sets the StateObject representing the lower bound of the range. |
void |
setNot(boolean not)
Sets whether the NOT identifier should be part of the expression or not. |
void |
setStateObject(StateObject stateObject)
Sets the StateObject representing the expression to determine if its result falls
within the lower and upper bounds. |
void |
setUpperBound(StateObject upperBound)
Sets the StateObject representing the upper bound of the range. |
void |
toggleNot()
Changes the visibility state of the NOT identifier. |
protected void |
toTextInternal(java.lang.Appendable writer)
Prints out a string representation of this StateObject , which should not be used to
define a true string representation of a JPQL query but should be used for
debugging purposes. |
Methods inherited from class org.eclipse.persistence.jpa.jpql.model.query.AbstractStateObject |
---|
acceptUnknownVisitor, acceptUnknownVisitor, addProblems, addPropertyChangeListener, areEquivalent, buildProblem, buildProblem, buildStateObject, buildStateObjects, checkParent, children, decorate, equals, findIdentificationVariable, firePropertyChanged, getChangeSupport, getDeclaration, getDecorator, getGrammar, getManagedTypeProvider, getParent, getQueryBuilder, getRoot, getType, getType, getTypeHelper, getTypeRepository, hashCode, initialize, isDecorated, parent, parent, parent, removePropertyChangeListener, setExpression, setParent, toString, toString, toStringInternal, toStringItems, toText |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String LOWER_STATE_OBJECT_PROPERTY
StateObject
representing the lower bound expression has changed.
public static final java.lang.String NOT_PROPERTY
NOT
identifier has changed.
public static final java.lang.String STATE_OBJECT_PROPERTY
public static final java.lang.String UPPER_STATE_OBJECT_PROPERTY
StateObject
representing the upper bound expression has changed.
Constructor Detail |
---|
public BetweenExpressionStateObject(StateObject parent)
BetweenExpressionStateObject
.
parent
- The parent of this state object, which cannot be null
java.lang.NullPointerException
- The given parent cannot be null
public BetweenExpressionStateObject(StateObject parent, StateObject stateObject, boolean not, StateObject lowerBound, StateObject upperBound)
BetweenExpressionStateObject
.
parent
- The parent of this state object, which cannot be null
stateObject
- The StateObject
representing the expression to compare its result
to the lower and upper boundsnot
- Determines whether the NOT
identifier is part of the expression
or notlowerBound
- The StateObject
representing the lower bound expressionupperBound
- The StateObject
representing the upper bound expression
java.lang.NullPointerException
- The given parent cannot be null
public BetweenExpressionStateObject(StateObject parent, StateObject stateObject, StateObject lowerBound, StateObject upperBound)
BetweenExpressionStateObject
.
parent
- The parent of this state object, which cannot be null
stateObject
- The StateObject
representing the expression to compare its result
to the lower and upper boundslowerBound
- The StateObject
representing the lower bound expressionupperBound
- The StateObject
representing the upper bound expression
java.lang.NullPointerException
- The given parent cannot be null
public BetweenExpressionStateObject(StateObject parent, java.lang.String jpqlFragment, boolean not, java.lang.String lowerBoundJpqlFragment, java.lang.String upperBoundJpqlFragment)
BetweenExpressionStateObject
.
parent
- The parent of this state object, which cannot be null
jpqlFragment
- The JPQL fragment representing the expression to compare its result to the
lower and upper bounds, the fragment will be parsed and converted into a StateObject
not
- Determines whether the NOT
identifier is part of the expression
or notlowerBoundJpqlFragment
- The JPQL fragment representing the lower bound of the range, the
fragment will be parsed and converted into a StateObject
upperBoundJpqlFragment
- The JPQL fragment representing the upper bound of the range, the
fragment will be parsed and converted into a StateObject
java.lang.NullPointerException
- The given parent cannot be null
public BetweenExpressionStateObject(StateObject parent, java.lang.String jpqlFragment, java.lang.String lowerBoundJpqlFragment, java.lang.String upperBoundJpqlFragment)
BetweenExpressionStateObject
.
parent
- The parent of this state object, which cannot be null
jpqlFragment
- The JPQL fragment representing the expression to compare its result to the
lower and upper bounds, the fragment will be parsed and converted into a StateObject
lowerBoundJpqlFragment
- The JPQL fragment representing the lowe bound of the range, the
fragment will be parsed and converted into a StateObject
upperBoundJpqlFragment
- The JPQL fragment representing the upper bound of the range, the
fragment will be parsed and converted into a StateObject
java.lang.NullPointerException
- The given parent cannot be null
Method Detail |
---|
public void accept(StateObjectVisitor visitor)
StateObject
by the given visitor
.
visitor
- The visitor
to visit this objectprotected void addChildren(java.util.List<StateObject> children)
StateObject
to the given list.
addChildren
in class AbstractStateObject
children
- The list used to store the childrenpublic BetweenExpressionStateObject addNot()
NOT
identifier is specified.
public BetweenExpression getExpression()
StateObject
representation of the JPQL query
was created by parsing an existing JPQL query.
getExpression
in interface StateObject
getExpression
in class AbstractStateObject
StateObject
or null
when the JPQL query is manually created (i.e. not from a string)public StateObject getLowerBound()
StateObject
representing the lower bound of the range.
public StateObject getStateObject()
StateObject
representing the expression to determine if its result falls
within the lower and upper bounds.
public StateObject getUpperBound()
StateObject
representing the upper bound of the range.
public boolean hasLowerBound()
StateObject
representing the lower bound is defined or not.
true
if the StateObject
representing the expression to check if
its result falls into a range has been defined; false
otherwisepublic boolean hasNot()
NOT
identifier is used or not.
true
if the NOT
identifier is part of the expression;
false
otherwisepublic boolean hasStateObject()
StateObject
representing the expression to determine if its
result falls within the lower and upper bounds has been defined or not.
true
if the StateObject
representing the lower bound expression
has been defined; false
otherwisepublic boolean hasUpperBound()
StateObject
representing the upper bound is defined or not.
true
if the StateObject
representing the upper bound expression
has been defined; false
otherwisepublic boolean isEquivalent(StateObject stateObject)
StateObject
is equivalent to this one, i.e. the
information of both StateObject
is the same.
isEquivalent
in interface StateObject
isEquivalent
in class AbstractStateObject
stateObject
- The StateObject
to compare its content to this one
true
if both object are equivalent; false
otherwisepublic void parse(java.lang.String jpqlFragment)
jpqlFragment
- The JPQL fragment representing the expression to compare its result to the
lower and upper bounds, the fragment will be parsed and converted into a StateObject
public void parseLowerBound(java.lang.String jpqlFragment)
jpqlFragment
- The JPQL fragment representing the lower bound of the range, the fragment
will be parsed and converted into a StateObject
public void parseUpperBound(java.lang.String jpqlFragment)
jpqlFragment
- The JPQL fragment representing the upper bound of the range, the fragment
will be parsed and converted into a StateObject
public void removeNot()
NOT
identifier is not specified.
public void setExpression(BetweenExpression expression)
parsed object
object, which should only be
done when this object is instantiated during the conversion of a parsed JPQL query into
StateObjects
.
expression
- The parsed object
representing a BETWEEN
expressionpublic void setLowerBound(StateObject lowerBound)
StateObject
representing the lower bound of the range.
lowerBound
- The StateObject
representing the lower bound expressionpublic void setNot(boolean not)
NOT
identifier should be part of the expression or not.
not
- true
if the NOT
identifier should be part of the
expression; false
otherwisepublic void setStateObject(StateObject stateObject)
StateObject
representing the expression to determine if its result falls
within the lower and upper bounds.
stateObject
- The expression to check if its result is in the range of the lower and
upper boundspublic void setUpperBound(StateObject upperBound)
StateObject
representing the upper bound of the range.
upperBound
- The StateObject
representing the upper bound expressionpublic void toggleNot()
NOT
identifier.
protected void toTextInternal(java.lang.Appendable writer) throws java.io.IOException
StateObject
, which should not be used to
define a true
string representation of a JPQL query but should be used for
debugging purposes.
toTextInternal
in class AbstractStateObject
writer
- The writer used to print out the string representation
java.io.IOException
- This should never happens, it is only required because Appendable
is used instead of any concrete class
|
EclipseLink 2.4.2, build 'v20130514-5956486' API Reference | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |