Class Descriptors
java.lang.Object
com.google.protobuf.Descriptors
Contains a collection of classes which describe protocol message types.
Every message type has a Descriptors.Descriptor, which lists all its fields and other information
about a type. You can get a message type's descriptor by calling
MessageType.getDescriptor(), or (given a message object of the type)
message.getDescriptorForType(). Furthermore, each message is associated with a Descriptors.FileDescriptor for a relevant .proto file. You can obtain it by calling
Descriptor.getFile(). A Descriptors.FileDescriptor contains descriptors for all the messages defined
in that file, and file descriptors for all the imported .proto files.
Descriptors are built from DescriptorProtos, as defined in
google/protobuf/descriptor.proto.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classDescribes a message type.static classThrown when building descriptors fails because the source DescriptorProtos are not valid.static final classDescribes an enum type.static final classDescribes one value within an enum type.static final classDescribes a field of a message type.static final classDescribes a.protofile, including everything defined within.private static final classA private helper class which contains lookup tables containing all the descriptors defined in a particular file.static classAll descriptors implement this to make it easier to implement tools likeFileDescriptorTables.static final classDescribes one method within a service type.static final classDescribes a oneof of a message type.static final classDescribes a service type. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Descriptors.Descriptor[]private static final Descriptors.EnumDescriptor[]private static final Descriptors.FieldDescriptor[]private static final int[]private static final Descriptors.OneofDescriptor[]private static final Descriptors.ServiceDescriptor[]private static final ConcurrentHashMap<DescriptorProtos.FeatureSet, DescriptorProtos.FeatureSet> private static DescriptorProtos.FeatureSetDefaultsprivate static final Logger -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static <T> TbinarySearch(T[] array, int size, ToIntFunction<T> getter, int number) private static StringcomputeFullName(Descriptors.FileDescriptor file, Descriptors.Descriptor parent, String name) (package private) static DescriptorProtos.FeatureSet(package private) static DescriptorProtos.FeatureSetDefaultsGets the default feature mappings used during the build.private static DescriptorProtos.FeatureSetinternFeatures(DescriptorProtos.FeatureSet features) (package private) static voidSets the default feature mappings used during the build.
-
Field Details
-
logger
-
EMPTY_INT_ARRAY
private static final int[] EMPTY_INT_ARRAY -
EMPTY_DESCRIPTORS
-
EMPTY_FIELD_DESCRIPTORS
-
EMPTY_ENUM_DESCRIPTORS
-
EMPTY_SERVICE_DESCRIPTORS
-
EMPTY_ONEOF_DESCRIPTORS
-
FEATURE_CACHE
private static final ConcurrentHashMap<DescriptorProtos.FeatureSet, DescriptorProtos.FeatureSet> FEATURE_CACHE -
javaEditionDefaults
-
-
Constructor Details
-
Descriptors
public Descriptors()
-
-
Method Details
-
setTestJavaEditionDefaults
Sets the default feature mappings used during the build. Exposed for tests. -
getJavaEditionDefaults
Gets the default feature mappings used during the build. -
getEditionDefaults
-
internFeatures
-
computeFullName
private static String computeFullName(Descriptors.FileDescriptor file, Descriptors.Descriptor parent, String name) - Throws:
NullPointerException- if both `file` and `parent` are null.
-
binarySearch
-