Class ProtoDomain
java.lang.Object
org.apache.beam.sdk.extensions.protobuf.ProtoDomain
- All Implemented Interfaces:
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:
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionstatic ProtoDomain
buildFrom
(DescriptorProtos.FileDescriptorSet fileDescriptorSet) static ProtoDomain
buildFrom
(Descriptors.Descriptor descriptor) static ProtoDomain
buildFrom
(Descriptors.FileDescriptor fileDescriptor) static ProtoDomain
buildFrom
(InputStream inputStream) boolean
contains
(Descriptors.Descriptor descriptor) boolean
getDescriptor
(String fullName) getFieldOptionById
(int id) getFileDescriptor
(String name) int
hashCode()
-
Field Details
-
serialVersionUID
public static final long serialVersionUID- See Also:
-
-
Method Details
-
buildFrom
-
buildFrom
-
buildFrom
-
buildFrom
- Throws:
IOException
-
getFileDescriptor
-
getDescriptor
-
getFieldOptionById
-
equals
-
hashCode
public int hashCode() -
contains
-