Class CaseSwitchExpression

java.lang.Object
com.espertech.esper.common.client.soda.ExpressionBase
com.espertech.esper.common.client.soda.CaseSwitchExpression
All Implemented Interfaces:
Expression, Serializable

public class CaseSwitchExpression extends ExpressionBase
Case-expression that acts as a switch testing a value against other values.

The first child expression provides the value to switch on. The following pairs of child expressions provide the "when expression then expression" results. The last child expression provides the "else" result.

See Also:
  • Constructor Details

    • CaseSwitchExpression

      public CaseSwitchExpression()
      Ctor - for use to create an expression tree, without inner expression
    • CaseSwitchExpression

      public CaseSwitchExpression(Expression switchValue)
      Ctor.
      Parameters:
      switchValue - is the expression providing the value to switch on
  • Method Details

    • add

      public CaseSwitchExpression add(Expression when, Expression then)
      Adds a pair of expressions representing a "when" and a "then" in the switch.
      Parameters:
      when - expression to match on
      then - expression to return a conditional result when the when-expression matches
      Returns:
      expression
    • setElse

      public CaseSwitchExpression setElse(Expression elseExpr)
      Sets the else-part of the case-switch. This result of this expression is returned when no when-expression matched.
      Parameters:
      elseExpr - is the expression returning the no-match value
      Returns:
      expression
    • getPrecedence

      public ExpressionPrecedenceEnum getPrecedence()
      Description copied from interface: Expression
      Returns precedence.
      Returns:
      precedence
    • toPrecedenceFreeEPL

      public void toPrecedenceFreeEPL(StringWriter writer)
      Description copied from class: ExpressionBase
      Renders the expressions and all it's child expression, in full tree depth, as a string in language syntax.
      Specified by:
      toPrecedenceFreeEPL in class ExpressionBase
      Parameters:
      writer - is the output to use