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<java.lang.String>
,StateObject
public class StateFieldPathExpressionStateObject extends AbstractPathExpressionStateObject
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
- Version:
- 2.5
- See Also:
StateFieldPathExpression
- Author:
- Pascal Filion
- Since:
- 2.4
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static class
StateFieldPathExpressionStateObject.MapManagedType
-
Field Summary
-
Fields inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractPathExpressionStateObject
IDENTIFICATION_VARIABLE_PROPERTY, PATHS_LIST
-
-
Constructor Summary
Constructors Constructor Description StateFieldPathExpressionStateObject(StateObject parent)
Creates a newStateFieldPathExpressionStateObject
.StateFieldPathExpressionStateObject(StateObject parent, java.lang.String path)
Creates a newStateFieldPathExpressionStateObject
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
accept(StateObjectVisitor visitor)
Visits thisStateObject
by the givenvisitor
.StateFieldPathExpression
getExpression()
Returns the actual parsed object if thisStateObject
representation of the JPQL query was created by parsing an existing JPQL query.protected IManagedType
resolveManagedType()
Resolvesprotected IType
resolveType()
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 Detail
-
StateFieldPathExpressionStateObject
public StateFieldPathExpressionStateObject(StateObject parent)
Creates a newStateFieldPathExpressionStateObject
.- Parameters:
parent
- The parent of this state object, which cannot benull
- Throws:
java.lang.NullPointerException
- The given parent cannot benull
-
StateFieldPathExpressionStateObject
public StateFieldPathExpressionStateObject(StateObject parent, java.lang.String path)
Creates a newStateFieldPathExpressionStateObject
.- Parameters:
parent
- The parent of this state object, which cannot benull
path
- The state field path expression- Throws:
java.lang.NullPointerException
- The given parent cannot benull
-
-
Method Detail
-
accept
public void accept(StateObjectVisitor visitor)
Visits thisStateObject
by the givenvisitor
.- Parameters:
visitor
- Thevisitor
to visit this object
-
getExpression
public StateFieldPathExpression 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 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
protected IManagedType resolveManagedType()
Resolves- Specified by:
resolveManagedType
in classAbstractPathExpressionStateObject
- Returns:
-
resolveType
protected IType resolveType()
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
public 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
.- Parameters:
expression
- Theparsed object
representing a state field path expression
-
-