public class ExprIdentNodeImpl extends ExprNodeBase implements ExprIdentNode
Constructor and Description |
---|
ExprIdentNodeImpl(EventType eventType,
java.lang.String propertyName,
int streamNumber) |
ExprIdentNodeImpl(java.lang.String unresolvedPropertyName)
Ctor.
|
ExprIdentNodeImpl(java.lang.String unresolvedPropertyName,
java.lang.String streamOrPropertyName)
Ctor.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equalsNode(ExprNode node)
Return true if a expression node semantically equals the current node, or false if not.
|
java.util.Map<java.lang.String,java.lang.Object> |
getEventType() |
ExprEvaluator |
getExprEvaluator() |
ExprIdentNodeEvaluator |
getExprEvaluatorIdent() |
FilterSpecLookupable |
getFilterLookupable() |
boolean |
getFilterLookupEligible() |
java.lang.String |
getFullUnresolvedName()
Returns the unresolved property name in it's complete form, including
the stream name if there is one.
|
ExprPrecedenceEnum |
getPrecedence()
Returns precedence.
|
java.lang.String |
getResolvedPropertyName()
Return property name as resolved by lookup in streams.
|
java.lang.String |
getResolvedPropertyNameRoot()
Returns the root of the resolved property name, if any.
|
java.lang.String |
getResolvedStreamName()
Returns stream name as resolved by lookup of property in streams.
|
java.lang.String |
getRootPropertyNameIfAny() |
int |
getStreamId()
Returns stream id supplying the property value.
|
java.lang.String |
getStreamOrPropertyName()
For unit testing, returns stream or property name candidate.
|
java.lang.Integer |
getStreamReferencedIfAny() |
java.lang.Class |
getType() |
java.lang.String |
getUnresolvedPropertyName()
For unit testing, returns unresolved property name.
|
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 |
setStreamOrPropertyName(java.lang.String streamOrPropertyName)
Set name.
|
void |
toPrecedenceFreeEPL(java.io.StringWriter writer) |
java.lang.String |
toString() |
void |
validate(ExprValidationContext validationContext) |
accept, accept, acceptChildnodes, addChildNode, addChildNodes, addChildNodeToFront, getChildNodes, replaceUnlistedChildNode, setChildNode, setChildNodes, toEPL
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
accept, accept, acceptChildnodes, addChildNode, addChildNodes, getChildNodes, replaceUnlistedChildNode, setChildNode, setChildNodes, toEPL
public ExprIdentNodeImpl(java.lang.String unresolvedPropertyName)
unresolvedPropertyName
- is the event property name in unresolved form, ie. unvalidated against streamspublic ExprIdentNodeImpl(java.lang.String unresolvedPropertyName, java.lang.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 ExprIdentNodeImpl(EventType eventType, java.lang.String propertyName, int streamNumber)
public ExprEvaluator getExprEvaluator()
getExprEvaluator
in interface ExprNode
public java.util.Map<java.lang.String,java.lang.Object> getEventType()
public java.lang.String getUnresolvedPropertyName()
getUnresolvedPropertyName
in interface ExprIdentNode
public java.lang.String getStreamOrPropertyName()
getStreamOrPropertyName
in interface ExprIdentNode
public void setStreamOrPropertyName(java.lang.String streamOrPropertyName)
setStreamOrPropertyName
in interface ExprIdentNode
streamOrPropertyName
- to usepublic java.lang.String getFullUnresolvedName()
getFullUnresolvedName
in interface ExprIdentNode
public boolean getFilterLookupEligible()
getFilterLookupEligible
in interface ExprFilterOptimizableNode
public FilterSpecLookupable getFilterLookupable()
getFilterLookupable
in interface ExprFilterOptimizableNode
public void validate(ExprValidationContext validationContext) throws ExprValidationException
validate
in interface ExprValidator
ExprValidationException
public boolean isConstantResult()
ExprNode
isConstantResult
in interface ExprNode
public int getStreamId()
getStreamId
in interface ExprIdentNode
public java.lang.Integer getStreamReferencedIfAny()
getStreamReferencedIfAny
in interface ExprStreamRefNode
public java.lang.String getRootPropertyNameIfAny()
getRootPropertyNameIfAny
in interface ExprStreamRefNode
public java.lang.Class getType()
public java.lang.String getResolvedStreamName()
getResolvedStreamName
in interface ExprIdentNode
public java.lang.String getResolvedPropertyName()
getResolvedPropertyName
in interface ExprIdentNode
public java.lang.String getResolvedPropertyNameRoot()
getResolvedPropertyNameRoot
in interface ExprIdentNode
public java.lang.String toString()
toString
in class java.lang.Object
public void toPrecedenceFreeEPL(java.io.StringWriter writer)
toPrecedenceFreeEPL
in class ExprNodeBase
public ExprPrecedenceEnum getPrecedence()
ExprNode
getPrecedence
in interface ExprNode
public boolean equalsNode(ExprNode node)
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 topublic ExprIdentNodeEvaluator getExprEvaluatorIdent()
getExprEvaluatorIdent
in interface ExprIdentNode