|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.google.protobuf.AbstractMessageLite.Builder<BuilderType> com.google.protobuf.AbstractMessage.Builder<BuilderType> com.google.protobuf.GeneratedMessage.Builder<BuilderType> com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageType,BuilderType>
public abstract static class GeneratedMessage.ExtendableBuilder<MessageType extends GeneratedMessage.ExtendableMessage,BuilderType extends GeneratedMessage.ExtendableBuilder>
Generated message builders for message types that contain extension ranges subclass this.
This class implements type-safe accessors for extensions. They
implement all the same operations that you can do with normal fields --
e.g. "get", "set", and "add" -- but for extensions. The extensions are
identified using instances of the class GeneratedMessage.GeneratedExtension
; the
protocol compiler generates a static instance of this class for every
extension in its input. Through the magic of generics, all is made
type-safe.
For example, imagine you have the .proto
file:
option java_class = "MyProto"; message Foo { extensions 1000 to max; } extend Foo { optional int32 bar; }
Then you might write code like:
MyProto.Foo foo = MyProto.Foo.newBuilder() .setExtension(MyProto.bar, 123) .build();
See also GeneratedMessage.ExtendableMessage
.
Constructor Summary | |
---|---|
protected |
GeneratedMessage.ExtendableBuilder()
|
Method Summary | ||
---|---|---|
|
addExtension(GeneratedMessage.GeneratedExtension<MessageType,java.util.List<Type>> extension,
Type value)
Append a value to a repeated extension. |
|
BuilderType |
addRepeatedField(Descriptors.FieldDescriptor field,
java.lang.Object value)
Like setRepeatedField , but appends the value as a new element. |
|
|
clearExtension(GeneratedMessage.GeneratedExtension<MessageType,?> extension)
Clear an extension. |
|
BuilderType |
clearField(Descriptors.FieldDescriptor field)
Clears the field. |
|
BuilderType |
clone()
Clones the Builder. |
|
|
getExtension(GeneratedMessage.GeneratedExtension<MessageType,java.util.List<Type>> extension,
int index)
Get one element of a repeated extension. |
|
|
getExtension(GeneratedMessage.GeneratedExtension<MessageType,Type> extension)
Get the value of an extension. |
|
|
getExtensionCount(GeneratedMessage.GeneratedExtension<MessageType,java.util.List<Type>> extension)
Get the number of elements in a repeated extension. |
|
boolean |
hasExtension(GeneratedMessage.GeneratedExtension<MessageType,?> extension)
Check if a singular extension is present. |
|
protected abstract GeneratedMessage.ExtendableMessage<MessageType> |
internalGetResult()
Get the message being built. |
|
protected void |
mergeExtensionFields(GeneratedMessage.ExtendableMessage other)
|
|
protected boolean |
parseUnknownField(CodedInputStream input,
UnknownFieldSet.Builder unknownFields,
ExtensionRegistryLite extensionRegistry,
int tag)
Called by subclasses to parse an unknown field or an extension. |
|
|
setExtension(GeneratedMessage.GeneratedExtension<MessageType,java.util.List<Type>> extension,
int index,
Type value)
Set the value of one element of a repeated extension. |
|
|
setExtension(GeneratedMessage.GeneratedExtension<MessageType,Type> extension,
Type value)
Set the value of an extension. |
|
BuilderType |
setField(Descriptors.FieldDescriptor field,
java.lang.Object value)
Sets a field to the given value. |
|
BuilderType |
setRepeatedField(Descriptors.FieldDescriptor field,
int index,
java.lang.Object value)
Sets an element of a repeated field to the given value. |
Methods inherited from class com.google.protobuf.GeneratedMessage.Builder |
---|
getAllFields, getDescriptorForType, getField, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, isInitialized, mergeUnknownFields, newBuilderForField, setUnknownFields |
Methods inherited from class com.google.protobuf.AbstractMessage.Builder |
---|
clear, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException |
Methods inherited from class com.google.protobuf.AbstractMessageLite.Builder |
---|
addAll, newUninitializedMessageException |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface com.google.protobuf.Message.Builder |
---|
build, buildPartial, getDefaultInstanceForType |
Constructor Detail |
---|
protected GeneratedMessage.ExtendableBuilder()
Method Detail |
---|
public BuilderType clone()
MessageLite.Builder
clone
in interface Message.Builder
clone
in interface MessageLite.Builder
clone
in class GeneratedMessage.Builder<BuilderType extends GeneratedMessage.ExtendableBuilder>
Object.clone()
protected abstract GeneratedMessage.ExtendableMessage<MessageType> internalGetResult()
GeneratedMessage.Builder
internalGetResult
in class GeneratedMessage.Builder<BuilderType extends GeneratedMessage.ExtendableBuilder>
public final boolean hasExtension(GeneratedMessage.GeneratedExtension<MessageType,?> extension)
public final <Type> int getExtensionCount(GeneratedMessage.GeneratedExtension<MessageType,java.util.List<Type>> extension)
public final <Type> Type getExtension(GeneratedMessage.GeneratedExtension<MessageType,Type> extension)
public final <Type> Type getExtension(GeneratedMessage.GeneratedExtension<MessageType,java.util.List<Type>> extension, int index)
public final <Type> BuilderType setExtension(GeneratedMessage.GeneratedExtension<MessageType,Type> extension, Type value)
public final <Type> BuilderType setExtension(GeneratedMessage.GeneratedExtension<MessageType,java.util.List<Type>> extension, int index, Type value)
public final <Type> BuilderType addExtension(GeneratedMessage.GeneratedExtension<MessageType,java.util.List<Type>> extension, Type value)
public final <Type> BuilderType clearExtension(GeneratedMessage.GeneratedExtension<MessageType,?> extension)
protected boolean parseUnknownField(CodedInputStream input, UnknownFieldSet.Builder unknownFields, ExtensionRegistryLite extensionRegistry, int tag) throws java.io.IOException
parseUnknownField
in class GeneratedMessage.Builder<BuilderType extends GeneratedMessage.ExtendableBuilder>
true
unless the tag is an end-group tag.
java.io.IOException
public BuilderType setField(Descriptors.FieldDescriptor field, java.lang.Object value)
Message.Builder
Message.getField(Descriptors.FieldDescriptor)
would return.
setField
in interface Message.Builder
setField
in class GeneratedMessage.Builder<BuilderType extends GeneratedMessage.ExtendableBuilder>
public BuilderType clearField(Descriptors.FieldDescriptor field)
Message.Builder
clearField
in interface Message.Builder
clearField
in class GeneratedMessage.Builder<BuilderType extends GeneratedMessage.ExtendableBuilder>
public BuilderType setRepeatedField(Descriptors.FieldDescriptor field, int index, java.lang.Object value)
Message.Builder
Message.getRepeatedField(Descriptors.FieldDescriptor,int)
would
return.
setRepeatedField
in interface Message.Builder
setRepeatedField
in class GeneratedMessage.Builder<BuilderType extends GeneratedMessage.ExtendableBuilder>
public BuilderType addRepeatedField(Descriptors.FieldDescriptor field, java.lang.Object value)
Message.Builder
setRepeatedField
, but appends the value as a new element.
addRepeatedField
in interface Message.Builder
addRepeatedField
in class GeneratedMessage.Builder<BuilderType extends GeneratedMessage.ExtendableBuilder>
protected final void mergeExtensionFields(GeneratedMessage.ExtendableMessage other)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |