Class StateFieldPathExpressionStateObject
java.lang.Object
org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractStateObject
org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractPathExpressionStateObject
org.eclipse.persistence.jpa.jpql.tools.model.query.StateFieldPathExpressionStateObject
- All Implemented Interfaces:
ListHolderStateObject<String>
,StateObject
A single-valued association field is designated by the name of an association-field in a
one-to-one or many-to-one relationship. The type of a single-valued association field and thus a
single-valued association path expression is the abstract schema type of the related entity.
BNF: state_field_path_expression ::= {identification_variable | single_valued_association_path_expression}.state_field
BNF: single_valued_association_path_expression ::= identification_variable.{single_valued_association_field.}*single_valued_association_field
- Since:
- 2.4
- Version:
- 2.5
- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionprotected static class
-
Field Summary
Fields inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractPathExpressionStateObject
IDENTIFICATION_VARIABLE_PROPERTY, PATHS_LIST
-
Constructor Summary
ConstructorDescriptionCreates a newStateFieldPathExpressionStateObject
.StateFieldPathExpressionStateObject
(StateObject parent, String path) Creates a newStateFieldPathExpressionStateObject
. -
Method Summary
Modifier and TypeMethodDescriptionvoid
accept
(StateObjectVisitor visitor) Visits thisStateObject
by the givenvisitor
.Returns the actual parsed object if thisStateObject
representation of the JPQL query was created by parsing an existing JPQL query.protected IManagedType
Resolvesprotected IType
Resolves theIType
of the property handled by this object.void
setExpression
(StateFieldPathExpression expression) Keeps a reference of theparsed object
object, 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.AbstractPathExpressionStateObject
addChildren, addItem, addItems, addListChangeListener, append, canMoveDown, canMoveUp, clearResolvedObjects, getIdentificationVariable, getItem, getManagedType, getMapping, getMapping, getPath, getType, getTypeDeclaration, hasIdentificationVariable, hasItems, initialize, isEquivalent, items, itemsSize, moveDown, moveUp, removeItem, removeItem, removeItems, removeListChangeListener, resolveMappings, resolveTypeDeclaration, setIdentificationVariable, setIdentificationVariableInternally, setPath, setPath, setPaths, setPaths, setPaths, 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, 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
Methods inherited from interface org.eclipse.persistence.jpa.jpql.tools.model.query.StateObject
addPropertyChangeListener, children, decorate, findIdentificationVariable, getDeclaration, getDecorator, getGrammar, getManagedTypeProvider, getParent, getQueryBuilder, getRoot, isDecorated, removePropertyChangeListener, setParent, toString, toText
-
Constructor Details
-
StateFieldPathExpressionStateObject
Creates a newStateFieldPathExpressionStateObject
.- Parameters:
parent
- The parent of this state object, which cannot benull
- Throws:
NullPointerException
- The given parent cannot benull
-
StateFieldPathExpressionStateObject
Creates a newStateFieldPathExpressionStateObject
.- Parameters:
parent
- The parent of this state object, which cannot benull
path
- The state field path expression- Throws:
NullPointerException
- The given parent cannot benull
-
-
Method Details
-
accept
Description copied from interface:StateObject
Visits thisStateObject
by the givenvisitor
.- Parameters:
visitor
- Thevisitor
to visit this object
-
getExpression
Description copied from interface:StateObject
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 classAbstractPathExpressionStateObject
- 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)
-
resolveManagedType
Description copied from class:AbstractPathExpressionStateObject
Resolves- Specified by:
resolveManagedType
in classAbstractPathExpressionStateObject
-
resolveType
Description copied from class:AbstractPathExpressionStateObject
Resolves theIType
of the property handled by this object.- Specified by:
resolveType
in classAbstractPathExpressionStateObject
- Returns:
- Either the
IType
that was resolved by this object or theIType
forIType.UNRESOLVABLE_TYPE
if it could not be resolved
-
setExpression
Keeps a reference of theparsed object
object, which should only be done when this object is instantiated during the conversion of a parsed JPQL query intoStateObjects
.- Parameters:
expression
- Theparsed object
representing a state field path expression
-