|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcom.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. |
|
|
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 boolean |
parseUnknownField(CodedInputStream input,
UnknownFieldSet.Builder unknownFields,
ExtensionRegistry 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 |
|---|
addAll, getAllFields, getDescriptorForType, getField, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, isInitialized, mergeFrom, mergeUnknownFields, newBuilderForField, setUnknownFields |
| Methods inherited from class com.google.protobuf.AbstractMessage.Builder |
|---|
clear, clone, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom |
| 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 |
|---|
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,
ExtensionRegistry 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.BuilderMessage.getField(Descriptors.FieldDescriptor) would return.
setField in interface Message.BuildersetField in class GeneratedMessage.Builder<BuilderType extends GeneratedMessage.ExtendableBuilder>public BuilderType clearField(Descriptors.FieldDescriptor field)
Message.Builder
clearField in interface Message.BuilderclearField in class GeneratedMessage.Builder<BuilderType extends GeneratedMessage.ExtendableBuilder>
public BuilderType setRepeatedField(Descriptors.FieldDescriptor field,
int index,
java.lang.Object value)
Message.BuilderMessage.getRepeatedField(Descriptors.FieldDescriptor,int) would
return.
setRepeatedField in interface Message.BuildersetRepeatedField in class GeneratedMessage.Builder<BuilderType extends GeneratedMessage.ExtendableBuilder>
public BuilderType addRepeatedField(Descriptors.FieldDescriptor field,
java.lang.Object value)
Message.BuildersetRepeatedField, but appends the value as a new element.
addRepeatedField in interface Message.BuilderaddRepeatedField in class GeneratedMessage.Builder<BuilderType extends GeneratedMessage.ExtendableBuilder>
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||