Operators and Connectors
Operator Soft State:
- Components: For each path going through an operator, store thread object handling the path, input/output connectors, I/O streams, and previous operator in control path.
- Creation: Connectors are set, I/O streams are created by the connectors, thread is started and registered to handle a path with a given ID.
- Management: Broken I/O streams can be replaced, threads suspended and resumed.
- Destruction: All soft state for a path is destroyed and the thread killed.
Operator Requirements:
- Source and destination: Inherit from a base class that manages all soft state.
- Intermediate: Inherit from a base class that manages all soft state, registers the intermediate operators as available and loads their XML descriptions into the XML registry.
- Operator authors required only to write XML and run() method.
Connector Requirements: Specific connectors inherit from a base class that provides the functionality needed to easily setup the input and output streams of an operator.