Class SizeExpressionStateObject
- java.lang.Object
-
- org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractStateObject
-
- org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractEncapsulatedExpressionStateObject
-
- org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractSingleEncapsulatedExpressionStateObject
-
- org.eclipse.persistence.jpa.jpql.tools.model.query.SizeExpressionStateObject
-
- All Implemented Interfaces:
StateObject
public class SizeExpressionStateObject extends AbstractSingleEncapsulatedExpressionStateObject
TheSIZE
function returns an integer value, the number of elements of the collection. If the collection is empty, theSIZE
function evaluates to zero.BNF:expression ::= SIZE(collection_valued_path_expression)
- Since:
- 2.4
- Version:
- 2.4
- Author:
- Pascal Filion
- See Also:
SizeExpression
-
-
Field Summary
-
Fields inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractSingleEncapsulatedExpressionStateObject
STATE_OBJECT_PROPERTY
-
-
Constructor Summary
Constructors Constructor Description SizeExpressionStateObject(StateObject parent)
Creates a newSizeExpressionStateObject
.SizeExpressionStateObject(StateObject parent, java.lang.String path)
Creates a newSizeExpressionStateObject
.SizeExpressionStateObject(StateObject parent, StateObject stateObject)
Creates a newSizeExpressionStateObject
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
accept(StateObjectVisitor visitor)
Visits thisStateObject
by the givenvisitor
.SizeExpression
getExpression()
Returns the actual parsed object if thisStateObject
representation of the JPQL query was created by parsing an existing JPQL query.java.lang.String
getIdentifier()
Returns the JPQL identifier of the expression represented by thisAbstractSingleEncapsulatedExpressionStateObject
.void
setExpression(SizeExpression expression)
Keeps a reference of theparsed object
object, which should only be done when this object is instantiated during the conversion of a parsed JPQL query intoStateObjects
.void
setStateObject(StateObject stateObject)
-
Methods inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractSingleEncapsulatedExpressionStateObject
getStateObject, hasStateObject, isEquivalent, parse
-
Methods inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractStateObject
addPropertyChangeListener, children, decorate, equals, findIdentificationVariable, getDeclaration, getDecorator, getGrammar, getManagedTypeProvider, getParent, getQueryBuilder, getRoot, getType, getType, getTypeHelper, getTypeRepository, hashCode, isDecorated, removePropertyChangeListener, setExpression, setParent, toString, toString, toText
-
-
-
-
Constructor Detail
-
SizeExpressionStateObject
public SizeExpressionStateObject(StateObject parent)
Creates a newSizeExpressionStateObject
.- Parameters:
parent
- The parent of this state object, which cannot benull
- Throws:
java.lang.NullPointerException
- The given parent cannot benull
-
SizeExpressionStateObject
public SizeExpressionStateObject(StateObject parent, StateObject stateObject)
Creates a newSizeExpressionStateObject
.- Parameters:
parent
- The parent of this state object, which cannot benull
stateObject
- TheStateObject
representing the encapsulated expression- Throws:
java.lang.NullPointerException
- The given parent cannot benull
-
SizeExpressionStateObject
public SizeExpressionStateObject(StateObject parent, java.lang.String path)
Creates a newSizeExpressionStateObject
.- Parameters:
parent
- The parent of this state object, which cannot benull
path
- The collection-valued path expression- Throws:
java.lang.NullPointerException
- The given parent cannot benull
-
-
Method Detail
-
accept
public void accept(StateObjectVisitor visitor)
Visits thisStateObject
by the givenvisitor
.- Parameters:
visitor
- Thevisitor
to visit this object
-
getExpression
public SizeExpression getExpression()
Returns the actual parsed object if thisStateObject
representation of the JPQL query was created by parsing an existing JPQL query.- Specified by:
getExpression
in interfaceStateObject
- Overrides:
getExpression
in classAbstractSingleEncapsulatedExpressionStateObject
- Returns:
- The parsed object when a JPQL query is parsed and converted into a
StateObject
ornull
when the JPQL query is manually created (i.e. not from a string)
-
getIdentifier
public java.lang.String getIdentifier()
Returns the JPQL identifier of the expression represented by thisAbstractSingleEncapsulatedExpressionStateObject
.- Specified by:
getIdentifier
in classAbstractEncapsulatedExpressionStateObject
- Returns:
- The JPQL identifier that is shown before the left parenthesis
-
setExpression
public void setExpression(SizeExpression expression)
Keeps a reference of theparsed object
object, which should only be done when this object is instantiated during the conversion of a parsed JPQL query intoStateObjects
.- Parameters:
expression
- Theparsed object
representing aSIZE
expression
-
setStateObject
public void setStateObject(StateObject stateObject)
-
-