public class ExprIdentNodeImpl extends ExprNodeBase implements ExprIdentNode, ExprNode, ExprForgeInstrumentable
Constructor and Description |
---|
ExprIdentNodeImpl(EventType eventType,
String propertyName,
int streamNumber) |
ExprIdentNodeImpl(String unresolvedPropertyName)
Ctor.
|
ExprIdentNodeImpl(String unresolvedPropertyName,
String streamOrPropertyName)
Ctor.
|
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.
|
CodegenExpression |
evaluateCodegen(Class requiredType,
CodegenMethodScope codegenMethodScope,
ExprForgeCodegenSymbol exprSymbol,
CodegenClassScope codegenClassScope) |
CodegenExpression |
evaluateCodegenUninstrumented(Class requiredType,
CodegenMethodScope codegenMethodScope,
ExprForgeCodegenSymbol exprSymbol,
CodegenClassScope codegenClassScope) |
Class |
getEvaluationType() |
ExprEvaluator |
getExprEvaluator() |
ExprIdentNodeEvaluator |
getExprEvaluatorIdent() |
ExprFilterSpecLookupableForge |
getFilterLookupable() |
boolean |
getFilterLookupEligible() |
ExprForge |
getForge() |
ExprForgeConstantType |
getForgeConstantType() |
ExprNodeRenderable |
getForgeRenderable() |
String |
getFullUnresolvedName()
Returns the unresolved property name in it's complete form, including
the stream name if there is one.
|
ExprPrecedenceEnum |
getPrecedence()
Returns precedence.
|
String |
getResolvedPropertyName()
Return property name as resolved by lookup in streams.
|
String |
getResolvedPropertyNameRoot()
Returns the root of the resolved property name, if any.
|
String |
getResolvedStreamName()
Returns stream name as resolved by lookup of property in streams.
|
String |
getRootPropertyNameIfAny() |
int |
getStreamId()
Returns stream id supplying the property value.
|
String |
getStreamOrPropertyName()
For unit testing, returns stream or property name candidate.
|
Integer |
getStreamReferencedIfAny() |
Class |
getType() |
String |
getUnresolvedPropertyName()
For unit testing, returns unresolved property name.
|
boolean |
isConstantResult() |
void |
setOptionalEvent(boolean optionalEvent) |
void |
setStreamOrPropertyName(String streamOrPropertyName)
Set name.
|
void |
toPrecedenceFreeEPL(StringWriter writer) |
static void |
toPrecedenceFreeEPL(StringWriter writer,
String streamOrPropertyName,
String unresolvedPropertyName) |
String |
toString() |
ExprNode |
validate(ExprValidationContext validationContext) |
accept, accept, acceptChildnodes, addChildNode, addChildNodes, addChildNodeToFront, checkValidated, checkValidatedException, getChildNodes, replaceUnlistedChildNode, setChildNode, setChildNodes, toEPL
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
accept, accept, acceptChildnodes, addChildNode, addChildNodes, getChildNodes, replaceUnlistedChildNode, setChildNode, setChildNodes
toEPL
public ExprIdentNodeImpl(String unresolvedPropertyName)
unresolvedPropertyName
- is the event property name in unresolved form, ie. unvalidated against streamspublic ExprIdentNodeImpl(String unresolvedPropertyName, String streamOrPropertyName)
unresolvedPropertyName
- is the event property name in unresolved form, ie. unvalidated against streamsstreamOrPropertyName
- is the stream name, or if not a valid stream name a possible nested property name
in one of the streams.public ExprForgeConstantType getForgeConstantType()
getForgeConstantType
in interface ExprForge
public ExprNodeRenderable getForgeRenderable()
getForgeRenderable
in interface ExprForge
public Class getEvaluationType()
getEvaluationType
in interface ExprForge
public CodegenExpression evaluateCodegenUninstrumented(Class requiredType, CodegenMethodScope codegenMethodScope, ExprForgeCodegenSymbol exprSymbol, CodegenClassScope codegenClassScope)
evaluateCodegenUninstrumented
in interface ExprForgeInstrumentable
public CodegenExpression evaluateCodegen(Class requiredType, CodegenMethodScope codegenMethodScope, ExprForgeCodegenSymbol exprSymbol, CodegenClassScope codegenClassScope)
evaluateCodegen
in interface ExprForge
public ExprEvaluator getExprEvaluator()
getExprEvaluator
in interface ExprForge
public String getUnresolvedPropertyName()
getUnresolvedPropertyName
in interface ExprIdentNode
public String getStreamOrPropertyName()
getStreamOrPropertyName
in interface ExprIdentNode
public void setStreamOrPropertyName(String streamOrPropertyName)
setStreamOrPropertyName
in interface ExprIdentNode
streamOrPropertyName
- to usepublic void setOptionalEvent(boolean optionalEvent)
setOptionalEvent
in interface ExprIdentNode
public String getFullUnresolvedName()
getFullUnresolvedName
in interface ExprIdentNode
public boolean getFilterLookupEligible()
getFilterLookupEligible
in interface ExprFilterOptimizableNode
public ExprFilterSpecLookupableForge getFilterLookupable()
getFilterLookupable
in interface ExprFilterOptimizableNode
public ExprNode validate(ExprValidationContext validationContext) throws ExprValidationException
validate
in interface ExprValidator
ExprValidationException
public boolean isConstantResult()
public int getStreamId()
getStreamId
in interface ExprIdentNode
public Integer getStreamReferencedIfAny()
getStreamReferencedIfAny
in interface ExprStreamRefNode
public String getRootPropertyNameIfAny()
getRootPropertyNameIfAny
in interface ExprStreamRefNode
public Class getType()
public String getResolvedStreamName()
getResolvedStreamName
in interface ExprIdentNode
public String getResolvedPropertyName()
getResolvedPropertyName
in interface ExprIdentNode
public String getResolvedPropertyNameRoot()
getResolvedPropertyNameRoot
in interface ExprIdentNode
public void toPrecedenceFreeEPL(StringWriter writer)
toPrecedenceFreeEPL
in class ExprNodeBase
public static void toPrecedenceFreeEPL(StringWriter writer, String streamOrPropertyName, String unresolvedPropertyName)
public ExprPrecedenceEnum getPrecedence()
ExprNode
getPrecedence
in interface ExprNode
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 propertiespublic ExprIdentNodeEvaluator getExprEvaluatorIdent()
getExprEvaluatorIdent
in interface ExprIdentNode
Copyright © 2005–2018. All rights reserved.