Class CaseNode
- java.lang.Object
-
- org.eclipse.persistence.internal.jpa.parsing.Node
-
- org.eclipse.persistence.internal.jpa.parsing.CaseNode
-
- All Implemented Interfaces:
AliasableNode
public class CaseNode extends Node implements AliasableNode
INTERNALPurpose: Represent an CASE statement in EJBQL
Responsibilities:
- Generate the correct expression for an CASE in EJBQL
- Since:
- EclipseLink 1.2
- Author:
- tware
-
-
Field Summary
-
Fields inherited from class org.eclipse.persistence.internal.jpa.parsing.Node
alias, left, right, shouldGenerateExpression
-
-
Constructor Summary
Constructors Constructor Description CaseNode()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
applyToQuery(ObjectLevelReadQuery theQuery, GenerationContext generationContext)
INTERNAL Apply this node to the passed queryExpression
generateExpression(GenerationContext context)
INTERNAL Generate the a new EclipseLink TableEntryExpression for this node.List
getWhenClauses()
boolean
isAliasableNode()
void
setWhenClauses(List whenClauses)
void
validate(ParseTreeContext context)
INTERNAL Validate node and calculate 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, isMinusNode, 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 generationContext)
INTERNAL Apply this node to the passed query- Overrides:
applyToQuery
in classNode
-
generateExpression
public Expression generateExpression(GenerationContext context)
INTERNAL Generate the a new EclipseLink TableEntryExpression for this node.- Overrides:
generateExpression
in classNode
-
validate
public void validate(ParseTreeContext context)
Description copied from class:Node
INTERNAL Validate node and calculate its type.
-
getWhenClauses
public List getWhenClauses()
-
setWhenClauses
public void setWhenClauses(List whenClauses)
-
isAliasableNode
public boolean isAliasableNode()
- Overrides:
isAliasableNode
in classNode
-
-