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(EPTypeClass requiredType,
CodegenMethodScope codegenMethodScope,
ExprForgeCodegenSymbol exprSymbol,
CodegenClassScope codegenClassScope) |
CodegenExpression |
evaluateCodegenUninstrumented(EPTypeClass requiredType,
CodegenMethodScope codegenMethodScope,
ExprForgeCodegenSymbol exprSymbol,
CodegenClassScope codegenClassScope) |
ExprEnumerationForgeDesc |
getEnumerationForge(StreamTypeService streamTypeService,
ContextCompileTimeDescriptor contextDescriptor)
Returns the enumeration forge provider, or null if not applicable
|
EPType |
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() |
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,
ExprNodeRenderableFlags flags) |
static void |
toPrecedenceFreeEPL(StringWriter writer,
String streamOrPropertyName,
String unresolvedPropertyName,
ExprNodeRenderableFlags flags) |
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 EPType getEvaluationType()
getEvaluationType
in interface ExprForge
public CodegenExpression evaluateCodegenUninstrumented(EPTypeClass requiredType, CodegenMethodScope codegenMethodScope, ExprForgeCodegenSymbol exprSymbol, CodegenClassScope codegenClassScope)
evaluateCodegenUninstrumented
in interface ExprForgeInstrumentable
public CodegenExpression evaluateCodegen(EPTypeClass 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 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, ExprNodeRenderableFlags flags)
toPrecedenceFreeEPL
in class ExprNodeBase
public static void toPrecedenceFreeEPL(StringWriter writer, String streamOrPropertyName, String unresolvedPropertyName, ExprNodeRenderableFlags flags)
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
public ExprEnumerationForgeDesc getEnumerationForge(StreamTypeService streamTypeService, ContextCompileTimeDescriptor contextDescriptor)
ExprEnumerationForgeProvider
getEnumerationForge
in interface ExprEnumerationForgeProvider
streamTypeService
- stream type servicecontextDescriptor
- context descriptorCopyright © 2005–2021. All rights reserved.