com.espertech.esper.epl.expression.funcs
Class ExprCastNode

java.lang.Object
  extended by com.espertech.esper.epl.expression.core.ExprNodeBase
      extended by com.espertech.esper.epl.expression.funcs.ExprCastNode
All Implemented Interfaces:
ExprNode, ExprValidator, MetaDefItem, java.io.Serializable

public class ExprCastNode
extends ExprNodeBase

Represents the CAST(expression, type) function is an expression tree.

See Also:
Serialized Form

Nested Class Summary
static interface ExprCastNode.CasterParserComputer
          Casting and parsing computer.
static class ExprCastNode.NonnumericCasterComputer
          Casting and parsing computer.
static class ExprCastNode.NumberCasterComputer
          Casting and parsing computer.
static class ExprCastNode.StringParserComputer
          Casting and parsing computer.
static class ExprCastNode.StringToCalendarWDynamicFormatComputer
           
static class ExprCastNode.StringToCalendarWStaticFormatComputer
           
static class ExprCastNode.StringToCalendarWStaticISOFormatComputer
           
static class ExprCastNode.StringToDateLongWDynamicFormat
           
static class ExprCastNode.StringToDateLongWStaticFormat
           
static class ExprCastNode.StringToDateWDynamicFormatComputer
           
static class ExprCastNode.StringToDateWStaticFormatComputer
           
static class ExprCastNode.StringToDateWStaticISOFormatComputer
           
static class ExprCastNode.StringToLongWDynamicFormatComputer
           
static class ExprCastNode.StringToLongWStaticFormatComputer
           
static class ExprCastNode.StringToLongWStaticISOFormatComputer
           
static class ExprCastNode.StringXFormComputer
          Casting and parsing computer.
 
Constructor Summary
ExprCastNode(java.lang.String classIdentifier)
          Ctor.
 
Method Summary
 boolean equalsNode(ExprNode node)
          Return true if a expression node semantically equals the current node, or false if not.
 java.lang.String getClassIdentifier()
          Returns the name of the type of cast to.
 ExprEvaluator getExprEvaluator()
           
 ExprPrecedenceEnum getPrecedence()
          Returns precedence.
 java.lang.Class getTargetType()
           
static EPException handleParseException(java.lang.String formatString, java.lang.String date, java.text.ParseException ex)
           
static EPException handleParseISOException(java.lang.String date, ScheduleParameterException ex)
           
 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(java.io.StringWriter writer)
           
 ExprNode validate(ExprValidationContext validationContext)
           
 
Methods inherited from class com.espertech.esper.epl.expression.core.ExprNodeBase
accept, accept, acceptChildnodes, addChildNode, addChildNodes, addChildNodeToFront, getChildNodes, replaceUnlistedChildNode, setChildNode, setChildNodes, toEPL
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ExprCastNode

public ExprCastNode(java.lang.String classIdentifier)
Ctor.

Parameters:
classIdentifier - the the name of the type to cast to
Method Detail

getExprEvaluator

public ExprEvaluator getExprEvaluator()

getClassIdentifier

public java.lang.String getClassIdentifier()
Returns the name of the type of cast to.

Returns:
type name

validate

public ExprNode validate(ExprValidationContext validationContext)
                  throws ExprValidationException
Throws:
ExprValidationException

isConstantResult

public boolean isConstantResult()
Description copied from interface: ExprNode
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.

Returns:
true for constant evaluation value, false for non-constant evaluation value

getTargetType

public java.lang.Class getTargetType()

toPrecedenceFreeEPL

public void toPrecedenceFreeEPL(java.io.StringWriter writer)
Specified by:
toPrecedenceFreeEPL in class ExprNodeBase

getPrecedence

public ExprPrecedenceEnum getPrecedence()
Description copied from interface: ExprNode
Returns precedence.

Returns:
precedence

equalsNode

public boolean equalsNode(ExprNode node)
Description copied from interface: ExprNode
Return true if a expression node semantically equals the current node, or false if not.

Concrete implementations should compare the type and any additional information that impact the evaluation of a node.

Parameters:
node - to compare to
Returns:
true if semantically equal, or false if not equals

handleParseException

public static EPException handleParseException(java.lang.String formatString,
                                               java.lang.String date,
                                               java.text.ParseException ex)

handleParseISOException

public static EPException handleParseISOException(java.lang.String date,
                                                  ScheduleParameterException ex)

© 2006-2015 EsperTech Inc.
All rights reserved.
Visit us at espertech.com