public class LengthPrefixUnknownCoders
extends java.lang.Object
LengthPrefixCoder
.
TODO: Support a dynamic list of well known coders using either registration or manual listing, possibly from ModelCoderRegistrar.
Constructor and Description |
---|
LengthPrefixUnknownCoders() |
Modifier and Type | Method and Description |
---|---|
static org.apache.beam.model.pipeline.v1.RunnerApi.MessageWithComponents |
forCoder(java.lang.String coderId,
org.apache.beam.model.pipeline.v1.RunnerApi.Components components,
boolean replaceWithByteArrayCoder)
Recursively traverse the coder tree and wrap the first unknown coder in every branch with a
LengthPrefixCoder unless an ancestor coder is itself a LengthPrefixCoder . |
public static org.apache.beam.model.pipeline.v1.RunnerApi.MessageWithComponents forCoder(java.lang.String coderId, org.apache.beam.model.pipeline.v1.RunnerApi.Components components, boolean replaceWithByteArrayCoder)
LengthPrefixCoder
unless an ancestor coder is itself a LengthPrefixCoder
. If
replaceWithByteArrayCoder
is set, then replace that unknown coder with a
ByteArrayCoder
. Note that no ids that are generated will collide with the ids supplied
within the coder map
key space.coderId
- The root coder contained within coders
to start the recursive descent
from.components
- Contains the root coder and all component coders.replaceWithByteArrayCoder
- whether to replace an unknown coder with a
ByteArrayCoder
.RunnerApi.MessageWithComponents
with the
root coder
and its component coders. Note that no ids
that are generated will collide with the ids supplied within the
coder map
key space.