Interface Transform
- All Known Implementing Classes:
ExpressionTransform
public interface Transform
A row transform that is part of a
TransformSpec. Transforms allow adding new fields to input rows. Each
one has a "name" (the name of the new field) which can be referred to by DimensionSpecs, AggregatorFactories, etc.
Each also has a "row function", which produces values for this new field based on looking at the entire input row.
If a transform has the same name as a field in an input row, then it will shadow the original field. Transforms
that shadow fields may still refer to the fields they shadow. This can be used to transform a field "in-place".
Transforms do have some limitations. They can only refer to fields present in the actual input rows; in particular,
they cannot refer to other transforms. And they cannot remove fields, only add them. However, they can shadow a
field with another field containing all nulls, which will act similarly to removing the field.-
Method Summary
Modifier and TypeMethodDescriptiongetName()Returns the field name for this transform.Returns the names of all columns that this transform is going to read.Returns the function for this transform.
-
Method Details
-
getName
String getName()Returns the field name for this transform. -
getRowFunction
RowFunction getRowFunction()Returns the function for this transform. The RowFunction takes an entire row as input and returns a column value as output. -
getRequiredColumns
Returns the names of all columns that this transform is going to read.
-