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 voidapplyToQuery(ObjectLevelReadQuery theQuery, GenerationContext context)INTERNAL Apply this node to the passed queryExpressiongenerateExpression(GenerationContext context)INTERNAL Generate the expression.booleanisAliasableNode()booleanisMinusNode()INTERNAL Is this node a Minus nodevoidvalidate(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:
applyToQueryin classNode
-
validate
public void validate(ParseTreeContext context)
INTERNAL Validate node and calculates its type.- Overrides:
validatein 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:
generateExpressionin classNode
-
isMinusNode
public boolean isMinusNode()
Description copied from class:NodeINTERNAL Is this node a Minus node- Overrides:
isMinusNodein classNode
-
isAliasableNode
public boolean isAliasableNode()
- Overrides:
isAliasableNodein classNode
-
-