public class ExprContextPropertyNodeImpl extends ExprNodeBase implements ExprContextPropertyNode, ExprEvaluator, ExprForge
Constructor and Description |
---|
ExprContextPropertyNodeImpl(String propertyName) |
Modifier and Type | Method and Description |
---|---|
boolean |
equalsNode(ExprNode node,
boolean ignoreStreamPrefix)
Return true if a expression node semantically equals the current node, or false if not.
|
Object |
evaluate(EventBean[] eventsPerStream,
boolean isNewData,
ExprEvaluatorContext context)
Evaluate event tuple and return result.
|
CodegenExpression |
evaluateCodegen(CodegenParamSetExprPremade params,
CodegenContext context) |
ExprForgeComplexityEnum |
getComplexity() |
Class |
getEvaluationType() |
ExprEvaluator |
getExprEvaluator() |
ExprForge |
getForge() |
ExprNodeRenderable |
getForgeRenderable() |
EventPropertyGetter |
getGetter() |
ExprPrecedenceEnum |
getPrecedence()
Returns precedence.
|
String |
getPropertyName() |
Class |
getType() |
boolean |
isConstantResult()
Returns true if the expression node's evaluation value doesn't depend on any events data,
as must be determined at validation time, which is bottom-up and therefore
reliably allows each node to determine constant value.
|
void |
toPrecedenceFreeEPL(StringWriter writer) |
ExprNode |
validate(ExprValidationContext validationContext) |
accept, accept, acceptChildnodes, addChildNode, addChildNodes, addChildNodeToFront, getChildNodes, replaceUnlistedChildNode, setChildNode, setChildNodes, toEPL
public ExprContextPropertyNodeImpl(String propertyName)
public ExprEvaluator getExprEvaluator()
getExprEvaluator
in interface ExprForge
public String getPropertyName()
getPropertyName
in interface ExprContextPropertyNode
public Class getEvaluationType()
getEvaluationType
in interface ExprForge
public ExprNodeRenderable getForgeRenderable()
getForgeRenderable
in interface ExprForge
public ExprNode validate(ExprValidationContext validationContext) throws ExprValidationException
validate
in interface ExprValidator
ExprValidationException
public boolean isConstantResult()
ExprNode
isConstantResult
in interface ExprNode
public Object evaluate(EventBean[] eventsPerStream, boolean isNewData, ExprEvaluatorContext context)
ExprEvaluator
evaluate
in interface ExprEvaluator
eventsPerStream
- - event tupleisNewData
- - indicates whether we are dealing with new data (istream) or old data (rstream)context
- context for expression evaluationpublic CodegenExpression evaluateCodegen(CodegenParamSetExprPremade params, CodegenContext context)
evaluateCodegen
in interface ExprForge
public ExprForgeComplexityEnum getComplexity()
getComplexity
in interface ExprForge
public Class getType()
getType
in interface ExprContextPropertyNode
public void toPrecedenceFreeEPL(StringWriter writer)
toPrecedenceFreeEPL
in class ExprNodeBase
public ExprPrecedenceEnum getPrecedence()
ExprNode
getPrecedence
in interface ExprNode
public EventPropertyGetter getGetter()
getGetter
in interface ExprContextPropertyNode
public boolean equalsNode(ExprNode node, boolean ignoreStreamPrefix)
ExprNode
Concrete implementations should compare the type and any additional information that impact the evaluation of a node.
equalsNode
in interface ExprNode
node
- to compare toignoreStreamPrefix
- when the equals-comparison can ignore prefix of event properties