ConfigT
- A configuration object which will be populated with the external configuration.InputT
- The input type of the externally configured PTransform.OutputT
- The output type of the externally configured PTransform.@Experimental(value=PORTABILITY) public interface ExternalTransformBuilder<ConfigT,InputT extends PInput,OutputT extends POutput>
Classes which implement this interface will be instantiated externally and require a zero-args
constructor. The buildExternal
method will be called with the configuration object as a
parameter.
This builder needs to be registered alongside with a URN through ExternalTransformRegistrar
. Note that the configuration requires setters for all configuration
parameters, e.g. if there is a parameter "start", there should be a corresponding setter
"setStart".
Modifier and Type | Method and Description |
---|---|
PTransform<InputT,OutputT> |
buildExternal(ConfigT configuration)
Builds the transform after it has been configured.
|
default java.util.Optional<java.util.List<java.lang.String>> |
getDependencies(ConfigT configuration,
PipelineOptions options)
List the dependencies needed for this transform.
|
PTransform<InputT,OutputT> buildExternal(ConfigT configuration)
default java.util.Optional<java.util.List<java.lang.String>> getDependencies(ConfigT configuration, PipelineOptions options)