Package com.tibco.ep.tcs.runtime.config
Interface ICustomOperatorProducer
-
public interface ICustomOperatorProducer
An interface describing conversion of a HOCON block configuration to the information required to instantiate an EventFlow operator. The producer interface provides:
- Validation that a particular configuration schema can be processed by this producer.
- Validation of an instance of the configuration schema.
- Returning of the operator IR type associated with a particular configuration and/or this producer.
- Configuring of an operator IR using a particular configuration.
- A set of input port descriptions, each with an optional tuple schema hint.
- A set of output port descriptions.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
canProcessConfigurationsFor(String schemaURL)
Return true if this producer can process configurations that conform to the specified JSON schema, false otherwise.void
configureOperatorIR(com.streambase.sb.ir.OperatorIr operatorIR, com.typesafe.config.Config config)
Configure the specified operator IR.Map<String,DataInputPortConfig>
getInputPorts(com.typesafe.config.Config config, TupleSchemaFactory tupleSchemaFactory, FlowValidationProblemList problems)
Produce input port descriptions.String
getOperatorIRType(com.typesafe.config.Config config)
Return an operator IR type appropriate for the specified configuration.Map<String,DataOutputPortConfig>
getOutputPorts(com.typesafe.config.Config config)
Produce output port descriptions.void
validate(com.typesafe.config.Config config, FlowValidationProblemList problems)
Semantic validation of the operator configuration
-
-
-
Method Detail
-
canProcessConfigurationsFor
boolean canProcessConfigurationsFor(String schemaURL)
Return true if this producer can process configurations that conform to the specified JSON schema, false otherwise.
- Parameters:
schemaURL
- schema to check- Returns:
- true or false as described above
-
validate
void validate(com.typesafe.config.Config config, FlowValidationProblemList problems)
Semantic validation of the operator configuration
- Parameters:
config
- operator configuration to validate, conforming to a JSON schema appropriate for this classproblems
- added to if there are any semantic validation errors of the schema
-
getOperatorIRType
String getOperatorIRType(com.typesafe.config.Config config)
Return an operator IR type appropriate for the specified configuration.
- Parameters:
config
- operator configuration, conforming to a JSON schema appropriate for this class- Returns:
- operator IR type
-
configureOperatorIR
void configureOperatorIR(com.streambase.sb.ir.OperatorIr operatorIR, com.typesafe.config.Config config)
Configure the specified operator IR.
- Parameters:
operatorIR
- operator IR to configureconfig
- operator configuration, conforming to a JSON schema appropriate for this class
-
getInputPorts
Map<String,DataInputPortConfig> getInputPorts(com.typesafe.config.Config config, TupleSchemaFactory tupleSchemaFactory, FlowValidationProblemList problems)
Produce input port descriptions. The result is an associative array of descriptions, indexed by port name.
- Parameters:
config
- instance configuration to processtupleSchemaFactory
- used to create optional EventFlow tuple schemas associated with the input portsproblems
- container for any problems encountered while creating tuple schemas- Returns:
- input port descriptions
-
getOutputPorts
Map<String,DataOutputPortConfig> getOutputPorts(com.typesafe.config.Config config)
Produce output port descriptions. The result is an associative array of port descriptions, indexed by port name.
- Parameters:
config
- instance configuration to process- Returns:
- output port descriptions
-
-