Class IndexExpressionStateObject
- 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.EncapsulatedIdentificationVariableExpressionStateObject
-
- org.eclipse.persistence.jpa.jpql.tools.model.query.IndexExpressionStateObject
-
- All Implemented Interfaces:
StateObject
public class IndexExpressionStateObject extends EncapsulatedIdentificationVariableExpressionStateObject
TheINDEXfunction returns an integer value corresponding to the position of its argument in an ordered list. TheINDEXfunction can only be applied to identification variables denoting types for which an order column has been specified.BNF:expression ::= INDEX(identification_variable)- Version:
- 2.4
- See Also:
IndexExpression- Author:
- Pascal Filion
- Since:
- 2.4
-
-
Field Summary
-
Fields inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.EncapsulatedIdentificationVariableExpressionStateObject
IDENTIFICATION_VARIABLE_PROPERTY
-
Fields inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractSingleEncapsulatedExpressionStateObject
STATE_OBJECT_PROPERTY
-
-
Constructor Summary
Constructors Constructor Description IndexExpressionStateObject(StateObject parent)Creates a newIndexExpressionStateObject.IndexExpressionStateObject(StateObject parent, java.lang.String identificationVariable)Creates a newIndexExpressionStateObject.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaccept(StateObjectVisitor visitor)Visits thisStateObjectby the givenvisitor.IndexExpressiongetExpression()Returns the actual parsed object if thisStateObjectrepresentation of the JPQL query was created by parsing an existing JPQL query.java.lang.StringgetIdentifier()Returns the JPQL identifier of the expression represented by thisAbstractSingleEncapsulatedExpressionStateObject.voidsetExpression(IndexExpression expression)Keeps a reference of theparsed objectobject, 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.EncapsulatedIdentificationVariableExpressionStateObject
checkIntegrity, clearResolvedObjects, getIdentificationVariable, getManagedType, getQueryBNFId, getStateObject, getType, getTypeDeclaration, hasIdentificationVariable, initialize, resolveManagedType, resolveType, resolveTypeDeclaration, setIdentificationVariable
-
Methods inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractSingleEncapsulatedExpressionStateObject
addChildren, hasStateObject, isEquivalent, parse, setStateObject, toTextEncapsulatedExpression
-
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, isDecorated, parent, parent, parent, removePropertyChangeListener, setExpression, setParent, toString, toString, toStringInternal, toStringItems, toText
-
-
-
-
Constructor Detail
-
IndexExpressionStateObject
public IndexExpressionStateObject(StateObject parent)
Creates a newIndexExpressionStateObject.- Parameters:
parent- The parent of this state object, which cannot benull- Throws:
java.lang.NullPointerException- The given parent cannot benull
-
IndexExpressionStateObject
public IndexExpressionStateObject(StateObject parent, java.lang.String identificationVariable)
Creates a newIndexExpressionStateObject.- Parameters:
parent- The parent of this state object, which cannot benullidentificationVariable- The name of the identification variable- Throws:
java.lang.NullPointerException- The given parent cannot benull
-
-
Method Detail
-
accept
public void accept(StateObjectVisitor visitor)
Visits thisStateObjectby the givenvisitor.- Parameters:
visitor- Thevisitorto visit this object
-
getExpression
public IndexExpression getExpression()
Returns the actual parsed object if thisStateObjectrepresentation of the JPQL query was created by parsing an existing JPQL query.- Specified by:
getExpressionin interfaceStateObject- Overrides:
getExpressionin classEncapsulatedIdentificationVariableExpressionStateObject- Returns:
- The parsed object when a JPQL query is parsed and converted into a
StateObjectornullwhen 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:
getIdentifierin classAbstractEncapsulatedExpressionStateObject- Returns:
- The JPQL identifier that is shown before the left parenthesis
-
setExpression
public void setExpression(IndexExpression expression)
Keeps a reference of theparsed objectobject, which should only be done when this object is instantiated during the conversion of a parsed JPQL query intoStateObjects.- Parameters:
expression- Theparsed objectrepresenting anINDEXexpression
-
-