Class ModExpressionStateObject
- java.lang.Object
-
- org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractStateObject
-
- org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractEncapsulatedExpressionStateObject
-
- org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractDoubleEncapsulatedExpressionStateObject
-
- org.eclipse.persistence.jpa.jpql.tools.model.query.ModExpressionStateObject
-
- All Implemented Interfaces:
StateObject
public class ModExpressionStateObject extends AbstractDoubleEncapsulatedExpressionStateObject
The modulo operation finds the remainder of division of one number by another.It takes two integer arguments and returns an integer.
BNF:expression ::= MOD(simple_arithmetic_expression, simple_arithmetic_expression)- Version:
- 2.4
- See Also:
ModExpression- Author:
- Pascal Filion
- Since:
- 2.4
-
-
Field Summary
-
Fields inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractDoubleEncapsulatedExpressionStateObject
FIRST_STATE_OBJECT_PROPERTY, SECOND_STATE_OBJECT_PROPERTY
-
-
Constructor Summary
Constructors Constructor Description ModExpressionStateObject(StateObject parent)Creates a newModExpressionStateObject.ModExpressionStateObject(StateObject parent, java.lang.String firstJpqlFragment, java.lang.String secondJpqlFragment)Creates a newModExpressionStateObject.ModExpressionStateObject(StateObject parent, StateObject firstStateObject, StateObject secondStateObject)Creates a newModExpressionStateObject.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaccept(StateObjectVisitor visitor)Visits thisStateObjectby the givenvisitor.ModExpressiongetExpression()Returns the actual parsed object if thisStateObjectrepresentation of the JPQL query was created by parsing an existing JPQL query.protected java.lang.StringgetFirstQueryBNFId()Returns the unique identifier of the BNF that will be used to parse a JPQL fragment as the first encapsulated expression.java.lang.StringgetIdentifier()Returns the JPQL identifier of the expression represented by thisAbstractSingleEncapsulatedExpressionStateObject.protected java.lang.StringgetSecondQueryBNFId()Returns the unique identifier of the BNF that will be used to parse a JPQL fragment as the second encapsulated expression.voidsetExpression(ModExpression 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.-
Methods inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractDoubleEncapsulatedExpressionStateObject
addChildren, getFirst, getSecond, hasFirst, hasSecond, isEquivalent, parseFirst, parseSecond, setFirst, setSecond, toTextEncapsulatedExpression
-
Methods inherited from class org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractEncapsulatedExpressionStateObject
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, initialize, isDecorated, parent, parent, parent, removePropertyChangeListener, setExpression, setParent, toString, toString, toStringInternal, toStringItems, toText
-
-
-
-
Constructor Detail
-
ModExpressionStateObject
public ModExpressionStateObject(StateObject parent)
Creates a newModExpressionStateObject.- Parameters:
parent- The parent of this state object, which cannot benull- Throws:
java.lang.NullPointerException- The given parent cannot benull
-
ModExpressionStateObject
public ModExpressionStateObject(StateObject parent, StateObject firstStateObject, StateObject secondStateObject)
Creates a newModExpressionStateObject.- Parameters:
parent- The parent of this state object, which cannot benullfirstStateObject- TheStateObjectrepresenting the first expressionsecondStateObject- TheStateObjectrepresenting the second expression- Throws:
java.lang.NullPointerException- The given parent cannot benull
-
ModExpressionStateObject
public ModExpressionStateObject(StateObject parent, java.lang.String firstJpqlFragment, java.lang.String secondJpqlFragment)
Creates a newModExpressionStateObject.- Parameters:
parent- The parent of this state object, which cannot benullfirstJpqlFragment- The string representation of the first encapsulated expression to parse and to convert into aStateObjectrepresentationsecondJpqlFragment- The string representation of the second encapsulated expression to parse and to convert into aStateObjectrepresentation- Throws:
java.lang.NullPointerException- The given parent cannot benull
-
-
Method Detail
-
accept
public void accept(StateObjectVisitor visitor)
Visits thisStateObjectby the givenvisitor.- Parameters:
visitor- Thevisitorto visit this object
-
getExpression
public ModExpression 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 classAbstractDoubleEncapsulatedExpressionStateObject- 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)
-
getFirstQueryBNFId
protected java.lang.String getFirstQueryBNFId()
Returns the unique identifier of the BNF that will be used to parse a JPQL fragment as the first encapsulated expression.- Specified by:
getFirstQueryBNFIdin classAbstractDoubleEncapsulatedExpressionStateObject- Returns:
- The query BNF ID for the first encapsulated expression
-
getIdentifier
public java.lang.String getIdentifier()
Returns the JPQL identifier of the expression represented by thisAbstractSingleEncapsulatedExpressionStateObject.- Specified by:
getIdentifierin classAbstractEncapsulatedExpressionStateObject- Returns:
- The JPQL identifier that is shown before the left parenthesis
-
getSecondQueryBNFId
protected java.lang.String getSecondQueryBNFId()
Returns the unique identifier of the BNF that will be used to parse a JPQL fragment as the second encapsulated expression.- Specified by:
getSecondQueryBNFIdin classAbstractDoubleEncapsulatedExpressionStateObject- Returns:
- The query BNF ID for the second encapsulated expression
-
setExpression
public void setExpression(ModExpression 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 aMODexpression
-
-