|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessage
public abstract class GeneratedMessage
All generated protocol message classes extend this class. This class implements most of the Message and Builder interfaces using Java reflection. Users can ignore this class and pretend that generated messages implement the Message interface directly.
Nested Class Summary | |
---|---|
static class |
GeneratedMessage.Builder<BuilderType extends GeneratedMessage.Builder>
|
protected static interface |
GeneratedMessage.BuilderParent
Interface for the parent of a Builder that allows the builder to communicate invalidations back to the parent for use when using nested builders. |
static class |
GeneratedMessage.ExtendableBuilder<MessageType extends GeneratedMessage.ExtendableMessage,BuilderType extends GeneratedMessage.ExtendableBuilder>
Generated message builders for message types that contain extension ranges subclass this. |
static class |
GeneratedMessage.ExtendableMessage<MessageType extends GeneratedMessage.ExtendableMessage>
Generated message classes for message types that contain extension ranges subclass this. |
static interface |
GeneratedMessage.ExtendableMessageOrBuilder<MessageType extends GeneratedMessage.ExtendableMessage>
|
static class |
GeneratedMessage.FieldAccessorTable
Users should ignore this class. |
static class |
GeneratedMessage.GeneratedExtension<ContainingType extends Message,Type>
Type used to represent generated extensions. |
Field Summary | |
---|---|
protected static boolean |
alwaysUseFieldBuilders
For testing. |
Fields inherited from class com.google.protobuf.AbstractMessageLite |
---|
memoizedHashCode |
Constructor Summary | |
---|---|
protected |
GeneratedMessage()
|
protected |
GeneratedMessage(GeneratedMessage.Builder<?> builder)
|
Method Summary | ||
---|---|---|
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. |
|
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)
TODO(jieluo): Clear it when all subclasses have implemented this method. |
|
Parser<? extends GeneratedMessage> |
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. |
|
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)
TODO(jieluo): Clear it when all subclasses have implemented this method. |
|
protected abstract GeneratedMessage.FieldAccessorTable |
internalGetFieldAccessorTable()
Get the FieldAccessorTable for this type. |
|
boolean |
isInitialized()
Returns true if all required fields in the message and all embedded messages are set, false otherwise. |
|
protected void |
makeExtensionsImmutable()
Used by parsing constructors in generated classes. |
|
protected abstract Message.Builder |
newBuilderForType(GeneratedMessage.BuilderParent parent)
|
|
static
|
newFileScopedGeneratedExtension(java.lang.Class singularType,
Message defaultInstance)
For use by generated code only. |
|
static
|
newFileScopedGeneratedExtension(java.lang.Class singularType,
Message defaultInstance,
java.lang.String descriptorOuterClass,
java.lang.String extensionName)
Used in proto1 generated code only. |
|
static
|
newMessageScopedGeneratedExtension(Message scope,
int descriptorIndex,
java.lang.Class singularType,
Message defaultInstance)
For use by generated code only. |
|
static
|
newMessageScopedGeneratedExtension(Message scope,
java.lang.String name,
java.lang.Class singularType,
Message defaultInstance)
Used in proto1 generated code only. |
|
protected boolean |
parseUnknownField(CodedInputStream input,
UnknownFieldSet.Builder unknownFields,
ExtensionRegistryLite extensionRegistry,
int tag)
Called by subclasses to parse an unknown field. |
|
protected java.lang.Object |
writeReplace()
Replaces this object in the output stream with a serialized form. |
Methods inherited from class com.google.protobuf.AbstractMessage |
---|
equals, findInitializationErrors, getInitializationErrorString, getSerializedSize, hashCode, hashFields, toString, writeTo |
Methods inherited from class com.google.protobuf.AbstractMessageLite |
---|
checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface com.google.protobuf.Message |
---|
newBuilderForType, toBuilder |
Methods inherited from interface com.google.protobuf.MessageLite |
---|
toByteArray, toByteString, writeDelimitedTo, writeTo |
Methods inherited from interface com.google.protobuf.MessageOrBuilder |
---|
getDefaultInstanceForType |
Field Detail |
---|
protected static boolean alwaysUseFieldBuilders
Constructor Detail |
---|
protected GeneratedMessage()
protected GeneratedMessage(GeneratedMessage.Builder<?> builder)
Method Detail |
---|
public Parser<? extends GeneratedMessage> getParserForType()
MessageLite
getParserForType
in interface Message
getParserForType
in interface MessageLite
protected abstract GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
public Descriptors.Descriptor getDescriptorForType()
MessageOrBuilder
getDescriptor()
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.
getDescriptorForType
in interface MessageOrBuilder
public boolean isInitialized()
MessageLiteOrBuilder
See also: MessageOrBuilder.getInitializationErrorString()
isInitialized
in interface MessageLiteOrBuilder
isInitialized
in class AbstractMessage
public java.util.Map<Descriptors.FieldDescriptor,java.lang.Object> getAllFields()
MessageOrBuilder
MessageOrBuilder.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.
getAllFields
in interface MessageOrBuilder
public boolean hasOneof(Descriptors.OneofDescriptor oneof)
AbstractMessage
hasOneof
in interface MessageOrBuilder
hasOneof
in class AbstractMessage
public Descriptors.FieldDescriptor getOneofFieldDescriptor(Descriptors.OneofDescriptor oneof)
AbstractMessage
getOneofFieldDescriptor
in interface MessageOrBuilder
getOneofFieldDescriptor
in class AbstractMessage
public boolean hasField(Descriptors.FieldDescriptor field)
MessageOrBuilder
hasField
in interface MessageOrBuilder
public java.lang.Object getField(Descriptors.FieldDescriptor field)
MessageOrBuilder
getField
in interface MessageOrBuilder
public int getRepeatedFieldCount(Descriptors.FieldDescriptor field)
MessageOrBuilder
getRepeatedFieldCount
in interface MessageOrBuilder
public java.lang.Object getRepeatedField(Descriptors.FieldDescriptor field, int index)
MessageOrBuilder
getRepeatedField
in interface MessageOrBuilder
public UnknownFieldSet getUnknownFields()
MessageOrBuilder
UnknownFieldSet
for this message.
getUnknownFields
in interface MessageOrBuilder
protected boolean parseUnknownField(CodedInputStream input, UnknownFieldSet.Builder unknownFields, ExtensionRegistryLite extensionRegistry, int tag) throws java.io.IOException
true
unless the tag is an end-group tag.
java.io.IOException
protected void makeExtensionsImmutable()
protected abstract Message.Builder newBuilderForType(GeneratedMessage.BuilderParent parent)
public static <ContainingType extends Message,Type> GeneratedMessage.GeneratedExtension<ContainingType,Type> newMessageScopedGeneratedExtension(Message scope, int descriptorIndex, java.lang.Class singularType, Message defaultInstance)
public static <ContainingType extends Message,Type> GeneratedMessage.GeneratedExtension<ContainingType,Type> newFileScopedGeneratedExtension(java.lang.Class singularType, Message defaultInstance)
public static <ContainingType extends Message,Type> GeneratedMessage.GeneratedExtension<ContainingType,Type> newMessageScopedGeneratedExtension(Message scope, java.lang.String name, java.lang.Class singularType, Message defaultInstance)
public static <ContainingType extends Message,Type> GeneratedMessage.GeneratedExtension<ContainingType,Type> newFileScopedGeneratedExtension(java.lang.Class singularType, Message defaultInstance, java.lang.String descriptorOuterClass, java.lang.String extensionName)
protected java.lang.Object writeReplace() throws java.io.ObjectStreamException
return super.writeReplace();
java.io.ObjectStreamException
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |