public static final class DescriptorProtos.FieldDescriptorProto extends GeneratedMessageV3 implements DescriptorProtos.FieldDescriptorProtoOrBuilder
Describes a field within a message.
Protobuf type google.protobuf.FieldDescriptorProto
Static Fields
DEFAULT_VALUE_FIELD_NUMBER
public static final int DEFAULT_VALUE_FIELD_NUMBER
Field Value
EXTENDEE_FIELD_NUMBER
public static final int EXTENDEE_FIELD_NUMBER
Field Value
JSON_NAME_FIELD_NUMBER
public static final int JSON_NAME_FIELD_NUMBER
Field Value
LABEL_FIELD_NUMBER
public static final int LABEL_FIELD_NUMBER
Field Value
NAME_FIELD_NUMBER
public static final int NAME_FIELD_NUMBER
Field Value
NUMBER_FIELD_NUMBER
public static final int NUMBER_FIELD_NUMBER
Field Value
ONEOF_INDEX_FIELD_NUMBER
public static final int ONEOF_INDEX_FIELD_NUMBER
Field Value
OPTIONS_FIELD_NUMBER
public static final int OPTIONS_FIELD_NUMBER
Field Value
PARSER
public static final Parser<DescriptorProtos.FieldDescriptorProto> PARSER
Field Value
PROTO3_OPTIONAL_FIELD_NUMBER
public static final int PROTO3_OPTIONAL_FIELD_NUMBER
Field Value
TYPE_FIELD_NUMBER
public static final int TYPE_FIELD_NUMBER
Field Value
TYPE_NAME_FIELD_NUMBER
public static final int TYPE_NAME_FIELD_NUMBER
Field Value
Static Methods
getDefaultInstance()
public static DescriptorProtos.FieldDescriptorProto getDefaultInstance()
Returns
getDescriptor()
public static final Descriptors.Descriptor getDescriptor()
Returns
newBuilder()
public static DescriptorProtos.FieldDescriptorProto.Builder newBuilder()
Returns
newBuilder(DescriptorProtos.FieldDescriptorProto prototype)
public static DescriptorProtos.FieldDescriptorProto.Builder newBuilder(DescriptorProtos.FieldDescriptorProto prototype)
Parameter
Returns
public static DescriptorProtos.FieldDescriptorProto parseDelimitedFrom(InputStream input)
Parameter
Returns
Exceptions
public static DescriptorProtos.FieldDescriptorProto parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
parseFrom(byte[] data)
public static DescriptorProtos.FieldDescriptorProto parseFrom(byte[] data)
Parameter
Name | Description |
data | byte[]
|
Returns
Exceptions
parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
public static DescriptorProtos.FieldDescriptorProto parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
parseFrom(ByteString data)
public static DescriptorProtos.FieldDescriptorProto parseFrom(ByteString data)
Parameter
Returns
Exceptions
parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
public static DescriptorProtos.FieldDescriptorProto parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
public static DescriptorProtos.FieldDescriptorProto parseFrom(CodedInputStream input)
Parameter
Returns
Exceptions
public static DescriptorProtos.FieldDescriptorProto parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
public static DescriptorProtos.FieldDescriptorProto parseFrom(InputStream input)
Parameter
Returns
Exceptions
public static DescriptorProtos.FieldDescriptorProto parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
parseFrom(ByteBuffer data)
public static DescriptorProtos.FieldDescriptorProto parseFrom(ByteBuffer data)
Parameter
Returns
Exceptions
parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
public static DescriptorProtos.FieldDescriptorProto parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
Parameters
Returns
Exceptions
parser()
public static Parser<DescriptorProtos.FieldDescriptorProto> parser()
Returns
Methods
equals(Object obj)
public boolean equals(Object obj)
Compares the specified object with this message for equality. Returns true
if the given
object is a message of the same type (as defined by getDescriptorForType()
) and has
identical values for all of its fields. Subclasses must implement this; inheriting
Object.equals()
is incorrect.
Parameter
Returns
Overrides
getDefaultInstanceForType()
public DescriptorProtos.FieldDescriptorProto getDefaultInstanceForType()
Get an instance of the type with no fields set. Because no fields are set, all getters for
singular fields will return default values and repeated fields will appear empty. This may or
may not be a singleton. This differs from the getDefaultInstance()
method of generated
message classes in that this method is an abstract method of the MessageLite
interface
whereas getDefaultInstance()
is a static method of a specific class. They return the
same thing.
Returns
getDefaultValue()
public String getDefaultValue()
For numeric types, contains the original text representation of the value.
For booleans, "true" or "false".
For strings, contains the default text contents (not escaped in any way).
For bytes, contains the C escaped value. All bytes >= 128 are escaped.
TODO(kenton): Base-64 encode?
optional string default_value = 7;
Returns
Type | Description |
String | The defaultValue.
|
getDefaultValueBytes()
public ByteString getDefaultValueBytes()
For numeric types, contains the original text representation of the value.
For booleans, "true" or "false".
For strings, contains the default text contents (not escaped in any way).
For bytes, contains the C escaped value. All bytes >= 128 are escaped.
TODO(kenton): Base-64 encode?
optional string default_value = 7;
Returns
Type | Description |
ByteString | The bytes for defaultValue.
|
getExtendee()
public String getExtendee()
For extensions, this is the name of the type being extended. It is
resolved in the same manner as type_name.
optional string extendee = 2;
Returns
Type | Description |
String | The extendee.
|
getExtendeeBytes()
public ByteString getExtendeeBytes()
For extensions, this is the name of the type being extended. It is
resolved in the same manner as type_name.
optional string extendee = 2;
Returns
getJsonName()
public String getJsonName()
JSON name of this field. The value is set by protocol compiler. If the
user has set a "json_name" option on this field, that option's value
will be used. Otherwise, it's deduced from the field's name by converting
it to camelCase.
optional string json_name = 10;
Returns
Type | Description |
String | The jsonName.
|
getJsonNameBytes()
public ByteString getJsonNameBytes()
JSON name of this field. The value is set by protocol compiler. If the
user has set a "json_name" option on this field, that option's value
will be used. Otherwise, it's deduced from the field's name by converting
it to camelCase.
optional string json_name = 10;
Returns
getLabel()
public DescriptorProtos.FieldDescriptorProto.Label getLabel()
optional .google.protobuf.FieldDescriptorProto.Label label = 4;
Returns
getName()
optional string name = 1;
Returns
Type | Description |
String | The name.
|
getNameBytes()
public ByteString getNameBytes()
optional string name = 1;
Returns
getNumber()
optional int32 number = 3;
Returns
Type | Description |
int | The number.
|
getOneofIndex()
public int getOneofIndex()
If set, gives the index of a oneof in the containing type's oneof_decl
list. This field is a member of that oneof.
optional int32 oneof_index = 9;
Returns
Type | Description |
int | The oneofIndex.
|
getOptions()
public DescriptorProtos.FieldOptions getOptions()
optional .google.protobuf.FieldOptions options = 8;
Returns
getOptionsOrBuilder()
public DescriptorProtos.FieldOptionsOrBuilder getOptionsOrBuilder()
optional .google.protobuf.FieldOptions options = 8;
Returns
getParserForType()
public Parser<DescriptorProtos.FieldDescriptorProto> getParserForType()
Returns
Overrides
getProto3Optional()
public boolean getProto3Optional()
If true, this is a proto3 "optional". When a proto3 field is optional, it
tracks presence regardless of field type.
When proto3_optional is true, this field must be belong to a oneof to
signal to old proto3 clients that presence is tracked for this field. This
oneof is known as a "synthetic" oneof, and this field must be its sole
member (each proto3 optional field gets its own synthetic oneof). Synthetic
oneofs exist in the descriptor only, and do not generate any API. Synthetic
oneofs must be ordered after all "real" oneofs.
For message fields, proto3_optional doesn't create any semantic change,
since non-repeated message fields always track presence. However it still
indicates the semantic detail of whether the user wrote "optional" or not.
This can be useful for round-tripping the .proto file. For consistency we
give message fields a synthetic oneof also, even though it is not required
to track presence. This is especially important because the parser can't
tell if a field is a message or an enum, so it must always create a
synthetic oneof.
Proto2 optional fields do not set this flag, because they already indicate
optional with LABEL_OPTIONAL
.
optional bool proto3_optional = 17;
Returns
Type | Description |
boolean | The proto3Optional.
|
getSerializedSize()
public int getSerializedSize()
Get the number of bytes required to encode this message. The result is only computed on the
first call and memoized after that.
If this message requires more than Integer.MAX_VALUE bytes to encode, the return value will
be smaller than the actual number of bytes required and might be negative.
Returns
Overrides
getType()
public DescriptorProtos.FieldDescriptorProto.Type getType()
If type_name is set, this need not be set. If both this and type_name
are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP.
optional .google.protobuf.FieldDescriptorProto.Type type = 5;
Returns
getTypeName()
public String getTypeName()
For message and enum types, this is the name of the type. If the name
starts with a '.', it is fully-qualified. Otherwise, C++-like scoping
rules are used to find the type (i.e. first the nested types within this
message are searched, then within the parent, on up to the root
namespace).
optional string type_name = 6;
Returns
Type | Description |
String | The typeName.
|
getTypeNameBytes()
public ByteString getTypeNameBytes()
For message and enum types, this is the name of the type. If the name
starts with a '.', it is fully-qualified. Otherwise, C++-like scoping
rules are used to find the type (i.e. first the nested types within this
message are searched, then within the parent, on up to the root
namespace).
optional string type_name = 6;
Returns
getUnknownFields()
public final UnknownFieldSet getUnknownFields()
Returns
Overrides
hasDefaultValue()
public boolean hasDefaultValue()
For numeric types, contains the original text representation of the value.
For booleans, "true" or "false".
For strings, contains the default text contents (not escaped in any way).
For bytes, contains the C escaped value. All bytes >= 128 are escaped.
TODO(kenton): Base-64 encode?
optional string default_value = 7;
Returns
Type | Description |
boolean | Whether the defaultValue field is set.
|
hasExtendee()
public boolean hasExtendee()
For extensions, this is the name of the type being extended. It is
resolved in the same manner as type_name.
optional string extendee = 2;
Returns
Type | Description |
boolean | Whether the extendee field is set.
|
hasJsonName()
public boolean hasJsonName()
JSON name of this field. The value is set by protocol compiler. If the
user has set a "json_name" option on this field, that option's value
will be used. Otherwise, it's deduced from the field's name by converting
it to camelCase.
optional string json_name = 10;
Returns
Type | Description |
boolean | Whether the jsonName field is set.
|
hasLabel()
public boolean hasLabel()
optional .google.protobuf.FieldDescriptorProto.Label label = 4;
Returns
Type | Description |
boolean | Whether the label field is set.
|
hasName()
optional string name = 1;
Returns
Type | Description |
boolean | Whether the name field is set.
|
hasNumber()
public boolean hasNumber()
optional int32 number = 3;
Returns
Type | Description |
boolean | Whether the number field is set.
|
hasOneofIndex()
public boolean hasOneofIndex()
If set, gives the index of a oneof in the containing type's oneof_decl
list. This field is a member of that oneof.
optional int32 oneof_index = 9;
Returns
Type | Description |
boolean | Whether the oneofIndex field is set.
|
hasOptions()
public boolean hasOptions()
optional .google.protobuf.FieldOptions options = 8;
Returns
Type | Description |
boolean | Whether the options field is set.
|
hasProto3Optional()
public boolean hasProto3Optional()
If true, this is a proto3 "optional". When a proto3 field is optional, it
tracks presence regardless of field type.
When proto3_optional is true, this field must be belong to a oneof to
signal to old proto3 clients that presence is tracked for this field. This
oneof is known as a "synthetic" oneof, and this field must be its sole
member (each proto3 optional field gets its own synthetic oneof). Synthetic
oneofs exist in the descriptor only, and do not generate any API. Synthetic
oneofs must be ordered after all "real" oneofs.
For message fields, proto3_optional doesn't create any semantic change,
since non-repeated message fields always track presence. However it still
indicates the semantic detail of whether the user wrote "optional" or not.
This can be useful for round-tripping the .proto file. For consistency we
give message fields a synthetic oneof also, even though it is not required
to track presence. This is especially important because the parser can't
tell if a field is a message or an enum, so it must always create a
synthetic oneof.
Proto2 optional fields do not set this flag, because they already indicate
optional with LABEL_OPTIONAL
.
optional bool proto3_optional = 17;
Returns
Type | Description |
boolean | Whether the proto3Optional field is set.
|
hasType()
If type_name is set, this need not be set. If both this and type_name
are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP.
optional .google.protobuf.FieldDescriptorProto.Type type = 5;
Returns
Type | Description |
boolean | Whether the type field is set.
|
hasTypeName()
public boolean hasTypeName()
For message and enum types, this is the name of the type. If the name
starts with a '.', it is fully-qualified. Otherwise, C++-like scoping
rules are used to find the type (i.e. first the nested types within this
message are searched, then within the parent, on up to the root
namespace).
optional string type_name = 6;
Returns
Type | Description |
boolean | Whether the typeName field is set.
|
hashCode()
Returns the hash code value for this message. The hash code of a message should mix the
message's type (object identity of the descriptor) with its contents (known and unknown field
values). Subclasses must implement this; inheriting Object.hashCode()
is incorrect.
Returns
Overrides
internalGetFieldAccessorTable()
protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Get the FieldAccessorTable for this type. We can't have the message
class pass this in to the constructor because of bootstrapping trouble
with DescriptorProtos.
Returns
Overrides
isInitialized()
public final boolean isInitialized()
Returns
Overrides
newBuilderForType()
public DescriptorProtos.FieldDescriptorProto.Builder newBuilderForType()
Returns
newBuilderForType(GeneratedMessageV3.BuilderParent parent)
protected DescriptorProtos.FieldDescriptorProto.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)
TODO(xiaofeng): remove this together with GeneratedMessageV3.BuilderParent.
Parameter
Returns
Overrides
newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
Creates a new instance of this message type. Overridden in the generated code.
Parameter
Returns
Overrides
toBuilder()
public DescriptorProtos.FieldDescriptorProto.Builder toBuilder()
Returns
writeTo(CodedOutputStream output)
public void writeTo(CodedOutputStream output)
Serializes the message and writes it to output
. This does not flush or close the
stream.
Parameter
Overrides
Exceptions