Class SubstringExpressionStateObject
- 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.AbstractTripleEncapsulatedExpressionStateObject
-
- org.eclipse.persistence.jpa.jpql.tools.model.query.SubstringExpressionStateObject
-
- All Implemented Interfaces:
StateObject
public class SubstringExpressionStateObject extends AbstractTripleEncapsulatedExpressionStateObject
The second and third arguments of theSUBSTRINGfunction denote the starting position and length of the substring to be returned. These arguments are integers. The first position of a string is denoted by 1. TheSUBSTRINGfunction returns a string.JPA 1.0:
BNF ::= SUBSTRING(string_primary, simple_arithmetic_expression, simple_arithmetic_expression)JPA 2.0:BNF ::= SUBSTRING(string_primary, simple_arithmetic_expression [, simple_arithmetic_expression])- Since:
- 2.4
- Version:
- 2.4
- Author:
- Pascal Filion
- See Also:
SubstringExpression
-
-
Field Summary
-
Fields inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractTripleEncapsulatedExpressionStateObject
FIRST_STATE_OBJECT_PROPERTY, SECOND_STATE_OBJECT_PROPERTY, THIRD_STATE_OBJECT_PROPERTY
-
-
Constructor Summary
Constructors Constructor Description SubstringExpressionStateObject(StateObject parent)Creates a newSubstringExpressionStateObject.SubstringExpressionStateObject(StateObject parent, String firstJpqlFragment, String secondJpqlFragment)Creates a newSubstringExpressionStateObject.SubstringExpressionStateObject(StateObject parent, String firstJpqlFragment, String secondJpqlFragment, String thirdJpqlFragment)Creates a newSubstringExpressionStateObject.SubstringExpressionStateObject(StateObject parent, StateObject firstStateObject, StateObject secondStateObject)Creates a newSubstringExpressionStateObject.SubstringExpressionStateObject(StateObject parent, StateObject firstStateObject, StateObject secondStateObject, StateObject thirdStateObject)Creates a newSubstringExpressionStateObject.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaccept(StateObjectVisitor visitor)Visits thisStateObjectby the givenvisitor.SubstringExpressiongetExpression()Returns the actual parsed object if thisStateObjectrepresentation of the JPQL query was created by parsing an existing JPQL query.StringgetIdentifier()Returns the JPQL identifier of the expression represented by thisAbstractSingleEncapsulatedExpressionStateObject.voidsetExpression(SubstringExpression 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.AbstractTripleEncapsulatedExpressionStateObject
getFirst, getSecond, getThird, hasFirst, hasSecond, hasThird, isEquivalent, parseFirst, parseSecond, parseThird, setFirst, setSecond, setThird
-
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
-
SubstringExpressionStateObject
public SubstringExpressionStateObject(StateObject parent)
Creates a newSubstringExpressionStateObject.- Parameters:
parent- The parent of this state object, which cannot benull- Throws:
NullPointerException- The given parent cannot benull
-
SubstringExpressionStateObject
public SubstringExpressionStateObject(StateObject parent, StateObject firstStateObject, StateObject secondStateObject)
Creates a newSubstringExpressionStateObject.- Parameters:
parent- The parent of this state object, which cannot benullfirstStateObject- TheStateObjectof the first expressionsecondStateObject- TheStateObjectof the second expression- Throws:
NullPointerException- The given parent cannot benull
-
SubstringExpressionStateObject
public SubstringExpressionStateObject(StateObject parent, StateObject firstStateObject, StateObject secondStateObject, StateObject thirdStateObject)
Creates a newSubstringExpressionStateObject.- Parameters:
parent- The parent of this state object, which cannot benullfirstStateObject- TheStateObjectof the first expressionsecondStateObject- TheStateObjectof the second expressionthirdStateObject- TheStateObjectof the third encapsulated expression- Throws:
NullPointerException- The given parent cannot benull
-
SubstringExpressionStateObject
public SubstringExpressionStateObject(StateObject parent, String firstJpqlFragment, String secondJpqlFragment)
Creates a newSubstringExpressionStateObject.- Parameters:
parent- The parent of this state object, which cannot benullfirstJpqlFragment- The string representation of the first encapsulated expression to parse and to convert into aStateObjectrepresentationsecondJpqlFragment- The string representation of the second encapsulated expression to parse and to convert into aStateObjectrepresentation- Throws:
NullPointerException- The given parent cannot benull
-
SubstringExpressionStateObject
public SubstringExpressionStateObject(StateObject parent, String firstJpqlFragment, String secondJpqlFragment, String thirdJpqlFragment)
Creates a newSubstringExpressionStateObject.- Parameters:
parent- The parent of this state object, which cannot benullfirstJpqlFragment- The string representation of the first encapsulated expression to parse and to convert into aStateObjectrepresentationsecondJpqlFragment- The string representation of the second encapsulated expression to parse and to convert into aStateObjectrepresentationthirdJpqlFragment- The string representation of the third encapsulated expression to parse and to convert into aStateObjectrepresentation- Throws:
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 SubstringExpression 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 classAbstractTripleEncapsulatedExpressionStateObject- 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 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(SubstringExpression 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 aSUBSTRINGexpression
-
-