public final class DynamicMessage extends AbstractMessage
Message that can represent arbitrary types, given a Descriptors.Descriptor.| Modifier and Type | Class and Description |
|---|---|
static class |
DynamicMessage.Builder
Builder for
DynamicMessages. |
| Modifier and Type | Method and Description |
|---|---|
java.util.Map<Descriptors.FieldDescriptor,java.lang.Object> |
getAllFields()
Returns a collection of all the fields in this message which are set and their corresponding
values.
|
static DynamicMessage |
getDefaultInstance(Descriptors.Descriptor type)
Get a
DynamicMessage representing the default instance of the given type. |
DynamicMessage |
getDefaultInstanceForType()
Get an instance of the type with no fields set.
|
Descriptors.Descriptor |
getDescriptorForType()
Get the message's type's descriptor.
|
java.lang.Object |
getField(Descriptors.FieldDescriptor field)
Obtains the value of the given field, or the default value if it is not set.
|
Descriptors.FieldDescriptor |
getOneofFieldDescriptor(Descriptors.OneofDescriptor oneof)
|
Parser<DynamicMessage> |
getParserForType()
Gets the parser for a message of the same type as this message.
|
java.lang.Object |
getRepeatedField(Descriptors.FieldDescriptor field,
int index)
Gets an element of a repeated field.
|
int |
getRepeatedFieldCount(Descriptors.FieldDescriptor field)
Gets the number of elements of a repeated field.
|
int |
getSerializedSize()
Get the number of bytes required to encode this message.
|
com.google.protobuf.UnknownFieldSet |
getUnknownFields()
Get the
UnknownFieldSet for this message. |
boolean |
hasField(Descriptors.FieldDescriptor field)
Returns true if the given field is set.
|
boolean |
hasOneof(Descriptors.OneofDescriptor oneof)
|
boolean |
isInitialized()
Returns true if all required fields in the message and all embedded messages are set, false
otherwise.
|
static DynamicMessage.Builder |
newBuilder(Descriptors.Descriptor type)
Construct a
Message.Builder for the given type. |
static DynamicMessage.Builder |
newBuilder(Message prototype)
Construct a
Message.Builder for a message of the same type as prototype, and
initialize it with prototype's contents. |
DynamicMessage.Builder |
newBuilderForType()
Constructs a new builder for a message of the same type as this message.
|
static DynamicMessage |
parseFrom(Descriptors.Descriptor type,
byte[] data)
Parse
data as a message of the given type and return it. |
static DynamicMessage |
parseFrom(Descriptors.Descriptor type,
byte[] data,
ExtensionRegistry extensionRegistry)
Parse
data as a message of the given type and return it. |
static DynamicMessage |
parseFrom(Descriptors.Descriptor type,
ByteString data)
Parse
data as a message of the given type and return it. |
static DynamicMessage |
parseFrom(Descriptors.Descriptor type,
ByteString data,
ExtensionRegistry extensionRegistry)
Parse
data as a message of the given type and return it. |
static DynamicMessage |
parseFrom(Descriptors.Descriptor type,
CodedInputStream input)
Parse a message of the given type from the given input stream.
|
static DynamicMessage |
parseFrom(Descriptors.Descriptor type,
CodedInputStream input,
ExtensionRegistry extensionRegistry)
Parse a message of the given type from the given input stream.
|
static DynamicMessage |
parseFrom(Descriptors.Descriptor type,
java.io.InputStream input)
Parse a message of the given type from
input and return it. |
static DynamicMessage |
parseFrom(Descriptors.Descriptor type,
java.io.InputStream input,
ExtensionRegistry extensionRegistry)
Parse a message of the given type from
input and return it. |
DynamicMessage.Builder |
toBuilder()
Constructs a builder initialized with the current message.
|
void |
writeTo(CodedOutputStream output)
Serializes the message and writes it to
output. |
equals, findInitializationErrors, getInitializationErrorString, hashCode, toStringtoByteArray, toByteString, writeDelimitedTo, writeTotoByteArray, toByteString, writeDelimitedTo, writeTopublic static DynamicMessage getDefaultInstance(Descriptors.Descriptor type)
DynamicMessage representing the default instance of the given type.public static DynamicMessage parseFrom(Descriptors.Descriptor type, CodedInputStream input) throws java.io.IOException
java.io.IOExceptionpublic static DynamicMessage parseFrom(Descriptors.Descriptor type, CodedInputStream input, ExtensionRegistry extensionRegistry) throws java.io.IOException
java.io.IOExceptionpublic static DynamicMessage parseFrom(Descriptors.Descriptor type, ByteString data) throws InvalidProtocolBufferException
data as a message of the given type and return it.InvalidProtocolBufferExceptionpublic static DynamicMessage parseFrom(Descriptors.Descriptor type, ByteString data, ExtensionRegistry extensionRegistry) throws InvalidProtocolBufferException
data as a message of the given type and return it.InvalidProtocolBufferExceptionpublic static DynamicMessage parseFrom(Descriptors.Descriptor type, byte[] data) throws InvalidProtocolBufferException
data as a message of the given type and return it.InvalidProtocolBufferExceptionpublic static DynamicMessage parseFrom(Descriptors.Descriptor type, byte[] data, ExtensionRegistry extensionRegistry) throws InvalidProtocolBufferException
data as a message of the given type and return it.InvalidProtocolBufferExceptionpublic static DynamicMessage parseFrom(Descriptors.Descriptor type, java.io.InputStream input) throws java.io.IOException
input and return it.java.io.IOExceptionpublic static DynamicMessage parseFrom(Descriptors.Descriptor type, java.io.InputStream input, ExtensionRegistry extensionRegistry) throws java.io.IOException
input and return it.java.io.IOExceptionpublic static DynamicMessage.Builder newBuilder(Descriptors.Descriptor type)
Message.Builder for the given type.public static DynamicMessage.Builder newBuilder(Message prototype)
Message.Builder for a message of the same type as prototype, and
initialize it with prototype's contents.public Descriptors.Descriptor getDescriptorForType()
MessageOrBuildergetDescriptor() method of
generated message classes in that this method is an abstract method of the Message
interface whereas getDescriptor() is a static method of a specific class. They return
the same thing.public DynamicMessage getDefaultInstanceForType()
MessageLiteOrBuildergetDefaultInstance() 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.public java.util.Map<Descriptors.FieldDescriptor,java.lang.Object> getAllFields()
MessageOrBuilderMessageOrBuilder.getField(Descriptors.FieldDescriptor)
for each field. The map is guaranteed to be a sorted map, so iterating over it will return
fields in order by field number. public boolean hasOneof(Descriptors.OneofDescriptor oneof)
AbstractMessagehasOneof in interface MessageOrBuilderhasOneof in class AbstractMessagepublic Descriptors.FieldDescriptor getOneofFieldDescriptor(Descriptors.OneofDescriptor oneof)
AbstractMessagegetOneofFieldDescriptor in interface MessageOrBuildergetOneofFieldDescriptor in class AbstractMessagepublic boolean hasField(Descriptors.FieldDescriptor field)
MessageOrBuilderpublic java.lang.Object getField(Descriptors.FieldDescriptor field)
MessageOrBuilderpublic int getRepeatedFieldCount(Descriptors.FieldDescriptor field)
MessageOrBuilderpublic java.lang.Object getRepeatedField(Descriptors.FieldDescriptor field, int index)
MessageOrBuilderpublic com.google.protobuf.UnknownFieldSet getUnknownFields()
MessageOrBuilderUnknownFieldSet for this message.public boolean isInitialized()
MessageLiteOrBuilderisInitialized in interface MessageLiteOrBuilderisInitialized in class AbstractMessagepublic void writeTo(CodedOutputStream output) throws java.io.IOException
MessageLiteoutput. This does not flush or close the
stream.writeTo in interface MessageLitewriteTo in class AbstractMessagejava.io.IOExceptionpublic int getSerializedSize()
MessageLitegetSerializedSize in interface MessageLitegetSerializedSize in class AbstractMessagepublic DynamicMessage.Builder newBuilderForType()
MessageLitepublic DynamicMessage.Builder toBuilder()
MessageLitepublic Parser<DynamicMessage> getParserForType()
MessageLite