Class MinusNode
- java.lang.Object
-
- org.eclipse.persistence.internal.jpa.parsing.Node
-
- org.eclipse.persistence.internal.jpa.parsing.BinaryOperatorNode
-
- org.eclipse.persistence.internal.jpa.parsing.MinusNode
-
- All Implemented Interfaces:
AliasableNode
public class MinusNode extends BinaryOperatorNode implements AliasableNode
INTERNALPurpose: Represent a '-' in EJBQL
Responsibilities:
- Generate the correct expression for a '-'
- Since:
- July 2003
- Author:
- Jon Driscoll and Joel Lucuik
-
-
Field Summary
-
Fields inherited from class org.eclipse.persistence.internal.jpa.parsing.Node
alias, left, right, shouldGenerateExpression
-
-
Constructor Summary
Constructors Constructor Description MinusNode()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
applyToQuery(ObjectLevelReadQuery theQuery, GenerationContext context)
INTERNAL Apply this node to the passed queryExpression
generateExpression(GenerationContext context)
INTERNAL Generate the expression.boolean
isAliasableNode()
boolean
isMinusNode()
INTERNAL Is this node a Minus nodevoid
validate(ParseTreeContext context)
INTERNAL Validate node and calculates its type.-
Methods inherited from class org.eclipse.persistence.internal.jpa.parsing.Node
addToExpression, appendExpression, getAlias, getAsString, getColumn, getLeft, getLine, getRight, getType, hasLeft, hasRight, isAggregateNode, isAttributeNode, isConstructorNode, isCountNode, isDivideNode, isDotNode, isEscape, isLiteralNode, isMapKeyNode, isMultiplyNode, isNotNode, isParameterNode, isPlusNode, isSubqueryNode, isVariableNode, qualifyAttributeAccess, resolveAttribute, resolveClass, resolveClass, resolveMapping, resolveMapping, setAlias, setColumn, setLeft, setLine, setRight, setType, toString, toString, toStringDisplayName, toStringIndent, validateParameter
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.eclipse.persistence.internal.jpa.parsing.AliasableNode
getAlias, setAlias
-
-
-
-
Method Detail
-
applyToQuery
public void applyToQuery(ObjectLevelReadQuery theQuery, GenerationContext context)
INTERNAL Apply this node to the passed query- Overrides:
applyToQuery
in classNode
-
validate
public void validate(ParseTreeContext context)
INTERNAL Validate node and calculates its type.- Overrides:
validate
in classBinaryOperatorNode
-
generateExpression
public Expression generateExpression(GenerationContext context)
INTERNAL Generate the expression. The steps are: 1. Generate the expression for the left node 2. Add the .subtract to the where clause returned from step 1 3. Generate the expression for the right side and use it as the parameter for the .subtract() 4. Return the completed where clause to the caller- Overrides:
generateExpression
in classNode
-
isMinusNode
public boolean isMinusNode()
Description copied from class:Node
INTERNAL Is this node a Minus node- Overrides:
isMinusNode
in classNode
-
isAliasableNode
public boolean isAliasableNode()
- Overrides:
isAliasableNode
in classNode
-
-