Package io.atlasmap.expression.internal
Class ArithmeticExpression
- java.lang.Object
-
- io.atlasmap.expression.internal.BinaryExpression
-
- io.atlasmap.expression.internal.ArithmeticExpression
-
- All Implemented Interfaces:
Expression
public abstract class ArithmeticExpression extends BinaryExpression
An expression which performs an operation on two expression values.- Version:
- $Revision: 1.2 $
-
-
Field Summary
Fields Modifier and Type Field Description protected static intDOUBLEdoubleprotected static intINTEGERintegerprotected static intLONGlong-
Fields inherited from class io.atlasmap.expression.internal.BinaryExpression
left, right
-
Fields inherited from interface io.atlasmap.expression.Expression
CACHE
-
-
Constructor Summary
Constructors Constructor Description ArithmeticExpression(Expression left, Expression right)Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected NumberasNumber(Object value)Conerts toNumber.static ExpressioncreateDivide(Expression left, Expression right)Creates divide expression.static ExpressioncreateMinus(Expression left, Expression right)Creates minus expression.static ExpressioncreateMod(Expression left, Expression right)Creates mod expression.static ExpressioncreateMultiply(Expression left, Expression right)Creates multiply expression.static ExpressioncreatePlus(Expression left, Expression right)Creates plus expression.protected Numberdivide(Number left, Number right)Calculates divide.io.atlasmap.v2.Fieldevaluate(ExpressionContext message)Evaluates the expression.protected abstract io.atlasmap.v2.Fieldevaluate(io.atlasmap.v2.Field lvalue, io.atlasmap.v2.Field rvalue)Evaluates the expression.protected Numberminus(Number left, Number right)Calculates minus.protected Numbermod(Number left, Number right)Calculates mod.protected Numbermultiply(Number left, Number right)Calculates multiply.protected Numberplus(Number left, Number right)Calculates plus.-
Methods inherited from class io.atlasmap.expression.internal.BinaryExpression
equals, getExpressionSymbol, getLeft, getRight, hashCode, setLeft, setRight, toString
-
-
-
-
Field Detail
-
INTEGER
protected static final int INTEGER
integer- See Also:
- Constant Field Values
-
LONG
protected static final int LONG
long- See Also:
- Constant Field Values
-
DOUBLE
protected static final int DOUBLE
double- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ArithmeticExpression
public ArithmeticExpression(Expression left, Expression right)
Constructor.- Parameters:
left- The leftExpressionright- The rightExpression
-
-
Method Detail
-
createPlus
public static Expression createPlus(Expression left, Expression right)
Creates plus expression.- Parameters:
left- leftright- right- Returns:
- expression
-
createMinus
public static Expression createMinus(Expression left, Expression right)
Creates minus expression.- Parameters:
left- leftright- right- Returns:
- expression
-
createMultiply
public static Expression createMultiply(Expression left, Expression right)
Creates multiply expression.- Parameters:
left- leftright- right- Returns:
- expression
-
createDivide
public static Expression createDivide(Expression left, Expression right)
Creates divide expression.- Parameters:
left- leftright- right- Returns:
- expression
-
createMod
public static Expression createMod(Expression left, Expression right)
Creates mod expression.- Parameters:
left- leftright- right- Returns:
- expression
-
plus
protected Number plus(Number left, Number right)
Calculates plus.- Parameters:
left- leftright- right- Returns:
- result
-
minus
protected Number minus(Number left, Number right)
Calculates minus.- Parameters:
left- leftright- right- Returns:
- result
-
multiply
protected Number multiply(Number left, Number right)
Calculates multiply.- Parameters:
left- leftright- right- Returns:
- result
-
divide
protected Number divide(Number left, Number right)
Calculates divide.- Parameters:
left- leftright- right- Returns:
- result
-
mod
protected Number mod(Number left, Number right)
Calculates mod.- Parameters:
left- leftright- right- Returns:
- result
-
asNumber
protected Number asNumber(Object value)
Conerts toNumber.- Parameters:
value- value- Returns:
- result
-
evaluate
public io.atlasmap.v2.Field evaluate(ExpressionContext message) throws ExpressionException
Evaluates the expression.- Parameters:
message- expression context- Returns:
- result
Field - Throws:
ExpressionException- If evaluation fails
-
evaluate
protected abstract io.atlasmap.v2.Field evaluate(io.atlasmap.v2.Field lvalue, io.atlasmap.v2.Field rvalue)Evaluates the expression.- Parameters:
lvalue-Fieldrepresents left valuervalue-Fieldrepresents right value- Returns:
Fieldrepresents a result
-
-