EclipseLink 2.4.2, build 'v20130514-5956486' API Reference

org.eclipse.persistence.jpa.jpql.model.query
Class LocateExpressionStateObject

java.lang.Object
  extended by org.eclipse.persistence.jpa.jpql.model.query.AbstractStateObject
      extended by org.eclipse.persistence.jpa.jpql.model.query.AbstractEncapsulatedExpressionStateObject
          extended by org.eclipse.persistence.jpa.jpql.model.query.AbstractTripleEncapsulatedExpressionStateObject
              extended by org.eclipse.persistence.jpa.jpql.model.query.LocateExpressionStateObject
All Implemented Interfaces:
StateObject

public class LocateExpressionStateObject
extends AbstractTripleEncapsulatedExpressionStateObject

The 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.

BNF: expression ::= LOCATE(string_primary, string_primary [, simple_arithmetic_expression])

Version:
2.4
See Also:
LocateExpression
Author:
Pascal Filion
Since:
2.4

Field Summary
 
Fields inherited from class org.eclipse.persistence.jpa.jpql.model.query.AbstractTripleEncapsulatedExpressionStateObject
FIRST_STATE_OBJECT_PROPERTY, SECOND_STATE_OBJECT_PROPERTY, THIRD_STATE_OBJECT_PROPERTY
 
Constructor Summary
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.
 
Method Summary
 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.
 
Methods inherited from class org.eclipse.persistence.jpa.jpql.model.query.AbstractTripleEncapsulatedExpressionStateObject
addChildren, getFirst, getSecond, getThird, hasFirst, hasSecond, hasThird, isEquivalent, parseFirst, parseSecond, parseThird, setFirst, setSecond, setThird, toTextEncapsulatedExpression
 
Methods inherited from class org.eclipse.persistence.jpa.jpql.model.query.AbstractEncapsulatedExpressionStateObject
toTextInternal
 
Methods inherited from class org.eclipse.persistence.jpa.jpql.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
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

LocateExpressionStateObject

public LocateExpressionStateObject(StateObject parent)
Creates a new LocateExpressionStateObject.

Parameters:
parent - The parent of this state object, which cannot be null
Throws:
java.lang.NullPointerException - The given parent cannot be null

LocateExpressionStateObject

public LocateExpressionStateObject(StateObject parent,
                                   StateObject firstStateObject,
                                   StateObject secondStateObject)
Creates a new LocateExpressionStateObject.

Parameters:
parent - The parent of this state object, which cannot be null
firstStateObject - The StateObject of the first expression
secondStateObject - The StateObject of the second expression
Throws:
java.lang.NullPointerException - The given parent cannot be null

LocateExpressionStateObject

public LocateExpressionStateObject(StateObject parent,
                                   StateObject firstStateObject,
                                   StateObject secondStateObject,
                                   StateObject thirdStateObject)
Creates a new LocateExpressionStateObject.

Parameters:
parent - The parent of this state object, which cannot be null
firstStateObject - The StateObject of the first expression
secondStateObject - The StateObject of the second expression
thirdStateObject - The StateObject of the third encapsulated expression
Throws:
java.lang.NullPointerException - The given parent cannot be null

LocateExpressionStateObject

public LocateExpressionStateObject(StateObject parent,
                                   java.lang.String firstJpqlFragment,
                                   java.lang.String secondJpqlFragment)
Creates a new LocateExpressionStateObject.

Parameters:
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 representation
secondJpqlFragment - The string representation of the second encapsulated expression to parse and to convert into a StateObject representation
Throws:
java.lang.NullPointerException - The given parent cannot be null

LocateExpressionStateObject

public LocateExpressionStateObject(StateObject parent,
                                   java.lang.String firstJpqlFragment,
                                   java.lang.String secondJpqlFragment,
                                   java.lang.String thirdJpqlFragment)
Creates a new LocateExpressionStateObject.

Parameters:
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 representation
secondJpqlFragment - The string representation of the second encapsulated expression to parse and to convert into a StateObject representation
thirdJpqlFragment - The string representation of the third encapsulated expression to parse and to convert into a StateObject representation
Throws:
java.lang.NullPointerException - The given parent cannot be null
Method Detail

accept

public void accept(StateObjectVisitor visitor)
Visits this StateObject by the given visitor.

Parameters:
visitor - The visitor to visit this object

getExpression

public LocateExpression getExpression()
Returns the actual parsed object if this StateObject representation of the JPQL query was created by parsing an existing JPQL query.

Specified by:
getExpression in interface StateObject
Overrides:
getExpression in class AbstractTripleEncapsulatedExpressionStateObject
Returns:
The parsed object when a JPQL query is parsed and converted into a StateObject or null when the JPQL query is manually created (i.e. not from a string)

getFirstQueryBNFId

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.

Specified by:
getFirstQueryBNFId in class AbstractTripleEncapsulatedExpressionStateObject
Returns:
The query BNF ID for the first encapsulated expression

getIdentifier

public java.lang.String getIdentifier()
Returns the JPQL identifier of the expression represented by this AbstractSingleEncapsulatedExpressionStateObject.

Specified by:
getIdentifier in class AbstractEncapsulatedExpressionStateObject
Returns:
The JPQL identifier that is shown before the left parenthesis

getSecondQueryBNFId

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.

Specified by:
getSecondQueryBNFId in class AbstractTripleEncapsulatedExpressionStateObject
Returns:
The query BNF ID for the second encapsulated expression

getThirdQueryBNFId

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.

Specified by:
getThirdQueryBNFId in class AbstractTripleEncapsulatedExpressionStateObject
Returns:
The query BNF ID for the third encapsulated expression

setExpression

public 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.

Parameters:
expression - The parsed object representing a LOCATE expression

EclipseLink 2.4.2, build 'v20130514-5956486' API Reference