Class AbstractEncapsulatedExpressionStateObject
- java.lang.Object
-
- org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractStateObject
-
- org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractEncapsulatedExpressionStateObject
-
- All Implemented Interfaces:
StateObject
- Direct Known Subclasses:
AbstractDoubleEncapsulatedExpressionStateObject
,AbstractSingleEncapsulatedExpressionStateObject
,AbstractTripleEncapsulatedExpressionStateObject
,CoalesceExpressionStateObject
public abstract class AbstractEncapsulatedExpressionStateObject extends AbstractStateObject
This expression handles parsing the identifier followed by an expression encapsulated within parenthesis.BNF:expression ::= <identifier>(expression)
- Version:
- 2.4
- See Also:
AbstractEncapsulatedExpression
- Author:
- Pascal Filion
- Since:
- 2.4
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractEncapsulatedExpressionStateObject(StateObject parent)
Creates a newAbstractEncapsulatedExpressionStateObject
.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description AbstractEncapsulatedExpression
getExpression()
Returns the actual parsed object if thisStateObject
representation of the JPQL query was created by parsing an existing JPQL query.abstract java.lang.String
getIdentifier()
Returns the JPQL identifier of the expression represented by thisAbstractSingleEncapsulatedExpressionStateObject
.protected abstract void
toTextEncapsulatedExpression(java.lang.Appendable writer)
Prints out a string representation of this encapsulated information, which should not be used to define atrue
string representation of a JPQL query but should be used for debugging purposes.protected void
toTextInternal(java.lang.Appendable writer)
Prints out a string representation of thisStateObject
, which should not be used to define atrue
string representation of a JPQL query but should be used for debugging purposes.-
Methods inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractStateObject
acceptUnknownVisitor, acceptUnknownVisitor, addChildren, 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, isEquivalent, 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
-
Methods inherited from interface org.eclipse.persistence.jpa.jpql.tools.model.query.StateObject
accept
-
-
-
-
Constructor Detail
-
AbstractEncapsulatedExpressionStateObject
protected AbstractEncapsulatedExpressionStateObject(StateObject parent)
Creates a newAbstractEncapsulatedExpressionStateObject
.- Parameters:
parent
- The parent of this state object, which cannot benull
- Throws:
java.lang.NullPointerException
- The given parent cannot benull
-
-
Method Detail
-
getExpression
public AbstractEncapsulatedExpression getExpression()
Returns the actual parsed object if thisStateObject
representation of the JPQL query was created by parsing an existing JPQL query.- Specified by:
getExpression
in interfaceStateObject
- Overrides:
getExpression
in classAbstractStateObject
- Returns:
- The parsed object when a JPQL query is parsed and converted into a
StateObject
ornull
when the JPQL query is manually created (i.e. not from a string)
-
getIdentifier
public abstract java.lang.String getIdentifier()
Returns the JPQL identifier of the expression represented by thisAbstractSingleEncapsulatedExpressionStateObject
.- Returns:
- The JPQL identifier that is shown before the left parenthesis
-
toTextEncapsulatedExpression
protected abstract void toTextEncapsulatedExpression(java.lang.Appendable writer) throws java.io.IOException
Prints out a string representation of this encapsulated information, which should not be used to define atrue
string representation of a JPQL query but should be used for debugging purposes.- Parameters:
writer
- The writer used to print out the string representation of the encapsulated information- Throws:
java.io.IOException
- This should never happens, only required becauseAppendable
is used instead ofStringBuilder
for instance
-
toTextInternal
protected void toTextInternal(java.lang.Appendable writer) throws java.io.IOException
Prints out a string representation of thisStateObject
, which should not be used to define atrue
string representation of a JPQL query but should be used for debugging purposes.- Specified by:
toTextInternal
in classAbstractStateObject
- Parameters:
writer
- The writer used to print out the string representation- Throws:
java.io.IOException
- This should never happens, it is only required becauseAppendable
is used instead of any concrete class
-
-