使用与Thrift类似——
下载EXE
https://developers.google.com/protocol-buffers/docs/downloads
Demo地址
https://developers.google.com/protocol-buffers/docs/javatutorial#compiling-your-protocol-buffers
中有addressbook.proto内容
举例子:放在
D:\Users\gg\Desktop\protoc-2.6.1-win32
address.proto如下:
package tutorial;
option java_package = "com.example.tutorial";
option java_outer_classname = "AddressBookProtos";
message Person {
required string name = 1;
required int32 id = 2;
optional string email = 3;
enum PhoneType {
MOBILE = 0;
HOME = 1;
WORK = 2;
}
message PhoneNumber {
required string number = 1;
optional PhoneType type = 2 [default = HOME];
}
repeated PhoneNumber phone = 4;
}
message AddressBook {
repeated Person person = 1;
}
在DOS该目录下运行
protoc -I=$SRC_DIR --java_out=$DST_DIR $SRC_DIR/addressbook.proto
如
protoc -I=D:\Users\gg\Desktop\protoc-2.6.1-win32 --java_out=D:\Users\gg\Desktop\protoc-2.6.1-win32 D:\Users\gg\Desktop\protoc-2.6.1-win32/addressbook.proto
后生成Java文件
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: addressbook.proto
package com.example.tutorial;
public final class AddressBookProtos {
private AddressBookProtos() {}
public static void registerAllExtensions(
com.google.protobuf.ExtensionRegistry registry) {
}
public interface PersonOrBuilder extends
// @@protoc_insertion_point(interface_extends:tutorial.Person)
com.google.protobuf.MessageOrBuilder {
/**
* <code>required string name = 1;</code>
*/
boolean hasName();
/**
* <code>required string name = 1;</code>
*/
java.lang.String getName();
/**
* <code>required string name = 1;</code>
*/
com.google.protobuf.ByteString
getNameBytes();
/**
* <code>required int32 id = 2;</code>
*/
boolean hasId();
/**
* <code>required int32 id = 2;</code>
*/
int getId();
/**
* <code>optional string email = 3;</code>
*/
boolean hasEmail();
/**
* <code>optional string email = 3;</code>
*/
java.lang.String getEmail();
/**
* <code>optional string email = 3;</code>
*/
com.google.protobuf.ByteString
getEmailBytes();
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
java.util.List<com.example.tutorial.AddressBookProtos.Person.PhoneNumber>
getPhoneList();
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
com.example.tutorial.AddressBookProtos.Person.PhoneNumber getPhone(int index);
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
int getPhoneCount();
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
java.util.List<? extends com.example.tutorial.AddressBookProtos.Person.PhoneNumberOrBuilder>
getPhoneOrBuilderList();
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
com.example.tutorial.AddressBookProtos.Person.PhoneNumberOrBuilder getPhoneOrBuilder(
int index);
}
/**
* Protobuf type {@code tutorial.Person}
*/
public static final class Person extends
com.google.protobuf.GeneratedMessage implements
// @@protoc_insertion_point(message_implements:tutorial.Person)
PersonOrBuilder {
// Use Person.newBuilder() to construct.
private Person(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
super(builder);
this.unknownFields = builder.getUnknownFields();
}
private Person(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
private static final Person defaultInstance;
public static Person getDefaultInstance() {
return defaultInstance;
}
public Person getDefaultInstanceForType() {
return defaultInstance;
}
private final com.google.protobuf.UnknownFieldSet unknownFields;
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private Person(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
initFields();
int mutable_bitField0_ = 0;
com.google.protobuf.UnknownFieldSet.Builder unknownFields =
com.google.protobuf.UnknownFieldSet.newBuilder();
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
default: {
if (!parseUnknownField(input, unknownFields,
extensionRegistry, tag)) {
done = true;
}
break;
}
case 10: {
com.google.protobuf.ByteString bs = input.readBytes();
bitField0_ |= 0x00000001;
name_ = bs;
break;
}
case 16: {
bitField0_ |= 0x00000002;
id_ = input.readInt32();
break;
}
case 26: {
com.google.protobuf.ByteString bs = input.readBytes();
bitField0_ |= 0x00000004;
email_ = bs;
break;
}
case 34: {
if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
phone_ = new java.util.ArrayList<com.example.tutorial.AddressBookProtos.Person.PhoneNumber>();
mutable_bitField0_ |= 0x00000008;
}
phone_.add(input.readMessage(com.example.tutorial.AddressBookProtos.Person.PhoneNumber.PARSER, extensionRegistry));
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e.getMessage()).setUnfinishedMessage(this);
} finally {
if (((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
phone_ = java.util.Collections.unmodifiableList(phone_);
}
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return com.example.tutorial.AddressBookProtos.internal_static_tutorial_Person_descriptor;
}
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
internalGetFieldAccessorTable() {
return com.example.tutorial.AddressBookProtos.internal_static_tutorial_Person_fieldAccessorTable
.ensureFieldAccessorsInitialized(
com.example.tutorial.AddressBookProtos.Person.class, com.example.tutorial.AddressBookProtos.Person.Builder.class);
}
public static com.google.protobuf.Parser<Person> PARSER =
new com.google.protobuf.AbstractParser<Person>() {
public Person parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return new Person(input, extensionRegistry);
}
};
@java.lang.Override
public com.google.protobuf.Parser<Person> getParserForType() {
return PARSER;
}
/**
* Protobuf enum {@code tutorial.Person.PhoneType}
*/
public enum PhoneType
implements com.google.protobuf.ProtocolMessageEnum {
/**
* <code>MOBILE = 0;</code>
*/
MOBILE(0, 0),
/**
* <code>HOME = 1;</code>
*/
HOME(1, 1),
/**
* <code>WORK = 2;</code>
*/
WORK(2, 2),
;
/**
* <code>MOBILE = 0;</code>
*/
public static final int MOBILE_VALUE = 0;
/**
* <code>HOME = 1;</code>
*/
public static final int HOME_VALUE = 1;
/**
* <code>WORK = 2;</code>
*/
public static final int WORK_VALUE = 2;
public final int getNumber() { return value; }
public static PhoneType valueOf(int value) {
switch (value) {
case 0: return MOBILE;
case 1: return HOME;
case 2: return WORK;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap<PhoneType>
internalGetValueMap() {
return internalValueMap;
}
private static com.google.protobuf.Internal.EnumLiteMap<PhoneType>
internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap<PhoneType>() {
public PhoneType findValueByNumber(int number) {
return PhoneType.valueOf(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
return getDescriptor().getValues().get(index);
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return com.example.tutorial.AddressBookProtos.Person.getDescriptor().getEnumTypes().get(0);
}
private static final PhoneType[] VALUES = values();
public static PhoneType valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
return VALUES[desc.getIndex()];
}
private final int index;
private final int value;
private PhoneType(int index, int value) {
this.index = index;
this.value = value;
}
// @@protoc_insertion_point(enum_scope:tutorial.Person.PhoneType)
}
public interface PhoneNumberOrBuilder extends
// @@protoc_insertion_point(interface_extends:tutorial.Person.PhoneNumber)
com.google.protobuf.MessageOrBuilder {
/**
* <code>required string number = 1;</code>
*/
boolean hasNumber();
/**
* <code>required string number = 1;</code>
*/
java.lang.String getNumber();
/**
* <code>required string number = 1;</code>
*/
com.google.protobuf.ByteString
getNumberBytes();
/**
* <code>optional .tutorial.Person.PhoneType type = 2 [default = HOME];</code>
*/
boolean hasType();
/**
* <code>optional .tutorial.Person.PhoneType type = 2 [default = HOME];</code>
*/
com.example.tutorial.AddressBookProtos.Person.PhoneType getType();
}
/**
* Protobuf type {@code tutorial.Person.PhoneNumber}
*/
public static final class PhoneNumber extends
com.google.protobuf.GeneratedMessage implements
// @@protoc_insertion_point(message_implements:tutorial.Person.PhoneNumber)
PhoneNumberOrBuilder {
// Use PhoneNumber.newBuilder() to construct.
private PhoneNumber(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
super(builder);
this.unknownFields = builder.getUnknownFields();
}
private PhoneNumber(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
private static final PhoneNumber defaultInstance;
public static PhoneNumber getDefaultInstance() {
return defaultInstance;
}
public PhoneNumber getDefaultInstanceForType() {
return defaultInstance;
}
private final com.google.protobuf.UnknownFieldSet unknownFields;
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private PhoneNumber(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
initFields();
int mutable_bitField0_ = 0;
com.google.protobuf.UnknownFieldSet.Builder unknownFields =
com.google.protobuf.UnknownFieldSet.newBuilder();
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
default: {
if (!parseUnknownField(input, unknownFields,
extensionRegistry, tag)) {
done = true;
}
break;
}
case 10: {
com.google.protobuf.ByteString bs = input.readBytes();
bitField0_ |= 0x00000001;
number_ = bs;
break;
}
case 16: {
int rawValue = input.readEnum();
com.example.tutorial.AddressBookProtos.Person.PhoneType value = com.example.tutorial.AddressBookProtos.Person.PhoneType.valueOf(rawValue);
if (value == null) {
unknownFields.mergeVarintField(2, rawValue);
} else {
bitField0_ |= 0x00000002;
type_ = value;
}
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e.getMessage()).setUnfinishedMessage(this);
} finally {
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return com.example.tutorial.AddressBookProtos.internal_static_tutorial_Person_PhoneNumber_descriptor;
}
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
internalGetFieldAccessorTable() {
return com.example.tutorial.AddressBookProtos.internal_static_tutorial_Person_PhoneNumber_fieldAccessorTable
.ensureFieldAccessorsInitialized(
com.example.tutorial.AddressBookProtos.Person.PhoneNumber.class, com.example.tutorial.AddressBookProtos.Person.PhoneNumber.Builder.class);
}
public static com.google.protobuf.Parser<PhoneNumber> PARSER =
new com.google.protobuf.AbstractParser<PhoneNumber>() {
public PhoneNumber parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return new PhoneNumber(input, extensionRegistry);
}
};
@java.lang.Override
public com.google.protobuf.Parser<PhoneNumber> getParserForType() {
return PARSER;
}
private int bitField0_;
public static final int NUMBER_FIELD_NUMBER = 1;
private java.lang.Object number_;
/**
* <code>required string number = 1;</code>
*/
public boolean hasNumber() {
return ((bitField0_ & 0x00000001) == 0x00000001);
}
/**
* <code>required string number = 1;</code>
*/
public java.lang.String getNumber() {
java.lang.Object ref = number_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
if (bs.isValidUtf8()) {
number_ = s;
}
return s;
}
}
/**
* <code>required string number = 1;</code>
*/
public com.google.protobuf.ByteString
getNumberBytes() {
java.lang.Object ref = number_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
number_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int TYPE_FIELD_NUMBER = 2;
private com.example.tutorial.AddressBookProtos.Person.PhoneType type_;
/**
* <code>optional .tutorial.Person.PhoneType type = 2 [default = HOME];</code>
*/
public boolean hasType() {
return ((bitField0_ & 0x00000002) == 0x00000002);
}
/**
* <code>optional .tutorial.Person.PhoneType type = 2 [default = HOME];</code>
*/
public com.example.tutorial.AddressBookProtos.Person.PhoneType getType() {
return type_;
}
private void initFields() {
number_ = "";
type_ = com.example.tutorial.AddressBookProtos.Person.PhoneType.HOME;
}
private byte memoizedIsInitialized = -1;
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
if (!hasNumber()) {
memoizedIsInitialized = 0;
return false;
}
memoizedIsInitialized = 1;
return true;
}
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
getSerializedSize();
if (((bitField0_ & 0x00000001) == 0x00000001)) {
output.writeBytes(1, getNumberBytes());
}
if (((bitField0_ & 0x00000002) == 0x00000002)) {
output.writeEnum(2, type_.getNumber());
}
getUnknownFields().writeTo(output);
}
private int memoizedSerializedSize = -1;
public int getSerializedSize() {
int size = memoizedSerializedSize;
if (size != -1) return size;
size = 0;
if (((bitField0_ & 0x00000001) == 0x00000001)) {
size += com.google.protobuf.CodedOutputStream
.computeBytesSize(1, getNumberBytes());
}
if (((bitField0_ & 0x00000002) == 0x00000002)) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(2, type_.getNumber());
}
size += getUnknownFields().getSerializedSize();
memoizedSerializedSize = size;
return size;
}
private static final long serialVersionUID = 0L;
@java.lang.Override
protected java.lang.Object writeReplace()
throws java.io.ObjectStreamException {
return super.writeReplace();
}
public static com.example.tutorial.AddressBookProtos.Person.PhoneNumber parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static com.example.tutorial.AddressBookProtos.Person.PhoneNumber parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static com.example.tutorial.AddressBookProtos.Person.PhoneNumber parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static com.example.tutorial.AddressBookProtos.Person.PhoneNumber parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static com.example.tutorial.AddressBookProtos.Person.PhoneNumber parseFrom(java.io.InputStream input)
throws java.io.IOException {
return PARSER.parseFrom(input);
}
public static com.example.tutorial.AddressBookProtos.Person.PhoneNumber parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return PARSER.parseFrom(input, extensionRegistry);
}
public static com.example.tutorial.AddressBookProtos.Person.PhoneNumber parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return PARSER.parseDelimitedFrom(input);
}
public static com.example.tutorial.AddressBookProtos.Person.PhoneNumber parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return PARSER.parseDelimitedFrom(input, extensionRegistry);
}
public static com.example.tutorial.AddressBookProtos.Person.PhoneNumber parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return PARSER.parseFrom(input);
}
public static com.example.tutorial.AddressBookProtos.Person.PhoneNumber parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return PARSER.parseFrom(input, extensionRegistry);
}
public static Builder newBuilder() { return Builder.create(); }
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder(com.example.tutorial.AddressBookProtos.Person.PhoneNumber prototype) {
return newBuilder().mergeFrom(prototype);
}
public Builder toBuilder() { return newBuilder(this); }
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessage.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
* Protobuf type {@code tutorial.Person.PhoneNumber}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessage.Builder<Builder> implements
// @@protoc_insertion_point(builder_implements:tutorial.Person.PhoneNumber)
com.example.tutorial.AddressBookProtos.Person.PhoneNumberOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return com.example.tutorial.AddressBookProtos.internal_static_tutorial_Person_PhoneNumber_descriptor;
}
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
internalGetFieldAccessorTable() {
return com.example.tutorial.AddressBookProtos.internal_static_tutorial_Person_PhoneNumber_fieldAccessorTable
.ensureFieldAccessorsInitialized(
com.example.tutorial.AddressBookProtos.Person.PhoneNumber.class, com.example.tutorial.AddressBookProtos.Person.PhoneNumber.Builder.class);
}
// Construct using com.example.tutorial.AddressBookProtos.Person.PhoneNumber.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessage.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
}
}
private static Builder create() {
return new Builder();
}
public Builder clear() {
super.clear();
number_ = "";
bitField0_ = (bitField0_ & ~0x00000001);
type_ = com.example.tutorial.AddressBookProtos.Person.PhoneType.HOME;
bitField0_ = (bitField0_ & ~0x00000002);
return this;
}
public Builder clone() {
return create().mergeFrom(buildPartial());
}
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return com.example.tutorial.AddressBookProtos.internal_static_tutorial_Person_PhoneNumber_descriptor;
}
public com.example.tutorial.AddressBookProtos.Person.PhoneNumber getDefaultInstanceForType() {
return com.example.tutorial.AddressBookProtos.Person.PhoneNumber.getDefaultInstance();
}
public com.example.tutorial.AddressBookProtos.Person.PhoneNumber build() {
com.example.tutorial.AddressBookProtos.Person.PhoneNumber result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
public com.example.tutorial.AddressBookProtos.Person.PhoneNumber buildPartial() {
com.example.tutorial.AddressBookProtos.Person.PhoneNumber result = new com.example.tutorial.AddressBookProtos.Person.PhoneNumber(this);
int from_bitField0_ = bitField0_;
int to_bitField0_ = 0;
if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
to_bitField0_ |= 0x00000001;
}
result.number_ = number_;
if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
to_bitField0_ |= 0x00000002;
}
result.type_ = type_;
result.bitField0_ = to_bitField0_;
onBuilt();
return result;
}
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof com.example.tutorial.AddressBookProtos.Person.PhoneNumber) {
return mergeFrom((com.example.tutorial.AddressBookProtos.Person.PhoneNumber)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(com.example.tutorial.AddressBookProtos.Person.PhoneNumber other) {
if (other == com.example.tutorial.AddressBookProtos.Person.PhoneNumber.getDefaultInstance()) return this;
if (other.hasNumber()) {
bitField0_ |= 0x00000001;
number_ = other.number_;
onChanged();
}
if (other.hasType()) {
setType(other.getType());
}
this.mergeUnknownFields(other.getUnknownFields());
return this;
}
public final boolean isInitialized() {
if (!hasNumber()) {
return false;
}
return true;
}
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
com.example.tutorial.AddressBookProtos.Person.PhoneNumber parsedMessage = null;
try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = (com.example.tutorial.AddressBookProtos.Person.PhoneNumber) e.getUnfinishedMessage();
throw e;
} finally {
if (parsedMessage != null) {
mergeFrom(parsedMessage);
}
}
return this;
}
private int bitField0_;
private java.lang.Object number_ = "";
/**
* <code>required string number = 1;</code>
*/
public boolean hasNumber() {
return ((bitField0_ & 0x00000001) == 0x00000001);
}
/**
* <code>required string number = 1;</code>
*/
public java.lang.String getNumber() {
java.lang.Object ref = number_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
if (bs.isValidUtf8()) {
number_ = s;
}
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <code>required string number = 1;</code>
*/
public com.google.protobuf.ByteString
getNumberBytes() {
java.lang.Object ref = number_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
number_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <code>required string number = 1;</code>
*/
public Builder setNumber(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
bitField0_ |= 0x00000001;
number_ = value;
onChanged();
return this;
}
/**
* <code>required string number = 1;</code>
*/
public Builder clearNumber() {
bitField0_ = (bitField0_ & ~0x00000001);
number_ = getDefaultInstance().getNumber();
onChanged();
return this;
}
/**
* <code>required string number = 1;</code>
*/
public Builder setNumberBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
bitField0_ |= 0x00000001;
number_ = value;
onChanged();
return this;
}
private com.example.tutorial.AddressBookProtos.Person.PhoneType type_ = com.example.tutorial.AddressBookProtos.Person.PhoneType.HOME;
/**
* <code>optional .tutorial.Person.PhoneType type = 2 [default = HOME];</code>
*/
public boolean hasType() {
return ((bitField0_ & 0x00000002) == 0x00000002);
}
/**
* <code>optional .tutorial.Person.PhoneType type = 2 [default = HOME];</code>
*/
public com.example.tutorial.AddressBookProtos.Person.PhoneType getType() {
return type_;
}
/**
* <code>optional .tutorial.Person.PhoneType type = 2 [default = HOME];</code>
*/
public Builder setType(com.example.tutorial.AddressBookProtos.Person.PhoneType value) {
if (value == null) {
throw new NullPointerException();
}
bitField0_ |= 0x00000002;
type_ = value;
onChanged();
return this;
}
/**
* <code>optional .tutorial.Person.PhoneType type = 2 [default = HOME];</code>
*/
public Builder clearType() {
bitField0_ = (bitField0_ & ~0x00000002);
type_ = com.example.tutorial.AddressBookProtos.Person.PhoneType.HOME;
onChanged();
return this;
}
// @@protoc_insertion_point(builder_scope:tutorial.Person.PhoneNumber)
}
static {
defaultInstance = new PhoneNumber(true);
defaultInstance.initFields();
}
// @@protoc_insertion_point(class_scope:tutorial.Person.PhoneNumber)
}
private int bitField0_;
public static final int NAME_FIELD_NUMBER = 1;
private java.lang.Object name_;
/**
* <code>required string name = 1;</code>
*/
public boolean hasName() {
return ((bitField0_ & 0x00000001) == 0x00000001);
}
/**
* <code>required string name = 1;</code>
*/
public java.lang.String getName() {
java.lang.Object ref = name_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
if (bs.isValidUtf8()) {
name_ = s;
}
return s;
}
}
/**
* <code>required string name = 1;</code>
*/
public com.google.protobuf.ByteString
getNameBytes() {
java.lang.Object ref = name_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
name_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int ID_FIELD_NUMBER = 2;
private int id_;
/**
* <code>required int32 id = 2;</code>
*/
public boolean hasId() {
return ((bitField0_ & 0x00000002) == 0x00000002);
}
/**
* <code>required int32 id = 2;</code>
*/
public int getId() {
return id_;
}
public static final int EMAIL_FIELD_NUMBER = 3;
private java.lang.Object email_;
/**
* <code>optional string email = 3;</code>
*/
public boolean hasEmail() {
return ((bitField0_ & 0x00000004) == 0x00000004);
}
/**
* <code>optional string email = 3;</code>
*/
public java.lang.String getEmail() {
java.lang.Object ref = email_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
if (bs.isValidUtf8()) {
email_ = s;
}
return s;
}
}
/**
* <code>optional string email = 3;</code>
*/
public com.google.protobuf.ByteString
getEmailBytes() {
java.lang.Object ref = email_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
email_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int PHONE_FIELD_NUMBER = 4;
private java.util.List<com.example.tutorial.AddressBookProtos.Person.PhoneNumber> phone_;
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public java.util.List<com.example.tutorial.AddressBookProtos.Person.PhoneNumber> getPhoneList() {
return phone_;
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public java.util.List<? extends com.example.tutorial.AddressBookProtos.Person.PhoneNumberOrBuilder>
getPhoneOrBuilderList() {
return phone_;
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public int getPhoneCount() {
return phone_.size();
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public com.example.tutorial.AddressBookProtos.Person.PhoneNumber getPhone(int index) {
return phone_.get(index);
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public com.example.tutorial.AddressBookProtos.Person.PhoneNumberOrBuilder getPhoneOrBuilder(
int index) {
return phone_.get(index);
}
private void initFields() {
name_ = "";
id_ = 0;
email_ = "";
phone_ = java.util.Collections.emptyList();
}
private byte memoizedIsInitialized = -1;
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
if (!hasName()) {
memoizedIsInitialized = 0;
return false;
}
if (!hasId()) {
memoizedIsInitialized = 0;
return false;
}
for (int i = 0; i < getPhoneCount(); i++) {
if (!getPhone(i).isInitialized()) {
memoizedIsInitialized = 0;
return false;
}
}
memoizedIsInitialized = 1;
return true;
}
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
getSerializedSize();
if (((bitField0_ & 0x00000001) == 0x00000001)) {
output.writeBytes(1, getNameBytes());
}
if (((bitField0_ & 0x00000002) == 0x00000002)) {
output.writeInt32(2, id_);
}
if (((bitField0_ & 0x00000004) == 0x00000004)) {
output.writeBytes(3, getEmailBytes());
}
for (int i = 0; i < phone_.size(); i++) {
output.writeMessage(4, phone_.get(i));
}
getUnknownFields().writeTo(output);
}
private int memoizedSerializedSize = -1;
public int getSerializedSize() {
int size = memoizedSerializedSize;
if (size != -1) return size;
size = 0;
if (((bitField0_ & 0x00000001) == 0x00000001)) {
size += com.google.protobuf.CodedOutputStream
.computeBytesSize(1, getNameBytes());
}
if (((bitField0_ & 0x00000002) == 0x00000002)) {
size += com.google.protobuf.CodedOutputStream
.computeInt32Size(2, id_);
}
if (((bitField0_ & 0x00000004) == 0x00000004)) {
size += com.google.protobuf.CodedOutputStream
.computeBytesSize(3, getEmailBytes());
}
for (int i = 0; i < phone_.size(); i++) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(4, phone_.get(i));
}
size += getUnknownFields().getSerializedSize();
memoizedSerializedSize = size;
return size;
}
private static final long serialVersionUID = 0L;
@java.lang.Override
protected java.lang.Object writeReplace()
throws java.io.ObjectStreamException {
return super.writeReplace();
}
public static com.example.tutorial.AddressBookProtos.Person parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static com.example.tutorial.AddressBookProtos.Person parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static com.example.tutorial.AddressBookProtos.Person parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static com.example.tutorial.AddressBookProtos.Person parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static com.example.tutorial.AddressBookProtos.Person parseFrom(java.io.InputStream input)
throws java.io.IOException {
return PARSER.parseFrom(input);
}
public static com.example.tutorial.AddressBookProtos.Person parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return PARSER.parseFrom(input, extensionRegistry);
}
public static com.example.tutorial.AddressBookProtos.Person parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return PARSER.parseDelimitedFrom(input);
}
public static com.example.tutorial.AddressBookProtos.Person parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return PARSER.parseDelimitedFrom(input, extensionRegistry);
}
public static com.example.tutorial.AddressBookProtos.Person parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return PARSER.parseFrom(input);
}
public static com.example.tutorial.AddressBookProtos.Person parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return PARSER.parseFrom(input, extensionRegistry);
}
public static Builder newBuilder() { return Builder.create(); }
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder(com.example.tutorial.AddressBookProtos.Person prototype) {
return newBuilder().mergeFrom(prototype);
}
public Builder toBuilder() { return newBuilder(this); }
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessage.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
* Protobuf type {@code tutorial.Person}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessage.Builder<Builder> implements
// @@protoc_insertion_point(builder_implements:tutorial.Person)
com.example.tutorial.AddressBookProtos.PersonOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return com.example.tutorial.AddressBookProtos.internal_static_tutorial_Person_descriptor;
}
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
internalGetFieldAccessorTable() {
return com.example.tutorial.AddressBookProtos.internal_static_tutorial_Person_fieldAccessorTable
.ensureFieldAccessorsInitialized(
com.example.tutorial.AddressBookProtos.Person.class, com.example.tutorial.AddressBookProtos.Person.Builder.class);
}
// Construct using com.example.tutorial.AddressBookProtos.Person.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessage.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
getPhoneFieldBuilder();
}
}
private static Builder create() {
return new Builder();
}
public Builder clear() {
super.clear();
name_ = "";
bitField0_ = (bitField0_ & ~0x00000001);
id_ = 0;
bitField0_ = (bitField0_ & ~0x00000002);
email_ = "";
bitField0_ = (bitField0_ & ~0x00000004);
if (phoneBuilder_ == null) {
phone_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000008);
} else {
phoneBuilder_.clear();
}
return this;
}
public Builder clone() {
return create().mergeFrom(buildPartial());
}
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return com.example.tutorial.AddressBookProtos.internal_static_tutorial_Person_descriptor;
}
public com.example.tutorial.AddressBookProtos.Person getDefaultInstanceForType() {
return com.example.tutorial.AddressBookProtos.Person.getDefaultInstance();
}
public com.example.tutorial.AddressBookProtos.Person build() {
com.example.tutorial.AddressBookProtos.Person result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
public com.example.tutorial.AddressBookProtos.Person buildPartial() {
com.example.tutorial.AddressBookProtos.Person result = new com.example.tutorial.AddressBookProtos.Person(this);
int from_bitField0_ = bitField0_;
int to_bitField0_ = 0;
if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
to_bitField0_ |= 0x00000001;
}
result.name_ = name_;
if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
to_bitField0_ |= 0x00000002;
}
result.id_ = id_;
if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
to_bitField0_ |= 0x00000004;
}
result.email_ = email_;
if (phoneBuilder_ == null) {
if (((bitField0_ & 0x00000008) == 0x00000008)) {
phone_ = java.util.Collections.unmodifiableList(phone_);
bitField0_ = (bitField0_ & ~0x00000008);
}
result.phone_ = phone_;
} else {
result.phone_ = phoneBuilder_.build();
}
result.bitField0_ = to_bitField0_;
onBuilt();
return result;
}
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof com.example.tutorial.AddressBookProtos.Person) {
return mergeFrom((com.example.tutorial.AddressBookProtos.Person)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(com.example.tutorial.AddressBookProtos.Person other) {
if (other == com.example.tutorial.AddressBookProtos.Person.getDefaultInstance()) return this;
if (other.hasName()) {
bitField0_ |= 0x00000001;
name_ = other.name_;
onChanged();
}
if (other.hasId()) {
setId(other.getId());
}
if (other.hasEmail()) {
bitField0_ |= 0x00000004;
email_ = other.email_;
onChanged();
}
if (phoneBuilder_ == null) {
if (!other.phone_.isEmpty()) {
if (phone_.isEmpty()) {
phone_ = other.phone_;
bitField0_ = (bitField0_ & ~0x00000008);
} else {
ensurePhoneIsMutable();
phone_.addAll(other.phone_);
}
onChanged();
}
} else {
if (!other.phone_.isEmpty()) {
if (phoneBuilder_.isEmpty()) {
phoneBuilder_.dispose();
phoneBuilder_ = null;
phone_ = other.phone_;
bitField0_ = (bitField0_ & ~0x00000008);
phoneBuilder_ =
com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
getPhoneFieldBuilder() : null;
} else {
phoneBuilder_.addAllMessages(other.phone_);
}
}
}
this.mergeUnknownFields(other.getUnknownFields());
return this;
}
public final boolean isInitialized() {
if (!hasName()) {
return false;
}
if (!hasId()) {
return false;
}
for (int i = 0; i < getPhoneCount(); i++) {
if (!getPhone(i).isInitialized()) {
return false;
}
}
return true;
}
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
com.example.tutorial.AddressBookProtos.Person parsedMessage = null;
try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = (com.example.tutorial.AddressBookProtos.Person) e.getUnfinishedMessage();
throw e;
} finally {
if (parsedMessage != null) {
mergeFrom(parsedMessage);
}
}
return this;
}
private int bitField0_;
private java.lang.Object name_ = "";
/**
* <code>required string name = 1;</code>
*/
public boolean hasName() {
return ((bitField0_ & 0x00000001) == 0x00000001);
}
/**
* <code>required string name = 1;</code>
*/
public java.lang.String getName() {
java.lang.Object ref = name_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
if (bs.isValidUtf8()) {
name_ = s;
}
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <code>required string name = 1;</code>
*/
public com.google.protobuf.ByteString
getNameBytes() {
java.lang.Object ref = name_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
name_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <code>required string name = 1;</code>
*/
public Builder setName(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
bitField0_ |= 0x00000001;
name_ = value;
onChanged();
return this;
}
/**
* <code>required string name = 1;</code>
*/
public Builder clearName() {
bitField0_ = (bitField0_ & ~0x00000001);
name_ = getDefaultInstance().getName();
onChanged();
return this;
}
/**
* <code>required string name = 1;</code>
*/
public Builder setNameBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
bitField0_ |= 0x00000001;
name_ = value;
onChanged();
return this;
}
private int id_ ;
/**
* <code>required int32 id = 2;</code>
*/
public boolean hasId() {
return ((bitField0_ & 0x00000002) == 0x00000002);
}
/**
* <code>required int32 id = 2;</code>
*/
public int getId() {
return id_;
}
/**
* <code>required int32 id = 2;</code>
*/
public Builder setId(int value) {
bitField0_ |= 0x00000002;
id_ = value;
onChanged();
return this;
}
/**
* <code>required int32 id = 2;</code>
*/
public Builder clearId() {
bitField0_ = (bitField0_ & ~0x00000002);
id_ = 0;
onChanged();
return this;
}
private java.lang.Object email_ = "";
/**
* <code>optional string email = 3;</code>
*/
public boolean hasEmail() {
return ((bitField0_ & 0x00000004) == 0x00000004);
}
/**
* <code>optional string email = 3;</code>
*/
public java.lang.String getEmail() {
java.lang.Object ref = email_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
if (bs.isValidUtf8()) {
email_ = s;
}
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <code>optional string email = 3;</code>
*/
public com.google.protobuf.ByteString
getEmailBytes() {
java.lang.Object ref = email_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
email_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <code>optional string email = 3;</code>
*/
public Builder setEmail(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
bitField0_ |= 0x00000004;
email_ = value;
onChanged();
return this;
}
/**
* <code>optional string email = 3;</code>
*/
public Builder clearEmail() {
bitField0_ = (bitField0_ & ~0x00000004);
email_ = getDefaultInstance().getEmail();
onChanged();
return this;
}
/**
* <code>optional string email = 3;</code>
*/
public Builder setEmailBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
bitField0_ |= 0x00000004;
email_ = value;
onChanged();
return this;
}
private java.util.List<com.example.tutorial.AddressBookProtos.Person.PhoneNumber> phone_ =
java.util.Collections.emptyList();
private void ensurePhoneIsMutable() {
if (!((bitField0_ & 0x00000008) == 0x00000008)) {
phone_ = new java.util.ArrayList<com.example.tutorial.AddressBookProtos.Person.PhoneNumber>(phone_);
bitField0_ |= 0x00000008;
}
}
private com.google.protobuf.RepeatedFieldBuilder<
com.example.tutorial.AddressBookProtos.Person.PhoneNumber, com.example.tutorial.AddressBookProtos.Person.PhoneNumber.Builder, com.example.tutorial.AddressBookProtos.Person.PhoneNumberOrBuilder> phoneBuilder_;
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public java.util.List<com.example.tutorial.AddressBookProtos.Person.PhoneNumber> getPhoneList() {
if (phoneBuilder_ == null) {
return java.util.Collections.unmodifiableList(phone_);
} else {
return phoneBuilder_.getMessageList();
}
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public int getPhoneCount() {
if (phoneBuilder_ == null) {
return phone_.size();
} else {
return phoneBuilder_.getCount();
}
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public com.example.tutorial.AddressBookProtos.Person.PhoneNumber getPhone(int index) {
if (phoneBuilder_ == null) {
return phone_.get(index);
} else {
return phoneBuilder_.getMessage(index);
}
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public Builder setPhone(
int index, com.example.tutorial.AddressBookProtos.Person.PhoneNumber value) {
if (phoneBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensurePhoneIsMutable();
phone_.set(index, value);
onChanged();
} else {
phoneBuilder_.setMessage(index, value);
}
return this;
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public Builder setPhone(
int index, com.example.tutorial.AddressBookProtos.Person.PhoneNumber.Builder builderForValue) {
if (phoneBuilder_ == null) {
ensurePhoneIsMutable();
phone_.set(index, builderForValue.build());
onChanged();
} else {
phoneBuilder_.setMessage(index, builderForValue.build());
}
return this;
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public Builder addPhone(com.example.tutorial.AddressBookProtos.Person.PhoneNumber value) {
if (phoneBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensurePhoneIsMutable();
phone_.add(value);
onChanged();
} else {
phoneBuilder_.addMessage(value);
}
return this;
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public Builder addPhone(
int index, com.example.tutorial.AddressBookProtos.Person.PhoneNumber value) {
if (phoneBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensurePhoneIsMutable();
phone_.add(index, value);
onChanged();
} else {
phoneBuilder_.addMessage(index, value);
}
return this;
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public Builder addPhone(
com.example.tutorial.AddressBookProtos.Person.PhoneNumber.Builder builderForValue) {
if (phoneBuilder_ == null) {
ensurePhoneIsMutable();
phone_.add(builderForValue.build());
onChanged();
} else {
phoneBuilder_.addMessage(builderForValue.build());
}
return this;
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public Builder addPhone(
int index, com.example.tutorial.AddressBookProtos.Person.PhoneNumber.Builder builderForValue) {
if (phoneBuilder_ == null) {
ensurePhoneIsMutable();
phone_.add(index, builderForValue.build());
onChanged();
} else {
phoneBuilder_.addMessage(index, builderForValue.build());
}
return this;
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public Builder addAllPhone(
java.lang.Iterable<? extends com.example.tutorial.AddressBookProtos.Person.PhoneNumber> values) {
if (phoneBuilder_ == null) {
ensurePhoneIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, phone_);
onChanged();
} else {
phoneBuilder_.addAllMessages(values);
}
return this;
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public Builder clearPhone() {
if (phoneBuilder_ == null) {
phone_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000008);
onChanged();
} else {
phoneBuilder_.clear();
}
return this;
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public Builder removePhone(int index) {
if (phoneBuilder_ == null) {
ensurePhoneIsMutable();
phone_.remove(index);
onChanged();
} else {
phoneBuilder_.remove(index);
}
return this;
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public com.example.tutorial.AddressBookProtos.Person.PhoneNumber.Builder getPhoneBuilder(
int index) {
return getPhoneFieldBuilder().getBuilder(index);
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public com.example.tutorial.AddressBookProtos.Person.PhoneNumberOrBuilder getPhoneOrBuilder(
int index) {
if (phoneBuilder_ == null) {
return phone_.get(index); } else {
return phoneBuilder_.getMessageOrBuilder(index);
}
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public java.util.List<? extends com.example.tutorial.AddressBookProtos.Person.PhoneNumberOrBuilder>
getPhoneOrBuilderList() {
if (phoneBuilder_ != null) {
return phoneBuilder_.getMessageOrBuilderList();
} else {
return java.util.Collections.unmodifiableList(phone_);
}
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public com.example.tutorial.AddressBookProtos.Person.PhoneNumber.Builder addPhoneBuilder() {
return getPhoneFieldBuilder().addBuilder(
com.example.tutorial.AddressBookProtos.Person.PhoneNumber.getDefaultInstance());
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public com.example.tutorial.AddressBookProtos.Person.PhoneNumber.Builder addPhoneBuilder(
int index) {
return getPhoneFieldBuilder().addBuilder(
index, com.example.tutorial.AddressBookProtos.Person.PhoneNumber.getDefaultInstance());
}
/**
* <code>repeated .tutorial.Person.PhoneNumber phone = 4;</code>
*/
public java.util.List<com.example.tutorial.AddressBookProtos.Person.PhoneNumber.Builder>
getPhoneBuilderList() {
return getPhoneFieldBuilder().getBuilderList();
}
private com.google.protobuf.RepeatedFieldBuilder<
com.example.tutorial.AddressBookProtos.Person.PhoneNumber, com.example.tutorial.AddressBookProtos.Person.PhoneNumber.Builder, com.example.tutorial.AddressBookProtos.Person.PhoneNumberOrBuilder>
getPhoneFieldBuilder() {
if (phoneBuilder_ == null) {
phoneBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
com.example.tutorial.AddressBookProtos.Person.PhoneNumber, com.example.tutorial.AddressBookProtos.Person.PhoneNumber.Builder, com.example.tutorial.AddressBookProtos.Person.PhoneNumberOrBuilder>(
phone_,
((bitField0_ & 0x00000008) == 0x00000008),
getParentForChildren(),
isClean());
phone_ = null;
}
return phoneBuilder_;
}
// @@protoc_insertion_point(builder_scope:tutorial.Person)
}
static {
defaultInstance = new Person(true);
defaultInstance.initFields();
}
// @@protoc_insertion_point(class_scope:tutorial.Person)
}
public interface AddressBookOrBuilder extends
// @@protoc_insertion_point(interface_extends:tutorial.AddressBook)
com.google.protobuf.MessageOrBuilder {
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
java.util.List<com.example.tutorial.AddressBookProtos.Person>
getPersonList();
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
com.example.tutorial.AddressBookProtos.Person getPerson(int index);
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
int getPersonCount();
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
java.util.List<? extends com.example.tutorial.AddressBookProtos.PersonOrBuilder>
getPersonOrBuilderList();
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
com.example.tutorial.AddressBookProtos.PersonOrBuilder getPersonOrBuilder(
int index);
}
/**
* Protobuf type {@code tutorial.AddressBook}
*/
public static final class AddressBook extends
com.google.protobuf.GeneratedMessage implements
// @@protoc_insertion_point(message_implements:tutorial.AddressBook)
AddressBookOrBuilder {
// Use AddressBook.newBuilder() to construct.
private AddressBook(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
super(builder);
this.unknownFields = builder.getUnknownFields();
}
private AddressBook(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
private static final AddressBook defaultInstance;
public static AddressBook getDefaultInstance() {
return defaultInstance;
}
public AddressBook getDefaultInstanceForType() {
return defaultInstance;
}
private final com.google.protobuf.UnknownFieldSet unknownFields;
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private AddressBook(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
initFields();
int mutable_bitField0_ = 0;
com.google.protobuf.UnknownFieldSet.Builder unknownFields =
com.google.protobuf.UnknownFieldSet.newBuilder();
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
default: {
if (!parseUnknownField(input, unknownFields,
extensionRegistry, tag)) {
done = true;
}
break;
}
case 10: {
if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
person_ = new java.util.ArrayList<com.example.tutorial.AddressBookProtos.Person>();
mutable_bitField0_ |= 0x00000001;
}
person_.add(input.readMessage(com.example.tutorial.AddressBookProtos.Person.PARSER, extensionRegistry));
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e.getMessage()).setUnfinishedMessage(this);
} finally {
if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
person_ = java.util.Collections.unmodifiableList(person_);
}
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return com.example.tutorial.AddressBookProtos.internal_static_tutorial_AddressBook_descriptor;
}
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
internalGetFieldAccessorTable() {
return com.example.tutorial.AddressBookProtos.internal_static_tutorial_AddressBook_fieldAccessorTable
.ensureFieldAccessorsInitialized(
com.example.tutorial.AddressBookProtos.AddressBook.class, com.example.tutorial.AddressBookProtos.AddressBook.Builder.class);
}
public static com.google.protobuf.Parser<AddressBook> PARSER =
new com.google.protobuf.AbstractParser<AddressBook>() {
public AddressBook parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return new AddressBook(input, extensionRegistry);
}
};
@java.lang.Override
public com.google.protobuf.Parser<AddressBook> getParserForType() {
return PARSER;
}
public static final int PERSON_FIELD_NUMBER = 1;
private java.util.List<com.example.tutorial.AddressBookProtos.Person> person_;
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public java.util.List<com.example.tutorial.AddressBookProtos.Person> getPersonList() {
return person_;
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public java.util.List<? extends com.example.tutorial.AddressBookProtos.PersonOrBuilder>
getPersonOrBuilderList() {
return person_;
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public int getPersonCount() {
return person_.size();
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public com.example.tutorial.AddressBookProtos.Person getPerson(int index) {
return person_.get(index);
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public com.example.tutorial.AddressBookProtos.PersonOrBuilder getPersonOrBuilder(
int index) {
return person_.get(index);
}
private void initFields() {
person_ = java.util.Collections.emptyList();
}
private byte memoizedIsInitialized = -1;
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
for (int i = 0; i < getPersonCount(); i++) {
if (!getPerson(i).isInitialized()) {
memoizedIsInitialized = 0;
return false;
}
}
memoizedIsInitialized = 1;
return true;
}
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
getSerializedSize();
for (int i = 0; i < person_.size(); i++) {
output.writeMessage(1, person_.get(i));
}
getUnknownFields().writeTo(output);
}
private int memoizedSerializedSize = -1;
public int getSerializedSize() {
int size = memoizedSerializedSize;
if (size != -1) return size;
size = 0;
for (int i = 0; i < person_.size(); i++) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(1, person_.get(i));
}
size += getUnknownFields().getSerializedSize();
memoizedSerializedSize = size;
return size;
}
private static final long serialVersionUID = 0L;
@java.lang.Override
protected java.lang.Object writeReplace()
throws java.io.ObjectStreamException {
return super.writeReplace();
}
public static com.example.tutorial.AddressBookProtos.AddressBook parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static com.example.tutorial.AddressBookProtos.AddressBook parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static com.example.tutorial.AddressBookProtos.AddressBook parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static com.example.tutorial.AddressBookProtos.AddressBook parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static com.example.tutorial.AddressBookProtos.AddressBook parseFrom(java.io.InputStream input)
throws java.io.IOException {
return PARSER.parseFrom(input);
}
public static com.example.tutorial.AddressBookProtos.AddressBook parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return PARSER.parseFrom(input, extensionRegistry);
}
public static com.example.tutorial.AddressBookProtos.AddressBook parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return PARSER.parseDelimitedFrom(input);
}
public static com.example.tutorial.AddressBookProtos.AddressBook parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return PARSER.parseDelimitedFrom(input, extensionRegistry);
}
public static com.example.tutorial.AddressBookProtos.AddressBook parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return PARSER.parseFrom(input);
}
public static com.example.tutorial.AddressBookProtos.AddressBook parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return PARSER.parseFrom(input, extensionRegistry);
}
public static Builder newBuilder() { return Builder.create(); }
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder(com.example.tutorial.AddressBookProtos.AddressBook prototype) {
return newBuilder().mergeFrom(prototype);
}
public Builder toBuilder() { return newBuilder(this); }
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessage.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
* Protobuf type {@code tutorial.AddressBook}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessage.Builder<Builder> implements
// @@protoc_insertion_point(builder_implements:tutorial.AddressBook)
com.example.tutorial.AddressBookProtos.AddressBookOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return com.example.tutorial.AddressBookProtos.internal_static_tutorial_AddressBook_descriptor;
}
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
internalGetFieldAccessorTable() {
return com.example.tutorial.AddressBookProtos.internal_static_tutorial_AddressBook_fieldAccessorTable
.ensureFieldAccessorsInitialized(
com.example.tutorial.AddressBookProtos.AddressBook.class, com.example.tutorial.AddressBookProtos.AddressBook.Builder.class);
}
// Construct using com.example.tutorial.AddressBookProtos.AddressBook.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessage.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
getPersonFieldBuilder();
}
}
private static Builder create() {
return new Builder();
}
public Builder clear() {
super.clear();
if (personBuilder_ == null) {
person_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000001);
} else {
personBuilder_.clear();
}
return this;
}
public Builder clone() {
return create().mergeFrom(buildPartial());
}
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return com.example.tutorial.AddressBookProtos.internal_static_tutorial_AddressBook_descriptor;
}
public com.example.tutorial.AddressBookProtos.AddressBook getDefaultInstanceForType() {
return com.example.tutorial.AddressBookProtos.AddressBook.getDefaultInstance();
}
public com.example.tutorial.AddressBookProtos.AddressBook build() {
com.example.tutorial.AddressBookProtos.AddressBook result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
public com.example.tutorial.AddressBookProtos.AddressBook buildPartial() {
com.example.tutorial.AddressBookProtos.AddressBook result = new com.example.tutorial.AddressBookProtos.AddressBook(this);
int from_bitField0_ = bitField0_;
if (personBuilder_ == null) {
if (((bitField0_ & 0x00000001) == 0x00000001)) {
person_ = java.util.Collections.unmodifiableList(person_);
bitField0_ = (bitField0_ & ~0x00000001);
}
result.person_ = person_;
} else {
result.person_ = personBuilder_.build();
}
onBuilt();
return result;
}
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof com.example.tutorial.AddressBookProtos.AddressBook) {
return mergeFrom((com.example.tutorial.AddressBookProtos.AddressBook)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(com.example.tutorial.AddressBookProtos.AddressBook other) {
if (other == com.example.tutorial.AddressBookProtos.AddressBook.getDefaultInstance()) return this;
if (personBuilder_ == null) {
if (!other.person_.isEmpty()) {
if (person_.isEmpty()) {
person_ = other.person_;
bitField0_ = (bitField0_ & ~0x00000001);
} else {
ensurePersonIsMutable();
person_.addAll(other.person_);
}
onChanged();
}
} else {
if (!other.person_.isEmpty()) {
if (personBuilder_.isEmpty()) {
personBuilder_.dispose();
personBuilder_ = null;
person_ = other.person_;
bitField0_ = (bitField0_ & ~0x00000001);
personBuilder_ =
com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
getPersonFieldBuilder() : null;
} else {
personBuilder_.addAllMessages(other.person_);
}
}
}
this.mergeUnknownFields(other.getUnknownFields());
return this;
}
public final boolean isInitialized() {
for (int i = 0; i < getPersonCount(); i++) {
if (!getPerson(i).isInitialized()) {
return false;
}
}
return true;
}
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
com.example.tutorial.AddressBookProtos.AddressBook parsedMessage = null;
try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = (com.example.tutorial.AddressBookProtos.AddressBook) e.getUnfinishedMessage();
throw e;
} finally {
if (parsedMessage != null) {
mergeFrom(parsedMessage);
}
}
return this;
}
private int bitField0_;
private java.util.List<com.example.tutorial.AddressBookProtos.Person> person_ =
java.util.Collections.emptyList();
private void ensurePersonIsMutable() {
if (!((bitField0_ & 0x00000001) == 0x00000001)) {
person_ = new java.util.ArrayList<com.example.tutorial.AddressBookProtos.Person>(person_);
bitField0_ |= 0x00000001;
}
}
private com.google.protobuf.RepeatedFieldBuilder<
com.example.tutorial.AddressBookProtos.Person, com.example.tutorial.AddressBookProtos.Person.Builder, com.example.tutorial.AddressBookProtos.PersonOrBuilder> personBuilder_;
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public java.util.List<com.example.tutorial.AddressBookProtos.Person> getPersonList() {
if (personBuilder_ == null) {
return java.util.Collections.unmodifiableList(person_);
} else {
return personBuilder_.getMessageList();
}
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public int getPersonCount() {
if (personBuilder_ == null) {
return person_.size();
} else {
return personBuilder_.getCount();
}
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public com.example.tutorial.AddressBookProtos.Person getPerson(int index) {
if (personBuilder_ == null) {
return person_.get(index);
} else {
return personBuilder_.getMessage(index);
}
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public Builder setPerson(
int index, com.example.tutorial.AddressBookProtos.Person value) {
if (personBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensurePersonIsMutable();
person_.set(index, value);
onChanged();
} else {
personBuilder_.setMessage(index, value);
}
return this;
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public Builder setPerson(
int index, com.example.tutorial.AddressBookProtos.Person.Builder builderForValue) {
if (personBuilder_ == null) {
ensurePersonIsMutable();
person_.set(index, builderForValue.build());
onChanged();
} else {
personBuilder_.setMessage(index, builderForValue.build());
}
return this;
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public Builder addPerson(com.example.tutorial.AddressBookProtos.Person value) {
if (personBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensurePersonIsMutable();
person_.add(value);
onChanged();
} else {
personBuilder_.addMessage(value);
}
return this;
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public Builder addPerson(
int index, com.example.tutorial.AddressBookProtos.Person value) {
if (personBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensurePersonIsMutable();
person_.add(index, value);
onChanged();
} else {
personBuilder_.addMessage(index, value);
}
return this;
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public Builder addPerson(
com.example.tutorial.AddressBookProtos.Person.Builder builderForValue) {
if (personBuilder_ == null) {
ensurePersonIsMutable();
person_.add(builderForValue.build());
onChanged();
} else {
personBuilder_.addMessage(builderForValue.build());
}
return this;
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public Builder addPerson(
int index, com.example.tutorial.AddressBookProtos.Person.Builder builderForValue) {
if (personBuilder_ == null) {
ensurePersonIsMutable();
person_.add(index, builderForValue.build());
onChanged();
} else {
personBuilder_.addMessage(index, builderForValue.build());
}
return this;
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public Builder addAllPerson(
java.lang.Iterable<? extends com.example.tutorial.AddressBookProtos.Person> values) {
if (personBuilder_ == null) {
ensurePersonIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, person_);
onChanged();
} else {
personBuilder_.addAllMessages(values);
}
return this;
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public Builder clearPerson() {
if (personBuilder_ == null) {
person_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000001);
onChanged();
} else {
personBuilder_.clear();
}
return this;
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public Builder removePerson(int index) {
if (personBuilder_ == null) {
ensurePersonIsMutable();
person_.remove(index);
onChanged();
} else {
personBuilder_.remove(index);
}
return this;
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public com.example.tutorial.AddressBookProtos.Person.Builder getPersonBuilder(
int index) {
return getPersonFieldBuilder().getBuilder(index);
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public com.example.tutorial.AddressBookProtos.PersonOrBuilder getPersonOrBuilder(
int index) {
if (personBuilder_ == null) {
return person_.get(index); } else {
return personBuilder_.getMessageOrBuilder(index);
}
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public java.util.List<? extends com.example.tutorial.AddressBookProtos.PersonOrBuilder>
getPersonOrBuilderList() {
if (personBuilder_ != null) {
return personBuilder_.getMessageOrBuilderList();
} else {
return java.util.Collections.unmodifiableList(person_);
}
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public com.example.tutorial.AddressBookProtos.Person.Builder addPersonBuilder() {
return getPersonFieldBuilder().addBuilder(
com.example.tutorial.AddressBookProtos.Person.getDefaultInstance());
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public com.example.tutorial.AddressBookProtos.Person.Builder addPersonBuilder(
int index) {
return getPersonFieldBuilder().addBuilder(
index, com.example.tutorial.AddressBookProtos.Person.getDefaultInstance());
}
/**
* <code>repeated .tutorial.Person person = 1;</code>
*/
public java.util.List<com.example.tutorial.AddressBookProtos.Person.Builder>
getPersonBuilderList() {
return getPersonFieldBuilder().getBuilderList();
}
private com.google.protobuf.RepeatedFieldBuilder<
com.example.tutorial.AddressBookProtos.Person, com.example.tutorial.AddressBookProtos.Person.Builder, com.example.tutorial.AddressBookProtos.PersonOrBuilder>
getPersonFieldBuilder() {
if (personBuilder_ == null) {
personBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
com.example.tutorial.AddressBookProtos.Person, com.example.tutorial.AddressBookProtos.Person.Builder, com.example.tutorial.AddressBookProtos.PersonOrBuilder>(
person_,
((bitField0_ & 0x00000001) == 0x00000001),
getParentForChildren(),
isClean());
person_ = null;
}
return personBuilder_;
}
// @@protoc_insertion_point(builder_scope:tutorial.AddressBook)
}
static {
defaultInstance = new AddressBook(true);
defaultInstance.initFields();
}
// @@protoc_insertion_point(class_scope:tutorial.AddressBook)
}
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_tutorial_Person_descriptor;
private static
com.google.protobuf.GeneratedMessage.FieldAccessorTable
internal_static_tutorial_Person_fieldAccessorTable;
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_tutorial_Person_PhoneNumber_descriptor;
private static
com.google.protobuf.GeneratedMessage.FieldAccessorTable
internal_static_tutorial_Person_PhoneNumber_fieldAccessorTable;
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_tutorial_AddressBook_descriptor;
private static
com.google.protobuf.GeneratedMessage.FieldAccessorTable
internal_static_tutorial_AddressBook_fieldAccessorTable;
public static com.google.protobuf.Descriptors.FileDescriptor
getDescriptor() {
return descriptor;
}
private static com.google.protobuf.Descriptors.FileDescriptor
descriptor;
static {
java.lang.String[] descriptorData = {
"\n\021addressbook.proto\022\010tutorial\"\332\001\n\006Person" +
"\022\014\n\004name\030\001 \002(\t\022\n\n\002id\030\002 \002(\005\022\r\n\005email\030\003 \001(" +
"\t\022+\n\005phone\030\004 \003(\0132\034.tutorial.Person.Phone" +
"Number\032M\n\013PhoneNumber\022\016\n\006number\030\001 \002(\t\022.\n" +
"\004type\030\002 \001(\0162\032.tutorial.Person.PhoneType:" +
"\004HOME\"+\n\tPhoneType\022\n\n\006MOBILE\020\000\022\010\n\004HOME\020\001" +
"\022\010\n\004WORK\020\002\"/\n\013AddressBook\022 \n\006person\030\001 \003(" +
"\0132\020.tutorial.PersonB)\n\024com.example.tutor" +
"ialB\021AddressBookProtos"
};
com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() {
public com.google.protobuf.ExtensionRegistry assignDescriptors(
com.google.protobuf.Descriptors.FileDescriptor root) {
descriptor = root;
return null;
}
};
com.google.protobuf.Descriptors.FileDescriptor
.internalBuildGeneratedFileFrom(descriptorData,
new com.google.protobuf.Descriptors.FileDescriptor[] {
}, assigner);
internal_static_tutorial_Person_descriptor =
getDescriptor().getMessageTypes().get(0);
internal_static_tutorial_Person_fieldAccessorTable = new
com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_tutorial_Person_descriptor,
new java.lang.String[] { "Name", "Id", "Email", "Phone", });
internal_static_tutorial_Person_PhoneNumber_descriptor =
internal_static_tutorial_Person_descriptor.getNestedTypes().get(0);
internal_static_tutorial_Person_PhoneNumber_fieldAccessorTable = new
com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_tutorial_Person_PhoneNumber_descriptor,
new java.lang.String[] { "Number", "Type", });
internal_static_tutorial_AddressBook_descriptor =
getDescriptor().getMessageTypes().get(1);
internal_static_tutorial_AddressBook_fieldAccessorTable = new
com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_tutorial_AddressBook_descriptor,
new java.lang.String[] { "Person", });
}
// @@protoc_insertion_point(outer_class_scope)
}
相关推荐
Proto Buffer(Protocol Buffers)是Google开发的一种数据序列化协议,它是用于结构化数据的高效、灵活且可扩展的序列化方法。Proto Buffer允许开发者定义数据结构,然后生成能够在各种编程语言中使用的代码,用于...
解压后的文件直接放在,放在Sublime Text/Data/Installed Packages 或者 打开sublime text 3 存放已安装的插件包的目录地址(Preferences>...重启sublime text 3(注意需要将已打开的proto buffer文件关闭重新开启)
Unity Proto Buffer教程的源码 -------------------------------------------------- 凑字数
Google Protocol Buffer(简称protobuf)是Google推出的一种高效的数据序列化协议,它允许开发者定义数据结构,然后生成可以在各种数据平台之间交换数据的代码。protobuf的主要优势在于它的效率、跨平台性和可扩展性...
Protocol Buffers是Google开发的一种数据序列化协议,用于结构化数据的序列化,可以视为一种跨平台、跨语言的数据交换格式。它允许开发者定义数据结构,然后生成代码以轻松地在各种数据流之间读写这些数据。Protocol...
标题中的"Proto"通常指的是Protocol Buffers,这是Google开发的一种数据序列化协议,用于结构化数据的编码和解码,类似于XML、JSON,但更高效且体积更小。Protocol Buffers提供了一种语言中立、平台中立的方式来定义...
Google Protobuf(Protocol Buffers)是一种灵活、高效、自动化的结构化数据串行化方式,类似于XML、JSON等数据格式,但更小、更快、更简单。通过定义数据结构的方式(即.proto文件),可以方便地进行序列化与反序列...
google proto-buf中常被使用的一个计时文件,可能你的proto文件需要使用
赠送jar包:proto-google-common-protos-1.17.0.jar; 赠送原API文档:proto-google-common-protos-1.17.0-javadoc.jar; 赠送源代码:proto-google-common-protos-1.17.0-sources.jar; 赠送Maven依赖信息文件:...
2. **Proto Buffer**:Proto Buffer是Google的数据序列化系统,用于定义数据结构和服务接口。.proto文件是Proto Buffer的语法描述文件,可以被编译成不同编程语言的代码,如Java、Python或C++,生成的数据结构便于在...
在IT行业中,Protocol Buffers(简称protobuf)是Google开发的一种数据序列化协议,它被广泛应用于网络通信和数据存储等领域。protobuf提供了一种高效、跨平台的方式来定义数据结构,并能生成对应的语言绑定代码,...
3. **proto3**:为了解决proto2的一些复杂性和冗余问题,Google推出了proto3,进一步简化了语法,移除了部分在实际使用中并不常用的功能,如optional字段类型和显式默认值。proto3引入了强类型的enum,并支持JSON...
综上所述,"google protocal buffer 源代码,编译通过"意味着我们拥有了一个可以直接使用的、经过验证的 Protobuf 实现,可以深入研究其内部实现,进行自定义优化,或者为不支持的编程语言添加支持。这将极大地便利...
【标题】:“proto_db-master.zip”是一个包含proto_db项目的压缩包,该项目是基于Google Protocol Buffer实现的ORM(对象关系映射)系统。 【描述】:ORM是一种编程技术,它允许开发者使用面向对象的方式操作...
Google Protocol Buffer(简称Protobuf)是一种由Google开发的跨语言、跨平台的序列化框架,主要用于数据的序列化、反序列化,是一种更灵活、高效、自动化的机制。相比于XML等数据交换格式,Protocol Buffer具有更小...
通过阅读和实践这个"google Protocol Buffer学习文档",你可以掌握如何使用Protobuf进行数据序列化,并将其应用于实际项目中,提升系统效率和可维护性。文件"test_protobuf"可能是包含示例代码或者测试用例,用于...
《Google Protocol Buffer 使用与原理详解》 Google Protocol Buffer(简称Protobuf)是一种高效、轻便的结构化数据序列化工具,广泛应用于数据存储、RPC(远程过程调用)数据交换格式,尤其在通信协议和数据存储...
赠送jar包:proto-google-common-protos-1.17.0.jar; 赠送原API文档:proto-google-common-protos-1.17.0-javadoc.jar; 赠送源代码:proto-google-common-protos-1.17.0-sources.jar; 赠送Maven依赖信息文件:...
Google Protocol Buffers(简称Protobuf)是Google开发的一种数据序列化协议,用于高效地存储和传输结构化数据。2.6.1版本是其在2014年发布的一个稳定版本,广泛应用于各种项目和系统中。这个压缩包包含的是Protobuf...
**Google Protocol Buffer 2.3.0 知识点详解** Google Protocol Buffers(简称protobuf)是一种高效、灵活且跨平台的数据序列化协议,由Google开发。它允许开发者定义数据结构,然后生成代码来轻松地读写这些数据到...