Writing an Operator
Overview
LogicalGraphs written in DataFlow are modeled as directed graphs of dataflow operators, with the outputs of one operator being linked to the inputs of others, and so on. While a number of common functions are represented in the provided operator library, it may be necessary to add additional custom operators to perform the desired processing.
All operators must declare their ports, must declare their configuration properties, and must be JSON serializable. See
General Requirements and Best Practices for more details.
When creating a new operator, one must always select among one of the following base classes:
In addition, one should implement one of the following "mix-in" interfaces if applicable:
•
RecordSourceOperator: mix-in interface that indicates that an operator is a source of data. Defines a single method RecordPort getOutput().
•
RecordSinkOperator: mix-in interface that indicates that an operator is a sink of data. Defines a single method RecordPort getInput().
The operator class hierarchy is as follows: