Class LengthExpressionStateObject
- 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.LengthExpressionStateObject
-
- All Implemented Interfaces:
StateObject
public class LengthExpressionStateObject extends AbstractSingleEncapsulatedExpressionStateObject
TheLENGTHfunction returns the length of the string in characters as an integer.BNF:expression ::= LENGTH(string_primary)- Version:
- 2.4
- See Also:
LengthExpression- Author:
- Pascal Filion
- Since:
- 2.4
-
-
Field Summary
-
Fields inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractSingleEncapsulatedExpressionStateObject
STATE_OBJECT_PROPERTY
-
-
Constructor Summary
Constructors Constructor Description LengthExpressionStateObject(StateObject parent)Creates a newLengthExpressionStateObject.LengthExpressionStateObject(StateObject parent, java.lang.String jpqlFragment)Creates a newLengthExpressionStateObject.LengthExpressionStateObject(StateObject parent, StateObject stateObject)Creates a newLengthExpressionStateObject.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaccept(StateObjectVisitor visitor)Visits thisStateObjectby the givenvisitor.LengthExpressiongetExpression()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.protected java.lang.StringgetQueryBNFId()Returns the unique identifier of theJPQLQueryBNFthat will determine how to parse the encapsulated expression.voidsetExpression(LengthExpression 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.voidsetStateObject(StateObject stateObject)Sets the givenStateObjectto represent the new encapsulated expression.-
Methods inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractSingleEncapsulatedExpressionStateObject
addChildren, getStateObject, hasStateObject, isEquivalent, parse, 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, initialize, isDecorated, parent, parent, parent, removePropertyChangeListener, setExpression, setParent, toString, toString, toStringInternal, toStringItems, toText
-
-
-
-
Constructor Detail
-
LengthExpressionStateObject
public LengthExpressionStateObject(StateObject parent)
Creates a newLengthExpressionStateObject.- Parameters:
parent- The parent of this state object, which cannot benull- Throws:
java.lang.NullPointerException- The given parent cannot benull
-
LengthExpressionStateObject
public LengthExpressionStateObject(StateObject parent, StateObject stateObject)
Creates a newLengthExpressionStateObject.- Parameters:
parent- The parent of this state object, which cannot benullstateObject- TheStateObjectrepresenting the encapsulated expression- Throws:
java.lang.NullPointerException- The given parent cannot benull
-
LengthExpressionStateObject
public LengthExpressionStateObject(StateObject parent, java.lang.String jpqlFragment)
Creates a newLengthExpressionStateObject.- Parameters:
parent- The parent of this state object, which cannot benulljpqlFragment- The portion of the query representing the encapsulated expression- 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 LengthExpression 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 classAbstractSingleEncapsulatedExpressionStateObject- 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
-
getQueryBNFId
protected java.lang.String getQueryBNFId()
Returns the unique identifier of theJPQLQueryBNFthat will determine how to parse the encapsulated expression.- Specified by:
getQueryBNFIdin classAbstractSingleEncapsulatedExpressionStateObject- Returns:
- The non-
nullID of the BNF
-
setExpression
public void setExpression(LengthExpression 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 aLENGTHexpression
-
setStateObject
public void setStateObject(StateObject stateObject)
Sets the givenStateObjectto represent the new encapsulated expression.- Overrides:
setStateObjectin classAbstractSingleEncapsulatedExpressionStateObject- Parameters:
stateObject- The new encapsulatedStateObject
-
-