Class ReplaceOperation
- All Implemented Interfaces:
Serializable,StreamOperation,Expressible
replace(fieldA, 0, withValue=100) // for fieldA if equals 0 then set to 100
replace(fieldA, null, withValue=0) // for fieldA if null then set to 0
replace(fieldA, null, withField=fieldB) // for fieldA if null then set to the value of fieldB (if fieldB is null then fieldA will end up as null)
replace(fieldA, 0, withField=fieldB) // for fieldA if 0 then set to the value of fieldB (if fieldB is 0 then fieldA will end up as 0)
replace(fieldA, "Izzy and Kayden", withValue="my kids")
You can also construct these without the field name in the expression but that does require that you provide the field name during construction. This is most useful during metric calculation because when calculating a metric you have already provided a field name in the metric so there is no reason to have to provide the field name again in the operation sum(fieldA, replace(null, withValue=0)) // performs the replacement on fieldA
Equality is determined by the standard type .equals() functions.
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionReplaceOperation(String forField, StreamExpression expression, StreamFactory factory) ReplaceOperation(StreamExpression expression, StreamFactory factory) -
Method Summary
Modifier and TypeMethodDescriptionvoidtoExplanation(StreamFactory factory) Returns an explanation about the stream objecttoExpression(StreamFactory factory)
-
Constructor Details
-
ReplaceOperation
- Throws:
IOException
-
ReplaceOperation
public ReplaceOperation(String forField, StreamExpression expression, StreamFactory factory) throws IOException - Throws:
IOException
-
-
Method Details
-
operate
- Specified by:
operatein interfaceStreamOperation
-
toExpression
- Specified by:
toExpressionin interfaceExpressible- Throws:
IOException
-
toExplanation
Description copied from interface:ExpressibleReturns an explanation about the stream object- Specified by:
toExplanationin interfaceExpressible- Parameters:
factory- Stream factory for this, contains information about the function name- Returns:
- Explanation about this stream object containing explanations of any child stream objects
- Throws:
IOException- throw on any error
-