public class LocateExpressionStateObject extends AbstractTripleEncapsulatedExpressionStateObject
LOCATE
function returns the position of a given string within a string,
starting the search at a specified position. It returns the first position at which the string
was found as an integer. The first argument is the string to be located; the second argument is
the string to be searched; the optional third argument is an integer that represents the string
position at which the search is started (by default, the beginning of the string to be searched).
The first position in a string is denoted by 1. If the string is not found, 0 is returned. The
LENGTH
function returns the length of the string in characters as an integer.
expression ::= LOCATE(string_primary, string_primary [, simple_arithmetic_expression])
LocateExpression
FIRST_STATE_OBJECT_PROPERTY, SECOND_STATE_OBJECT_PROPERTY, THIRD_STATE_OBJECT_PROPERTY
Constructor and Description |
---|
LocateExpressionStateObject(StateObject parent)
Creates a new
LocateExpressionStateObject . |
LocateExpressionStateObject(StateObject parent,
StateObject firstStateObject,
StateObject secondStateObject)
Creates a new
LocateExpressionStateObject . |
LocateExpressionStateObject(StateObject parent,
StateObject firstStateObject,
StateObject secondStateObject,
StateObject thirdStateObject)
Creates a new
LocateExpressionStateObject . |
LocateExpressionStateObject(StateObject parent,
java.lang.String firstJpqlFragment,
java.lang.String secondJpqlFragment)
Creates a new
LocateExpressionStateObject . |
LocateExpressionStateObject(StateObject parent,
java.lang.String firstJpqlFragment,
java.lang.String secondJpqlFragment,
java.lang.String thirdJpqlFragment)
Creates a new
LocateExpressionStateObject . |
Modifier and Type | Method and Description |
---|---|
void |
accept(StateObjectVisitor visitor)
Visits this
StateObject by the given visitor . |
LocateExpression |
getExpression()
Returns the actual parsed object if this
StateObject representation of the JPQL query
was created by parsing an existing JPQL query. |
protected java.lang.String |
getFirstQueryBNFId()
Returns the unique identifier of the BNF that will be used to parse a JPQL fragment as the
first encapsulated expression.
|
java.lang.String |
getIdentifier()
Returns the JPQL identifier of the expression represented by this
AbstractSingleEncapsulatedExpressionStateObject . |
protected java.lang.String |
getSecondQueryBNFId()
Returns the unique identifier of the BNF that will be used to parse a JPQL fragment as the
second encapsulated expression.
|
protected java.lang.String |
getThirdQueryBNFId()
Returns the unique identifier of the BNF that will be used to parse a JPQL fragment as the
third encapsulated expression.
|
void |
setExpression(LocateExpression expression)
Keeps a reference of the
parsed object object, which should only be
done when this object is instantiated during the conversion of a parsed JPQL query into
StateObjects . |
addChildren, getFirst, getSecond, getThird, hasFirst, hasSecond, hasThird, isEquivalent, parseFirst, parseSecond, parseThird, setFirst, setSecond, setThird, toTextEncapsulatedExpression
toTextInternal
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
public LocateExpressionStateObject(StateObject parent)
LocateExpressionStateObject
.parent
- The parent of this state object, which cannot be null
java.lang.NullPointerException
- The given parent cannot be null
public LocateExpressionStateObject(StateObject parent, StateObject firstStateObject, StateObject secondStateObject)
LocateExpressionStateObject
.parent
- The parent of this state object, which cannot be null
firstStateObject
- The StateObject
of the first expressionsecondStateObject
- The StateObject
of the second expressionjava.lang.NullPointerException
- The given parent cannot be null
public LocateExpressionStateObject(StateObject parent, StateObject firstStateObject, StateObject secondStateObject, StateObject thirdStateObject)
LocateExpressionStateObject
.parent
- The parent of this state object, which cannot be null
firstStateObject
- The StateObject
of the first expressionsecondStateObject
- The StateObject
of the second expressionthirdStateObject
- The StateObject
of the third encapsulated expressionjava.lang.NullPointerException
- The given parent cannot be null
public LocateExpressionStateObject(StateObject parent, java.lang.String firstJpqlFragment, java.lang.String secondJpqlFragment)
LocateExpressionStateObject
.parent
- The parent of this state object, which cannot be null
firstJpqlFragment
- The string representation of the first encapsulated expression to
parse and to convert into a StateObject
representationsecondJpqlFragment
- The string representation of the second encapsulated expression to
parse and to convert into a StateObject
representationjava.lang.NullPointerException
- The given parent cannot be null
public LocateExpressionStateObject(StateObject parent, java.lang.String firstJpqlFragment, java.lang.String secondJpqlFragment, java.lang.String thirdJpqlFragment)
LocateExpressionStateObject
.parent
- The parent of this state object, which cannot be null
firstJpqlFragment
- The string representation of the first encapsulated expression to
parse and to convert into a StateObject
representationsecondJpqlFragment
- The string representation of the second encapsulated expression to
parse and to convert into a StateObject
representationthirdJpqlFragment
- The string representation of the third encapsulated expression to
parse and to convert into a StateObject
representationjava.lang.NullPointerException
- The given parent cannot be null
public void accept(StateObjectVisitor visitor)
StateObject
by the given visitor
.visitor
- The visitor
to visit this objectpublic LocateExpression getExpression()
StateObject
representation of the JPQL query
was created by parsing an existing JPQL query.getExpression
in interface StateObject
getExpression
in class AbstractTripleEncapsulatedExpressionStateObject
StateObject
or null
when the JPQL query is manually created (i.e. not from a string)protected java.lang.String getFirstQueryBNFId()
getFirstQueryBNFId
in class AbstractTripleEncapsulatedExpressionStateObject
public java.lang.String getIdentifier()
AbstractSingleEncapsulatedExpressionStateObject
.getIdentifier
in class AbstractEncapsulatedExpressionStateObject
protected java.lang.String getSecondQueryBNFId()
getSecondQueryBNFId
in class AbstractTripleEncapsulatedExpressionStateObject
protected java.lang.String getThirdQueryBNFId()
getThirdQueryBNFId
in class AbstractTripleEncapsulatedExpressionStateObject
public void setExpression(LocateExpression expression)
parsed object
object, which should only be
done when this object is instantiated during the conversion of a parsed JPQL query into
StateObjects
.expression
- The parsed object
representing a LOCATE
expression