Class UpdateStatementStateObject
- java.lang.Object
-
- org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractStateObject
-
- org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractModifyStatementStateObject
-
- org.eclipse.persistence.jpa.jpql.tools.model.query.UpdateStatementStateObject
-
- All Implemented Interfaces:
StateObject
public class UpdateStatementStateObject extends AbstractModifyStatementStateObject
TheUPDATE
clause of a query consists of a conditional expression used to select objects or values that satisfy the expression. TheUPDATE
clause restricts the result of a select statement or the scope of an update operation.BNF:update_statement ::= update_clause [where_clause]
- Version:
- 2.4
- See Also:
UpdateStatement
- Author:
- Pascal Filion
- Since:
- 2.4
-
-
Field Summary
-
Fields inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractModifyStatementStateObject
WHERE_CLAUSE_PROPERTY
-
-
Constructor Summary
Constructors Constructor Description UpdateStatementStateObject(JPQLQueryStateObject parent)
Creates a newUpdateStatementStateObject
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
accept(StateObjectVisitor visitor)
Visits thisStateObject
by the givenvisitor
.UpdateItemStateObject
addItem(java.lang.String path)
Adds a new item to theUPDATE
clause.UpdateItemStateObject
addItem(java.lang.String path, java.lang.String newValue)
Adds a new item to theUPDATE
clause.UpdateItemStateObject
addItem(java.lang.String path, StateObject newValue)
Adds a new item to theUPDATE
clause.protected AbstractModifyClauseStateObject
buildModifyClause()
Creates the actualAbstractModifyClauseStateObject
that represents the modify clause.UpdateStatement
getExpression()
Returns the actual parsed object if thisStateObject
representation of the JPQL query was created by parsing an existing JPQL query.UpdateClauseStateObject
getModifyClause()
Returns the state object representing theUPDATE
clause.void
setExpression(UpdateStatement 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.AbstractModifyStatementStateObject
addChildren, addWhereClause, getAbstractSchemaName, getAbstractSchemaNameStateObject, getDeclaration, getEntity, getIdentificationVariable, getIdentificationVariableStateObject, getParent, getRangeVariableDeclaration, getWhereClause, hasWhereClause, initialize, isEquivalent, removeWhereClause, setConditionalStateObject, setDeclaration, setDeclaration, setDeclaration, setDeclaration, setEntity, setEntityName, setIdentificationVariable, toggleWhereClause, 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, getDecorator, getGrammar, getManagedTypeProvider, getQueryBuilder, getRoot, getType, getType, getTypeHelper, getTypeRepository, hashCode, isDecorated, parent, parent, parent, removePropertyChangeListener, setExpression, setParent, toString, toString, toStringInternal, toStringItems, toText
-
-
-
-
Constructor Detail
-
UpdateStatementStateObject
public UpdateStatementStateObject(JPQLQueryStateObject parent)
Creates a newUpdateStatementStateObject
.- Parameters:
parent
- The parent of this state object, which cannot benull
- 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
-
addItem
public UpdateItemStateObject addItem(java.lang.String path)
Adds a new item to theUPDATE
clause.- Parameters:
path
- The path of the value to update- Returns:
- The newly added
UpdateItemStateObject
-
addItem
public UpdateItemStateObject addItem(java.lang.String path, StateObject newValue)
Adds a new item to theUPDATE
clause.- Parameters:
path
- The path of the value to updatenewValue
- TheStateObject
representation of the new value- Returns:
- The newly added
UpdateItemStateObject
-
addItem
public UpdateItemStateObject addItem(java.lang.String path, java.lang.String newValue)
Adds a new item to theUPDATE
clause.- Parameters:
path
- The path of the value to updatenewValue
- The string representation of the new value to parse and to convert into aStateObject
representation- Returns:
- The newly added
UpdateItemStateObject
-
buildModifyClause
protected AbstractModifyClauseStateObject buildModifyClause()
Creates the actualAbstractModifyClauseStateObject
that represents the modify clause.- Specified by:
buildModifyClause
in classAbstractModifyStatementStateObject
- Returns:
- The modify clause part of this modify statement
-
getExpression
public UpdateStatement 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)
-
getModifyClause
public UpdateClauseStateObject getModifyClause()
Returns the state object representing theUPDATE
clause.- Overrides:
getModifyClause
in classAbstractModifyStatementStateObject
- Returns:
- The state object representing the
UPDATE
clause, which is nevernull
-
setExpression
public void setExpression(UpdateStatement 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 anUpdateStatement
statement
-
-