Class ProtoDomain

java.lang.Object
org.apache.beam.sdk.extensions.protobuf.ProtoDomain
All Implemented Interfaces:
Serializable

public final class ProtoDomain extends Object implements Serializable
ProtoDomain is a container class for Protobuf descriptors. By using a domain for all descriptors that are related to each other the FileDescriptorSet needs to be serialized only once in the graph.

Using a domain also grantees that all Descriptors have object equality, just like statically compiled Proto classes Descriptors. A lot of Java code isn't used to the new DynamicMessages an assume always Object equality. Because of this the domain class is immutable.

ProtoDomains aren't assumed to be used on with normal Message descriptors, only with DynamicMessage descriptors.

See Also: