Class CountFunctionStateObject
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.AggregateFunctionStateObject
org.eclipse.persistence.jpa.jpql.tools.model.query.CountFunctionStateObject
- All Implemented Interfaces:
StateObject
One of the aggregate functions. The return type of this function is a
Long
.
BNF: expression ::= COUNT ([DISTINCT] identification_variable |
state_field_path_expression |
single_valued_object_path_expression)
- Since:
- 2.4
- Version:
- 2.4
- See Also:
-
Field Summary
Fields inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AggregateFunctionStateObject
DISTINCT_PROPERTY
Fields inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractSingleEncapsulatedExpressionStateObject
STATE_OBJECT_PROPERTY
-
Constructor Summary
ConstructorDescriptionCountFunctionStateObject
(StateObject parent) Creates a newCountFunctionStateObject
.CountFunctionStateObject
(StateObject parent, boolean distinct, String path) Creates a newCountFunctionStateObject
.CountFunctionStateObject
(StateObject parent, boolean distinct, StateObject stateObject) Creates a newCountFunctionStateObject
.CountFunctionStateObject
(StateObject parent, String path) Creates a newCountFunctionStateObject
.CountFunctionStateObject
(StateObject parent, StateObject stateObject) Creates a newCountFunctionStateObject
. -
Method Summary
Modifier and TypeMethodDescriptionvoid
accept
(StateObjectVisitor visitor) Visits thisStateObject
by the givenvisitor
.Returns the actual parsed object if thisStateObject
representation of the JPQL query was created by parsing an existing JPQL query.Returns the JPQL identifier of the expression represented by thisAbstractSingleEncapsulatedExpressionStateObject
.protected String
Returns the unique identifier of theJPQLQueryBNF
that will determine how to parse the encapsulated expression.void
setExpression
(CountFunction 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
.Methods inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AggregateFunctionStateObject
hasDistinct, isEquivalent, setDistinct, setStateObject, toggleDistinct, toTextEncapsulatedExpression
Methods inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractSingleEncapsulatedExpressionStateObject
addChildren, getStateObject, hasStateObject, parse
Methods inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractEncapsulatedExpressionStateObject
toTextInternal
Methods inherited from class org.eclipse.persistence.jpa.jpql.tools.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
-
Constructor Details
-
CountFunctionStateObject
Creates a newCountFunctionStateObject
.- Parameters:
parent
- The parent of this state object, which cannot benull
- Throws:
NullPointerException
- The given parent cannot benull
-
CountFunctionStateObject
Creates a newCountFunctionStateObject
.- Parameters:
parent
- The parent of this state object, which cannot benull
distinct
-true
to addDISTINCT
to the query in order to have distinct values;false
if it is not requiredstateObject
- TheStateObject
representing the encapsulated expression- Throws:
NullPointerException
- The given parent cannot benull
-
CountFunctionStateObject
Creates a newCountFunctionStateObject
.- Parameters:
parent
- The parent of this state object, which cannot benull
distinct
-true
to addDISTINCT
to the query in order to have distinct values;false
if it is not requiredpath
- Either the identification variable or the state field path expression- Throws:
NullPointerException
- The given parent cannot benull
-
CountFunctionStateObject
Creates a newCountFunctionStateObject
.- Parameters:
parent
- The parent of this state object, which cannot benull
stateObject
- TheStateObject
representing the encapsulated expression- Throws:
NullPointerException
- The given parent cannot benull
-
CountFunctionStateObject
Creates a newCountFunctionStateObject
.- Parameters:
parent
- The parent of this state object, which cannot benull
path
- Either the identification variable or the state field path expression- Throws:
NullPointerException
- The given parent cannot benull
-
-
Method Details
-
accept
Description copied from interface:StateObject
Visits thisStateObject
by the givenvisitor
.- Parameters:
visitor
- Thevisitor
to visit this object
-
getExpression
Description copied from interface:StateObject
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 classAggregateFunctionStateObject
- 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
Description copied from class:AbstractEncapsulatedExpressionStateObject
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
-
getQueryBNFId
Description copied from class:AbstractSingleEncapsulatedExpressionStateObject
Returns the unique identifier of theJPQLQueryBNF
that will determine how to parse the encapsulated expression.- Specified by:
getQueryBNFId
in classAbstractSingleEncapsulatedExpressionStateObject
- Returns:
- The non-
null
ID of the BNF
-
setExpression
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 aCOUNT
expression
-