Class NullComparisonExpressionStateObject
- java.lang.Object
-
- org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractStateObject
-
- org.eclipse.persistence.jpa.jpql.tools.model.query.NullComparisonExpressionStateObject
-
- All Implemented Interfaces:
StateObject
public class NullComparisonExpressionStateObject extends AbstractStateObject
A null comparison tests whether or not the single-valued path expression or input parameter is aNULLvalue.BNF:null_comparison_expression ::= {single_valued_path_expression | input_parameter} IS [NOT] NULL- Since:
- 2.4
- Version:
- 2.4
- Author:
- Pascal Filion
- See Also:
NullComparisonExpression
-
-
Field Summary
Fields Modifier and Type Field Description static StringNOT_PROPERTYNotifies the visibility of theNOTidentifier has changed.static StringSTATE_OBJECT_PROPERTYNotifies the state object property has changed.
-
Constructor Summary
Constructors Constructor Description NullComparisonExpressionStateObject(StateObject parent)Creates a newNullComparisonExpressionStateObject.NullComparisonExpressionStateObject(StateObject parent, boolean not, String path)Creates a newNullComparisonExpressionStateObject.NullComparisonExpressionStateObject(StateObject parent, boolean not, StateObject stateObject)Creates a newNullComparisonExpressionStateObject.NullComparisonExpressionStateObject(StateObject parent, String path)Creates a newNullComparisonExpressionStateObject.NullComparisonExpressionStateObject(StateObject parent, StateObject stateObject)Creates a newNullComparisonExpressionStateObject.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaccept(StateObjectVisitor visitor)Visits thisStateObjectby the givenvisitor.NullComparisonExpressionStateObjectaddNot()Makes sure theNOTidentifier is specified.NullComparisonExpressiongetExpression()Returns the actual parsed object if thisStateObjectrepresentation of the JPQL query was created by parsing an existing JPQL query.StateObjectgetStateObject()Returns theStateObjectrepresenting the collection-valued path expression.booleanhasNot()Determines whether theNOTidentifier is used or not.booleanhasStateObject()Determines whether there is aStateObjectrepresenting the collection-valued path expression.booleanisEquivalent(StateObject stateObject)Determines whether the givenStateObjectis equivalent to this one, i.e.voidremoveNot()Makes sure theNOTidentifier is not specified.voidsetExpression(NullComparisonExpression expression)Keeps a reference of theparsed objectobject, which should only be done when this object is instantiated during the conversion of a parsed JPQL query intoStateObjects.voidsetNot(boolean not)Sets whether theNOTidentifier should be part of the expression or not.voidsetStateObject(StateObject stateObject)Sets the givenStateObjectas the collection-valued path expression.voidtoggleNot()Changes the visibility state of theNOTidentifier.-
Methods inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractStateObject
addPropertyChangeListener, children, decorate, equals, findIdentificationVariable, getDeclaration, getDecorator, getGrammar, getManagedTypeProvider, getParent, getQueryBuilder, getRoot, getType, getType, getTypeHelper, getTypeRepository, hashCode, isDecorated, removePropertyChangeListener, setExpression, setParent, toString, toString, toText
-
-
-
-
Field Detail
-
NOT_PROPERTY
public static String NOT_PROPERTY
Notifies the visibility of theNOTidentifier has changed.
-
STATE_OBJECT_PROPERTY
public static final String STATE_OBJECT_PROPERTY
Notifies the state object property has changed.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
NullComparisonExpressionStateObject
public NullComparisonExpressionStateObject(StateObject parent)
Creates a newNullComparisonExpressionStateObject.- Parameters:
parent- The parent of this state object, which cannot benull- Throws:
NullPointerException- The given parent cannot benull
-
NullComparisonExpressionStateObject
public NullComparisonExpressionStateObject(StateObject parent, boolean not, StateObject stateObject)
Creates a newNullComparisonExpressionStateObject.- Parameters:
parent- The parent of this state object, which cannot benullnot- Determines whether theNOTidentifier is part of the expression or notstateObject- TheStateObjectrepresenting the collection-valued path expression- Throws:
NullPointerException- The given parent cannot benull
-
NullComparisonExpressionStateObject
public NullComparisonExpressionStateObject(StateObject parent, boolean not, String path)
Creates a newNullComparisonExpressionStateObject.- Parameters:
parent- The parent of this state object, which cannot benullnot- Determines whether theNOTidentifier is part of the expression or notpath- Either the singled-valued path expression or the input parameter- Throws:
NullPointerException- The given parent cannot benull
-
NullComparisonExpressionStateObject
public NullComparisonExpressionStateObject(StateObject parent, StateObject stateObject)
Creates a newNullComparisonExpressionStateObject.- Parameters:
parent- The parent of this state object, which cannot benullstateObject- TheStateObjectrepresenting the collection-valued path expression- Throws:
NullPointerException- The given parent cannot benull
-
NullComparisonExpressionStateObject
public NullComparisonExpressionStateObject(StateObject parent, String path)
Creates a newNullComparisonExpressionStateObject.- Parameters:
parent- The parent of this state object, which cannot benullpath- Either the singled-valued path expression or the input parameter- Throws:
NullPointerException- The given parent cannot benull
-
-
Method Detail
-
accept
public void accept(StateObjectVisitor visitor)
Visits thisStateObjectby the givenvisitor.- Parameters:
visitor- Thevisitorto visit this object
-
addNot
public NullComparisonExpressionStateObject addNot()
Makes sure theNOTidentifier is specified.- Returns:
- This object
-
getExpression
public NullComparisonExpression getExpression()
Returns the actual parsed object if thisStateObjectrepresentation of the JPQL query was created by parsing an existing JPQL query.- Specified by:
getExpressionin interfaceStateObject- Overrides:
getExpressionin classAbstractStateObject- Returns:
- The parsed object when a JPQL query is parsed and converted into a
StateObjectornullwhen the JPQL query is manually created (i.e. not from a string)
-
getStateObject
public StateObject getStateObject()
Returns theStateObjectrepresenting the collection-valued path expression.- Returns:
- The
StateObjectrepresenting the collection-valued path expression
-
hasNot
public boolean hasNot()
Determines whether theNOTidentifier is used or not.- Returns:
trueif theNOTidentifier is part of the expression;falseotherwise
-
hasStateObject
public boolean hasStateObject()
Determines whether there is aStateObjectrepresenting the collection-valued path expression.- Returns:
trueif theStateObjectis notnull;falseotherwise
-
isEquivalent
public boolean isEquivalent(StateObject stateObject)
Determines whether the givenStateObjectis equivalent to this one, i.e. the information of bothStateObjectis the same.- Specified by:
isEquivalentin interfaceStateObject- Overrides:
isEquivalentin classAbstractStateObject- Parameters:
stateObject- TheStateObjectto compare its content to this one- Returns:
trueif both object are equivalent;falseotherwise
-
removeNot
public void removeNot()
Makes sure theNOTidentifier is not specified.
-
setExpression
public void setExpression(NullComparisonExpression expression)
Keeps a reference of theparsed objectobject, which should only be done when this object is instantiated during the conversion of a parsed JPQL query intoStateObjects.- Parameters:
expression- Theparsed objectrepresenting the null expression
-
setNot
public void setNot(boolean not)
Sets whether theNOTidentifier should be part of the expression or not.- Parameters:
not-trueif theNOTidentifier should be part of the expression;falseotherwise
-
setStateObject
public void setStateObject(StateObject stateObject)
Sets the givenStateObjectas the collection-valued path expression.- Parameters:
stateObject- TheStateObjectthat represents the collection-valued path expression
-
toggleNot
public void toggleNot()
Changes the visibility state of theNOTidentifier.
-
-