public abstract static class PTransformTranslation.RawPTransform<InputT extends PInput,OutputT extends POutput> extends PTransform<InputT,OutputT>
PTransform
that indicates its URN and payload directly.
This is the result of rehydrating transforms from a pipeline proto. There is no expand(InputT)
method since the definition of the transform may be lost. The transform is already
fully expanded in the pipeline proto.
annotations, displayData, name, resourceHints
Constructor and Description |
---|
RawPTransform() |
Modifier and Type | Method and Description |
---|---|
OutputT |
expand(InputT input)
By default, throws an exception, but can be overridden.
|
abstract @Nullable org.apache.beam.model.pipeline.v1.RunnerApi.FunctionSpec |
getSpec()
The payload for this transform, if any.
|
@Nullable java.lang.String |
getUrn()
The URN for this transform, if standardized.
|
org.apache.beam.model.pipeline.v1.RunnerApi.FunctionSpec |
migrate(SdkComponents components)
Build a new payload set in the context of the given
SdkComponents , if applicable. |
addAnnotation, compose, compose, getAdditionalInputs, getAnnotations, getDefaultOutputCoder, getDefaultOutputCoder, getDefaultOutputCoder, getKindString, getName, getResourceHints, populateDisplayData, setDisplayData, setResourceHints, toString, validate, validate
public @Nullable java.lang.String getUrn()
public abstract @Nullable org.apache.beam.model.pipeline.v1.RunnerApi.FunctionSpec getSpec()
public org.apache.beam.model.pipeline.v1.RunnerApi.FunctionSpec migrate(SdkComponents components) throws java.io.IOException
SdkComponents
, if applicable.
When re-serializing this transform, the ids reference in the rehydrated payload may conflict with those defined by the serialization context. In that case, the components must be re-registered and a new payload returned.
java.io.IOException
public OutputT expand(InputT input)
It is permissible for runner-specific transforms to be both a PTransformTranslation.RawPTransform
that
directly vends its proto representation and also to expand, for convenience of not having to
register a translator.