optional uint64 start_block = 1;
+ * @return Whether the startBlock field is set.
+ */
+ boolean hasStartBlock();
+ /**
+ * optional uint64 start_block = 1;
+ * @return The startBlock.
+ */
+ long getStartBlock();
+
+ /**
+ * optional uint64 num_blocks = 2;
+ * @return Whether the numBlocks field is set.
+ */
+ boolean hasNumBlocks();
+ /**
+ * optional uint64 num_blocks = 2;
+ * @return The numBlocks.
+ */
+ long getNumBlocks();
+ }
+ /**
+ * Protobuf type {@code chromeos_update_engine.Extent}
+ */
+ public static final class Extent extends
+ com.google.protobuf.GeneratedMessageV3 implements
+ // @@protoc_insertion_point(message_implements:chromeos_update_engine.Extent)
+ ExtentOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use Extent.newBuilder() to construct.
+ private Extent(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+ private Extent() {
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(
+ UnusedPrivateParameter unused) {
+ return new Extent();
+ }
+
+ @java.lang.Override
+ public final com.google.protobuf.UnknownFieldSet
+ getUnknownFields() {
+ return this.unknownFields;
+ }
+ private Extent(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ this();
+ if (extensionRegistry == null) {
+ throw new java.lang.NullPointerException();
+ }
+ 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;
+ case 8: {
+ bitField0_ |= 0x00000001;
+ startBlock_ = input.readUInt64();
+ break;
+ }
+ case 16: {
+ bitField0_ |= 0x00000002;
+ numBlocks_ = input.readUInt64();
+ break;
+ }
+ default: {
+ if (!parseUnknownField(
+ input, unknownFields, extensionRegistry, tag)) {
+ done = true;
+ }
+ break;
+ }
+ }
+ }
+ } catch (com.google.protobuf.InvalidProtocolBufferException e) {
+ throw e.setUnfinishedMessage(this);
+ } catch (java.io.IOException e) {
+ throw new com.google.protobuf.InvalidProtocolBufferException(
+ e).setUnfinishedMessage(this);
+ } finally {
+ this.unknownFields = unknownFields.build();
+ makeExtensionsImmutable();
+ }
+ }
+ public static final com.google.protobuf.Descriptors.Descriptor
+ getDescriptor() {
+ return chromeos_update_engine.UpdateMetadata.internal_static_chromeos_update_engine_Extent_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return chromeos_update_engine.UpdateMetadata.internal_static_chromeos_update_engine_Extent_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ chromeos_update_engine.UpdateMetadata.Extent.class, chromeos_update_engine.UpdateMetadata.Extent.Builder.class);
+ }
+
+ private int bitField0_;
+ public static final int START_BLOCK_FIELD_NUMBER = 1;
+ private long startBlock_;
+ /**
+ * optional uint64 start_block = 1;
+ * @return Whether the startBlock field is set.
+ */
+ @java.lang.Override
+ public boolean hasStartBlock() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * optional uint64 start_block = 1;
+ * @return The startBlock.
+ */
+ @java.lang.Override
+ public long getStartBlock() {
+ return startBlock_;
+ }
+
+ public static final int NUM_BLOCKS_FIELD_NUMBER = 2;
+ private long numBlocks_;
+ /**
+ * optional uint64 num_blocks = 2;
+ * @return Whether the numBlocks field is set.
+ */
+ @java.lang.Override
+ public boolean hasNumBlocks() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * optional uint64 num_blocks = 2;
+ * @return The numBlocks.
+ */
+ @java.lang.Override
+ public long getNumBlocks() {
+ return numBlocks_;
+ }
+
+ private byte memoizedIsInitialized = -1;
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output)
+ throws java.io.IOException {
+ if (((bitField0_ & 0x00000001) != 0)) {
+ output.writeUInt64(1, startBlock_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ output.writeUInt64(2, numBlocks_);
+ }
+ unknownFields.writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeUInt64Size(1, startBlock_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeUInt64Size(2, numBlocks_);
+ }
+ size += unknownFields.getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof chromeos_update_engine.UpdateMetadata.Extent)) {
+ return super.equals(obj);
+ }
+ chromeos_update_engine.UpdateMetadata.Extent other = (chromeos_update_engine.UpdateMetadata.Extent) obj;
+
+ if (hasStartBlock() != other.hasStartBlock()) return false;
+ if (hasStartBlock()) {
+ if (getStartBlock()
+ != other.getStartBlock()) return false;
+ }
+ if (hasNumBlocks() != other.hasNumBlocks()) return false;
+ if (hasNumBlocks()) {
+ if (getNumBlocks()
+ != other.getNumBlocks()) return false;
+ }
+ if (!unknownFields.equals(other.unknownFields)) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (hasStartBlock()) {
+ hash = (37 * hash) + START_BLOCK_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
+ getStartBlock());
+ }
+ if (hasNumBlocks()) {
+ hash = (37 * hash) + NUM_BLOCKS_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
+ getNumBlocks());
+ }
+ hash = (29 * hash) + unknownFields.hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static chromeos_update_engine.UpdateMetadata.Extent parseFrom(
+ java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Extent parseFrom(
+ java.nio.ByteBuffer data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Extent parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Extent parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Extent parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Extent parseFrom(
+ byte[] data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Extent parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Extent parseFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Extent parseDelimitedFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Extent parseDelimitedFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Extent parseFrom(
+ com.google.protobuf.CodedInputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Extent parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() { return newBuilder(); }
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+ public static Builder newBuilder(chromeos_update_engine.UpdateMetadata.Extent prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE
+ ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(
+ com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+ /**
+ * Protobuf type {@code chromeos_update_engine.Extent}
+ */
+ public static final class Builder extends
+ com.google.protobuf.GeneratedMessageV3.Builderoptional uint64 start_block = 1;
+ * @return Whether the startBlock field is set.
+ */
+ @java.lang.Override
+ public boolean hasStartBlock() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * optional uint64 start_block = 1;
+ * @return The startBlock.
+ */
+ @java.lang.Override
+ public long getStartBlock() {
+ return startBlock_;
+ }
+ /**
+ * optional uint64 start_block = 1;
+ * @param value The startBlock to set.
+ * @return This builder for chaining.
+ */
+ public Builder setStartBlock(long value) {
+ bitField0_ |= 0x00000001;
+ startBlock_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * optional uint64 start_block = 1;
+ * @return This builder for chaining.
+ */
+ public Builder clearStartBlock() {
+ bitField0_ = (bitField0_ & ~0x00000001);
+ startBlock_ = 0L;
+ onChanged();
+ return this;
+ }
+
+ private long numBlocks_ ;
+ /**
+ * optional uint64 num_blocks = 2;
+ * @return Whether the numBlocks field is set.
+ */
+ @java.lang.Override
+ public boolean hasNumBlocks() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * optional uint64 num_blocks = 2;
+ * @return The numBlocks.
+ */
+ @java.lang.Override
+ public long getNumBlocks() {
+ return numBlocks_;
+ }
+ /**
+ * optional uint64 num_blocks = 2;
+ * @param value The numBlocks to set.
+ * @return This builder for chaining.
+ */
+ public Builder setNumBlocks(long value) {
+ bitField0_ |= 0x00000002;
+ numBlocks_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * optional uint64 num_blocks = 2;
+ * @return This builder for chaining.
+ */
+ public Builder clearNumBlocks() {
+ bitField0_ = (bitField0_ & ~0x00000002);
+ numBlocks_ = 0L;
+ onChanged();
+ return this;
+ }
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+
+ // @@protoc_insertion_point(builder_scope:chromeos_update_engine.Extent)
+ }
+
+ // @@protoc_insertion_point(class_scope:chromeos_update_engine.Extent)
+ private static final chromeos_update_engine.UpdateMetadata.Extent DEFAULT_INSTANCE;
+ static {
+ DEFAULT_INSTANCE = new chromeos_update_engine.UpdateMetadata.Extent();
+ }
+
+ public static chromeos_update_engine.UpdateMetadata.Extent getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ @java.lang.Deprecated public static final com.google.protobuf.Parserrepeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ java.util.Listrepeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ chromeos_update_engine.UpdateMetadata.Signatures.Signature getSignatures(int index);
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ int getSignaturesCount();
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ java.util.List extends chromeos_update_engine.UpdateMetadata.Signatures.SignatureOrBuilder>
+ getSignaturesOrBuilderList();
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ chromeos_update_engine.UpdateMetadata.Signatures.SignatureOrBuilder getSignaturesOrBuilder(
+ int index);
+ }
+ /**
+ * Protobuf type {@code chromeos_update_engine.Signatures}
+ */
+ public static final class Signatures extends
+ com.google.protobuf.GeneratedMessageV3 implements
+ // @@protoc_insertion_point(message_implements:chromeos_update_engine.Signatures)
+ SignaturesOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use Signatures.newBuilder() to construct.
+ private Signatures(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+ private Signatures() {
+ signatures_ = java.util.Collections.emptyList();
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(
+ UnusedPrivateParameter unused) {
+ return new Signatures();
+ }
+
+ @java.lang.Override
+ public final com.google.protobuf.UnknownFieldSet
+ getUnknownFields() {
+ return this.unknownFields;
+ }
+ private Signatures(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ this();
+ if (extensionRegistry == null) {
+ throw new java.lang.NullPointerException();
+ }
+ 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;
+ case 10: {
+ if (!((mutable_bitField0_ & 0x00000001) != 0)) {
+ signatures_ = new java.util.ArrayListoptional uint32 version = 1 [deprecated = true];
+ * @return Whether the version field is set.
+ */
+ @java.lang.Deprecated boolean hasVersion();
+ /**
+ * optional uint32 version = 1 [deprecated = true];
+ * @return The version.
+ */
+ @java.lang.Deprecated int getVersion();
+
+ /**
+ * optional bytes data = 2;
+ * @return Whether the data field is set.
+ */
+ boolean hasData();
+ /**
+ * optional bytes data = 2;
+ * @return The data.
+ */
+ com.google.protobuf.ByteString getData();
+
+ /**
+ * + * The DER encoded signature size of EC keys is nondeterministic for + * different input of sha256 hash. However, we need the size of the + * serialized signatures protobuf string to be fixed before signing; + * because this size is part of the content to be signed. Therefore, we + * always pad the signature data to the maximum possible signature size of + * a given key. And the payload verifier will truncate the signature to + * its correct size based on the value of |unpadded_signature_size|. + *+ * + *
optional fixed32 unpadded_signature_size = 3;
+ * @return Whether the unpaddedSignatureSize field is set.
+ */
+ boolean hasUnpaddedSignatureSize();
+ /**
+ * + * The DER encoded signature size of EC keys is nondeterministic for + * different input of sha256 hash. However, we need the size of the + * serialized signatures protobuf string to be fixed before signing; + * because this size is part of the content to be signed. Therefore, we + * always pad the signature data to the maximum possible signature size of + * a given key. And the payload verifier will truncate the signature to + * its correct size based on the value of |unpadded_signature_size|. + *+ * + *
optional fixed32 unpadded_signature_size = 3;
+ * @return The unpaddedSignatureSize.
+ */
+ int getUnpaddedSignatureSize();
+ }
+ /**
+ * Protobuf type {@code chromeos_update_engine.Signatures.Signature}
+ */
+ public static final class Signature extends
+ com.google.protobuf.GeneratedMessageV3 implements
+ // @@protoc_insertion_point(message_implements:chromeos_update_engine.Signatures.Signature)
+ SignatureOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use Signature.newBuilder() to construct.
+ private Signature(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+ private Signature() {
+ data_ = com.google.protobuf.ByteString.EMPTY;
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(
+ UnusedPrivateParameter unused) {
+ return new Signature();
+ }
+
+ @java.lang.Override
+ public final com.google.protobuf.UnknownFieldSet
+ getUnknownFields() {
+ return this.unknownFields;
+ }
+ private Signature(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ this();
+ if (extensionRegistry == null) {
+ throw new java.lang.NullPointerException();
+ }
+ 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;
+ case 8: {
+ bitField0_ |= 0x00000001;
+ version_ = input.readUInt32();
+ break;
+ }
+ case 18: {
+ bitField0_ |= 0x00000002;
+ data_ = input.readBytes();
+ break;
+ }
+ case 29: {
+ bitField0_ |= 0x00000004;
+ unpaddedSignatureSize_ = input.readFixed32();
+ break;
+ }
+ default: {
+ if (!parseUnknownField(
+ input, unknownFields, extensionRegistry, tag)) {
+ done = true;
+ }
+ break;
+ }
+ }
+ }
+ } catch (com.google.protobuf.InvalidProtocolBufferException e) {
+ throw e.setUnfinishedMessage(this);
+ } catch (java.io.IOException e) {
+ throw new com.google.protobuf.InvalidProtocolBufferException(
+ e).setUnfinishedMessage(this);
+ } finally {
+ this.unknownFields = unknownFields.build();
+ makeExtensionsImmutable();
+ }
+ }
+ public static final com.google.protobuf.Descriptors.Descriptor
+ getDescriptor() {
+ return chromeos_update_engine.UpdateMetadata.internal_static_chromeos_update_engine_Signatures_Signature_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return chromeos_update_engine.UpdateMetadata.internal_static_chromeos_update_engine_Signatures_Signature_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ chromeos_update_engine.UpdateMetadata.Signatures.Signature.class, chromeos_update_engine.UpdateMetadata.Signatures.Signature.Builder.class);
+ }
+
+ private int bitField0_;
+ public static final int VERSION_FIELD_NUMBER = 1;
+ private int version_;
+ /**
+ * optional uint32 version = 1 [deprecated = true];
+ * @return Whether the version field is set.
+ */
+ @java.lang.Override
+ @java.lang.Deprecated public boolean hasVersion() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * optional uint32 version = 1 [deprecated = true];
+ * @return The version.
+ */
+ @java.lang.Override
+ @java.lang.Deprecated public int getVersion() {
+ return version_;
+ }
+
+ public static final int DATA_FIELD_NUMBER = 2;
+ private com.google.protobuf.ByteString data_;
+ /**
+ * optional bytes data = 2;
+ * @return Whether the data field is set.
+ */
+ @java.lang.Override
+ public boolean hasData() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * optional bytes data = 2;
+ * @return The data.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getData() {
+ return data_;
+ }
+
+ public static final int UNPADDED_SIGNATURE_SIZE_FIELD_NUMBER = 3;
+ private int unpaddedSignatureSize_;
+ /**
+ * + * The DER encoded signature size of EC keys is nondeterministic for + * different input of sha256 hash. However, we need the size of the + * serialized signatures protobuf string to be fixed before signing; + * because this size is part of the content to be signed. Therefore, we + * always pad the signature data to the maximum possible signature size of + * a given key. And the payload verifier will truncate the signature to + * its correct size based on the value of |unpadded_signature_size|. + *+ * + *
optional fixed32 unpadded_signature_size = 3;
+ * @return Whether the unpaddedSignatureSize field is set.
+ */
+ @java.lang.Override
+ public boolean hasUnpaddedSignatureSize() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ * + * The DER encoded signature size of EC keys is nondeterministic for + * different input of sha256 hash. However, we need the size of the + * serialized signatures protobuf string to be fixed before signing; + * because this size is part of the content to be signed. Therefore, we + * always pad the signature data to the maximum possible signature size of + * a given key. And the payload verifier will truncate the signature to + * its correct size based on the value of |unpadded_signature_size|. + *+ * + *
optional fixed32 unpadded_signature_size = 3;
+ * @return The unpaddedSignatureSize.
+ */
+ @java.lang.Override
+ public int getUnpaddedSignatureSize() {
+ return unpaddedSignatureSize_;
+ }
+
+ private byte memoizedIsInitialized = -1;
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output)
+ throws java.io.IOException {
+ if (((bitField0_ & 0x00000001) != 0)) {
+ output.writeUInt32(1, version_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ output.writeBytes(2, data_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ output.writeFixed32(3, unpaddedSignatureSize_);
+ }
+ unknownFields.writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeUInt32Size(1, version_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeBytesSize(2, data_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeFixed32Size(3, unpaddedSignatureSize_);
+ }
+ size += unknownFields.getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof chromeos_update_engine.UpdateMetadata.Signatures.Signature)) {
+ return super.equals(obj);
+ }
+ chromeos_update_engine.UpdateMetadata.Signatures.Signature other = (chromeos_update_engine.UpdateMetadata.Signatures.Signature) obj;
+
+ if (hasVersion() != other.hasVersion()) return false;
+ if (hasVersion()) {
+ if (getVersion()
+ != other.getVersion()) return false;
+ }
+ if (hasData() != other.hasData()) return false;
+ if (hasData()) {
+ if (!getData()
+ .equals(other.getData())) return false;
+ }
+ if (hasUnpaddedSignatureSize() != other.hasUnpaddedSignatureSize()) return false;
+ if (hasUnpaddedSignatureSize()) {
+ if (getUnpaddedSignatureSize()
+ != other.getUnpaddedSignatureSize()) return false;
+ }
+ if (!unknownFields.equals(other.unknownFields)) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (hasVersion()) {
+ hash = (37 * hash) + VERSION_FIELD_NUMBER;
+ hash = (53 * hash) + getVersion();
+ }
+ if (hasData()) {
+ hash = (37 * hash) + DATA_FIELD_NUMBER;
+ hash = (53 * hash) + getData().hashCode();
+ }
+ if (hasUnpaddedSignatureSize()) {
+ hash = (37 * hash) + UNPADDED_SIGNATURE_SIZE_FIELD_NUMBER;
+ hash = (53 * hash) + getUnpaddedSignatureSize();
+ }
+ hash = (29 * hash) + unknownFields.hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static chromeos_update_engine.UpdateMetadata.Signatures.Signature parseFrom(
+ java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures.Signature parseFrom(
+ java.nio.ByteBuffer data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures.Signature parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures.Signature parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures.Signature parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures.Signature parseFrom(
+ byte[] data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures.Signature parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures.Signature parseFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures.Signature parseDelimitedFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures.Signature parseDelimitedFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures.Signature parseFrom(
+ com.google.protobuf.CodedInputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures.Signature parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() { return newBuilder(); }
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+ public static Builder newBuilder(chromeos_update_engine.UpdateMetadata.Signatures.Signature prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE
+ ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(
+ com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+ /**
+ * Protobuf type {@code chromeos_update_engine.Signatures.Signature}
+ */
+ public static final class Builder extends
+ com.google.protobuf.GeneratedMessageV3.Builderoptional uint32 version = 1 [deprecated = true];
+ * @return Whether the version field is set.
+ */
+ @java.lang.Override
+ @java.lang.Deprecated public boolean hasVersion() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * optional uint32 version = 1 [deprecated = true];
+ * @return The version.
+ */
+ @java.lang.Override
+ @java.lang.Deprecated public int getVersion() {
+ return version_;
+ }
+ /**
+ * optional uint32 version = 1 [deprecated = true];
+ * @param value The version to set.
+ * @return This builder for chaining.
+ */
+ @java.lang.Deprecated public Builder setVersion(int value) {
+ bitField0_ |= 0x00000001;
+ version_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * optional uint32 version = 1 [deprecated = true];
+ * @return This builder for chaining.
+ */
+ @java.lang.Deprecated public Builder clearVersion() {
+ bitField0_ = (bitField0_ & ~0x00000001);
+ version_ = 0;
+ onChanged();
+ return this;
+ }
+
+ private com.google.protobuf.ByteString data_ = com.google.protobuf.ByteString.EMPTY;
+ /**
+ * optional bytes data = 2;
+ * @return Whether the data field is set.
+ */
+ @java.lang.Override
+ public boolean hasData() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * optional bytes data = 2;
+ * @return The data.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getData() {
+ return data_;
+ }
+ /**
+ * optional bytes data = 2;
+ * @param value The data to set.
+ * @return This builder for chaining.
+ */
+ public Builder setData(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000002;
+ data_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * optional bytes data = 2;
+ * @return This builder for chaining.
+ */
+ public Builder clearData() {
+ bitField0_ = (bitField0_ & ~0x00000002);
+ data_ = getDefaultInstance().getData();
+ onChanged();
+ return this;
+ }
+
+ private int unpaddedSignatureSize_ ;
+ /**
+ * + * The DER encoded signature size of EC keys is nondeterministic for + * different input of sha256 hash. However, we need the size of the + * serialized signatures protobuf string to be fixed before signing; + * because this size is part of the content to be signed. Therefore, we + * always pad the signature data to the maximum possible signature size of + * a given key. And the payload verifier will truncate the signature to + * its correct size based on the value of |unpadded_signature_size|. + *+ * + *
optional fixed32 unpadded_signature_size = 3;
+ * @return Whether the unpaddedSignatureSize field is set.
+ */
+ @java.lang.Override
+ public boolean hasUnpaddedSignatureSize() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ * + * The DER encoded signature size of EC keys is nondeterministic for + * different input of sha256 hash. However, we need the size of the + * serialized signatures protobuf string to be fixed before signing; + * because this size is part of the content to be signed. Therefore, we + * always pad the signature data to the maximum possible signature size of + * a given key. And the payload verifier will truncate the signature to + * its correct size based on the value of |unpadded_signature_size|. + *+ * + *
optional fixed32 unpadded_signature_size = 3;
+ * @return The unpaddedSignatureSize.
+ */
+ @java.lang.Override
+ public int getUnpaddedSignatureSize() {
+ return unpaddedSignatureSize_;
+ }
+ /**
+ * + * The DER encoded signature size of EC keys is nondeterministic for + * different input of sha256 hash. However, we need the size of the + * serialized signatures protobuf string to be fixed before signing; + * because this size is part of the content to be signed. Therefore, we + * always pad the signature data to the maximum possible signature size of + * a given key. And the payload verifier will truncate the signature to + * its correct size based on the value of |unpadded_signature_size|. + *+ * + *
optional fixed32 unpadded_signature_size = 3;
+ * @param value The unpaddedSignatureSize to set.
+ * @return This builder for chaining.
+ */
+ public Builder setUnpaddedSignatureSize(int value) {
+ bitField0_ |= 0x00000004;
+ unpaddedSignatureSize_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * The DER encoded signature size of EC keys is nondeterministic for + * different input of sha256 hash. However, we need the size of the + * serialized signatures protobuf string to be fixed before signing; + * because this size is part of the content to be signed. Therefore, we + * always pad the signature data to the maximum possible signature size of + * a given key. And the payload verifier will truncate the signature to + * its correct size based on the value of |unpadded_signature_size|. + *+ * + *
optional fixed32 unpadded_signature_size = 3;
+ * @return This builder for chaining.
+ */
+ public Builder clearUnpaddedSignatureSize() {
+ bitField0_ = (bitField0_ & ~0x00000004);
+ unpaddedSignatureSize_ = 0;
+ onChanged();
+ return this;
+ }
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+
+ // @@protoc_insertion_point(builder_scope:chromeos_update_engine.Signatures.Signature)
+ }
+
+ // @@protoc_insertion_point(class_scope:chromeos_update_engine.Signatures.Signature)
+ private static final chromeos_update_engine.UpdateMetadata.Signatures.Signature DEFAULT_INSTANCE;
+ static {
+ DEFAULT_INSTANCE = new chromeos_update_engine.UpdateMetadata.Signatures.Signature();
+ }
+
+ public static chromeos_update_engine.UpdateMetadata.Signatures.Signature getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ @java.lang.Deprecated public static final com.google.protobuf.Parserrepeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ @java.lang.Override
+ public java.util.Listrepeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ @java.lang.Override
+ public java.util.List extends chromeos_update_engine.UpdateMetadata.Signatures.SignatureOrBuilder>
+ getSignaturesOrBuilderList() {
+ return signatures_;
+ }
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ @java.lang.Override
+ public int getSignaturesCount() {
+ return signatures_.size();
+ }
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.Signatures.Signature getSignatures(int index) {
+ return signatures_.get(index);
+ }
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.Signatures.SignatureOrBuilder getSignaturesOrBuilder(
+ int index) {
+ return signatures_.get(index);
+ }
+
+ private byte memoizedIsInitialized = -1;
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output)
+ throws java.io.IOException {
+ for (int i = 0; i < signatures_.size(); i++) {
+ output.writeMessage(1, signatures_.get(i));
+ }
+ unknownFields.writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ for (int i = 0; i < signatures_.size(); i++) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(1, signatures_.get(i));
+ }
+ size += unknownFields.getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof chromeos_update_engine.UpdateMetadata.Signatures)) {
+ return super.equals(obj);
+ }
+ chromeos_update_engine.UpdateMetadata.Signatures other = (chromeos_update_engine.UpdateMetadata.Signatures) obj;
+
+ if (!getSignaturesList()
+ .equals(other.getSignaturesList())) return false;
+ if (!unknownFields.equals(other.unknownFields)) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (getSignaturesCount() > 0) {
+ hash = (37 * hash) + SIGNATURES_FIELD_NUMBER;
+ hash = (53 * hash) + getSignaturesList().hashCode();
+ }
+ hash = (29 * hash) + unknownFields.hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static chromeos_update_engine.UpdateMetadata.Signatures parseFrom(
+ java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures parseFrom(
+ java.nio.ByteBuffer data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures parseFrom(
+ byte[] data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures parseFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures parseDelimitedFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures parseDelimitedFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures parseFrom(
+ com.google.protobuf.CodedInputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.Signatures parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() { return newBuilder(); }
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+ public static Builder newBuilder(chromeos_update_engine.UpdateMetadata.Signatures prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE
+ ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(
+ com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+ /**
+ * Protobuf type {@code chromeos_update_engine.Signatures}
+ */
+ public static final class Builder extends
+ com.google.protobuf.GeneratedMessageV3.Builderrepeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ public java.util.Listrepeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ public int getSignaturesCount() {
+ if (signaturesBuilder_ == null) {
+ return signatures_.size();
+ } else {
+ return signaturesBuilder_.getCount();
+ }
+ }
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ public chromeos_update_engine.UpdateMetadata.Signatures.Signature getSignatures(int index) {
+ if (signaturesBuilder_ == null) {
+ return signatures_.get(index);
+ } else {
+ return signaturesBuilder_.getMessage(index);
+ }
+ }
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ public Builder setSignatures(
+ int index, chromeos_update_engine.UpdateMetadata.Signatures.Signature value) {
+ if (signaturesBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureSignaturesIsMutable();
+ signatures_.set(index, value);
+ onChanged();
+ } else {
+ signaturesBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ public Builder setSignatures(
+ int index, chromeos_update_engine.UpdateMetadata.Signatures.Signature.Builder builderForValue) {
+ if (signaturesBuilder_ == null) {
+ ensureSignaturesIsMutable();
+ signatures_.set(index, builderForValue.build());
+ onChanged();
+ } else {
+ signaturesBuilder_.setMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ public Builder addSignatures(chromeos_update_engine.UpdateMetadata.Signatures.Signature value) {
+ if (signaturesBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureSignaturesIsMutable();
+ signatures_.add(value);
+ onChanged();
+ } else {
+ signaturesBuilder_.addMessage(value);
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ public Builder addSignatures(
+ int index, chromeos_update_engine.UpdateMetadata.Signatures.Signature value) {
+ if (signaturesBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureSignaturesIsMutable();
+ signatures_.add(index, value);
+ onChanged();
+ } else {
+ signaturesBuilder_.addMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ public Builder addSignatures(
+ chromeos_update_engine.UpdateMetadata.Signatures.Signature.Builder builderForValue) {
+ if (signaturesBuilder_ == null) {
+ ensureSignaturesIsMutable();
+ signatures_.add(builderForValue.build());
+ onChanged();
+ } else {
+ signaturesBuilder_.addMessage(builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ public Builder addSignatures(
+ int index, chromeos_update_engine.UpdateMetadata.Signatures.Signature.Builder builderForValue) {
+ if (signaturesBuilder_ == null) {
+ ensureSignaturesIsMutable();
+ signatures_.add(index, builderForValue.build());
+ onChanged();
+ } else {
+ signaturesBuilder_.addMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ public Builder addAllSignatures(
+ java.lang.Iterable extends chromeos_update_engine.UpdateMetadata.Signatures.Signature> values) {
+ if (signaturesBuilder_ == null) {
+ ensureSignaturesIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(
+ values, signatures_);
+ onChanged();
+ } else {
+ signaturesBuilder_.addAllMessages(values);
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ public Builder clearSignatures() {
+ if (signaturesBuilder_ == null) {
+ signatures_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ } else {
+ signaturesBuilder_.clear();
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ public Builder removeSignatures(int index) {
+ if (signaturesBuilder_ == null) {
+ ensureSignaturesIsMutable();
+ signatures_.remove(index);
+ onChanged();
+ } else {
+ signaturesBuilder_.remove(index);
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ public chromeos_update_engine.UpdateMetadata.Signatures.Signature.Builder getSignaturesBuilder(
+ int index) {
+ return getSignaturesFieldBuilder().getBuilder(index);
+ }
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ public chromeos_update_engine.UpdateMetadata.Signatures.SignatureOrBuilder getSignaturesOrBuilder(
+ int index) {
+ if (signaturesBuilder_ == null) {
+ return signatures_.get(index); } else {
+ return signaturesBuilder_.getMessageOrBuilder(index);
+ }
+ }
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ public java.util.List extends chromeos_update_engine.UpdateMetadata.Signatures.SignatureOrBuilder>
+ getSignaturesOrBuilderList() {
+ if (signaturesBuilder_ != null) {
+ return signaturesBuilder_.getMessageOrBuilderList();
+ } else {
+ return java.util.Collections.unmodifiableList(signatures_);
+ }
+ }
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ public chromeos_update_engine.UpdateMetadata.Signatures.Signature.Builder addSignaturesBuilder() {
+ return getSignaturesFieldBuilder().addBuilder(
+ chromeos_update_engine.UpdateMetadata.Signatures.Signature.getDefaultInstance());
+ }
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ public chromeos_update_engine.UpdateMetadata.Signatures.Signature.Builder addSignaturesBuilder(
+ int index) {
+ return getSignaturesFieldBuilder().addBuilder(
+ index, chromeos_update_engine.UpdateMetadata.Signatures.Signature.getDefaultInstance());
+ }
+ /**
+ * repeated .chromeos_update_engine.Signatures.Signature signatures = 1;
+ */
+ public java.util.Listoptional uint64 size = 1;
+ * @return Whether the size field is set.
+ */
+ boolean hasSize();
+ /**
+ * optional uint64 size = 1;
+ * @return The size.
+ */
+ long getSize();
+
+ /**
+ * optional bytes hash = 2;
+ * @return Whether the hash field is set.
+ */
+ boolean hasHash();
+ /**
+ * optional bytes hash = 2;
+ * @return The hash.
+ */
+ com.google.protobuf.ByteString getHash();
+ }
+ /**
+ * Protobuf type {@code chromeos_update_engine.PartitionInfo}
+ */
+ public static final class PartitionInfo extends
+ com.google.protobuf.GeneratedMessageV3 implements
+ // @@protoc_insertion_point(message_implements:chromeos_update_engine.PartitionInfo)
+ PartitionInfoOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use PartitionInfo.newBuilder() to construct.
+ private PartitionInfo(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+ private PartitionInfo() {
+ hash_ = com.google.protobuf.ByteString.EMPTY;
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(
+ UnusedPrivateParameter unused) {
+ return new PartitionInfo();
+ }
+
+ @java.lang.Override
+ public final com.google.protobuf.UnknownFieldSet
+ getUnknownFields() {
+ return this.unknownFields;
+ }
+ private PartitionInfo(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ this();
+ if (extensionRegistry == null) {
+ throw new java.lang.NullPointerException();
+ }
+ 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;
+ case 8: {
+ bitField0_ |= 0x00000001;
+ size_ = input.readUInt64();
+ break;
+ }
+ case 18: {
+ bitField0_ |= 0x00000002;
+ hash_ = input.readBytes();
+ break;
+ }
+ default: {
+ if (!parseUnknownField(
+ input, unknownFields, extensionRegistry, tag)) {
+ done = true;
+ }
+ break;
+ }
+ }
+ }
+ } catch (com.google.protobuf.InvalidProtocolBufferException e) {
+ throw e.setUnfinishedMessage(this);
+ } catch (java.io.IOException e) {
+ throw new com.google.protobuf.InvalidProtocolBufferException(
+ e).setUnfinishedMessage(this);
+ } finally {
+ this.unknownFields = unknownFields.build();
+ makeExtensionsImmutable();
+ }
+ }
+ public static final com.google.protobuf.Descriptors.Descriptor
+ getDescriptor() {
+ return chromeos_update_engine.UpdateMetadata.internal_static_chromeos_update_engine_PartitionInfo_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return chromeos_update_engine.UpdateMetadata.internal_static_chromeos_update_engine_PartitionInfo_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ chromeos_update_engine.UpdateMetadata.PartitionInfo.class, chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder.class);
+ }
+
+ private int bitField0_;
+ public static final int SIZE_FIELD_NUMBER = 1;
+ private long size_;
+ /**
+ * optional uint64 size = 1;
+ * @return Whether the size field is set.
+ */
+ @java.lang.Override
+ public boolean hasSize() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * optional uint64 size = 1;
+ * @return The size.
+ */
+ @java.lang.Override
+ public long getSize() {
+ return size_;
+ }
+
+ public static final int HASH_FIELD_NUMBER = 2;
+ private com.google.protobuf.ByteString hash_;
+ /**
+ * optional bytes hash = 2;
+ * @return Whether the hash field is set.
+ */
+ @java.lang.Override
+ public boolean hasHash() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * optional bytes hash = 2;
+ * @return The hash.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getHash() {
+ return hash_;
+ }
+
+ private byte memoizedIsInitialized = -1;
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output)
+ throws java.io.IOException {
+ if (((bitField0_ & 0x00000001) != 0)) {
+ output.writeUInt64(1, size_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ output.writeBytes(2, hash_);
+ }
+ unknownFields.writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeUInt64Size(1, size_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeBytesSize(2, hash_);
+ }
+ size += unknownFields.getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof chromeos_update_engine.UpdateMetadata.PartitionInfo)) {
+ return super.equals(obj);
+ }
+ chromeos_update_engine.UpdateMetadata.PartitionInfo other = (chromeos_update_engine.UpdateMetadata.PartitionInfo) obj;
+
+ if (hasSize() != other.hasSize()) return false;
+ if (hasSize()) {
+ if (getSize()
+ != other.getSize()) return false;
+ }
+ if (hasHash() != other.hasHash()) return false;
+ if (hasHash()) {
+ if (!getHash()
+ .equals(other.getHash())) return false;
+ }
+ if (!unknownFields.equals(other.unknownFields)) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (hasSize()) {
+ hash = (37 * hash) + SIZE_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
+ getSize());
+ }
+ if (hasHash()) {
+ hash = (37 * hash) + HASH_FIELD_NUMBER;
+ hash = (53 * hash) + getHash().hashCode();
+ }
+ hash = (29 * hash) + unknownFields.hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static chromeos_update_engine.UpdateMetadata.PartitionInfo parseFrom(
+ java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionInfo parseFrom(
+ java.nio.ByteBuffer data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionInfo parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionInfo parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionInfo parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionInfo parseFrom(
+ byte[] data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionInfo parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionInfo parseFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionInfo parseDelimitedFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionInfo parseDelimitedFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionInfo parseFrom(
+ com.google.protobuf.CodedInputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionInfo parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() { return newBuilder(); }
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+ public static Builder newBuilder(chromeos_update_engine.UpdateMetadata.PartitionInfo prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE
+ ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(
+ com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+ /**
+ * Protobuf type {@code chromeos_update_engine.PartitionInfo}
+ */
+ public static final class Builder extends
+ com.google.protobuf.GeneratedMessageV3.Builderoptional uint64 size = 1;
+ * @return Whether the size field is set.
+ */
+ @java.lang.Override
+ public boolean hasSize() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * optional uint64 size = 1;
+ * @return The size.
+ */
+ @java.lang.Override
+ public long getSize() {
+ return size_;
+ }
+ /**
+ * optional uint64 size = 1;
+ * @param value The size to set.
+ * @return This builder for chaining.
+ */
+ public Builder setSize(long value) {
+ bitField0_ |= 0x00000001;
+ size_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * optional uint64 size = 1;
+ * @return This builder for chaining.
+ */
+ public Builder clearSize() {
+ bitField0_ = (bitField0_ & ~0x00000001);
+ size_ = 0L;
+ onChanged();
+ return this;
+ }
+
+ private com.google.protobuf.ByteString hash_ = com.google.protobuf.ByteString.EMPTY;
+ /**
+ * optional bytes hash = 2;
+ * @return Whether the hash field is set.
+ */
+ @java.lang.Override
+ public boolean hasHash() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * optional bytes hash = 2;
+ * @return The hash.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getHash() {
+ return hash_;
+ }
+ /**
+ * optional bytes hash = 2;
+ * @param value The hash to set.
+ * @return This builder for chaining.
+ */
+ public Builder setHash(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000002;
+ hash_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * optional bytes hash = 2;
+ * @return This builder for chaining.
+ */
+ public Builder clearHash() {
+ bitField0_ = (bitField0_ & ~0x00000002);
+ hash_ = getDefaultInstance().getHash();
+ onChanged();
+ return this;
+ }
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+
+ // @@protoc_insertion_point(builder_scope:chromeos_update_engine.PartitionInfo)
+ }
+
+ // @@protoc_insertion_point(class_scope:chromeos_update_engine.PartitionInfo)
+ private static final chromeos_update_engine.UpdateMetadata.PartitionInfo DEFAULT_INSTANCE;
+ static {
+ DEFAULT_INSTANCE = new chromeos_update_engine.UpdateMetadata.PartitionInfo();
+ }
+
+ public static chromeos_update_engine.UpdateMetadata.PartitionInfo getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ @java.lang.Deprecated public static final com.google.protobuf.Parseroptional string board = 1;
+ * @return Whether the board field is set.
+ */
+ boolean hasBoard();
+ /**
+ * optional string board = 1;
+ * @return The board.
+ */
+ java.lang.String getBoard();
+ /**
+ * optional string board = 1;
+ * @return The bytes for board.
+ */
+ com.google.protobuf.ByteString
+ getBoardBytes();
+
+ /**
+ * optional string key = 2;
+ * @return Whether the key field is set.
+ */
+ boolean hasKey();
+ /**
+ * optional string key = 2;
+ * @return The key.
+ */
+ java.lang.String getKey();
+ /**
+ * optional string key = 2;
+ * @return The bytes for key.
+ */
+ com.google.protobuf.ByteString
+ getKeyBytes();
+
+ /**
+ * optional string channel = 3;
+ * @return Whether the channel field is set.
+ */
+ boolean hasChannel();
+ /**
+ * optional string channel = 3;
+ * @return The channel.
+ */
+ java.lang.String getChannel();
+ /**
+ * optional string channel = 3;
+ * @return The bytes for channel.
+ */
+ com.google.protobuf.ByteString
+ getChannelBytes();
+
+ /**
+ * optional string version = 4;
+ * @return Whether the version field is set.
+ */
+ boolean hasVersion();
+ /**
+ * optional string version = 4;
+ * @return The version.
+ */
+ java.lang.String getVersion();
+ /**
+ * optional string version = 4;
+ * @return The bytes for version.
+ */
+ com.google.protobuf.ByteString
+ getVersionBytes();
+
+ /**
+ * + * If these values aren't present, they should be assumed to match + * the equivalent value above. They are normally only different for + * special image types such as nplusone images. + *+ * + *
optional string build_channel = 5;
+ * @return Whether the buildChannel field is set.
+ */
+ boolean hasBuildChannel();
+ /**
+ * + * If these values aren't present, they should be assumed to match + * the equivalent value above. They are normally only different for + * special image types such as nplusone images. + *+ * + *
optional string build_channel = 5;
+ * @return The buildChannel.
+ */
+ java.lang.String getBuildChannel();
+ /**
+ * + * If these values aren't present, they should be assumed to match + * the equivalent value above. They are normally only different for + * special image types such as nplusone images. + *+ * + *
optional string build_channel = 5;
+ * @return The bytes for buildChannel.
+ */
+ com.google.protobuf.ByteString
+ getBuildChannelBytes();
+
+ /**
+ * optional string build_version = 6;
+ * @return Whether the buildVersion field is set.
+ */
+ boolean hasBuildVersion();
+ /**
+ * optional string build_version = 6;
+ * @return The buildVersion.
+ */
+ java.lang.String getBuildVersion();
+ /**
+ * optional string build_version = 6;
+ * @return The bytes for buildVersion.
+ */
+ com.google.protobuf.ByteString
+ getBuildVersionBytes();
+ }
+ /**
+ * + * Describe an image we are based on in a human friendly way. + * Examples: + * dev-channel, x86-alex, 1.2.3, mp-v3 + * nplusone-channel, x86-alex, 1.2.4, mp-v3, dev-channel, 1.2.3 + * All fields will be set, if this message is present. + *+ * + * Protobuf type {@code chromeos_update_engine.ImageInfo} + */ + public static final class ImageInfo extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:chromeos_update_engine.ImageInfo) + ImageInfoOrBuilder { + private static final long serialVersionUID = 0L; + // Use ImageInfo.newBuilder() to construct. + private ImageInfo(com.google.protobuf.GeneratedMessageV3.Builder> builder) { + super(builder); + } + private ImageInfo() { + board_ = ""; + key_ = ""; + channel_ = ""; + version_ = ""; + buildChannel_ = ""; + buildVersion_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new ImageInfo(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private ImageInfo( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + 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; + case 10: { + com.google.protobuf.ByteString bs = input.readBytes(); + bitField0_ |= 0x00000001; + board_ = bs; + break; + } + case 18: { + com.google.protobuf.ByteString bs = input.readBytes(); + bitField0_ |= 0x00000002; + key_ = bs; + break; + } + case 26: { + com.google.protobuf.ByteString bs = input.readBytes(); + bitField0_ |= 0x00000004; + channel_ = bs; + break; + } + case 34: { + com.google.protobuf.ByteString bs = input.readBytes(); + bitField0_ |= 0x00000008; + version_ = bs; + break; + } + case 42: { + com.google.protobuf.ByteString bs = input.readBytes(); + bitField0_ |= 0x00000010; + buildChannel_ = bs; + break; + } + case 50: { + com.google.protobuf.ByteString bs = input.readBytes(); + bitField0_ |= 0x00000020; + buildVersion_ = bs; + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return chromeos_update_engine.UpdateMetadata.internal_static_chromeos_update_engine_ImageInfo_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return chromeos_update_engine.UpdateMetadata.internal_static_chromeos_update_engine_ImageInfo_fieldAccessorTable + .ensureFieldAccessorsInitialized( + chromeos_update_engine.UpdateMetadata.ImageInfo.class, chromeos_update_engine.UpdateMetadata.ImageInfo.Builder.class); + } + + private int bitField0_; + public static final int BOARD_FIELD_NUMBER = 1; + private volatile java.lang.Object board_; + /** + *
optional string board = 1;
+ * @return Whether the board field is set.
+ */
+ @java.lang.Override
+ public boolean hasBoard() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * optional string board = 1;
+ * @return The board.
+ */
+ @java.lang.Override
+ public java.lang.String getBoard() {
+ java.lang.Object ref = board_;
+ 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()) {
+ board_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * optional string board = 1;
+ * @return The bytes for board.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getBoardBytes() {
+ java.lang.Object ref = board_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ board_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int KEY_FIELD_NUMBER = 2;
+ private volatile java.lang.Object key_;
+ /**
+ * optional string key = 2;
+ * @return Whether the key field is set.
+ */
+ @java.lang.Override
+ public boolean hasKey() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * optional string key = 2;
+ * @return The key.
+ */
+ @java.lang.Override
+ public java.lang.String getKey() {
+ java.lang.Object ref = key_;
+ 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()) {
+ key_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * optional string key = 2;
+ * @return The bytes for key.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getKeyBytes() {
+ java.lang.Object ref = key_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ key_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int CHANNEL_FIELD_NUMBER = 3;
+ private volatile java.lang.Object channel_;
+ /**
+ * optional string channel = 3;
+ * @return Whether the channel field is set.
+ */
+ @java.lang.Override
+ public boolean hasChannel() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ * optional string channel = 3;
+ * @return The channel.
+ */
+ @java.lang.Override
+ public java.lang.String getChannel() {
+ java.lang.Object ref = channel_;
+ 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()) {
+ channel_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * optional string channel = 3;
+ * @return The bytes for channel.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getChannelBytes() {
+ java.lang.Object ref = channel_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ channel_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int VERSION_FIELD_NUMBER = 4;
+ private volatile java.lang.Object version_;
+ /**
+ * optional string version = 4;
+ * @return Whether the version field is set.
+ */
+ @java.lang.Override
+ public boolean hasVersion() {
+ return ((bitField0_ & 0x00000008) != 0);
+ }
+ /**
+ * optional string version = 4;
+ * @return The version.
+ */
+ @java.lang.Override
+ public java.lang.String getVersion() {
+ java.lang.Object ref = version_;
+ 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()) {
+ version_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * optional string version = 4;
+ * @return The bytes for version.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getVersionBytes() {
+ java.lang.Object ref = version_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ version_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int BUILD_CHANNEL_FIELD_NUMBER = 5;
+ private volatile java.lang.Object buildChannel_;
+ /**
+ * + * If these values aren't present, they should be assumed to match + * the equivalent value above. They are normally only different for + * special image types such as nplusone images. + *+ * + *
optional string build_channel = 5;
+ * @return Whether the buildChannel field is set.
+ */
+ @java.lang.Override
+ public boolean hasBuildChannel() {
+ return ((bitField0_ & 0x00000010) != 0);
+ }
+ /**
+ * + * If these values aren't present, they should be assumed to match + * the equivalent value above. They are normally only different for + * special image types such as nplusone images. + *+ * + *
optional string build_channel = 5;
+ * @return The buildChannel.
+ */
+ @java.lang.Override
+ public java.lang.String getBuildChannel() {
+ java.lang.Object ref = buildChannel_;
+ 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()) {
+ buildChannel_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * + * If these values aren't present, they should be assumed to match + * the equivalent value above. They are normally only different for + * special image types such as nplusone images. + *+ * + *
optional string build_channel = 5;
+ * @return The bytes for buildChannel.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getBuildChannelBytes() {
+ java.lang.Object ref = buildChannel_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ buildChannel_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int BUILD_VERSION_FIELD_NUMBER = 6;
+ private volatile java.lang.Object buildVersion_;
+ /**
+ * optional string build_version = 6;
+ * @return Whether the buildVersion field is set.
+ */
+ @java.lang.Override
+ public boolean hasBuildVersion() {
+ return ((bitField0_ & 0x00000020) != 0);
+ }
+ /**
+ * optional string build_version = 6;
+ * @return The buildVersion.
+ */
+ @java.lang.Override
+ public java.lang.String getBuildVersion() {
+ java.lang.Object ref = buildVersion_;
+ 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()) {
+ buildVersion_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * optional string build_version = 6;
+ * @return The bytes for buildVersion.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getBuildVersionBytes() {
+ java.lang.Object ref = buildVersion_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ buildVersion_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output)
+ throws java.io.IOException {
+ if (((bitField0_ & 0x00000001) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 1, board_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 2, key_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 3, channel_);
+ }
+ if (((bitField0_ & 0x00000008) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 4, version_);
+ }
+ if (((bitField0_ & 0x00000010) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 5, buildChannel_);
+ }
+ if (((bitField0_ & 0x00000020) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 6, buildVersion_);
+ }
+ unknownFields.writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, board_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, key_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, channel_);
+ }
+ if (((bitField0_ & 0x00000008) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, version_);
+ }
+ if (((bitField0_ & 0x00000010) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, buildChannel_);
+ }
+ if (((bitField0_ & 0x00000020) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, buildVersion_);
+ }
+ size += unknownFields.getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof chromeos_update_engine.UpdateMetadata.ImageInfo)) {
+ return super.equals(obj);
+ }
+ chromeos_update_engine.UpdateMetadata.ImageInfo other = (chromeos_update_engine.UpdateMetadata.ImageInfo) obj;
+
+ if (hasBoard() != other.hasBoard()) return false;
+ if (hasBoard()) {
+ if (!getBoard()
+ .equals(other.getBoard())) return false;
+ }
+ if (hasKey() != other.hasKey()) return false;
+ if (hasKey()) {
+ if (!getKey()
+ .equals(other.getKey())) return false;
+ }
+ if (hasChannel() != other.hasChannel()) return false;
+ if (hasChannel()) {
+ if (!getChannel()
+ .equals(other.getChannel())) return false;
+ }
+ if (hasVersion() != other.hasVersion()) return false;
+ if (hasVersion()) {
+ if (!getVersion()
+ .equals(other.getVersion())) return false;
+ }
+ if (hasBuildChannel() != other.hasBuildChannel()) return false;
+ if (hasBuildChannel()) {
+ if (!getBuildChannel()
+ .equals(other.getBuildChannel())) return false;
+ }
+ if (hasBuildVersion() != other.hasBuildVersion()) return false;
+ if (hasBuildVersion()) {
+ if (!getBuildVersion()
+ .equals(other.getBuildVersion())) return false;
+ }
+ if (!unknownFields.equals(other.unknownFields)) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (hasBoard()) {
+ hash = (37 * hash) + BOARD_FIELD_NUMBER;
+ hash = (53 * hash) + getBoard().hashCode();
+ }
+ if (hasKey()) {
+ hash = (37 * hash) + KEY_FIELD_NUMBER;
+ hash = (53 * hash) + getKey().hashCode();
+ }
+ if (hasChannel()) {
+ hash = (37 * hash) + CHANNEL_FIELD_NUMBER;
+ hash = (53 * hash) + getChannel().hashCode();
+ }
+ if (hasVersion()) {
+ hash = (37 * hash) + VERSION_FIELD_NUMBER;
+ hash = (53 * hash) + getVersion().hashCode();
+ }
+ if (hasBuildChannel()) {
+ hash = (37 * hash) + BUILD_CHANNEL_FIELD_NUMBER;
+ hash = (53 * hash) + getBuildChannel().hashCode();
+ }
+ if (hasBuildVersion()) {
+ hash = (37 * hash) + BUILD_VERSION_FIELD_NUMBER;
+ hash = (53 * hash) + getBuildVersion().hashCode();
+ }
+ hash = (29 * hash) + unknownFields.hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static chromeos_update_engine.UpdateMetadata.ImageInfo parseFrom(
+ java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.ImageInfo parseFrom(
+ java.nio.ByteBuffer data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.ImageInfo parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.ImageInfo parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.ImageInfo parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.ImageInfo parseFrom(
+ byte[] data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.ImageInfo parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.ImageInfo parseFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.ImageInfo parseDelimitedFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.ImageInfo parseDelimitedFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.ImageInfo parseFrom(
+ com.google.protobuf.CodedInputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.ImageInfo parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() { return newBuilder(); }
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+ public static Builder newBuilder(chromeos_update_engine.UpdateMetadata.ImageInfo prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE
+ ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(
+ com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+ /**
+ * + * Describe an image we are based on in a human friendly way. + * Examples: + * dev-channel, x86-alex, 1.2.3, mp-v3 + * nplusone-channel, x86-alex, 1.2.4, mp-v3, dev-channel, 1.2.3 + * All fields will be set, if this message is present. + *+ * + * Protobuf type {@code chromeos_update_engine.ImageInfo} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder
optional string board = 1;
+ * @return Whether the board field is set.
+ */
+ public boolean hasBoard() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * optional string board = 1;
+ * @return The board.
+ */
+ public java.lang.String getBoard() {
+ java.lang.Object ref = board_;
+ 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()) {
+ board_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * optional string board = 1;
+ * @return The bytes for board.
+ */
+ public com.google.protobuf.ByteString
+ getBoardBytes() {
+ java.lang.Object ref = board_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ board_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * optional string board = 1;
+ * @param value The board to set.
+ * @return This builder for chaining.
+ */
+ public Builder setBoard(
+ java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000001;
+ board_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * optional string board = 1;
+ * @return This builder for chaining.
+ */
+ public Builder clearBoard() {
+ bitField0_ = (bitField0_ & ~0x00000001);
+ board_ = getDefaultInstance().getBoard();
+ onChanged();
+ return this;
+ }
+ /**
+ * optional string board = 1;
+ * @param value The bytes for board to set.
+ * @return This builder for chaining.
+ */
+ public Builder setBoardBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000001;
+ board_ = value;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object key_ = "";
+ /**
+ * optional string key = 2;
+ * @return Whether the key field is set.
+ */
+ public boolean hasKey() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * optional string key = 2;
+ * @return The key.
+ */
+ public java.lang.String getKey() {
+ java.lang.Object ref = key_;
+ 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()) {
+ key_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * optional string key = 2;
+ * @return The bytes for key.
+ */
+ public com.google.protobuf.ByteString
+ getKeyBytes() {
+ java.lang.Object ref = key_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ key_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * optional string key = 2;
+ * @param value The key to set.
+ * @return This builder for chaining.
+ */
+ public Builder setKey(
+ java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000002;
+ key_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * optional string key = 2;
+ * @return This builder for chaining.
+ */
+ public Builder clearKey() {
+ bitField0_ = (bitField0_ & ~0x00000002);
+ key_ = getDefaultInstance().getKey();
+ onChanged();
+ return this;
+ }
+ /**
+ * optional string key = 2;
+ * @param value The bytes for key to set.
+ * @return This builder for chaining.
+ */
+ public Builder setKeyBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000002;
+ key_ = value;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object channel_ = "";
+ /**
+ * optional string channel = 3;
+ * @return Whether the channel field is set.
+ */
+ public boolean hasChannel() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ * optional string channel = 3;
+ * @return The channel.
+ */
+ public java.lang.String getChannel() {
+ java.lang.Object ref = channel_;
+ 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()) {
+ channel_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * optional string channel = 3;
+ * @return The bytes for channel.
+ */
+ public com.google.protobuf.ByteString
+ getChannelBytes() {
+ java.lang.Object ref = channel_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ channel_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * optional string channel = 3;
+ * @param value The channel to set.
+ * @return This builder for chaining.
+ */
+ public Builder setChannel(
+ java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000004;
+ channel_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * optional string channel = 3;
+ * @return This builder for chaining.
+ */
+ public Builder clearChannel() {
+ bitField0_ = (bitField0_ & ~0x00000004);
+ channel_ = getDefaultInstance().getChannel();
+ onChanged();
+ return this;
+ }
+ /**
+ * optional string channel = 3;
+ * @param value The bytes for channel to set.
+ * @return This builder for chaining.
+ */
+ public Builder setChannelBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000004;
+ channel_ = value;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object version_ = "";
+ /**
+ * optional string version = 4;
+ * @return Whether the version field is set.
+ */
+ public boolean hasVersion() {
+ return ((bitField0_ & 0x00000008) != 0);
+ }
+ /**
+ * optional string version = 4;
+ * @return The version.
+ */
+ public java.lang.String getVersion() {
+ java.lang.Object ref = version_;
+ 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()) {
+ version_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * optional string version = 4;
+ * @return The bytes for version.
+ */
+ public com.google.protobuf.ByteString
+ getVersionBytes() {
+ java.lang.Object ref = version_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ version_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * optional string version = 4;
+ * @param value The version to set.
+ * @return This builder for chaining.
+ */
+ public Builder setVersion(
+ java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000008;
+ version_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * optional string version = 4;
+ * @return This builder for chaining.
+ */
+ public Builder clearVersion() {
+ bitField0_ = (bitField0_ & ~0x00000008);
+ version_ = getDefaultInstance().getVersion();
+ onChanged();
+ return this;
+ }
+ /**
+ * optional string version = 4;
+ * @param value The bytes for version to set.
+ * @return This builder for chaining.
+ */
+ public Builder setVersionBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000008;
+ version_ = value;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object buildChannel_ = "";
+ /**
+ * + * If these values aren't present, they should be assumed to match + * the equivalent value above. They are normally only different for + * special image types such as nplusone images. + *+ * + *
optional string build_channel = 5;
+ * @return Whether the buildChannel field is set.
+ */
+ public boolean hasBuildChannel() {
+ return ((bitField0_ & 0x00000010) != 0);
+ }
+ /**
+ * + * If these values aren't present, they should be assumed to match + * the equivalent value above. They are normally only different for + * special image types such as nplusone images. + *+ * + *
optional string build_channel = 5;
+ * @return The buildChannel.
+ */
+ public java.lang.String getBuildChannel() {
+ java.lang.Object ref = buildChannel_;
+ 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()) {
+ buildChannel_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * + * If these values aren't present, they should be assumed to match + * the equivalent value above. They are normally only different for + * special image types such as nplusone images. + *+ * + *
optional string build_channel = 5;
+ * @return The bytes for buildChannel.
+ */
+ public com.google.protobuf.ByteString
+ getBuildChannelBytes() {
+ java.lang.Object ref = buildChannel_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ buildChannel_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * + * If these values aren't present, they should be assumed to match + * the equivalent value above. They are normally only different for + * special image types such as nplusone images. + *+ * + *
optional string build_channel = 5;
+ * @param value The buildChannel to set.
+ * @return This builder for chaining.
+ */
+ public Builder setBuildChannel(
+ java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000010;
+ buildChannel_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * If these values aren't present, they should be assumed to match + * the equivalent value above. They are normally only different for + * special image types such as nplusone images. + *+ * + *
optional string build_channel = 5;
+ * @return This builder for chaining.
+ */
+ public Builder clearBuildChannel() {
+ bitField0_ = (bitField0_ & ~0x00000010);
+ buildChannel_ = getDefaultInstance().getBuildChannel();
+ onChanged();
+ return this;
+ }
+ /**
+ * + * If these values aren't present, they should be assumed to match + * the equivalent value above. They are normally only different for + * special image types such as nplusone images. + *+ * + *
optional string build_channel = 5;
+ * @param value The bytes for buildChannel to set.
+ * @return This builder for chaining.
+ */
+ public Builder setBuildChannelBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000010;
+ buildChannel_ = value;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object buildVersion_ = "";
+ /**
+ * optional string build_version = 6;
+ * @return Whether the buildVersion field is set.
+ */
+ public boolean hasBuildVersion() {
+ return ((bitField0_ & 0x00000020) != 0);
+ }
+ /**
+ * optional string build_version = 6;
+ * @return The buildVersion.
+ */
+ public java.lang.String getBuildVersion() {
+ java.lang.Object ref = buildVersion_;
+ 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()) {
+ buildVersion_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * optional string build_version = 6;
+ * @return The bytes for buildVersion.
+ */
+ public com.google.protobuf.ByteString
+ getBuildVersionBytes() {
+ java.lang.Object ref = buildVersion_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ buildVersion_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * optional string build_version = 6;
+ * @param value The buildVersion to set.
+ * @return This builder for chaining.
+ */
+ public Builder setBuildVersion(
+ java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000020;
+ buildVersion_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * optional string build_version = 6;
+ * @return This builder for chaining.
+ */
+ public Builder clearBuildVersion() {
+ bitField0_ = (bitField0_ & ~0x00000020);
+ buildVersion_ = getDefaultInstance().getBuildVersion();
+ onChanged();
+ return this;
+ }
+ /**
+ * optional string build_version = 6;
+ * @param value The bytes for buildVersion to set.
+ * @return This builder for chaining.
+ */
+ public Builder setBuildVersionBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000020;
+ buildVersion_ = value;
+ onChanged();
+ return this;
+ }
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+
+ // @@protoc_insertion_point(builder_scope:chromeos_update_engine.ImageInfo)
+ }
+
+ // @@protoc_insertion_point(class_scope:chromeos_update_engine.ImageInfo)
+ private static final chromeos_update_engine.UpdateMetadata.ImageInfo DEFAULT_INSTANCE;
+ static {
+ DEFAULT_INSTANCE = new chromeos_update_engine.UpdateMetadata.ImageInfo();
+ }
+
+ public static chromeos_update_engine.UpdateMetadata.ImageInfo getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ @java.lang.Deprecated public static final com.google.protobuf.Parserrequired .chromeos_update_engine.InstallOperation.Type type = 1;
+ * @return Whether the type field is set.
+ */
+ boolean hasType();
+ /**
+ * required .chromeos_update_engine.InstallOperation.Type type = 1;
+ * @return The type.
+ */
+ chromeos_update_engine.UpdateMetadata.InstallOperation.Type getType();
+
+ /**
+ * + * Only minor version 6 or newer support 64 bits |data_offset| and + * |data_length|, older client will read them as uint32. + * The offset into the delta file (after the protobuf) + * where the data (if any) is stored + *+ * + *
optional uint64 data_offset = 2;
+ * @return Whether the dataOffset field is set.
+ */
+ boolean hasDataOffset();
+ /**
+ * + * Only minor version 6 or newer support 64 bits |data_offset| and + * |data_length|, older client will read them as uint32. + * The offset into the delta file (after the protobuf) + * where the data (if any) is stored + *+ * + *
optional uint64 data_offset = 2;
+ * @return The dataOffset.
+ */
+ long getDataOffset();
+
+ /**
+ * + * The length of the data in the delta file + *+ * + *
optional uint64 data_length = 3;
+ * @return Whether the dataLength field is set.
+ */
+ boolean hasDataLength();
+ /**
+ * + * The length of the data in the delta file + *+ * + *
optional uint64 data_length = 3;
+ * @return The dataLength.
+ */
+ long getDataLength();
+
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ java.util.List+ * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ chromeos_update_engine.UpdateMetadata.Extent getSrcExtents(int index);
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ int getSrcExtentsCount();
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ java.util.List extends chromeos_update_engine.UpdateMetadata.ExtentOrBuilder>
+ getSrcExtentsOrBuilderList();
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ chromeos_update_engine.UpdateMetadata.ExtentOrBuilder getSrcExtentsOrBuilder(
+ int index);
+
+ /**
+ * + * Byte length of src, equal to the number of blocks in src_extents * + * block_size. It is used for BSDIFF and SOURCE_BSDIFF, because we need to + * pass that external program the number of bytes to read from the blocks we + * pass it. This is not used in any other operation. + *+ * + *
optional uint64 src_length = 5;
+ * @return Whether the srcLength field is set.
+ */
+ boolean hasSrcLength();
+ /**
+ * + * Byte length of src, equal to the number of blocks in src_extents * + * block_size. It is used for BSDIFF and SOURCE_BSDIFF, because we need to + * pass that external program the number of bytes to read from the blocks we + * pass it. This is not used in any other operation. + *+ * + *
optional uint64 src_length = 5;
+ * @return The srcLength.
+ */
+ long getSrcLength();
+
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ java.util.Listrepeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ chromeos_update_engine.UpdateMetadata.Extent getDstExtents(int index);
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ int getDstExtentsCount();
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ java.util.List extends chromeos_update_engine.UpdateMetadata.ExtentOrBuilder>
+ getDstExtentsOrBuilderList();
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ chromeos_update_engine.UpdateMetadata.ExtentOrBuilder getDstExtentsOrBuilder(
+ int index);
+
+ /**
+ * + * Byte length of dst, equal to the number of blocks in dst_extents * + * block_size. Used for BSDIFF and SOURCE_BSDIFF, but not in any other + * operation. + *+ * + *
optional uint64 dst_length = 7;
+ * @return Whether the dstLength field is set.
+ */
+ boolean hasDstLength();
+ /**
+ * + * Byte length of dst, equal to the number of blocks in dst_extents * + * block_size. Used for BSDIFF and SOURCE_BSDIFF, but not in any other + * operation. + *+ * + *
optional uint64 dst_length = 7;
+ * @return The dstLength.
+ */
+ long getDstLength();
+
+ /**
+ * + * Optional SHA 256 hash of the blob associated with this operation. + * This is used as a primary validation for http-based downloads and + * as a defense-in-depth validation for https-based downloads. If + * the operation doesn't refer to any blob, this field will have + * zero bytes. + *+ * + *
optional bytes data_sha256_hash = 8;
+ * @return Whether the dataSha256Hash field is set.
+ */
+ boolean hasDataSha256Hash();
+ /**
+ * + * Optional SHA 256 hash of the blob associated with this operation. + * This is used as a primary validation for http-based downloads and + * as a defense-in-depth validation for https-based downloads. If + * the operation doesn't refer to any blob, this field will have + * zero bytes. + *+ * + *
optional bytes data_sha256_hash = 8;
+ * @return The dataSha256Hash.
+ */
+ com.google.protobuf.ByteString getDataSha256Hash();
+
+ /**
+ * + * Indicates the SHA 256 hash of the source data referenced in src_extents at + * the time of applying the operation. If present, the update_engine daemon + * MUST read and verify the source data before applying the operation. + *+ * + *
optional bytes src_sha256_hash = 9;
+ * @return Whether the srcSha256Hash field is set.
+ */
+ boolean hasSrcSha256Hash();
+ /**
+ * + * Indicates the SHA 256 hash of the source data referenced in src_extents at + * the time of applying the operation. If present, the update_engine daemon + * MUST read and verify the source data before applying the operation. + *+ * + *
optional bytes src_sha256_hash = 9;
+ * @return The srcSha256Hash.
+ */
+ com.google.protobuf.ByteString getSrcSha256Hash();
+ }
+ /**
+ * Protobuf type {@code chromeos_update_engine.InstallOperation}
+ */
+ public static final class InstallOperation extends
+ com.google.protobuf.GeneratedMessageV3 implements
+ // @@protoc_insertion_point(message_implements:chromeos_update_engine.InstallOperation)
+ InstallOperationOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use InstallOperation.newBuilder() to construct.
+ private InstallOperation(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+ private InstallOperation() {
+ type_ = 0;
+ srcExtents_ = java.util.Collections.emptyList();
+ dstExtents_ = java.util.Collections.emptyList();
+ dataSha256Hash_ = com.google.protobuf.ByteString.EMPTY;
+ srcSha256Hash_ = com.google.protobuf.ByteString.EMPTY;
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(
+ UnusedPrivateParameter unused) {
+ return new InstallOperation();
+ }
+
+ @java.lang.Override
+ public final com.google.protobuf.UnknownFieldSet
+ getUnknownFields() {
+ return this.unknownFields;
+ }
+ private InstallOperation(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ this();
+ if (extensionRegistry == null) {
+ throw new java.lang.NullPointerException();
+ }
+ 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;
+ case 8: {
+ int rawValue = input.readEnum();
+ @SuppressWarnings("deprecation")
+ chromeos_update_engine.UpdateMetadata.InstallOperation.Type value = chromeos_update_engine.UpdateMetadata.InstallOperation.Type.valueOf(rawValue);
+ if (value == null) {
+ unknownFields.mergeVarintField(1, rawValue);
+ } else {
+ bitField0_ |= 0x00000001;
+ type_ = rawValue;
+ }
+ break;
+ }
+ case 16: {
+ bitField0_ |= 0x00000002;
+ dataOffset_ = input.readUInt64();
+ break;
+ }
+ case 24: {
+ bitField0_ |= 0x00000004;
+ dataLength_ = input.readUInt64();
+ break;
+ }
+ case 34: {
+ if (!((mutable_bitField0_ & 0x00000008) != 0)) {
+ srcExtents_ = new java.util.ArrayList+ * Replace destination extents w/ attached data + *+ * + *
REPLACE = 0;
+ */
+ REPLACE(0),
+ /**
+ * + * Replace destination extents w/ attached bzipped data + *+ * + *
REPLACE_BZ = 1;
+ */
+ REPLACE_BZ(1),
+ /**
+ * + * Move source extents to destination extents + *+ * + *
MOVE = 2 [deprecated = true];
+ */
+ @java.lang.Deprecated
+ MOVE(2),
+ /**
+ * + * The data is a bsdiff binary diff + *+ * + *
BSDIFF = 3 [deprecated = true];
+ */
+ @java.lang.Deprecated
+ BSDIFF(3),
+ /**
+ * + * On minor version 2 or newer, these operations are supported: + *+ * + *
SOURCE_COPY = 4;
+ */
+ SOURCE_COPY(4),
+ /**
+ * + * Like BSDIFF, but read from source partition + *+ * + *
SOURCE_BSDIFF = 5;
+ */
+ SOURCE_BSDIFF(5),
+ /**
+ * + * On minor version 3 or newer and on major version 2 or newer, these + * operations are supported: + *+ * + *
REPLACE_XZ = 8;
+ */
+ REPLACE_XZ(8),
+ /**
+ * + * On minor version 4 or newer, these operations are supported: + *+ * + *
ZERO = 6;
+ */
+ ZERO(6),
+ /**
+ * + * Discard the destination blocks, reading as undefined. + *+ * + *
DISCARD = 7;
+ */
+ DISCARD(7),
+ /**
+ * + * Like SOURCE_BSDIFF, but compressed with brotli. + *+ * + *
BROTLI_BSDIFF = 10;
+ */
+ BROTLI_BSDIFF(10),
+ /**
+ * + * On minor version 5 or newer, these operations are supported: + *+ * + *
PUFFDIFF = 9;
+ */
+ PUFFDIFF(9),
+ ;
+
+ /**
+ * + * Replace destination extents w/ attached data + *+ * + *
REPLACE = 0;
+ */
+ public static final int REPLACE_VALUE = 0;
+ /**
+ * + * Replace destination extents w/ attached bzipped data + *+ * + *
REPLACE_BZ = 1;
+ */
+ public static final int REPLACE_BZ_VALUE = 1;
+ /**
+ * + * Move source extents to destination extents + *+ * + *
MOVE = 2 [deprecated = true];
+ */
+ @java.lang.Deprecated public static final int MOVE_VALUE = 2;
+ /**
+ * + * The data is a bsdiff binary diff + *+ * + *
BSDIFF = 3 [deprecated = true];
+ */
+ @java.lang.Deprecated public static final int BSDIFF_VALUE = 3;
+ /**
+ * + * On minor version 2 or newer, these operations are supported: + *+ * + *
SOURCE_COPY = 4;
+ */
+ public static final int SOURCE_COPY_VALUE = 4;
+ /**
+ * + * Like BSDIFF, but read from source partition + *+ * + *
SOURCE_BSDIFF = 5;
+ */
+ public static final int SOURCE_BSDIFF_VALUE = 5;
+ /**
+ * + * On minor version 3 or newer and on major version 2 or newer, these + * operations are supported: + *+ * + *
REPLACE_XZ = 8;
+ */
+ public static final int REPLACE_XZ_VALUE = 8;
+ /**
+ * + * On minor version 4 or newer, these operations are supported: + *+ * + *
ZERO = 6;
+ */
+ public static final int ZERO_VALUE = 6;
+ /**
+ * + * Discard the destination blocks, reading as undefined. + *+ * + *
DISCARD = 7;
+ */
+ public static final int DISCARD_VALUE = 7;
+ /**
+ * + * Like SOURCE_BSDIFF, but compressed with brotli. + *+ * + *
BROTLI_BSDIFF = 10;
+ */
+ public static final int BROTLI_BSDIFF_VALUE = 10;
+ /**
+ * + * On minor version 5 or newer, these operations are supported: + *+ * + *
PUFFDIFF = 9;
+ */
+ public static final int PUFFDIFF_VALUE = 9;
+
+
+ public final int getNumber() {
+ return value;
+ }
+
+ /**
+ * @param value The numeric wire value of the corresponding enum entry.
+ * @return The enum associated with the given numeric wire value.
+ * @deprecated Use {@link #forNumber(int)} instead.
+ */
+ @java.lang.Deprecated
+ public static Type valueOf(int value) {
+ return forNumber(value);
+ }
+
+ /**
+ * @param value The numeric wire value of the corresponding enum entry.
+ * @return The enum associated with the given numeric wire value.
+ */
+ public static Type forNumber(int value) {
+ switch (value) {
+ case 0: return REPLACE;
+ case 1: return REPLACE_BZ;
+ case 2: return MOVE;
+ case 3: return BSDIFF;
+ case 4: return SOURCE_COPY;
+ case 5: return SOURCE_BSDIFF;
+ case 8: return REPLACE_XZ;
+ case 6: return ZERO;
+ case 7: return DISCARD;
+ case 10: return BROTLI_BSDIFF;
+ case 9: return PUFFDIFF;
+ default: return null;
+ }
+ }
+
+ public static com.google.protobuf.Internal.EnumLiteMaprequired .chromeos_update_engine.InstallOperation.Type type = 1;
+ * @return Whether the type field is set.
+ */
+ @java.lang.Override public boolean hasType() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * required .chromeos_update_engine.InstallOperation.Type type = 1;
+ * @return The type.
+ */
+ @java.lang.Override public chromeos_update_engine.UpdateMetadata.InstallOperation.Type getType() {
+ @SuppressWarnings("deprecation")
+ chromeos_update_engine.UpdateMetadata.InstallOperation.Type result = chromeos_update_engine.UpdateMetadata.InstallOperation.Type.valueOf(type_);
+ return result == null ? chromeos_update_engine.UpdateMetadata.InstallOperation.Type.REPLACE : result;
+ }
+
+ public static final int DATA_OFFSET_FIELD_NUMBER = 2;
+ private long dataOffset_;
+ /**
+ * + * Only minor version 6 or newer support 64 bits |data_offset| and + * |data_length|, older client will read them as uint32. + * The offset into the delta file (after the protobuf) + * where the data (if any) is stored + *+ * + *
optional uint64 data_offset = 2;
+ * @return Whether the dataOffset field is set.
+ */
+ @java.lang.Override
+ public boolean hasDataOffset() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * + * Only minor version 6 or newer support 64 bits |data_offset| and + * |data_length|, older client will read them as uint32. + * The offset into the delta file (after the protobuf) + * where the data (if any) is stored + *+ * + *
optional uint64 data_offset = 2;
+ * @return The dataOffset.
+ */
+ @java.lang.Override
+ public long getDataOffset() {
+ return dataOffset_;
+ }
+
+ public static final int DATA_LENGTH_FIELD_NUMBER = 3;
+ private long dataLength_;
+ /**
+ * + * The length of the data in the delta file + *+ * + *
optional uint64 data_length = 3;
+ * @return Whether the dataLength field is set.
+ */
+ @java.lang.Override
+ public boolean hasDataLength() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ * + * The length of the data in the delta file + *+ * + *
optional uint64 data_length = 3;
+ * @return The dataLength.
+ */
+ @java.lang.Override
+ public long getDataLength() {
+ return dataLength_;
+ }
+
+ public static final int SRC_EXTENTS_FIELD_NUMBER = 4;
+ private java.util.List+ * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ @java.lang.Override
+ public java.util.List+ * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ @java.lang.Override
+ public java.util.List extends chromeos_update_engine.UpdateMetadata.ExtentOrBuilder>
+ getSrcExtentsOrBuilderList() {
+ return srcExtents_;
+ }
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ @java.lang.Override
+ public int getSrcExtentsCount() {
+ return srcExtents_.size();
+ }
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.Extent getSrcExtents(int index) {
+ return srcExtents_.get(index);
+ }
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.ExtentOrBuilder getSrcExtentsOrBuilder(
+ int index) {
+ return srcExtents_.get(index);
+ }
+
+ public static final int SRC_LENGTH_FIELD_NUMBER = 5;
+ private long srcLength_;
+ /**
+ * + * Byte length of src, equal to the number of blocks in src_extents * + * block_size. It is used for BSDIFF and SOURCE_BSDIFF, because we need to + * pass that external program the number of bytes to read from the blocks we + * pass it. This is not used in any other operation. + *+ * + *
optional uint64 src_length = 5;
+ * @return Whether the srcLength field is set.
+ */
+ @java.lang.Override
+ public boolean hasSrcLength() {
+ return ((bitField0_ & 0x00000008) != 0);
+ }
+ /**
+ * + * Byte length of src, equal to the number of blocks in src_extents * + * block_size. It is used for BSDIFF and SOURCE_BSDIFF, because we need to + * pass that external program the number of bytes to read from the blocks we + * pass it. This is not used in any other operation. + *+ * + *
optional uint64 src_length = 5;
+ * @return The srcLength.
+ */
+ @java.lang.Override
+ public long getSrcLength() {
+ return srcLength_;
+ }
+
+ public static final int DST_EXTENTS_FIELD_NUMBER = 6;
+ private java.util.Listrepeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ @java.lang.Override
+ public java.util.Listrepeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ @java.lang.Override
+ public java.util.List extends chromeos_update_engine.UpdateMetadata.ExtentOrBuilder>
+ getDstExtentsOrBuilderList() {
+ return dstExtents_;
+ }
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ @java.lang.Override
+ public int getDstExtentsCount() {
+ return dstExtents_.size();
+ }
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.Extent getDstExtents(int index) {
+ return dstExtents_.get(index);
+ }
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.ExtentOrBuilder getDstExtentsOrBuilder(
+ int index) {
+ return dstExtents_.get(index);
+ }
+
+ public static final int DST_LENGTH_FIELD_NUMBER = 7;
+ private long dstLength_;
+ /**
+ * + * Byte length of dst, equal to the number of blocks in dst_extents * + * block_size. Used for BSDIFF and SOURCE_BSDIFF, but not in any other + * operation. + *+ * + *
optional uint64 dst_length = 7;
+ * @return Whether the dstLength field is set.
+ */
+ @java.lang.Override
+ public boolean hasDstLength() {
+ return ((bitField0_ & 0x00000010) != 0);
+ }
+ /**
+ * + * Byte length of dst, equal to the number of blocks in dst_extents * + * block_size. Used for BSDIFF and SOURCE_BSDIFF, but not in any other + * operation. + *+ * + *
optional uint64 dst_length = 7;
+ * @return The dstLength.
+ */
+ @java.lang.Override
+ public long getDstLength() {
+ return dstLength_;
+ }
+
+ public static final int DATA_SHA256_HASH_FIELD_NUMBER = 8;
+ private com.google.protobuf.ByteString dataSha256Hash_;
+ /**
+ * + * Optional SHA 256 hash of the blob associated with this operation. + * This is used as a primary validation for http-based downloads and + * as a defense-in-depth validation for https-based downloads. If + * the operation doesn't refer to any blob, this field will have + * zero bytes. + *+ * + *
optional bytes data_sha256_hash = 8;
+ * @return Whether the dataSha256Hash field is set.
+ */
+ @java.lang.Override
+ public boolean hasDataSha256Hash() {
+ return ((bitField0_ & 0x00000020) != 0);
+ }
+ /**
+ * + * Optional SHA 256 hash of the blob associated with this operation. + * This is used as a primary validation for http-based downloads and + * as a defense-in-depth validation for https-based downloads. If + * the operation doesn't refer to any blob, this field will have + * zero bytes. + *+ * + *
optional bytes data_sha256_hash = 8;
+ * @return The dataSha256Hash.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getDataSha256Hash() {
+ return dataSha256Hash_;
+ }
+
+ public static final int SRC_SHA256_HASH_FIELD_NUMBER = 9;
+ private com.google.protobuf.ByteString srcSha256Hash_;
+ /**
+ * + * Indicates the SHA 256 hash of the source data referenced in src_extents at + * the time of applying the operation. If present, the update_engine daemon + * MUST read and verify the source data before applying the operation. + *+ * + *
optional bytes src_sha256_hash = 9;
+ * @return Whether the srcSha256Hash field is set.
+ */
+ @java.lang.Override
+ public boolean hasSrcSha256Hash() {
+ return ((bitField0_ & 0x00000040) != 0);
+ }
+ /**
+ * + * Indicates the SHA 256 hash of the source data referenced in src_extents at + * the time of applying the operation. If present, the update_engine daemon + * MUST read and verify the source data before applying the operation. + *+ * + *
optional bytes src_sha256_hash = 9;
+ * @return The srcSha256Hash.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getSrcSha256Hash() {
+ return srcSha256Hash_;
+ }
+
+ private byte memoizedIsInitialized = -1;
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ if (!hasType()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output)
+ throws java.io.IOException {
+ if (((bitField0_ & 0x00000001) != 0)) {
+ output.writeEnum(1, type_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ output.writeUInt64(2, dataOffset_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ output.writeUInt64(3, dataLength_);
+ }
+ for (int i = 0; i < srcExtents_.size(); i++) {
+ output.writeMessage(4, srcExtents_.get(i));
+ }
+ if (((bitField0_ & 0x00000008) != 0)) {
+ output.writeUInt64(5, srcLength_);
+ }
+ for (int i = 0; i < dstExtents_.size(); i++) {
+ output.writeMessage(6, dstExtents_.get(i));
+ }
+ if (((bitField0_ & 0x00000010) != 0)) {
+ output.writeUInt64(7, dstLength_);
+ }
+ if (((bitField0_ & 0x00000020) != 0)) {
+ output.writeBytes(8, dataSha256Hash_);
+ }
+ if (((bitField0_ & 0x00000040) != 0)) {
+ output.writeBytes(9, srcSha256Hash_);
+ }
+ unknownFields.writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeEnumSize(1, type_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeUInt64Size(2, dataOffset_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeUInt64Size(3, dataLength_);
+ }
+ for (int i = 0; i < srcExtents_.size(); i++) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(4, srcExtents_.get(i));
+ }
+ if (((bitField0_ & 0x00000008) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeUInt64Size(5, srcLength_);
+ }
+ for (int i = 0; i < dstExtents_.size(); i++) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(6, dstExtents_.get(i));
+ }
+ if (((bitField0_ & 0x00000010) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeUInt64Size(7, dstLength_);
+ }
+ if (((bitField0_ & 0x00000020) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeBytesSize(8, dataSha256Hash_);
+ }
+ if (((bitField0_ & 0x00000040) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeBytesSize(9, srcSha256Hash_);
+ }
+ size += unknownFields.getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof chromeos_update_engine.UpdateMetadata.InstallOperation)) {
+ return super.equals(obj);
+ }
+ chromeos_update_engine.UpdateMetadata.InstallOperation other = (chromeos_update_engine.UpdateMetadata.InstallOperation) obj;
+
+ if (hasType() != other.hasType()) return false;
+ if (hasType()) {
+ if (type_ != other.type_) return false;
+ }
+ if (hasDataOffset() != other.hasDataOffset()) return false;
+ if (hasDataOffset()) {
+ if (getDataOffset()
+ != other.getDataOffset()) return false;
+ }
+ if (hasDataLength() != other.hasDataLength()) return false;
+ if (hasDataLength()) {
+ if (getDataLength()
+ != other.getDataLength()) return false;
+ }
+ if (!getSrcExtentsList()
+ .equals(other.getSrcExtentsList())) return false;
+ if (hasSrcLength() != other.hasSrcLength()) return false;
+ if (hasSrcLength()) {
+ if (getSrcLength()
+ != other.getSrcLength()) return false;
+ }
+ if (!getDstExtentsList()
+ .equals(other.getDstExtentsList())) return false;
+ if (hasDstLength() != other.hasDstLength()) return false;
+ if (hasDstLength()) {
+ if (getDstLength()
+ != other.getDstLength()) return false;
+ }
+ if (hasDataSha256Hash() != other.hasDataSha256Hash()) return false;
+ if (hasDataSha256Hash()) {
+ if (!getDataSha256Hash()
+ .equals(other.getDataSha256Hash())) return false;
+ }
+ if (hasSrcSha256Hash() != other.hasSrcSha256Hash()) return false;
+ if (hasSrcSha256Hash()) {
+ if (!getSrcSha256Hash()
+ .equals(other.getSrcSha256Hash())) return false;
+ }
+ if (!unknownFields.equals(other.unknownFields)) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (hasType()) {
+ hash = (37 * hash) + TYPE_FIELD_NUMBER;
+ hash = (53 * hash) + type_;
+ }
+ if (hasDataOffset()) {
+ hash = (37 * hash) + DATA_OFFSET_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
+ getDataOffset());
+ }
+ if (hasDataLength()) {
+ hash = (37 * hash) + DATA_LENGTH_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
+ getDataLength());
+ }
+ if (getSrcExtentsCount() > 0) {
+ hash = (37 * hash) + SRC_EXTENTS_FIELD_NUMBER;
+ hash = (53 * hash) + getSrcExtentsList().hashCode();
+ }
+ if (hasSrcLength()) {
+ hash = (37 * hash) + SRC_LENGTH_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
+ getSrcLength());
+ }
+ if (getDstExtentsCount() > 0) {
+ hash = (37 * hash) + DST_EXTENTS_FIELD_NUMBER;
+ hash = (53 * hash) + getDstExtentsList().hashCode();
+ }
+ if (hasDstLength()) {
+ hash = (37 * hash) + DST_LENGTH_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
+ getDstLength());
+ }
+ if (hasDataSha256Hash()) {
+ hash = (37 * hash) + DATA_SHA256_HASH_FIELD_NUMBER;
+ hash = (53 * hash) + getDataSha256Hash().hashCode();
+ }
+ if (hasSrcSha256Hash()) {
+ hash = (37 * hash) + SRC_SHA256_HASH_FIELD_NUMBER;
+ hash = (53 * hash) + getSrcSha256Hash().hashCode();
+ }
+ hash = (29 * hash) + unknownFields.hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static chromeos_update_engine.UpdateMetadata.InstallOperation parseFrom(
+ java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.InstallOperation parseFrom(
+ java.nio.ByteBuffer data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.InstallOperation parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.InstallOperation parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.InstallOperation parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.InstallOperation parseFrom(
+ byte[] data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.InstallOperation parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.InstallOperation parseFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.InstallOperation parseDelimitedFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.InstallOperation parseDelimitedFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.InstallOperation parseFrom(
+ com.google.protobuf.CodedInputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.InstallOperation parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() { return newBuilder(); }
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+ public static Builder newBuilder(chromeos_update_engine.UpdateMetadata.InstallOperation prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE
+ ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(
+ com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+ /**
+ * Protobuf type {@code chromeos_update_engine.InstallOperation}
+ */
+ public static final class Builder extends
+ com.google.protobuf.GeneratedMessageV3.Builderrequired .chromeos_update_engine.InstallOperation.Type type = 1;
+ * @return Whether the type field is set.
+ */
+ @java.lang.Override public boolean hasType() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * required .chromeos_update_engine.InstallOperation.Type type = 1;
+ * @return The type.
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.InstallOperation.Type getType() {
+ @SuppressWarnings("deprecation")
+ chromeos_update_engine.UpdateMetadata.InstallOperation.Type result = chromeos_update_engine.UpdateMetadata.InstallOperation.Type.valueOf(type_);
+ return result == null ? chromeos_update_engine.UpdateMetadata.InstallOperation.Type.REPLACE : result;
+ }
+ /**
+ * required .chromeos_update_engine.InstallOperation.Type type = 1;
+ * @param value The type to set.
+ * @return This builder for chaining.
+ */
+ public Builder setType(chromeos_update_engine.UpdateMetadata.InstallOperation.Type value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000001;
+ type_ = value.getNumber();
+ onChanged();
+ return this;
+ }
+ /**
+ * required .chromeos_update_engine.InstallOperation.Type type = 1;
+ * @return This builder for chaining.
+ */
+ public Builder clearType() {
+ bitField0_ = (bitField0_ & ~0x00000001);
+ type_ = 0;
+ onChanged();
+ return this;
+ }
+
+ private long dataOffset_ ;
+ /**
+ * + * Only minor version 6 or newer support 64 bits |data_offset| and + * |data_length|, older client will read them as uint32. + * The offset into the delta file (after the protobuf) + * where the data (if any) is stored + *+ * + *
optional uint64 data_offset = 2;
+ * @return Whether the dataOffset field is set.
+ */
+ @java.lang.Override
+ public boolean hasDataOffset() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * + * Only minor version 6 or newer support 64 bits |data_offset| and + * |data_length|, older client will read them as uint32. + * The offset into the delta file (after the protobuf) + * where the data (if any) is stored + *+ * + *
optional uint64 data_offset = 2;
+ * @return The dataOffset.
+ */
+ @java.lang.Override
+ public long getDataOffset() {
+ return dataOffset_;
+ }
+ /**
+ * + * Only minor version 6 or newer support 64 bits |data_offset| and + * |data_length|, older client will read them as uint32. + * The offset into the delta file (after the protobuf) + * where the data (if any) is stored + *+ * + *
optional uint64 data_offset = 2;
+ * @param value The dataOffset to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDataOffset(long value) {
+ bitField0_ |= 0x00000002;
+ dataOffset_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * Only minor version 6 or newer support 64 bits |data_offset| and + * |data_length|, older client will read them as uint32. + * The offset into the delta file (after the protobuf) + * where the data (if any) is stored + *+ * + *
optional uint64 data_offset = 2;
+ * @return This builder for chaining.
+ */
+ public Builder clearDataOffset() {
+ bitField0_ = (bitField0_ & ~0x00000002);
+ dataOffset_ = 0L;
+ onChanged();
+ return this;
+ }
+
+ private long dataLength_ ;
+ /**
+ * + * The length of the data in the delta file + *+ * + *
optional uint64 data_length = 3;
+ * @return Whether the dataLength field is set.
+ */
+ @java.lang.Override
+ public boolean hasDataLength() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ * + * The length of the data in the delta file + *+ * + *
optional uint64 data_length = 3;
+ * @return The dataLength.
+ */
+ @java.lang.Override
+ public long getDataLength() {
+ return dataLength_;
+ }
+ /**
+ * + * The length of the data in the delta file + *+ * + *
optional uint64 data_length = 3;
+ * @param value The dataLength to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDataLength(long value) {
+ bitField0_ |= 0x00000004;
+ dataLength_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * The length of the data in the delta file + *+ * + *
optional uint64 data_length = 3;
+ * @return This builder for chaining.
+ */
+ public Builder clearDataLength() {
+ bitField0_ = (bitField0_ & ~0x00000004);
+ dataLength_ = 0L;
+ onChanged();
+ return this;
+ }
+
+ private java.util.List+ * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ public java.util.List+ * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ public int getSrcExtentsCount() {
+ if (srcExtentsBuilder_ == null) {
+ return srcExtents_.size();
+ } else {
+ return srcExtentsBuilder_.getCount();
+ }
+ }
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ public chromeos_update_engine.UpdateMetadata.Extent getSrcExtents(int index) {
+ if (srcExtentsBuilder_ == null) {
+ return srcExtents_.get(index);
+ } else {
+ return srcExtentsBuilder_.getMessage(index);
+ }
+ }
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ public Builder setSrcExtents(
+ int index, chromeos_update_engine.UpdateMetadata.Extent value) {
+ if (srcExtentsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureSrcExtentsIsMutable();
+ srcExtents_.set(index, value);
+ onChanged();
+ } else {
+ srcExtentsBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ public Builder setSrcExtents(
+ int index, chromeos_update_engine.UpdateMetadata.Extent.Builder builderForValue) {
+ if (srcExtentsBuilder_ == null) {
+ ensureSrcExtentsIsMutable();
+ srcExtents_.set(index, builderForValue.build());
+ onChanged();
+ } else {
+ srcExtentsBuilder_.setMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ public Builder addSrcExtents(chromeos_update_engine.UpdateMetadata.Extent value) {
+ if (srcExtentsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureSrcExtentsIsMutable();
+ srcExtents_.add(value);
+ onChanged();
+ } else {
+ srcExtentsBuilder_.addMessage(value);
+ }
+ return this;
+ }
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ public Builder addSrcExtents(
+ int index, chromeos_update_engine.UpdateMetadata.Extent value) {
+ if (srcExtentsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureSrcExtentsIsMutable();
+ srcExtents_.add(index, value);
+ onChanged();
+ } else {
+ srcExtentsBuilder_.addMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ public Builder addSrcExtents(
+ chromeos_update_engine.UpdateMetadata.Extent.Builder builderForValue) {
+ if (srcExtentsBuilder_ == null) {
+ ensureSrcExtentsIsMutable();
+ srcExtents_.add(builderForValue.build());
+ onChanged();
+ } else {
+ srcExtentsBuilder_.addMessage(builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ public Builder addSrcExtents(
+ int index, chromeos_update_engine.UpdateMetadata.Extent.Builder builderForValue) {
+ if (srcExtentsBuilder_ == null) {
+ ensureSrcExtentsIsMutable();
+ srcExtents_.add(index, builderForValue.build());
+ onChanged();
+ } else {
+ srcExtentsBuilder_.addMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ public Builder addAllSrcExtents(
+ java.lang.Iterable extends chromeos_update_engine.UpdateMetadata.Extent> values) {
+ if (srcExtentsBuilder_ == null) {
+ ensureSrcExtentsIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(
+ values, srcExtents_);
+ onChanged();
+ } else {
+ srcExtentsBuilder_.addAllMessages(values);
+ }
+ return this;
+ }
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ public Builder clearSrcExtents() {
+ if (srcExtentsBuilder_ == null) {
+ srcExtents_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000008);
+ onChanged();
+ } else {
+ srcExtentsBuilder_.clear();
+ }
+ return this;
+ }
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ public Builder removeSrcExtents(int index) {
+ if (srcExtentsBuilder_ == null) {
+ ensureSrcExtentsIsMutable();
+ srcExtents_.remove(index);
+ onChanged();
+ } else {
+ srcExtentsBuilder_.remove(index);
+ }
+ return this;
+ }
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ public chromeos_update_engine.UpdateMetadata.Extent.Builder getSrcExtentsBuilder(
+ int index) {
+ return getSrcExtentsFieldBuilder().getBuilder(index);
+ }
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ public chromeos_update_engine.UpdateMetadata.ExtentOrBuilder getSrcExtentsOrBuilder(
+ int index) {
+ if (srcExtentsBuilder_ == null) {
+ return srcExtents_.get(index); } else {
+ return srcExtentsBuilder_.getMessageOrBuilder(index);
+ }
+ }
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ public java.util.List extends chromeos_update_engine.UpdateMetadata.ExtentOrBuilder>
+ getSrcExtentsOrBuilderList() {
+ if (srcExtentsBuilder_ != null) {
+ return srcExtentsBuilder_.getMessageOrBuilderList();
+ } else {
+ return java.util.Collections.unmodifiableList(srcExtents_);
+ }
+ }
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ public chromeos_update_engine.UpdateMetadata.Extent.Builder addSrcExtentsBuilder() {
+ return getSrcExtentsFieldBuilder().addBuilder(
+ chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance());
+ }
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ public chromeos_update_engine.UpdateMetadata.Extent.Builder addSrcExtentsBuilder(
+ int index) {
+ return getSrcExtentsFieldBuilder().addBuilder(
+ index, chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance());
+ }
+ /**
+ * + * Ordered list of extents that are read from (if any) and written to. + *+ * + *
repeated .chromeos_update_engine.Extent src_extents = 4;
+ */
+ public java.util.List+ * Byte length of src, equal to the number of blocks in src_extents * + * block_size. It is used for BSDIFF and SOURCE_BSDIFF, because we need to + * pass that external program the number of bytes to read from the blocks we + * pass it. This is not used in any other operation. + *+ * + *
optional uint64 src_length = 5;
+ * @return Whether the srcLength field is set.
+ */
+ @java.lang.Override
+ public boolean hasSrcLength() {
+ return ((bitField0_ & 0x00000010) != 0);
+ }
+ /**
+ * + * Byte length of src, equal to the number of blocks in src_extents * + * block_size. It is used for BSDIFF and SOURCE_BSDIFF, because we need to + * pass that external program the number of bytes to read from the blocks we + * pass it. This is not used in any other operation. + *+ * + *
optional uint64 src_length = 5;
+ * @return The srcLength.
+ */
+ @java.lang.Override
+ public long getSrcLength() {
+ return srcLength_;
+ }
+ /**
+ * + * Byte length of src, equal to the number of blocks in src_extents * + * block_size. It is used for BSDIFF and SOURCE_BSDIFF, because we need to + * pass that external program the number of bytes to read from the blocks we + * pass it. This is not used in any other operation. + *+ * + *
optional uint64 src_length = 5;
+ * @param value The srcLength to set.
+ * @return This builder for chaining.
+ */
+ public Builder setSrcLength(long value) {
+ bitField0_ |= 0x00000010;
+ srcLength_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * Byte length of src, equal to the number of blocks in src_extents * + * block_size. It is used for BSDIFF and SOURCE_BSDIFF, because we need to + * pass that external program the number of bytes to read from the blocks we + * pass it. This is not used in any other operation. + *+ * + *
optional uint64 src_length = 5;
+ * @return This builder for chaining.
+ */
+ public Builder clearSrcLength() {
+ bitField0_ = (bitField0_ & ~0x00000010);
+ srcLength_ = 0L;
+ onChanged();
+ return this;
+ }
+
+ private java.util.Listrepeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ public java.util.Listrepeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ public int getDstExtentsCount() {
+ if (dstExtentsBuilder_ == null) {
+ return dstExtents_.size();
+ } else {
+ return dstExtentsBuilder_.getCount();
+ }
+ }
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ public chromeos_update_engine.UpdateMetadata.Extent getDstExtents(int index) {
+ if (dstExtentsBuilder_ == null) {
+ return dstExtents_.get(index);
+ } else {
+ return dstExtentsBuilder_.getMessage(index);
+ }
+ }
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ public Builder setDstExtents(
+ int index, chromeos_update_engine.UpdateMetadata.Extent value) {
+ if (dstExtentsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureDstExtentsIsMutable();
+ dstExtents_.set(index, value);
+ onChanged();
+ } else {
+ dstExtentsBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ public Builder setDstExtents(
+ int index, chromeos_update_engine.UpdateMetadata.Extent.Builder builderForValue) {
+ if (dstExtentsBuilder_ == null) {
+ ensureDstExtentsIsMutable();
+ dstExtents_.set(index, builderForValue.build());
+ onChanged();
+ } else {
+ dstExtentsBuilder_.setMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ public Builder addDstExtents(chromeos_update_engine.UpdateMetadata.Extent value) {
+ if (dstExtentsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureDstExtentsIsMutable();
+ dstExtents_.add(value);
+ onChanged();
+ } else {
+ dstExtentsBuilder_.addMessage(value);
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ public Builder addDstExtents(
+ int index, chromeos_update_engine.UpdateMetadata.Extent value) {
+ if (dstExtentsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureDstExtentsIsMutable();
+ dstExtents_.add(index, value);
+ onChanged();
+ } else {
+ dstExtentsBuilder_.addMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ public Builder addDstExtents(
+ chromeos_update_engine.UpdateMetadata.Extent.Builder builderForValue) {
+ if (dstExtentsBuilder_ == null) {
+ ensureDstExtentsIsMutable();
+ dstExtents_.add(builderForValue.build());
+ onChanged();
+ } else {
+ dstExtentsBuilder_.addMessage(builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ public Builder addDstExtents(
+ int index, chromeos_update_engine.UpdateMetadata.Extent.Builder builderForValue) {
+ if (dstExtentsBuilder_ == null) {
+ ensureDstExtentsIsMutable();
+ dstExtents_.add(index, builderForValue.build());
+ onChanged();
+ } else {
+ dstExtentsBuilder_.addMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ public Builder addAllDstExtents(
+ java.lang.Iterable extends chromeos_update_engine.UpdateMetadata.Extent> values) {
+ if (dstExtentsBuilder_ == null) {
+ ensureDstExtentsIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(
+ values, dstExtents_);
+ onChanged();
+ } else {
+ dstExtentsBuilder_.addAllMessages(values);
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ public Builder clearDstExtents() {
+ if (dstExtentsBuilder_ == null) {
+ dstExtents_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000020);
+ onChanged();
+ } else {
+ dstExtentsBuilder_.clear();
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ public Builder removeDstExtents(int index) {
+ if (dstExtentsBuilder_ == null) {
+ ensureDstExtentsIsMutable();
+ dstExtents_.remove(index);
+ onChanged();
+ } else {
+ dstExtentsBuilder_.remove(index);
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ public chromeos_update_engine.UpdateMetadata.Extent.Builder getDstExtentsBuilder(
+ int index) {
+ return getDstExtentsFieldBuilder().getBuilder(index);
+ }
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ public chromeos_update_engine.UpdateMetadata.ExtentOrBuilder getDstExtentsOrBuilder(
+ int index) {
+ if (dstExtentsBuilder_ == null) {
+ return dstExtents_.get(index); } else {
+ return dstExtentsBuilder_.getMessageOrBuilder(index);
+ }
+ }
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ public java.util.List extends chromeos_update_engine.UpdateMetadata.ExtentOrBuilder>
+ getDstExtentsOrBuilderList() {
+ if (dstExtentsBuilder_ != null) {
+ return dstExtentsBuilder_.getMessageOrBuilderList();
+ } else {
+ return java.util.Collections.unmodifiableList(dstExtents_);
+ }
+ }
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ public chromeos_update_engine.UpdateMetadata.Extent.Builder addDstExtentsBuilder() {
+ return getDstExtentsFieldBuilder().addBuilder(
+ chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance());
+ }
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ public chromeos_update_engine.UpdateMetadata.Extent.Builder addDstExtentsBuilder(
+ int index) {
+ return getDstExtentsFieldBuilder().addBuilder(
+ index, chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance());
+ }
+ /**
+ * repeated .chromeos_update_engine.Extent dst_extents = 6;
+ */
+ public java.util.List+ * Byte length of dst, equal to the number of blocks in dst_extents * + * block_size. Used for BSDIFF and SOURCE_BSDIFF, but not in any other + * operation. + *+ * + *
optional uint64 dst_length = 7;
+ * @return Whether the dstLength field is set.
+ */
+ @java.lang.Override
+ public boolean hasDstLength() {
+ return ((bitField0_ & 0x00000040) != 0);
+ }
+ /**
+ * + * Byte length of dst, equal to the number of blocks in dst_extents * + * block_size. Used for BSDIFF and SOURCE_BSDIFF, but not in any other + * operation. + *+ * + *
optional uint64 dst_length = 7;
+ * @return The dstLength.
+ */
+ @java.lang.Override
+ public long getDstLength() {
+ return dstLength_;
+ }
+ /**
+ * + * Byte length of dst, equal to the number of blocks in dst_extents * + * block_size. Used for BSDIFF and SOURCE_BSDIFF, but not in any other + * operation. + *+ * + *
optional uint64 dst_length = 7;
+ * @param value The dstLength to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDstLength(long value) {
+ bitField0_ |= 0x00000040;
+ dstLength_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * Byte length of dst, equal to the number of blocks in dst_extents * + * block_size. Used for BSDIFF and SOURCE_BSDIFF, but not in any other + * operation. + *+ * + *
optional uint64 dst_length = 7;
+ * @return This builder for chaining.
+ */
+ public Builder clearDstLength() {
+ bitField0_ = (bitField0_ & ~0x00000040);
+ dstLength_ = 0L;
+ onChanged();
+ return this;
+ }
+
+ private com.google.protobuf.ByteString dataSha256Hash_ = com.google.protobuf.ByteString.EMPTY;
+ /**
+ * + * Optional SHA 256 hash of the blob associated with this operation. + * This is used as a primary validation for http-based downloads and + * as a defense-in-depth validation for https-based downloads. If + * the operation doesn't refer to any blob, this field will have + * zero bytes. + *+ * + *
optional bytes data_sha256_hash = 8;
+ * @return Whether the dataSha256Hash field is set.
+ */
+ @java.lang.Override
+ public boolean hasDataSha256Hash() {
+ return ((bitField0_ & 0x00000080) != 0);
+ }
+ /**
+ * + * Optional SHA 256 hash of the blob associated with this operation. + * This is used as a primary validation for http-based downloads and + * as a defense-in-depth validation for https-based downloads. If + * the operation doesn't refer to any blob, this field will have + * zero bytes. + *+ * + *
optional bytes data_sha256_hash = 8;
+ * @return The dataSha256Hash.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getDataSha256Hash() {
+ return dataSha256Hash_;
+ }
+ /**
+ * + * Optional SHA 256 hash of the blob associated with this operation. + * This is used as a primary validation for http-based downloads and + * as a defense-in-depth validation for https-based downloads. If + * the operation doesn't refer to any blob, this field will have + * zero bytes. + *+ * + *
optional bytes data_sha256_hash = 8;
+ * @param value The dataSha256Hash to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDataSha256Hash(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000080;
+ dataSha256Hash_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * Optional SHA 256 hash of the blob associated with this operation. + * This is used as a primary validation for http-based downloads and + * as a defense-in-depth validation for https-based downloads. If + * the operation doesn't refer to any blob, this field will have + * zero bytes. + *+ * + *
optional bytes data_sha256_hash = 8;
+ * @return This builder for chaining.
+ */
+ public Builder clearDataSha256Hash() {
+ bitField0_ = (bitField0_ & ~0x00000080);
+ dataSha256Hash_ = getDefaultInstance().getDataSha256Hash();
+ onChanged();
+ return this;
+ }
+
+ private com.google.protobuf.ByteString srcSha256Hash_ = com.google.protobuf.ByteString.EMPTY;
+ /**
+ * + * Indicates the SHA 256 hash of the source data referenced in src_extents at + * the time of applying the operation. If present, the update_engine daemon + * MUST read and verify the source data before applying the operation. + *+ * + *
optional bytes src_sha256_hash = 9;
+ * @return Whether the srcSha256Hash field is set.
+ */
+ @java.lang.Override
+ public boolean hasSrcSha256Hash() {
+ return ((bitField0_ & 0x00000100) != 0);
+ }
+ /**
+ * + * Indicates the SHA 256 hash of the source data referenced in src_extents at + * the time of applying the operation. If present, the update_engine daemon + * MUST read and verify the source data before applying the operation. + *+ * + *
optional bytes src_sha256_hash = 9;
+ * @return The srcSha256Hash.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getSrcSha256Hash() {
+ return srcSha256Hash_;
+ }
+ /**
+ * + * Indicates the SHA 256 hash of the source data referenced in src_extents at + * the time of applying the operation. If present, the update_engine daemon + * MUST read and verify the source data before applying the operation. + *+ * + *
optional bytes src_sha256_hash = 9;
+ * @param value The srcSha256Hash to set.
+ * @return This builder for chaining.
+ */
+ public Builder setSrcSha256Hash(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000100;
+ srcSha256Hash_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * Indicates the SHA 256 hash of the source data referenced in src_extents at + * the time of applying the operation. If present, the update_engine daemon + * MUST read and verify the source data before applying the operation. + *+ * + *
optional bytes src_sha256_hash = 9;
+ * @return This builder for chaining.
+ */
+ public Builder clearSrcSha256Hash() {
+ bitField0_ = (bitField0_ & ~0x00000100);
+ srcSha256Hash_ = getDefaultInstance().getSrcSha256Hash();
+ onChanged();
+ return this;
+ }
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+
+ // @@protoc_insertion_point(builder_scope:chromeos_update_engine.InstallOperation)
+ }
+
+ // @@protoc_insertion_point(class_scope:chromeos_update_engine.InstallOperation)
+ private static final chromeos_update_engine.UpdateMetadata.InstallOperation DEFAULT_INSTANCE;
+ static {
+ DEFAULT_INSTANCE = new chromeos_update_engine.UpdateMetadata.InstallOperation();
+ }
+
+ public static chromeos_update_engine.UpdateMetadata.InstallOperation getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ @java.lang.Deprecated public static final com.google.protobuf.Parser+ * A platform-specific name to identify the partition set being updated. For + * example, in Chrome OS this could be "ROOT" or "KERNEL". + *+ * + *
required string partition_name = 1;
+ * @return Whether the partitionName field is set.
+ */
+ boolean hasPartitionName();
+ /**
+ * + * A platform-specific name to identify the partition set being updated. For + * example, in Chrome OS this could be "ROOT" or "KERNEL". + *+ * + *
required string partition_name = 1;
+ * @return The partitionName.
+ */
+ java.lang.String getPartitionName();
+ /**
+ * + * A platform-specific name to identify the partition set being updated. For + * example, in Chrome OS this could be "ROOT" or "KERNEL". + *+ * + *
required string partition_name = 1;
+ * @return The bytes for partitionName.
+ */
+ com.google.protobuf.ByteString
+ getPartitionNameBytes();
+
+ /**
+ * + * Whether this partition carries a filesystem with post-install program that + * must be run to finalize the update process. See also |postinstall_path| and + * |filesystem_type|. + *+ * + *
optional bool run_postinstall = 2;
+ * @return Whether the runPostinstall field is set.
+ */
+ boolean hasRunPostinstall();
+ /**
+ * + * Whether this partition carries a filesystem with post-install program that + * must be run to finalize the update process. See also |postinstall_path| and + * |filesystem_type|. + *+ * + *
optional bool run_postinstall = 2;
+ * @return The runPostinstall.
+ */
+ boolean getRunPostinstall();
+
+ /**
+ * + * The path of the executable program to run during the post-install step, + * relative to the root of this filesystem. If not set, the default "postinst" + * will be used. This setting is only used when |run_postinstall| is set and + * true. + *+ * + *
optional string postinstall_path = 3;
+ * @return Whether the postinstallPath field is set.
+ */
+ boolean hasPostinstallPath();
+ /**
+ * + * The path of the executable program to run during the post-install step, + * relative to the root of this filesystem. If not set, the default "postinst" + * will be used. This setting is only used when |run_postinstall| is set and + * true. + *+ * + *
optional string postinstall_path = 3;
+ * @return The postinstallPath.
+ */
+ java.lang.String getPostinstallPath();
+ /**
+ * + * The path of the executable program to run during the post-install step, + * relative to the root of this filesystem. If not set, the default "postinst" + * will be used. This setting is only used when |run_postinstall| is set and + * true. + *+ * + *
optional string postinstall_path = 3;
+ * @return The bytes for postinstallPath.
+ */
+ com.google.protobuf.ByteString
+ getPostinstallPathBytes();
+
+ /**
+ * + * The filesystem type as passed to the mount(2) syscall when mounting the new + * filesystem to run the post-install program. If not set, a fixed list of + * filesystems will be attempted. This setting is only used if + * |run_postinstall| is set and true. + *+ * + *
optional string filesystem_type = 4;
+ * @return Whether the filesystemType field is set.
+ */
+ boolean hasFilesystemType();
+ /**
+ * + * The filesystem type as passed to the mount(2) syscall when mounting the new + * filesystem to run the post-install program. If not set, a fixed list of + * filesystems will be attempted. This setting is only used if + * |run_postinstall| is set and true. + *+ * + *
optional string filesystem_type = 4;
+ * @return The filesystemType.
+ */
+ java.lang.String getFilesystemType();
+ /**
+ * + * The filesystem type as passed to the mount(2) syscall when mounting the new + * filesystem to run the post-install program. If not set, a fixed list of + * filesystems will be attempted. This setting is only used if + * |run_postinstall| is set and true. + *+ * + *
optional string filesystem_type = 4;
+ * @return The bytes for filesystemType.
+ */
+ com.google.protobuf.ByteString
+ getFilesystemTypeBytes();
+
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ java.util.List+ * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ chromeos_update_engine.UpdateMetadata.Signatures.Signature getNewPartitionSignature(int index);
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ int getNewPartitionSignatureCount();
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ java.util.List extends chromeos_update_engine.UpdateMetadata.Signatures.SignatureOrBuilder>
+ getNewPartitionSignatureOrBuilderList();
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ chromeos_update_engine.UpdateMetadata.Signatures.SignatureOrBuilder getNewPartitionSignatureOrBuilder(
+ int index);
+
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_partition_info = 6;
+ * @return Whether the oldPartitionInfo field is set.
+ */
+ boolean hasOldPartitionInfo();
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_partition_info = 6;
+ * @return The oldPartitionInfo.
+ */
+ chromeos_update_engine.UpdateMetadata.PartitionInfo getOldPartitionInfo();
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_partition_info = 6;
+ */
+ chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder getOldPartitionInfoOrBuilder();
+
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_partition_info = 7;
+ * @return Whether the newPartitionInfo field is set.
+ */
+ boolean hasNewPartitionInfo();
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_partition_info = 7;
+ * @return The newPartitionInfo.
+ */
+ chromeos_update_engine.UpdateMetadata.PartitionInfo getNewPartitionInfo();
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_partition_info = 7;
+ */
+ chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder getNewPartitionInfoOrBuilder();
+
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ java.util.List+ * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ chromeos_update_engine.UpdateMetadata.InstallOperation getOperations(int index);
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ int getOperationsCount();
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ java.util.List extends chromeos_update_engine.UpdateMetadata.InstallOperationOrBuilder>
+ getOperationsOrBuilderList();
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ chromeos_update_engine.UpdateMetadata.InstallOperationOrBuilder getOperationsOrBuilder(
+ int index);
+
+ /**
+ * + * Whether a failure in the postinstall step for this partition should be + * ignored. + *+ * + *
optional bool postinstall_optional = 9;
+ * @return Whether the postinstallOptional field is set.
+ */
+ boolean hasPostinstallOptional();
+ /**
+ * + * Whether a failure in the postinstall step for this partition should be + * ignored. + *+ * + *
optional bool postinstall_optional = 9;
+ * @return The postinstallOptional.
+ */
+ boolean getPostinstallOptional();
+
+ /**
+ * + * The extent for data covered by verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_data_extent = 10;
+ * @return Whether the hashTreeDataExtent field is set.
+ */
+ boolean hasHashTreeDataExtent();
+ /**
+ * + * The extent for data covered by verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_data_extent = 10;
+ * @return The hashTreeDataExtent.
+ */
+ chromeos_update_engine.UpdateMetadata.Extent getHashTreeDataExtent();
+ /**
+ * + * The extent for data covered by verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_data_extent = 10;
+ */
+ chromeos_update_engine.UpdateMetadata.ExtentOrBuilder getHashTreeDataExtentOrBuilder();
+
+ /**
+ * + * The extent to store verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_extent = 11;
+ * @return Whether the hashTreeExtent field is set.
+ */
+ boolean hasHashTreeExtent();
+ /**
+ * + * The extent to store verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_extent = 11;
+ * @return The hashTreeExtent.
+ */
+ chromeos_update_engine.UpdateMetadata.Extent getHashTreeExtent();
+ /**
+ * + * The extent to store verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_extent = 11;
+ */
+ chromeos_update_engine.UpdateMetadata.ExtentOrBuilder getHashTreeExtentOrBuilder();
+
+ /**
+ * + * The hash algorithm used in verity hash tree. + *+ * + *
optional string hash_tree_algorithm = 12;
+ * @return Whether the hashTreeAlgorithm field is set.
+ */
+ boolean hasHashTreeAlgorithm();
+ /**
+ * + * The hash algorithm used in verity hash tree. + *+ * + *
optional string hash_tree_algorithm = 12;
+ * @return The hashTreeAlgorithm.
+ */
+ java.lang.String getHashTreeAlgorithm();
+ /**
+ * + * The hash algorithm used in verity hash tree. + *+ * + *
optional string hash_tree_algorithm = 12;
+ * @return The bytes for hashTreeAlgorithm.
+ */
+ com.google.protobuf.ByteString
+ getHashTreeAlgorithmBytes();
+
+ /**
+ * + * The salt used for verity hash tree. + *+ * + *
optional bytes hash_tree_salt = 13;
+ * @return Whether the hashTreeSalt field is set.
+ */
+ boolean hasHashTreeSalt();
+ /**
+ * + * The salt used for verity hash tree. + *+ * + *
optional bytes hash_tree_salt = 13;
+ * @return The hashTreeSalt.
+ */
+ com.google.protobuf.ByteString getHashTreeSalt();
+
+ /**
+ * + * The extent for data covered by FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_data_extent = 14;
+ * @return Whether the fecDataExtent field is set.
+ */
+ boolean hasFecDataExtent();
+ /**
+ * + * The extent for data covered by FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_data_extent = 14;
+ * @return The fecDataExtent.
+ */
+ chromeos_update_engine.UpdateMetadata.Extent getFecDataExtent();
+ /**
+ * + * The extent for data covered by FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_data_extent = 14;
+ */
+ chromeos_update_engine.UpdateMetadata.ExtentOrBuilder getFecDataExtentOrBuilder();
+
+ /**
+ * + * The extent to store FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_extent = 15;
+ * @return Whether the fecExtent field is set.
+ */
+ boolean hasFecExtent();
+ /**
+ * + * The extent to store FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_extent = 15;
+ * @return The fecExtent.
+ */
+ chromeos_update_engine.UpdateMetadata.Extent getFecExtent();
+ /**
+ * + * The extent to store FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_extent = 15;
+ */
+ chromeos_update_engine.UpdateMetadata.ExtentOrBuilder getFecExtentOrBuilder();
+
+ /**
+ * + * The number of FEC roots. + *+ * + *
optional uint32 fec_roots = 16 [default = 2];
+ * @return Whether the fecRoots field is set.
+ */
+ boolean hasFecRoots();
+ /**
+ * + * The number of FEC roots. + *+ * + *
optional uint32 fec_roots = 16 [default = 2];
+ * @return The fecRoots.
+ */
+ int getFecRoots();
+ }
+ /**
+ * + * Describes the update to apply to a single partition. + *+ * + * Protobuf type {@code chromeos_update_engine.PartitionUpdate} + */ + public static final class PartitionUpdate extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:chromeos_update_engine.PartitionUpdate) + PartitionUpdateOrBuilder { + private static final long serialVersionUID = 0L; + // Use PartitionUpdate.newBuilder() to construct. + private PartitionUpdate(com.google.protobuf.GeneratedMessageV3.Builder> builder) { + super(builder); + } + private PartitionUpdate() { + partitionName_ = ""; + postinstallPath_ = ""; + filesystemType_ = ""; + newPartitionSignature_ = java.util.Collections.emptyList(); + operations_ = java.util.Collections.emptyList(); + hashTreeAlgorithm_ = ""; + hashTreeSalt_ = com.google.protobuf.ByteString.EMPTY; + fecRoots_ = 2; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new PartitionUpdate(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private PartitionUpdate( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + 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; + case 10: { + com.google.protobuf.ByteString bs = input.readBytes(); + bitField0_ |= 0x00000001; + partitionName_ = bs; + break; + } + case 16: { + bitField0_ |= 0x00000002; + runPostinstall_ = input.readBool(); + break; + } + case 26: { + com.google.protobuf.ByteString bs = input.readBytes(); + bitField0_ |= 0x00000004; + postinstallPath_ = bs; + break; + } + case 34: { + com.google.protobuf.ByteString bs = input.readBytes(); + bitField0_ |= 0x00000008; + filesystemType_ = bs; + break; + } + case 42: { + if (!((mutable_bitField0_ & 0x00000010) != 0)) { + newPartitionSignature_ = new java.util.ArrayList
+ * A platform-specific name to identify the partition set being updated. For + * example, in Chrome OS this could be "ROOT" or "KERNEL". + *+ * + *
required string partition_name = 1;
+ * @return Whether the partitionName field is set.
+ */
+ @java.lang.Override
+ public boolean hasPartitionName() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * + * A platform-specific name to identify the partition set being updated. For + * example, in Chrome OS this could be "ROOT" or "KERNEL". + *+ * + *
required string partition_name = 1;
+ * @return The partitionName.
+ */
+ @java.lang.Override
+ public java.lang.String getPartitionName() {
+ java.lang.Object ref = partitionName_;
+ 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()) {
+ partitionName_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * + * A platform-specific name to identify the partition set being updated. For + * example, in Chrome OS this could be "ROOT" or "KERNEL". + *+ * + *
required string partition_name = 1;
+ * @return The bytes for partitionName.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getPartitionNameBytes() {
+ java.lang.Object ref = partitionName_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ partitionName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int RUN_POSTINSTALL_FIELD_NUMBER = 2;
+ private boolean runPostinstall_;
+ /**
+ * + * Whether this partition carries a filesystem with post-install program that + * must be run to finalize the update process. See also |postinstall_path| and + * |filesystem_type|. + *+ * + *
optional bool run_postinstall = 2;
+ * @return Whether the runPostinstall field is set.
+ */
+ @java.lang.Override
+ public boolean hasRunPostinstall() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * + * Whether this partition carries a filesystem with post-install program that + * must be run to finalize the update process. See also |postinstall_path| and + * |filesystem_type|. + *+ * + *
optional bool run_postinstall = 2;
+ * @return The runPostinstall.
+ */
+ @java.lang.Override
+ public boolean getRunPostinstall() {
+ return runPostinstall_;
+ }
+
+ public static final int POSTINSTALL_PATH_FIELD_NUMBER = 3;
+ private volatile java.lang.Object postinstallPath_;
+ /**
+ * + * The path of the executable program to run during the post-install step, + * relative to the root of this filesystem. If not set, the default "postinst" + * will be used. This setting is only used when |run_postinstall| is set and + * true. + *+ * + *
optional string postinstall_path = 3;
+ * @return Whether the postinstallPath field is set.
+ */
+ @java.lang.Override
+ public boolean hasPostinstallPath() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ * + * The path of the executable program to run during the post-install step, + * relative to the root of this filesystem. If not set, the default "postinst" + * will be used. This setting is only used when |run_postinstall| is set and + * true. + *+ * + *
optional string postinstall_path = 3;
+ * @return The postinstallPath.
+ */
+ @java.lang.Override
+ public java.lang.String getPostinstallPath() {
+ java.lang.Object ref = postinstallPath_;
+ 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()) {
+ postinstallPath_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * + * The path of the executable program to run during the post-install step, + * relative to the root of this filesystem. If not set, the default "postinst" + * will be used. This setting is only used when |run_postinstall| is set and + * true. + *+ * + *
optional string postinstall_path = 3;
+ * @return The bytes for postinstallPath.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getPostinstallPathBytes() {
+ java.lang.Object ref = postinstallPath_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ postinstallPath_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int FILESYSTEM_TYPE_FIELD_NUMBER = 4;
+ private volatile java.lang.Object filesystemType_;
+ /**
+ * + * The filesystem type as passed to the mount(2) syscall when mounting the new + * filesystem to run the post-install program. If not set, a fixed list of + * filesystems will be attempted. This setting is only used if + * |run_postinstall| is set and true. + *+ * + *
optional string filesystem_type = 4;
+ * @return Whether the filesystemType field is set.
+ */
+ @java.lang.Override
+ public boolean hasFilesystemType() {
+ return ((bitField0_ & 0x00000008) != 0);
+ }
+ /**
+ * + * The filesystem type as passed to the mount(2) syscall when mounting the new + * filesystem to run the post-install program. If not set, a fixed list of + * filesystems will be attempted. This setting is only used if + * |run_postinstall| is set and true. + *+ * + *
optional string filesystem_type = 4;
+ * @return The filesystemType.
+ */
+ @java.lang.Override
+ public java.lang.String getFilesystemType() {
+ java.lang.Object ref = filesystemType_;
+ 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()) {
+ filesystemType_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * + * The filesystem type as passed to the mount(2) syscall when mounting the new + * filesystem to run the post-install program. If not set, a fixed list of + * filesystems will be attempted. This setting is only used if + * |run_postinstall| is set and true. + *+ * + *
optional string filesystem_type = 4;
+ * @return The bytes for filesystemType.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getFilesystemTypeBytes() {
+ java.lang.Object ref = filesystemType_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ filesystemType_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int NEW_PARTITION_SIGNATURE_FIELD_NUMBER = 5;
+ private java.util.List+ * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ @java.lang.Override
+ public java.util.List+ * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ @java.lang.Override
+ public java.util.List extends chromeos_update_engine.UpdateMetadata.Signatures.SignatureOrBuilder>
+ getNewPartitionSignatureOrBuilderList() {
+ return newPartitionSignature_;
+ }
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ @java.lang.Override
+ public int getNewPartitionSignatureCount() {
+ return newPartitionSignature_.size();
+ }
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.Signatures.Signature getNewPartitionSignature(int index) {
+ return newPartitionSignature_.get(index);
+ }
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.Signatures.SignatureOrBuilder getNewPartitionSignatureOrBuilder(
+ int index) {
+ return newPartitionSignature_.get(index);
+ }
+
+ public static final int OLD_PARTITION_INFO_FIELD_NUMBER = 6;
+ private chromeos_update_engine.UpdateMetadata.PartitionInfo oldPartitionInfo_;
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_partition_info = 6;
+ * @return Whether the oldPartitionInfo field is set.
+ */
+ @java.lang.Override
+ public boolean hasOldPartitionInfo() {
+ return ((bitField0_ & 0x00000010) != 0);
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_partition_info = 6;
+ * @return The oldPartitionInfo.
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.PartitionInfo getOldPartitionInfo() {
+ return oldPartitionInfo_ == null ? chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : oldPartitionInfo_;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_partition_info = 6;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder getOldPartitionInfoOrBuilder() {
+ return oldPartitionInfo_ == null ? chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : oldPartitionInfo_;
+ }
+
+ public static final int NEW_PARTITION_INFO_FIELD_NUMBER = 7;
+ private chromeos_update_engine.UpdateMetadata.PartitionInfo newPartitionInfo_;
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_partition_info = 7;
+ * @return Whether the newPartitionInfo field is set.
+ */
+ @java.lang.Override
+ public boolean hasNewPartitionInfo() {
+ return ((bitField0_ & 0x00000020) != 0);
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_partition_info = 7;
+ * @return The newPartitionInfo.
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.PartitionInfo getNewPartitionInfo() {
+ return newPartitionInfo_ == null ? chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : newPartitionInfo_;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_partition_info = 7;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder getNewPartitionInfoOrBuilder() {
+ return newPartitionInfo_ == null ? chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : newPartitionInfo_;
+ }
+
+ public static final int OPERATIONS_FIELD_NUMBER = 8;
+ private java.util.List+ * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ @java.lang.Override
+ public java.util.List+ * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ @java.lang.Override
+ public java.util.List extends chromeos_update_engine.UpdateMetadata.InstallOperationOrBuilder>
+ getOperationsOrBuilderList() {
+ return operations_;
+ }
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ @java.lang.Override
+ public int getOperationsCount() {
+ return operations_.size();
+ }
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.InstallOperation getOperations(int index) {
+ return operations_.get(index);
+ }
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.InstallOperationOrBuilder getOperationsOrBuilder(
+ int index) {
+ return operations_.get(index);
+ }
+
+ public static final int POSTINSTALL_OPTIONAL_FIELD_NUMBER = 9;
+ private boolean postinstallOptional_;
+ /**
+ * + * Whether a failure in the postinstall step for this partition should be + * ignored. + *+ * + *
optional bool postinstall_optional = 9;
+ * @return Whether the postinstallOptional field is set.
+ */
+ @java.lang.Override
+ public boolean hasPostinstallOptional() {
+ return ((bitField0_ & 0x00000040) != 0);
+ }
+ /**
+ * + * Whether a failure in the postinstall step for this partition should be + * ignored. + *+ * + *
optional bool postinstall_optional = 9;
+ * @return The postinstallOptional.
+ */
+ @java.lang.Override
+ public boolean getPostinstallOptional() {
+ return postinstallOptional_;
+ }
+
+ public static final int HASH_TREE_DATA_EXTENT_FIELD_NUMBER = 10;
+ private chromeos_update_engine.UpdateMetadata.Extent hashTreeDataExtent_;
+ /**
+ * + * The extent for data covered by verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_data_extent = 10;
+ * @return Whether the hashTreeDataExtent field is set.
+ */
+ @java.lang.Override
+ public boolean hasHashTreeDataExtent() {
+ return ((bitField0_ & 0x00000080) != 0);
+ }
+ /**
+ * + * The extent for data covered by verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_data_extent = 10;
+ * @return The hashTreeDataExtent.
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.Extent getHashTreeDataExtent() {
+ return hashTreeDataExtent_ == null ? chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance() : hashTreeDataExtent_;
+ }
+ /**
+ * + * The extent for data covered by verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_data_extent = 10;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.ExtentOrBuilder getHashTreeDataExtentOrBuilder() {
+ return hashTreeDataExtent_ == null ? chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance() : hashTreeDataExtent_;
+ }
+
+ public static final int HASH_TREE_EXTENT_FIELD_NUMBER = 11;
+ private chromeos_update_engine.UpdateMetadata.Extent hashTreeExtent_;
+ /**
+ * + * The extent to store verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_extent = 11;
+ * @return Whether the hashTreeExtent field is set.
+ */
+ @java.lang.Override
+ public boolean hasHashTreeExtent() {
+ return ((bitField0_ & 0x00000100) != 0);
+ }
+ /**
+ * + * The extent to store verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_extent = 11;
+ * @return The hashTreeExtent.
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.Extent getHashTreeExtent() {
+ return hashTreeExtent_ == null ? chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance() : hashTreeExtent_;
+ }
+ /**
+ * + * The extent to store verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_extent = 11;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.ExtentOrBuilder getHashTreeExtentOrBuilder() {
+ return hashTreeExtent_ == null ? chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance() : hashTreeExtent_;
+ }
+
+ public static final int HASH_TREE_ALGORITHM_FIELD_NUMBER = 12;
+ private volatile java.lang.Object hashTreeAlgorithm_;
+ /**
+ * + * The hash algorithm used in verity hash tree. + *+ * + *
optional string hash_tree_algorithm = 12;
+ * @return Whether the hashTreeAlgorithm field is set.
+ */
+ @java.lang.Override
+ public boolean hasHashTreeAlgorithm() {
+ return ((bitField0_ & 0x00000200) != 0);
+ }
+ /**
+ * + * The hash algorithm used in verity hash tree. + *+ * + *
optional string hash_tree_algorithm = 12;
+ * @return The hashTreeAlgorithm.
+ */
+ @java.lang.Override
+ public java.lang.String getHashTreeAlgorithm() {
+ java.lang.Object ref = hashTreeAlgorithm_;
+ 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()) {
+ hashTreeAlgorithm_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * + * The hash algorithm used in verity hash tree. + *+ * + *
optional string hash_tree_algorithm = 12;
+ * @return The bytes for hashTreeAlgorithm.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getHashTreeAlgorithmBytes() {
+ java.lang.Object ref = hashTreeAlgorithm_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ hashTreeAlgorithm_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int HASH_TREE_SALT_FIELD_NUMBER = 13;
+ private com.google.protobuf.ByteString hashTreeSalt_;
+ /**
+ * + * The salt used for verity hash tree. + *+ * + *
optional bytes hash_tree_salt = 13;
+ * @return Whether the hashTreeSalt field is set.
+ */
+ @java.lang.Override
+ public boolean hasHashTreeSalt() {
+ return ((bitField0_ & 0x00000400) != 0);
+ }
+ /**
+ * + * The salt used for verity hash tree. + *+ * + *
optional bytes hash_tree_salt = 13;
+ * @return The hashTreeSalt.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getHashTreeSalt() {
+ return hashTreeSalt_;
+ }
+
+ public static final int FEC_DATA_EXTENT_FIELD_NUMBER = 14;
+ private chromeos_update_engine.UpdateMetadata.Extent fecDataExtent_;
+ /**
+ * + * The extent for data covered by FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_data_extent = 14;
+ * @return Whether the fecDataExtent field is set.
+ */
+ @java.lang.Override
+ public boolean hasFecDataExtent() {
+ return ((bitField0_ & 0x00000800) != 0);
+ }
+ /**
+ * + * The extent for data covered by FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_data_extent = 14;
+ * @return The fecDataExtent.
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.Extent getFecDataExtent() {
+ return fecDataExtent_ == null ? chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance() : fecDataExtent_;
+ }
+ /**
+ * + * The extent for data covered by FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_data_extent = 14;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.ExtentOrBuilder getFecDataExtentOrBuilder() {
+ return fecDataExtent_ == null ? chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance() : fecDataExtent_;
+ }
+
+ public static final int FEC_EXTENT_FIELD_NUMBER = 15;
+ private chromeos_update_engine.UpdateMetadata.Extent fecExtent_;
+ /**
+ * + * The extent to store FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_extent = 15;
+ * @return Whether the fecExtent field is set.
+ */
+ @java.lang.Override
+ public boolean hasFecExtent() {
+ return ((bitField0_ & 0x00001000) != 0);
+ }
+ /**
+ * + * The extent to store FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_extent = 15;
+ * @return The fecExtent.
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.Extent getFecExtent() {
+ return fecExtent_ == null ? chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance() : fecExtent_;
+ }
+ /**
+ * + * The extent to store FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_extent = 15;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.ExtentOrBuilder getFecExtentOrBuilder() {
+ return fecExtent_ == null ? chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance() : fecExtent_;
+ }
+
+ public static final int FEC_ROOTS_FIELD_NUMBER = 16;
+ private int fecRoots_;
+ /**
+ * + * The number of FEC roots. + *+ * + *
optional uint32 fec_roots = 16 [default = 2];
+ * @return Whether the fecRoots field is set.
+ */
+ @java.lang.Override
+ public boolean hasFecRoots() {
+ return ((bitField0_ & 0x00002000) != 0);
+ }
+ /**
+ * + * The number of FEC roots. + *+ * + *
optional uint32 fec_roots = 16 [default = 2];
+ * @return The fecRoots.
+ */
+ @java.lang.Override
+ public int getFecRoots() {
+ return fecRoots_;
+ }
+
+ private byte memoizedIsInitialized = -1;
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ if (!hasPartitionName()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ for (int i = 0; i < getOperationsCount(); i++) {
+ if (!getOperations(i).isInitialized()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ }
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output)
+ throws java.io.IOException {
+ if (((bitField0_ & 0x00000001) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 1, partitionName_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ output.writeBool(2, runPostinstall_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 3, postinstallPath_);
+ }
+ if (((bitField0_ & 0x00000008) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 4, filesystemType_);
+ }
+ for (int i = 0; i < newPartitionSignature_.size(); i++) {
+ output.writeMessage(5, newPartitionSignature_.get(i));
+ }
+ if (((bitField0_ & 0x00000010) != 0)) {
+ output.writeMessage(6, getOldPartitionInfo());
+ }
+ if (((bitField0_ & 0x00000020) != 0)) {
+ output.writeMessage(7, getNewPartitionInfo());
+ }
+ for (int i = 0; i < operations_.size(); i++) {
+ output.writeMessage(8, operations_.get(i));
+ }
+ if (((bitField0_ & 0x00000040) != 0)) {
+ output.writeBool(9, postinstallOptional_);
+ }
+ if (((bitField0_ & 0x00000080) != 0)) {
+ output.writeMessage(10, getHashTreeDataExtent());
+ }
+ if (((bitField0_ & 0x00000100) != 0)) {
+ output.writeMessage(11, getHashTreeExtent());
+ }
+ if (((bitField0_ & 0x00000200) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 12, hashTreeAlgorithm_);
+ }
+ if (((bitField0_ & 0x00000400) != 0)) {
+ output.writeBytes(13, hashTreeSalt_);
+ }
+ if (((bitField0_ & 0x00000800) != 0)) {
+ output.writeMessage(14, getFecDataExtent());
+ }
+ if (((bitField0_ & 0x00001000) != 0)) {
+ output.writeMessage(15, getFecExtent());
+ }
+ if (((bitField0_ & 0x00002000) != 0)) {
+ output.writeUInt32(16, fecRoots_);
+ }
+ unknownFields.writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, partitionName_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeBoolSize(2, runPostinstall_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, postinstallPath_);
+ }
+ if (((bitField0_ & 0x00000008) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, filesystemType_);
+ }
+ for (int i = 0; i < newPartitionSignature_.size(); i++) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(5, newPartitionSignature_.get(i));
+ }
+ if (((bitField0_ & 0x00000010) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(6, getOldPartitionInfo());
+ }
+ if (((bitField0_ & 0x00000020) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(7, getNewPartitionInfo());
+ }
+ for (int i = 0; i < operations_.size(); i++) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(8, operations_.get(i));
+ }
+ if (((bitField0_ & 0x00000040) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeBoolSize(9, postinstallOptional_);
+ }
+ if (((bitField0_ & 0x00000080) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(10, getHashTreeDataExtent());
+ }
+ if (((bitField0_ & 0x00000100) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(11, getHashTreeExtent());
+ }
+ if (((bitField0_ & 0x00000200) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(12, hashTreeAlgorithm_);
+ }
+ if (((bitField0_ & 0x00000400) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeBytesSize(13, hashTreeSalt_);
+ }
+ if (((bitField0_ & 0x00000800) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(14, getFecDataExtent());
+ }
+ if (((bitField0_ & 0x00001000) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(15, getFecExtent());
+ }
+ if (((bitField0_ & 0x00002000) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeUInt32Size(16, fecRoots_);
+ }
+ size += unknownFields.getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof chromeos_update_engine.UpdateMetadata.PartitionUpdate)) {
+ return super.equals(obj);
+ }
+ chromeos_update_engine.UpdateMetadata.PartitionUpdate other = (chromeos_update_engine.UpdateMetadata.PartitionUpdate) obj;
+
+ if (hasPartitionName() != other.hasPartitionName()) return false;
+ if (hasPartitionName()) {
+ if (!getPartitionName()
+ .equals(other.getPartitionName())) return false;
+ }
+ if (hasRunPostinstall() != other.hasRunPostinstall()) return false;
+ if (hasRunPostinstall()) {
+ if (getRunPostinstall()
+ != other.getRunPostinstall()) return false;
+ }
+ if (hasPostinstallPath() != other.hasPostinstallPath()) return false;
+ if (hasPostinstallPath()) {
+ if (!getPostinstallPath()
+ .equals(other.getPostinstallPath())) return false;
+ }
+ if (hasFilesystemType() != other.hasFilesystemType()) return false;
+ if (hasFilesystemType()) {
+ if (!getFilesystemType()
+ .equals(other.getFilesystemType())) return false;
+ }
+ if (!getNewPartitionSignatureList()
+ .equals(other.getNewPartitionSignatureList())) return false;
+ if (hasOldPartitionInfo() != other.hasOldPartitionInfo()) return false;
+ if (hasOldPartitionInfo()) {
+ if (!getOldPartitionInfo()
+ .equals(other.getOldPartitionInfo())) return false;
+ }
+ if (hasNewPartitionInfo() != other.hasNewPartitionInfo()) return false;
+ if (hasNewPartitionInfo()) {
+ if (!getNewPartitionInfo()
+ .equals(other.getNewPartitionInfo())) return false;
+ }
+ if (!getOperationsList()
+ .equals(other.getOperationsList())) return false;
+ if (hasPostinstallOptional() != other.hasPostinstallOptional()) return false;
+ if (hasPostinstallOptional()) {
+ if (getPostinstallOptional()
+ != other.getPostinstallOptional()) return false;
+ }
+ if (hasHashTreeDataExtent() != other.hasHashTreeDataExtent()) return false;
+ if (hasHashTreeDataExtent()) {
+ if (!getHashTreeDataExtent()
+ .equals(other.getHashTreeDataExtent())) return false;
+ }
+ if (hasHashTreeExtent() != other.hasHashTreeExtent()) return false;
+ if (hasHashTreeExtent()) {
+ if (!getHashTreeExtent()
+ .equals(other.getHashTreeExtent())) return false;
+ }
+ if (hasHashTreeAlgorithm() != other.hasHashTreeAlgorithm()) return false;
+ if (hasHashTreeAlgorithm()) {
+ if (!getHashTreeAlgorithm()
+ .equals(other.getHashTreeAlgorithm())) return false;
+ }
+ if (hasHashTreeSalt() != other.hasHashTreeSalt()) return false;
+ if (hasHashTreeSalt()) {
+ if (!getHashTreeSalt()
+ .equals(other.getHashTreeSalt())) return false;
+ }
+ if (hasFecDataExtent() != other.hasFecDataExtent()) return false;
+ if (hasFecDataExtent()) {
+ if (!getFecDataExtent()
+ .equals(other.getFecDataExtent())) return false;
+ }
+ if (hasFecExtent() != other.hasFecExtent()) return false;
+ if (hasFecExtent()) {
+ if (!getFecExtent()
+ .equals(other.getFecExtent())) return false;
+ }
+ if (hasFecRoots() != other.hasFecRoots()) return false;
+ if (hasFecRoots()) {
+ if (getFecRoots()
+ != other.getFecRoots()) return false;
+ }
+ if (!unknownFields.equals(other.unknownFields)) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (hasPartitionName()) {
+ hash = (37 * hash) + PARTITION_NAME_FIELD_NUMBER;
+ hash = (53 * hash) + getPartitionName().hashCode();
+ }
+ if (hasRunPostinstall()) {
+ hash = (37 * hash) + RUN_POSTINSTALL_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
+ getRunPostinstall());
+ }
+ if (hasPostinstallPath()) {
+ hash = (37 * hash) + POSTINSTALL_PATH_FIELD_NUMBER;
+ hash = (53 * hash) + getPostinstallPath().hashCode();
+ }
+ if (hasFilesystemType()) {
+ hash = (37 * hash) + FILESYSTEM_TYPE_FIELD_NUMBER;
+ hash = (53 * hash) + getFilesystemType().hashCode();
+ }
+ if (getNewPartitionSignatureCount() > 0) {
+ hash = (37 * hash) + NEW_PARTITION_SIGNATURE_FIELD_NUMBER;
+ hash = (53 * hash) + getNewPartitionSignatureList().hashCode();
+ }
+ if (hasOldPartitionInfo()) {
+ hash = (37 * hash) + OLD_PARTITION_INFO_FIELD_NUMBER;
+ hash = (53 * hash) + getOldPartitionInfo().hashCode();
+ }
+ if (hasNewPartitionInfo()) {
+ hash = (37 * hash) + NEW_PARTITION_INFO_FIELD_NUMBER;
+ hash = (53 * hash) + getNewPartitionInfo().hashCode();
+ }
+ if (getOperationsCount() > 0) {
+ hash = (37 * hash) + OPERATIONS_FIELD_NUMBER;
+ hash = (53 * hash) + getOperationsList().hashCode();
+ }
+ if (hasPostinstallOptional()) {
+ hash = (37 * hash) + POSTINSTALL_OPTIONAL_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
+ getPostinstallOptional());
+ }
+ if (hasHashTreeDataExtent()) {
+ hash = (37 * hash) + HASH_TREE_DATA_EXTENT_FIELD_NUMBER;
+ hash = (53 * hash) + getHashTreeDataExtent().hashCode();
+ }
+ if (hasHashTreeExtent()) {
+ hash = (37 * hash) + HASH_TREE_EXTENT_FIELD_NUMBER;
+ hash = (53 * hash) + getHashTreeExtent().hashCode();
+ }
+ if (hasHashTreeAlgorithm()) {
+ hash = (37 * hash) + HASH_TREE_ALGORITHM_FIELD_NUMBER;
+ hash = (53 * hash) + getHashTreeAlgorithm().hashCode();
+ }
+ if (hasHashTreeSalt()) {
+ hash = (37 * hash) + HASH_TREE_SALT_FIELD_NUMBER;
+ hash = (53 * hash) + getHashTreeSalt().hashCode();
+ }
+ if (hasFecDataExtent()) {
+ hash = (37 * hash) + FEC_DATA_EXTENT_FIELD_NUMBER;
+ hash = (53 * hash) + getFecDataExtent().hashCode();
+ }
+ if (hasFecExtent()) {
+ hash = (37 * hash) + FEC_EXTENT_FIELD_NUMBER;
+ hash = (53 * hash) + getFecExtent().hashCode();
+ }
+ if (hasFecRoots()) {
+ hash = (37 * hash) + FEC_ROOTS_FIELD_NUMBER;
+ hash = (53 * hash) + getFecRoots();
+ }
+ hash = (29 * hash) + unknownFields.hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static chromeos_update_engine.UpdateMetadata.PartitionUpdate parseFrom(
+ java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionUpdate parseFrom(
+ java.nio.ByteBuffer data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionUpdate parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionUpdate parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionUpdate parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionUpdate parseFrom(
+ byte[] data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionUpdate parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionUpdate parseFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionUpdate parseDelimitedFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionUpdate parseDelimitedFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionUpdate parseFrom(
+ com.google.protobuf.CodedInputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.PartitionUpdate parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() { return newBuilder(); }
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+ public static Builder newBuilder(chromeos_update_engine.UpdateMetadata.PartitionUpdate prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE
+ ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(
+ com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+ /**
+ * + * Describes the update to apply to a single partition. + *+ * + * Protobuf type {@code chromeos_update_engine.PartitionUpdate} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder
+ * A platform-specific name to identify the partition set being updated. For + * example, in Chrome OS this could be "ROOT" or "KERNEL". + *+ * + *
required string partition_name = 1;
+ * @return Whether the partitionName field is set.
+ */
+ public boolean hasPartitionName() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * + * A platform-specific name to identify the partition set being updated. For + * example, in Chrome OS this could be "ROOT" or "KERNEL". + *+ * + *
required string partition_name = 1;
+ * @return The partitionName.
+ */
+ public java.lang.String getPartitionName() {
+ java.lang.Object ref = partitionName_;
+ 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()) {
+ partitionName_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * + * A platform-specific name to identify the partition set being updated. For + * example, in Chrome OS this could be "ROOT" or "KERNEL". + *+ * + *
required string partition_name = 1;
+ * @return The bytes for partitionName.
+ */
+ public com.google.protobuf.ByteString
+ getPartitionNameBytes() {
+ java.lang.Object ref = partitionName_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ partitionName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * + * A platform-specific name to identify the partition set being updated. For + * example, in Chrome OS this could be "ROOT" or "KERNEL". + *+ * + *
required string partition_name = 1;
+ * @param value The partitionName to set.
+ * @return This builder for chaining.
+ */
+ public Builder setPartitionName(
+ java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000001;
+ partitionName_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * A platform-specific name to identify the partition set being updated. For + * example, in Chrome OS this could be "ROOT" or "KERNEL". + *+ * + *
required string partition_name = 1;
+ * @return This builder for chaining.
+ */
+ public Builder clearPartitionName() {
+ bitField0_ = (bitField0_ & ~0x00000001);
+ partitionName_ = getDefaultInstance().getPartitionName();
+ onChanged();
+ return this;
+ }
+ /**
+ * + * A platform-specific name to identify the partition set being updated. For + * example, in Chrome OS this could be "ROOT" or "KERNEL". + *+ * + *
required string partition_name = 1;
+ * @param value The bytes for partitionName to set.
+ * @return This builder for chaining.
+ */
+ public Builder setPartitionNameBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000001;
+ partitionName_ = value;
+ onChanged();
+ return this;
+ }
+
+ private boolean runPostinstall_ ;
+ /**
+ * + * Whether this partition carries a filesystem with post-install program that + * must be run to finalize the update process. See also |postinstall_path| and + * |filesystem_type|. + *+ * + *
optional bool run_postinstall = 2;
+ * @return Whether the runPostinstall field is set.
+ */
+ @java.lang.Override
+ public boolean hasRunPostinstall() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * + * Whether this partition carries a filesystem with post-install program that + * must be run to finalize the update process. See also |postinstall_path| and + * |filesystem_type|. + *+ * + *
optional bool run_postinstall = 2;
+ * @return The runPostinstall.
+ */
+ @java.lang.Override
+ public boolean getRunPostinstall() {
+ return runPostinstall_;
+ }
+ /**
+ * + * Whether this partition carries a filesystem with post-install program that + * must be run to finalize the update process. See also |postinstall_path| and + * |filesystem_type|. + *+ * + *
optional bool run_postinstall = 2;
+ * @param value The runPostinstall to set.
+ * @return This builder for chaining.
+ */
+ public Builder setRunPostinstall(boolean value) {
+ bitField0_ |= 0x00000002;
+ runPostinstall_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * Whether this partition carries a filesystem with post-install program that + * must be run to finalize the update process. See also |postinstall_path| and + * |filesystem_type|. + *+ * + *
optional bool run_postinstall = 2;
+ * @return This builder for chaining.
+ */
+ public Builder clearRunPostinstall() {
+ bitField0_ = (bitField0_ & ~0x00000002);
+ runPostinstall_ = false;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object postinstallPath_ = "";
+ /**
+ * + * The path of the executable program to run during the post-install step, + * relative to the root of this filesystem. If not set, the default "postinst" + * will be used. This setting is only used when |run_postinstall| is set and + * true. + *+ * + *
optional string postinstall_path = 3;
+ * @return Whether the postinstallPath field is set.
+ */
+ public boolean hasPostinstallPath() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ * + * The path of the executable program to run during the post-install step, + * relative to the root of this filesystem. If not set, the default "postinst" + * will be used. This setting is only used when |run_postinstall| is set and + * true. + *+ * + *
optional string postinstall_path = 3;
+ * @return The postinstallPath.
+ */
+ public java.lang.String getPostinstallPath() {
+ java.lang.Object ref = postinstallPath_;
+ 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()) {
+ postinstallPath_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * + * The path of the executable program to run during the post-install step, + * relative to the root of this filesystem. If not set, the default "postinst" + * will be used. This setting is only used when |run_postinstall| is set and + * true. + *+ * + *
optional string postinstall_path = 3;
+ * @return The bytes for postinstallPath.
+ */
+ public com.google.protobuf.ByteString
+ getPostinstallPathBytes() {
+ java.lang.Object ref = postinstallPath_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ postinstallPath_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * + * The path of the executable program to run during the post-install step, + * relative to the root of this filesystem. If not set, the default "postinst" + * will be used. This setting is only used when |run_postinstall| is set and + * true. + *+ * + *
optional string postinstall_path = 3;
+ * @param value The postinstallPath to set.
+ * @return This builder for chaining.
+ */
+ public Builder setPostinstallPath(
+ java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000004;
+ postinstallPath_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * The path of the executable program to run during the post-install step, + * relative to the root of this filesystem. If not set, the default "postinst" + * will be used. This setting is only used when |run_postinstall| is set and + * true. + *+ * + *
optional string postinstall_path = 3;
+ * @return This builder for chaining.
+ */
+ public Builder clearPostinstallPath() {
+ bitField0_ = (bitField0_ & ~0x00000004);
+ postinstallPath_ = getDefaultInstance().getPostinstallPath();
+ onChanged();
+ return this;
+ }
+ /**
+ * + * The path of the executable program to run during the post-install step, + * relative to the root of this filesystem. If not set, the default "postinst" + * will be used. This setting is only used when |run_postinstall| is set and + * true. + *+ * + *
optional string postinstall_path = 3;
+ * @param value The bytes for postinstallPath to set.
+ * @return This builder for chaining.
+ */
+ public Builder setPostinstallPathBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000004;
+ postinstallPath_ = value;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object filesystemType_ = "";
+ /**
+ * + * The filesystem type as passed to the mount(2) syscall when mounting the new + * filesystem to run the post-install program. If not set, a fixed list of + * filesystems will be attempted. This setting is only used if + * |run_postinstall| is set and true. + *+ * + *
optional string filesystem_type = 4;
+ * @return Whether the filesystemType field is set.
+ */
+ public boolean hasFilesystemType() {
+ return ((bitField0_ & 0x00000008) != 0);
+ }
+ /**
+ * + * The filesystem type as passed to the mount(2) syscall when mounting the new + * filesystem to run the post-install program. If not set, a fixed list of + * filesystems will be attempted. This setting is only used if + * |run_postinstall| is set and true. + *+ * + *
optional string filesystem_type = 4;
+ * @return The filesystemType.
+ */
+ public java.lang.String getFilesystemType() {
+ java.lang.Object ref = filesystemType_;
+ 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()) {
+ filesystemType_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * + * The filesystem type as passed to the mount(2) syscall when mounting the new + * filesystem to run the post-install program. If not set, a fixed list of + * filesystems will be attempted. This setting is only used if + * |run_postinstall| is set and true. + *+ * + *
optional string filesystem_type = 4;
+ * @return The bytes for filesystemType.
+ */
+ public com.google.protobuf.ByteString
+ getFilesystemTypeBytes() {
+ java.lang.Object ref = filesystemType_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ filesystemType_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * + * The filesystem type as passed to the mount(2) syscall when mounting the new + * filesystem to run the post-install program. If not set, a fixed list of + * filesystems will be attempted. This setting is only used if + * |run_postinstall| is set and true. + *+ * + *
optional string filesystem_type = 4;
+ * @param value The filesystemType to set.
+ * @return This builder for chaining.
+ */
+ public Builder setFilesystemType(
+ java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000008;
+ filesystemType_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * The filesystem type as passed to the mount(2) syscall when mounting the new + * filesystem to run the post-install program. If not set, a fixed list of + * filesystems will be attempted. This setting is only used if + * |run_postinstall| is set and true. + *+ * + *
optional string filesystem_type = 4;
+ * @return This builder for chaining.
+ */
+ public Builder clearFilesystemType() {
+ bitField0_ = (bitField0_ & ~0x00000008);
+ filesystemType_ = getDefaultInstance().getFilesystemType();
+ onChanged();
+ return this;
+ }
+ /**
+ * + * The filesystem type as passed to the mount(2) syscall when mounting the new + * filesystem to run the post-install program. If not set, a fixed list of + * filesystems will be attempted. This setting is only used if + * |run_postinstall| is set and true. + *+ * + *
optional string filesystem_type = 4;
+ * @param value The bytes for filesystemType to set.
+ * @return This builder for chaining.
+ */
+ public Builder setFilesystemTypeBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000008;
+ filesystemType_ = value;
+ onChanged();
+ return this;
+ }
+
+ private java.util.List+ * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ public java.util.List+ * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ public int getNewPartitionSignatureCount() {
+ if (newPartitionSignatureBuilder_ == null) {
+ return newPartitionSignature_.size();
+ } else {
+ return newPartitionSignatureBuilder_.getCount();
+ }
+ }
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ public chromeos_update_engine.UpdateMetadata.Signatures.Signature getNewPartitionSignature(int index) {
+ if (newPartitionSignatureBuilder_ == null) {
+ return newPartitionSignature_.get(index);
+ } else {
+ return newPartitionSignatureBuilder_.getMessage(index);
+ }
+ }
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ public Builder setNewPartitionSignature(
+ int index, chromeos_update_engine.UpdateMetadata.Signatures.Signature value) {
+ if (newPartitionSignatureBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureNewPartitionSignatureIsMutable();
+ newPartitionSignature_.set(index, value);
+ onChanged();
+ } else {
+ newPartitionSignatureBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ public Builder setNewPartitionSignature(
+ int index, chromeos_update_engine.UpdateMetadata.Signatures.Signature.Builder builderForValue) {
+ if (newPartitionSignatureBuilder_ == null) {
+ ensureNewPartitionSignatureIsMutable();
+ newPartitionSignature_.set(index, builderForValue.build());
+ onChanged();
+ } else {
+ newPartitionSignatureBuilder_.setMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ public Builder addNewPartitionSignature(chromeos_update_engine.UpdateMetadata.Signatures.Signature value) {
+ if (newPartitionSignatureBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureNewPartitionSignatureIsMutable();
+ newPartitionSignature_.add(value);
+ onChanged();
+ } else {
+ newPartitionSignatureBuilder_.addMessage(value);
+ }
+ return this;
+ }
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ public Builder addNewPartitionSignature(
+ int index, chromeos_update_engine.UpdateMetadata.Signatures.Signature value) {
+ if (newPartitionSignatureBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureNewPartitionSignatureIsMutable();
+ newPartitionSignature_.add(index, value);
+ onChanged();
+ } else {
+ newPartitionSignatureBuilder_.addMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ public Builder addNewPartitionSignature(
+ chromeos_update_engine.UpdateMetadata.Signatures.Signature.Builder builderForValue) {
+ if (newPartitionSignatureBuilder_ == null) {
+ ensureNewPartitionSignatureIsMutable();
+ newPartitionSignature_.add(builderForValue.build());
+ onChanged();
+ } else {
+ newPartitionSignatureBuilder_.addMessage(builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ public Builder addNewPartitionSignature(
+ int index, chromeos_update_engine.UpdateMetadata.Signatures.Signature.Builder builderForValue) {
+ if (newPartitionSignatureBuilder_ == null) {
+ ensureNewPartitionSignatureIsMutable();
+ newPartitionSignature_.add(index, builderForValue.build());
+ onChanged();
+ } else {
+ newPartitionSignatureBuilder_.addMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ public Builder addAllNewPartitionSignature(
+ java.lang.Iterable extends chromeos_update_engine.UpdateMetadata.Signatures.Signature> values) {
+ if (newPartitionSignatureBuilder_ == null) {
+ ensureNewPartitionSignatureIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(
+ values, newPartitionSignature_);
+ onChanged();
+ } else {
+ newPartitionSignatureBuilder_.addAllMessages(values);
+ }
+ return this;
+ }
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ public Builder clearNewPartitionSignature() {
+ if (newPartitionSignatureBuilder_ == null) {
+ newPartitionSignature_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000010);
+ onChanged();
+ } else {
+ newPartitionSignatureBuilder_.clear();
+ }
+ return this;
+ }
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ public Builder removeNewPartitionSignature(int index) {
+ if (newPartitionSignatureBuilder_ == null) {
+ ensureNewPartitionSignatureIsMutable();
+ newPartitionSignature_.remove(index);
+ onChanged();
+ } else {
+ newPartitionSignatureBuilder_.remove(index);
+ }
+ return this;
+ }
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ public chromeos_update_engine.UpdateMetadata.Signatures.Signature.Builder getNewPartitionSignatureBuilder(
+ int index) {
+ return getNewPartitionSignatureFieldBuilder().getBuilder(index);
+ }
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ public chromeos_update_engine.UpdateMetadata.Signatures.SignatureOrBuilder getNewPartitionSignatureOrBuilder(
+ int index) {
+ if (newPartitionSignatureBuilder_ == null) {
+ return newPartitionSignature_.get(index); } else {
+ return newPartitionSignatureBuilder_.getMessageOrBuilder(index);
+ }
+ }
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ public java.util.List extends chromeos_update_engine.UpdateMetadata.Signatures.SignatureOrBuilder>
+ getNewPartitionSignatureOrBuilderList() {
+ if (newPartitionSignatureBuilder_ != null) {
+ return newPartitionSignatureBuilder_.getMessageOrBuilderList();
+ } else {
+ return java.util.Collections.unmodifiableList(newPartitionSignature_);
+ }
+ }
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ public chromeos_update_engine.UpdateMetadata.Signatures.Signature.Builder addNewPartitionSignatureBuilder() {
+ return getNewPartitionSignatureFieldBuilder().addBuilder(
+ chromeos_update_engine.UpdateMetadata.Signatures.Signature.getDefaultInstance());
+ }
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ public chromeos_update_engine.UpdateMetadata.Signatures.Signature.Builder addNewPartitionSignatureBuilder(
+ int index) {
+ return getNewPartitionSignatureFieldBuilder().addBuilder(
+ index, chromeos_update_engine.UpdateMetadata.Signatures.Signature.getDefaultInstance());
+ }
+ /**
+ * + * If present, a list of signatures of the new_partition_info.hash signed with + * different keys. If the update_engine daemon requires vendor-signed images + * and has its public key installed, one of the signatures should be valid + * for /postinstall to run. + *+ * + *
repeated .chromeos_update_engine.Signatures.Signature new_partition_signature = 5;
+ */
+ public java.util.Listoptional .chromeos_update_engine.PartitionInfo old_partition_info = 6;
+ * @return Whether the oldPartitionInfo field is set.
+ */
+ public boolean hasOldPartitionInfo() {
+ return ((bitField0_ & 0x00000020) != 0);
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_partition_info = 6;
+ * @return The oldPartitionInfo.
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionInfo getOldPartitionInfo() {
+ if (oldPartitionInfoBuilder_ == null) {
+ return oldPartitionInfo_ == null ? chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : oldPartitionInfo_;
+ } else {
+ return oldPartitionInfoBuilder_.getMessage();
+ }
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_partition_info = 6;
+ */
+ public Builder setOldPartitionInfo(chromeos_update_engine.UpdateMetadata.PartitionInfo value) {
+ if (oldPartitionInfoBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ oldPartitionInfo_ = value;
+ onChanged();
+ } else {
+ oldPartitionInfoBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000020;
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_partition_info = 6;
+ */
+ public Builder setOldPartitionInfo(
+ chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder builderForValue) {
+ if (oldPartitionInfoBuilder_ == null) {
+ oldPartitionInfo_ = builderForValue.build();
+ onChanged();
+ } else {
+ oldPartitionInfoBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000020;
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_partition_info = 6;
+ */
+ public Builder mergeOldPartitionInfo(chromeos_update_engine.UpdateMetadata.PartitionInfo value) {
+ if (oldPartitionInfoBuilder_ == null) {
+ if (((bitField0_ & 0x00000020) != 0) &&
+ oldPartitionInfo_ != null &&
+ oldPartitionInfo_ != chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance()) {
+ oldPartitionInfo_ =
+ chromeos_update_engine.UpdateMetadata.PartitionInfo.newBuilder(oldPartitionInfo_).mergeFrom(value).buildPartial();
+ } else {
+ oldPartitionInfo_ = value;
+ }
+ onChanged();
+ } else {
+ oldPartitionInfoBuilder_.mergeFrom(value);
+ }
+ bitField0_ |= 0x00000020;
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_partition_info = 6;
+ */
+ public Builder clearOldPartitionInfo() {
+ if (oldPartitionInfoBuilder_ == null) {
+ oldPartitionInfo_ = null;
+ onChanged();
+ } else {
+ oldPartitionInfoBuilder_.clear();
+ }
+ bitField0_ = (bitField0_ & ~0x00000020);
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_partition_info = 6;
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder getOldPartitionInfoBuilder() {
+ bitField0_ |= 0x00000020;
+ onChanged();
+ return getOldPartitionInfoFieldBuilder().getBuilder();
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_partition_info = 6;
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder getOldPartitionInfoOrBuilder() {
+ if (oldPartitionInfoBuilder_ != null) {
+ return oldPartitionInfoBuilder_.getMessageOrBuilder();
+ } else {
+ return oldPartitionInfo_ == null ?
+ chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : oldPartitionInfo_;
+ }
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_partition_info = 6;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.PartitionInfo, chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder, chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder>
+ getOldPartitionInfoFieldBuilder() {
+ if (oldPartitionInfoBuilder_ == null) {
+ oldPartitionInfoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.PartitionInfo, chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder, chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder>(
+ getOldPartitionInfo(),
+ getParentForChildren(),
+ isClean());
+ oldPartitionInfo_ = null;
+ }
+ return oldPartitionInfoBuilder_;
+ }
+
+ private chromeos_update_engine.UpdateMetadata.PartitionInfo newPartitionInfo_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.PartitionInfo, chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder, chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder> newPartitionInfoBuilder_;
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_partition_info = 7;
+ * @return Whether the newPartitionInfo field is set.
+ */
+ public boolean hasNewPartitionInfo() {
+ return ((bitField0_ & 0x00000040) != 0);
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_partition_info = 7;
+ * @return The newPartitionInfo.
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionInfo getNewPartitionInfo() {
+ if (newPartitionInfoBuilder_ == null) {
+ return newPartitionInfo_ == null ? chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : newPartitionInfo_;
+ } else {
+ return newPartitionInfoBuilder_.getMessage();
+ }
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_partition_info = 7;
+ */
+ public Builder setNewPartitionInfo(chromeos_update_engine.UpdateMetadata.PartitionInfo value) {
+ if (newPartitionInfoBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ newPartitionInfo_ = value;
+ onChanged();
+ } else {
+ newPartitionInfoBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000040;
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_partition_info = 7;
+ */
+ public Builder setNewPartitionInfo(
+ chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder builderForValue) {
+ if (newPartitionInfoBuilder_ == null) {
+ newPartitionInfo_ = builderForValue.build();
+ onChanged();
+ } else {
+ newPartitionInfoBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000040;
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_partition_info = 7;
+ */
+ public Builder mergeNewPartitionInfo(chromeos_update_engine.UpdateMetadata.PartitionInfo value) {
+ if (newPartitionInfoBuilder_ == null) {
+ if (((bitField0_ & 0x00000040) != 0) &&
+ newPartitionInfo_ != null &&
+ newPartitionInfo_ != chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance()) {
+ newPartitionInfo_ =
+ chromeos_update_engine.UpdateMetadata.PartitionInfo.newBuilder(newPartitionInfo_).mergeFrom(value).buildPartial();
+ } else {
+ newPartitionInfo_ = value;
+ }
+ onChanged();
+ } else {
+ newPartitionInfoBuilder_.mergeFrom(value);
+ }
+ bitField0_ |= 0x00000040;
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_partition_info = 7;
+ */
+ public Builder clearNewPartitionInfo() {
+ if (newPartitionInfoBuilder_ == null) {
+ newPartitionInfo_ = null;
+ onChanged();
+ } else {
+ newPartitionInfoBuilder_.clear();
+ }
+ bitField0_ = (bitField0_ & ~0x00000040);
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_partition_info = 7;
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder getNewPartitionInfoBuilder() {
+ bitField0_ |= 0x00000040;
+ onChanged();
+ return getNewPartitionInfoFieldBuilder().getBuilder();
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_partition_info = 7;
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder getNewPartitionInfoOrBuilder() {
+ if (newPartitionInfoBuilder_ != null) {
+ return newPartitionInfoBuilder_.getMessageOrBuilder();
+ } else {
+ return newPartitionInfo_ == null ?
+ chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : newPartitionInfo_;
+ }
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_partition_info = 7;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.PartitionInfo, chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder, chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder>
+ getNewPartitionInfoFieldBuilder() {
+ if (newPartitionInfoBuilder_ == null) {
+ newPartitionInfoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.PartitionInfo, chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder, chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder>(
+ getNewPartitionInfo(),
+ getParentForChildren(),
+ isClean());
+ newPartitionInfo_ = null;
+ }
+ return newPartitionInfoBuilder_;
+ }
+
+ private java.util.List+ * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ public java.util.List+ * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ public int getOperationsCount() {
+ if (operationsBuilder_ == null) {
+ return operations_.size();
+ } else {
+ return operationsBuilder_.getCount();
+ }
+ }
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ public chromeos_update_engine.UpdateMetadata.InstallOperation getOperations(int index) {
+ if (operationsBuilder_ == null) {
+ return operations_.get(index);
+ } else {
+ return operationsBuilder_.getMessage(index);
+ }
+ }
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ public Builder setOperations(
+ int index, chromeos_update_engine.UpdateMetadata.InstallOperation value) {
+ if (operationsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureOperationsIsMutable();
+ operations_.set(index, value);
+ onChanged();
+ } else {
+ operationsBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ public Builder setOperations(
+ int index, chromeos_update_engine.UpdateMetadata.InstallOperation.Builder builderForValue) {
+ if (operationsBuilder_ == null) {
+ ensureOperationsIsMutable();
+ operations_.set(index, builderForValue.build());
+ onChanged();
+ } else {
+ operationsBuilder_.setMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ public Builder addOperations(chromeos_update_engine.UpdateMetadata.InstallOperation value) {
+ if (operationsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureOperationsIsMutable();
+ operations_.add(value);
+ onChanged();
+ } else {
+ operationsBuilder_.addMessage(value);
+ }
+ return this;
+ }
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ public Builder addOperations(
+ int index, chromeos_update_engine.UpdateMetadata.InstallOperation value) {
+ if (operationsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureOperationsIsMutable();
+ operations_.add(index, value);
+ onChanged();
+ } else {
+ operationsBuilder_.addMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ public Builder addOperations(
+ chromeos_update_engine.UpdateMetadata.InstallOperation.Builder builderForValue) {
+ if (operationsBuilder_ == null) {
+ ensureOperationsIsMutable();
+ operations_.add(builderForValue.build());
+ onChanged();
+ } else {
+ operationsBuilder_.addMessage(builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ public Builder addOperations(
+ int index, chromeos_update_engine.UpdateMetadata.InstallOperation.Builder builderForValue) {
+ if (operationsBuilder_ == null) {
+ ensureOperationsIsMutable();
+ operations_.add(index, builderForValue.build());
+ onChanged();
+ } else {
+ operationsBuilder_.addMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ public Builder addAllOperations(
+ java.lang.Iterable extends chromeos_update_engine.UpdateMetadata.InstallOperation> values) {
+ if (operationsBuilder_ == null) {
+ ensureOperationsIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(
+ values, operations_);
+ onChanged();
+ } else {
+ operationsBuilder_.addAllMessages(values);
+ }
+ return this;
+ }
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ public Builder clearOperations() {
+ if (operationsBuilder_ == null) {
+ operations_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000080);
+ onChanged();
+ } else {
+ operationsBuilder_.clear();
+ }
+ return this;
+ }
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ public Builder removeOperations(int index) {
+ if (operationsBuilder_ == null) {
+ ensureOperationsIsMutable();
+ operations_.remove(index);
+ onChanged();
+ } else {
+ operationsBuilder_.remove(index);
+ }
+ return this;
+ }
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ public chromeos_update_engine.UpdateMetadata.InstallOperation.Builder getOperationsBuilder(
+ int index) {
+ return getOperationsFieldBuilder().getBuilder(index);
+ }
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ public chromeos_update_engine.UpdateMetadata.InstallOperationOrBuilder getOperationsOrBuilder(
+ int index) {
+ if (operationsBuilder_ == null) {
+ return operations_.get(index); } else {
+ return operationsBuilder_.getMessageOrBuilder(index);
+ }
+ }
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ public java.util.List extends chromeos_update_engine.UpdateMetadata.InstallOperationOrBuilder>
+ getOperationsOrBuilderList() {
+ if (operationsBuilder_ != null) {
+ return operationsBuilder_.getMessageOrBuilderList();
+ } else {
+ return java.util.Collections.unmodifiableList(operations_);
+ }
+ }
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ public chromeos_update_engine.UpdateMetadata.InstallOperation.Builder addOperationsBuilder() {
+ return getOperationsFieldBuilder().addBuilder(
+ chromeos_update_engine.UpdateMetadata.InstallOperation.getDefaultInstance());
+ }
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ public chromeos_update_engine.UpdateMetadata.InstallOperation.Builder addOperationsBuilder(
+ int index) {
+ return getOperationsFieldBuilder().addBuilder(
+ index, chromeos_update_engine.UpdateMetadata.InstallOperation.getDefaultInstance());
+ }
+ /**
+ * + * The list of operations to be performed to apply this PartitionUpdate. The + * associated operation blobs (in operations[i].data_offset, data_length) + * should be stored contiguously and in the same order. + *+ * + *
repeated .chromeos_update_engine.InstallOperation operations = 8;
+ */
+ public java.util.List+ * Whether a failure in the postinstall step for this partition should be + * ignored. + *+ * + *
optional bool postinstall_optional = 9;
+ * @return Whether the postinstallOptional field is set.
+ */
+ @java.lang.Override
+ public boolean hasPostinstallOptional() {
+ return ((bitField0_ & 0x00000100) != 0);
+ }
+ /**
+ * + * Whether a failure in the postinstall step for this partition should be + * ignored. + *+ * + *
optional bool postinstall_optional = 9;
+ * @return The postinstallOptional.
+ */
+ @java.lang.Override
+ public boolean getPostinstallOptional() {
+ return postinstallOptional_;
+ }
+ /**
+ * + * Whether a failure in the postinstall step for this partition should be + * ignored. + *+ * + *
optional bool postinstall_optional = 9;
+ * @param value The postinstallOptional to set.
+ * @return This builder for chaining.
+ */
+ public Builder setPostinstallOptional(boolean value) {
+ bitField0_ |= 0x00000100;
+ postinstallOptional_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * Whether a failure in the postinstall step for this partition should be + * ignored. + *+ * + *
optional bool postinstall_optional = 9;
+ * @return This builder for chaining.
+ */
+ public Builder clearPostinstallOptional() {
+ bitField0_ = (bitField0_ & ~0x00000100);
+ postinstallOptional_ = false;
+ onChanged();
+ return this;
+ }
+
+ private chromeos_update_engine.UpdateMetadata.Extent hashTreeDataExtent_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.Extent, chromeos_update_engine.UpdateMetadata.Extent.Builder, chromeos_update_engine.UpdateMetadata.ExtentOrBuilder> hashTreeDataExtentBuilder_;
+ /**
+ * + * The extent for data covered by verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_data_extent = 10;
+ * @return Whether the hashTreeDataExtent field is set.
+ */
+ public boolean hasHashTreeDataExtent() {
+ return ((bitField0_ & 0x00000200) != 0);
+ }
+ /**
+ * + * The extent for data covered by verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_data_extent = 10;
+ * @return The hashTreeDataExtent.
+ */
+ public chromeos_update_engine.UpdateMetadata.Extent getHashTreeDataExtent() {
+ if (hashTreeDataExtentBuilder_ == null) {
+ return hashTreeDataExtent_ == null ? chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance() : hashTreeDataExtent_;
+ } else {
+ return hashTreeDataExtentBuilder_.getMessage();
+ }
+ }
+ /**
+ * + * The extent for data covered by verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_data_extent = 10;
+ */
+ public Builder setHashTreeDataExtent(chromeos_update_engine.UpdateMetadata.Extent value) {
+ if (hashTreeDataExtentBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ hashTreeDataExtent_ = value;
+ onChanged();
+ } else {
+ hashTreeDataExtentBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000200;
+ return this;
+ }
+ /**
+ * + * The extent for data covered by verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_data_extent = 10;
+ */
+ public Builder setHashTreeDataExtent(
+ chromeos_update_engine.UpdateMetadata.Extent.Builder builderForValue) {
+ if (hashTreeDataExtentBuilder_ == null) {
+ hashTreeDataExtent_ = builderForValue.build();
+ onChanged();
+ } else {
+ hashTreeDataExtentBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000200;
+ return this;
+ }
+ /**
+ * + * The extent for data covered by verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_data_extent = 10;
+ */
+ public Builder mergeHashTreeDataExtent(chromeos_update_engine.UpdateMetadata.Extent value) {
+ if (hashTreeDataExtentBuilder_ == null) {
+ if (((bitField0_ & 0x00000200) != 0) &&
+ hashTreeDataExtent_ != null &&
+ hashTreeDataExtent_ != chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance()) {
+ hashTreeDataExtent_ =
+ chromeos_update_engine.UpdateMetadata.Extent.newBuilder(hashTreeDataExtent_).mergeFrom(value).buildPartial();
+ } else {
+ hashTreeDataExtent_ = value;
+ }
+ onChanged();
+ } else {
+ hashTreeDataExtentBuilder_.mergeFrom(value);
+ }
+ bitField0_ |= 0x00000200;
+ return this;
+ }
+ /**
+ * + * The extent for data covered by verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_data_extent = 10;
+ */
+ public Builder clearHashTreeDataExtent() {
+ if (hashTreeDataExtentBuilder_ == null) {
+ hashTreeDataExtent_ = null;
+ onChanged();
+ } else {
+ hashTreeDataExtentBuilder_.clear();
+ }
+ bitField0_ = (bitField0_ & ~0x00000200);
+ return this;
+ }
+ /**
+ * + * The extent for data covered by verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_data_extent = 10;
+ */
+ public chromeos_update_engine.UpdateMetadata.Extent.Builder getHashTreeDataExtentBuilder() {
+ bitField0_ |= 0x00000200;
+ onChanged();
+ return getHashTreeDataExtentFieldBuilder().getBuilder();
+ }
+ /**
+ * + * The extent for data covered by verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_data_extent = 10;
+ */
+ public chromeos_update_engine.UpdateMetadata.ExtentOrBuilder getHashTreeDataExtentOrBuilder() {
+ if (hashTreeDataExtentBuilder_ != null) {
+ return hashTreeDataExtentBuilder_.getMessageOrBuilder();
+ } else {
+ return hashTreeDataExtent_ == null ?
+ chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance() : hashTreeDataExtent_;
+ }
+ }
+ /**
+ * + * The extent for data covered by verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_data_extent = 10;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.Extent, chromeos_update_engine.UpdateMetadata.Extent.Builder, chromeos_update_engine.UpdateMetadata.ExtentOrBuilder>
+ getHashTreeDataExtentFieldBuilder() {
+ if (hashTreeDataExtentBuilder_ == null) {
+ hashTreeDataExtentBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.Extent, chromeos_update_engine.UpdateMetadata.Extent.Builder, chromeos_update_engine.UpdateMetadata.ExtentOrBuilder>(
+ getHashTreeDataExtent(),
+ getParentForChildren(),
+ isClean());
+ hashTreeDataExtent_ = null;
+ }
+ return hashTreeDataExtentBuilder_;
+ }
+
+ private chromeos_update_engine.UpdateMetadata.Extent hashTreeExtent_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.Extent, chromeos_update_engine.UpdateMetadata.Extent.Builder, chromeos_update_engine.UpdateMetadata.ExtentOrBuilder> hashTreeExtentBuilder_;
+ /**
+ * + * The extent to store verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_extent = 11;
+ * @return Whether the hashTreeExtent field is set.
+ */
+ public boolean hasHashTreeExtent() {
+ return ((bitField0_ & 0x00000400) != 0);
+ }
+ /**
+ * + * The extent to store verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_extent = 11;
+ * @return The hashTreeExtent.
+ */
+ public chromeos_update_engine.UpdateMetadata.Extent getHashTreeExtent() {
+ if (hashTreeExtentBuilder_ == null) {
+ return hashTreeExtent_ == null ? chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance() : hashTreeExtent_;
+ } else {
+ return hashTreeExtentBuilder_.getMessage();
+ }
+ }
+ /**
+ * + * The extent to store verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_extent = 11;
+ */
+ public Builder setHashTreeExtent(chromeos_update_engine.UpdateMetadata.Extent value) {
+ if (hashTreeExtentBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ hashTreeExtent_ = value;
+ onChanged();
+ } else {
+ hashTreeExtentBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000400;
+ return this;
+ }
+ /**
+ * + * The extent to store verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_extent = 11;
+ */
+ public Builder setHashTreeExtent(
+ chromeos_update_engine.UpdateMetadata.Extent.Builder builderForValue) {
+ if (hashTreeExtentBuilder_ == null) {
+ hashTreeExtent_ = builderForValue.build();
+ onChanged();
+ } else {
+ hashTreeExtentBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000400;
+ return this;
+ }
+ /**
+ * + * The extent to store verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_extent = 11;
+ */
+ public Builder mergeHashTreeExtent(chromeos_update_engine.UpdateMetadata.Extent value) {
+ if (hashTreeExtentBuilder_ == null) {
+ if (((bitField0_ & 0x00000400) != 0) &&
+ hashTreeExtent_ != null &&
+ hashTreeExtent_ != chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance()) {
+ hashTreeExtent_ =
+ chromeos_update_engine.UpdateMetadata.Extent.newBuilder(hashTreeExtent_).mergeFrom(value).buildPartial();
+ } else {
+ hashTreeExtent_ = value;
+ }
+ onChanged();
+ } else {
+ hashTreeExtentBuilder_.mergeFrom(value);
+ }
+ bitField0_ |= 0x00000400;
+ return this;
+ }
+ /**
+ * + * The extent to store verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_extent = 11;
+ */
+ public Builder clearHashTreeExtent() {
+ if (hashTreeExtentBuilder_ == null) {
+ hashTreeExtent_ = null;
+ onChanged();
+ } else {
+ hashTreeExtentBuilder_.clear();
+ }
+ bitField0_ = (bitField0_ & ~0x00000400);
+ return this;
+ }
+ /**
+ * + * The extent to store verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_extent = 11;
+ */
+ public chromeos_update_engine.UpdateMetadata.Extent.Builder getHashTreeExtentBuilder() {
+ bitField0_ |= 0x00000400;
+ onChanged();
+ return getHashTreeExtentFieldBuilder().getBuilder();
+ }
+ /**
+ * + * The extent to store verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_extent = 11;
+ */
+ public chromeos_update_engine.UpdateMetadata.ExtentOrBuilder getHashTreeExtentOrBuilder() {
+ if (hashTreeExtentBuilder_ != null) {
+ return hashTreeExtentBuilder_.getMessageOrBuilder();
+ } else {
+ return hashTreeExtent_ == null ?
+ chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance() : hashTreeExtent_;
+ }
+ }
+ /**
+ * + * The extent to store verity hash tree. + *+ * + *
optional .chromeos_update_engine.Extent hash_tree_extent = 11;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.Extent, chromeos_update_engine.UpdateMetadata.Extent.Builder, chromeos_update_engine.UpdateMetadata.ExtentOrBuilder>
+ getHashTreeExtentFieldBuilder() {
+ if (hashTreeExtentBuilder_ == null) {
+ hashTreeExtentBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.Extent, chromeos_update_engine.UpdateMetadata.Extent.Builder, chromeos_update_engine.UpdateMetadata.ExtentOrBuilder>(
+ getHashTreeExtent(),
+ getParentForChildren(),
+ isClean());
+ hashTreeExtent_ = null;
+ }
+ return hashTreeExtentBuilder_;
+ }
+
+ private java.lang.Object hashTreeAlgorithm_ = "";
+ /**
+ * + * The hash algorithm used in verity hash tree. + *+ * + *
optional string hash_tree_algorithm = 12;
+ * @return Whether the hashTreeAlgorithm field is set.
+ */
+ public boolean hasHashTreeAlgorithm() {
+ return ((bitField0_ & 0x00000800) != 0);
+ }
+ /**
+ * + * The hash algorithm used in verity hash tree. + *+ * + *
optional string hash_tree_algorithm = 12;
+ * @return The hashTreeAlgorithm.
+ */
+ public java.lang.String getHashTreeAlgorithm() {
+ java.lang.Object ref = hashTreeAlgorithm_;
+ 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()) {
+ hashTreeAlgorithm_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * + * The hash algorithm used in verity hash tree. + *+ * + *
optional string hash_tree_algorithm = 12;
+ * @return The bytes for hashTreeAlgorithm.
+ */
+ public com.google.protobuf.ByteString
+ getHashTreeAlgorithmBytes() {
+ java.lang.Object ref = hashTreeAlgorithm_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ hashTreeAlgorithm_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * + * The hash algorithm used in verity hash tree. + *+ * + *
optional string hash_tree_algorithm = 12;
+ * @param value The hashTreeAlgorithm to set.
+ * @return This builder for chaining.
+ */
+ public Builder setHashTreeAlgorithm(
+ java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000800;
+ hashTreeAlgorithm_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * The hash algorithm used in verity hash tree. + *+ * + *
optional string hash_tree_algorithm = 12;
+ * @return This builder for chaining.
+ */
+ public Builder clearHashTreeAlgorithm() {
+ bitField0_ = (bitField0_ & ~0x00000800);
+ hashTreeAlgorithm_ = getDefaultInstance().getHashTreeAlgorithm();
+ onChanged();
+ return this;
+ }
+ /**
+ * + * The hash algorithm used in verity hash tree. + *+ * + *
optional string hash_tree_algorithm = 12;
+ * @param value The bytes for hashTreeAlgorithm to set.
+ * @return This builder for chaining.
+ */
+ public Builder setHashTreeAlgorithmBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000800;
+ hashTreeAlgorithm_ = value;
+ onChanged();
+ return this;
+ }
+
+ private com.google.protobuf.ByteString hashTreeSalt_ = com.google.protobuf.ByteString.EMPTY;
+ /**
+ * + * The salt used for verity hash tree. + *+ * + *
optional bytes hash_tree_salt = 13;
+ * @return Whether the hashTreeSalt field is set.
+ */
+ @java.lang.Override
+ public boolean hasHashTreeSalt() {
+ return ((bitField0_ & 0x00001000) != 0);
+ }
+ /**
+ * + * The salt used for verity hash tree. + *+ * + *
optional bytes hash_tree_salt = 13;
+ * @return The hashTreeSalt.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getHashTreeSalt() {
+ return hashTreeSalt_;
+ }
+ /**
+ * + * The salt used for verity hash tree. + *+ * + *
optional bytes hash_tree_salt = 13;
+ * @param value The hashTreeSalt to set.
+ * @return This builder for chaining.
+ */
+ public Builder setHashTreeSalt(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00001000;
+ hashTreeSalt_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * The salt used for verity hash tree. + *+ * + *
optional bytes hash_tree_salt = 13;
+ * @return This builder for chaining.
+ */
+ public Builder clearHashTreeSalt() {
+ bitField0_ = (bitField0_ & ~0x00001000);
+ hashTreeSalt_ = getDefaultInstance().getHashTreeSalt();
+ onChanged();
+ return this;
+ }
+
+ private chromeos_update_engine.UpdateMetadata.Extent fecDataExtent_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.Extent, chromeos_update_engine.UpdateMetadata.Extent.Builder, chromeos_update_engine.UpdateMetadata.ExtentOrBuilder> fecDataExtentBuilder_;
+ /**
+ * + * The extent for data covered by FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_data_extent = 14;
+ * @return Whether the fecDataExtent field is set.
+ */
+ public boolean hasFecDataExtent() {
+ return ((bitField0_ & 0x00002000) != 0);
+ }
+ /**
+ * + * The extent for data covered by FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_data_extent = 14;
+ * @return The fecDataExtent.
+ */
+ public chromeos_update_engine.UpdateMetadata.Extent getFecDataExtent() {
+ if (fecDataExtentBuilder_ == null) {
+ return fecDataExtent_ == null ? chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance() : fecDataExtent_;
+ } else {
+ return fecDataExtentBuilder_.getMessage();
+ }
+ }
+ /**
+ * + * The extent for data covered by FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_data_extent = 14;
+ */
+ public Builder setFecDataExtent(chromeos_update_engine.UpdateMetadata.Extent value) {
+ if (fecDataExtentBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ fecDataExtent_ = value;
+ onChanged();
+ } else {
+ fecDataExtentBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00002000;
+ return this;
+ }
+ /**
+ * + * The extent for data covered by FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_data_extent = 14;
+ */
+ public Builder setFecDataExtent(
+ chromeos_update_engine.UpdateMetadata.Extent.Builder builderForValue) {
+ if (fecDataExtentBuilder_ == null) {
+ fecDataExtent_ = builderForValue.build();
+ onChanged();
+ } else {
+ fecDataExtentBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00002000;
+ return this;
+ }
+ /**
+ * + * The extent for data covered by FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_data_extent = 14;
+ */
+ public Builder mergeFecDataExtent(chromeos_update_engine.UpdateMetadata.Extent value) {
+ if (fecDataExtentBuilder_ == null) {
+ if (((bitField0_ & 0x00002000) != 0) &&
+ fecDataExtent_ != null &&
+ fecDataExtent_ != chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance()) {
+ fecDataExtent_ =
+ chromeos_update_engine.UpdateMetadata.Extent.newBuilder(fecDataExtent_).mergeFrom(value).buildPartial();
+ } else {
+ fecDataExtent_ = value;
+ }
+ onChanged();
+ } else {
+ fecDataExtentBuilder_.mergeFrom(value);
+ }
+ bitField0_ |= 0x00002000;
+ return this;
+ }
+ /**
+ * + * The extent for data covered by FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_data_extent = 14;
+ */
+ public Builder clearFecDataExtent() {
+ if (fecDataExtentBuilder_ == null) {
+ fecDataExtent_ = null;
+ onChanged();
+ } else {
+ fecDataExtentBuilder_.clear();
+ }
+ bitField0_ = (bitField0_ & ~0x00002000);
+ return this;
+ }
+ /**
+ * + * The extent for data covered by FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_data_extent = 14;
+ */
+ public chromeos_update_engine.UpdateMetadata.Extent.Builder getFecDataExtentBuilder() {
+ bitField0_ |= 0x00002000;
+ onChanged();
+ return getFecDataExtentFieldBuilder().getBuilder();
+ }
+ /**
+ * + * The extent for data covered by FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_data_extent = 14;
+ */
+ public chromeos_update_engine.UpdateMetadata.ExtentOrBuilder getFecDataExtentOrBuilder() {
+ if (fecDataExtentBuilder_ != null) {
+ return fecDataExtentBuilder_.getMessageOrBuilder();
+ } else {
+ return fecDataExtent_ == null ?
+ chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance() : fecDataExtent_;
+ }
+ }
+ /**
+ * + * The extent for data covered by FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_data_extent = 14;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.Extent, chromeos_update_engine.UpdateMetadata.Extent.Builder, chromeos_update_engine.UpdateMetadata.ExtentOrBuilder>
+ getFecDataExtentFieldBuilder() {
+ if (fecDataExtentBuilder_ == null) {
+ fecDataExtentBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.Extent, chromeos_update_engine.UpdateMetadata.Extent.Builder, chromeos_update_engine.UpdateMetadata.ExtentOrBuilder>(
+ getFecDataExtent(),
+ getParentForChildren(),
+ isClean());
+ fecDataExtent_ = null;
+ }
+ return fecDataExtentBuilder_;
+ }
+
+ private chromeos_update_engine.UpdateMetadata.Extent fecExtent_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.Extent, chromeos_update_engine.UpdateMetadata.Extent.Builder, chromeos_update_engine.UpdateMetadata.ExtentOrBuilder> fecExtentBuilder_;
+ /**
+ * + * The extent to store FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_extent = 15;
+ * @return Whether the fecExtent field is set.
+ */
+ public boolean hasFecExtent() {
+ return ((bitField0_ & 0x00004000) != 0);
+ }
+ /**
+ * + * The extent to store FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_extent = 15;
+ * @return The fecExtent.
+ */
+ public chromeos_update_engine.UpdateMetadata.Extent getFecExtent() {
+ if (fecExtentBuilder_ == null) {
+ return fecExtent_ == null ? chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance() : fecExtent_;
+ } else {
+ return fecExtentBuilder_.getMessage();
+ }
+ }
+ /**
+ * + * The extent to store FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_extent = 15;
+ */
+ public Builder setFecExtent(chromeos_update_engine.UpdateMetadata.Extent value) {
+ if (fecExtentBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ fecExtent_ = value;
+ onChanged();
+ } else {
+ fecExtentBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00004000;
+ return this;
+ }
+ /**
+ * + * The extent to store FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_extent = 15;
+ */
+ public Builder setFecExtent(
+ chromeos_update_engine.UpdateMetadata.Extent.Builder builderForValue) {
+ if (fecExtentBuilder_ == null) {
+ fecExtent_ = builderForValue.build();
+ onChanged();
+ } else {
+ fecExtentBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00004000;
+ return this;
+ }
+ /**
+ * + * The extent to store FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_extent = 15;
+ */
+ public Builder mergeFecExtent(chromeos_update_engine.UpdateMetadata.Extent value) {
+ if (fecExtentBuilder_ == null) {
+ if (((bitField0_ & 0x00004000) != 0) &&
+ fecExtent_ != null &&
+ fecExtent_ != chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance()) {
+ fecExtent_ =
+ chromeos_update_engine.UpdateMetadata.Extent.newBuilder(fecExtent_).mergeFrom(value).buildPartial();
+ } else {
+ fecExtent_ = value;
+ }
+ onChanged();
+ } else {
+ fecExtentBuilder_.mergeFrom(value);
+ }
+ bitField0_ |= 0x00004000;
+ return this;
+ }
+ /**
+ * + * The extent to store FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_extent = 15;
+ */
+ public Builder clearFecExtent() {
+ if (fecExtentBuilder_ == null) {
+ fecExtent_ = null;
+ onChanged();
+ } else {
+ fecExtentBuilder_.clear();
+ }
+ bitField0_ = (bitField0_ & ~0x00004000);
+ return this;
+ }
+ /**
+ * + * The extent to store FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_extent = 15;
+ */
+ public chromeos_update_engine.UpdateMetadata.Extent.Builder getFecExtentBuilder() {
+ bitField0_ |= 0x00004000;
+ onChanged();
+ return getFecExtentFieldBuilder().getBuilder();
+ }
+ /**
+ * + * The extent to store FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_extent = 15;
+ */
+ public chromeos_update_engine.UpdateMetadata.ExtentOrBuilder getFecExtentOrBuilder() {
+ if (fecExtentBuilder_ != null) {
+ return fecExtentBuilder_.getMessageOrBuilder();
+ } else {
+ return fecExtent_ == null ?
+ chromeos_update_engine.UpdateMetadata.Extent.getDefaultInstance() : fecExtent_;
+ }
+ }
+ /**
+ * + * The extent to store FEC. + *+ * + *
optional .chromeos_update_engine.Extent fec_extent = 15;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.Extent, chromeos_update_engine.UpdateMetadata.Extent.Builder, chromeos_update_engine.UpdateMetadata.ExtentOrBuilder>
+ getFecExtentFieldBuilder() {
+ if (fecExtentBuilder_ == null) {
+ fecExtentBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.Extent, chromeos_update_engine.UpdateMetadata.Extent.Builder, chromeos_update_engine.UpdateMetadata.ExtentOrBuilder>(
+ getFecExtent(),
+ getParentForChildren(),
+ isClean());
+ fecExtent_ = null;
+ }
+ return fecExtentBuilder_;
+ }
+
+ private int fecRoots_ = 2;
+ /**
+ * + * The number of FEC roots. + *+ * + *
optional uint32 fec_roots = 16 [default = 2];
+ * @return Whether the fecRoots field is set.
+ */
+ @java.lang.Override
+ public boolean hasFecRoots() {
+ return ((bitField0_ & 0x00008000) != 0);
+ }
+ /**
+ * + * The number of FEC roots. + *+ * + *
optional uint32 fec_roots = 16 [default = 2];
+ * @return The fecRoots.
+ */
+ @java.lang.Override
+ public int getFecRoots() {
+ return fecRoots_;
+ }
+ /**
+ * + * The number of FEC roots. + *+ * + *
optional uint32 fec_roots = 16 [default = 2];
+ * @param value The fecRoots to set.
+ * @return This builder for chaining.
+ */
+ public Builder setFecRoots(int value) {
+ bitField0_ |= 0x00008000;
+ fecRoots_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * The number of FEC roots. + *+ * + *
optional uint32 fec_roots = 16 [default = 2];
+ * @return This builder for chaining.
+ */
+ public Builder clearFecRoots() {
+ bitField0_ = (bitField0_ & ~0x00008000);
+ fecRoots_ = 2;
+ onChanged();
+ return this;
+ }
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+
+ // @@protoc_insertion_point(builder_scope:chromeos_update_engine.PartitionUpdate)
+ }
+
+ // @@protoc_insertion_point(class_scope:chromeos_update_engine.PartitionUpdate)
+ private static final chromeos_update_engine.UpdateMetadata.PartitionUpdate DEFAULT_INSTANCE;
+ static {
+ DEFAULT_INSTANCE = new chromeos_update_engine.UpdateMetadata.PartitionUpdate();
+ }
+
+ public static chromeos_update_engine.UpdateMetadata.PartitionUpdate getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ @java.lang.Deprecated public static final com.google.protobuf.Parser+ * Name of the group. + *+ * + *
required string name = 1;
+ * @return Whether the name field is set.
+ */
+ boolean hasName();
+ /**
+ * + * Name of the group. + *+ * + *
required string name = 1;
+ * @return The name.
+ */
+ java.lang.String getName();
+ /**
+ * + * Name of the group. + *+ * + *
required string name = 1;
+ * @return The bytes for name.
+ */
+ com.google.protobuf.ByteString
+ getNameBytes();
+
+ /**
+ * + * Maximum size of the group. The sum of sizes of all partitions in the group + * must not exceed the maximum size of the group. + *+ * + *
optional uint64 size = 2;
+ * @return Whether the size field is set.
+ */
+ boolean hasSize();
+ /**
+ * + * Maximum size of the group. The sum of sizes of all partitions in the group + * must not exceed the maximum size of the group. + *+ * + *
optional uint64 size = 2;
+ * @return The size.
+ */
+ long getSize();
+
+ /**
+ * + * A list of partitions that belong to the group. + *+ * + *
repeated string partition_names = 3;
+ * @return A list containing the partitionNames.
+ */
+ java.util.List+ * A list of partitions that belong to the group. + *+ * + *
repeated string partition_names = 3;
+ * @return The count of partitionNames.
+ */
+ int getPartitionNamesCount();
+ /**
+ * + * A list of partitions that belong to the group. + *+ * + *
repeated string partition_names = 3;
+ * @param index The index of the element to return.
+ * @return The partitionNames at the given index.
+ */
+ java.lang.String getPartitionNames(int index);
+ /**
+ * + * A list of partitions that belong to the group. + *+ * + *
repeated string partition_names = 3;
+ * @param index The index of the value to return.
+ * @return The bytes of the partitionNames at the given index.
+ */
+ com.google.protobuf.ByteString
+ getPartitionNamesBytes(int index);
+ }
+ /**
+ * Protobuf type {@code chromeos_update_engine.DynamicPartitionGroup}
+ */
+ public static final class DynamicPartitionGroup extends
+ com.google.protobuf.GeneratedMessageV3 implements
+ // @@protoc_insertion_point(message_implements:chromeos_update_engine.DynamicPartitionGroup)
+ DynamicPartitionGroupOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use DynamicPartitionGroup.newBuilder() to construct.
+ private DynamicPartitionGroup(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+ private DynamicPartitionGroup() {
+ name_ = "";
+ partitionNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(
+ UnusedPrivateParameter unused) {
+ return new DynamicPartitionGroup();
+ }
+
+ @java.lang.Override
+ public final com.google.protobuf.UnknownFieldSet
+ getUnknownFields() {
+ return this.unknownFields;
+ }
+ private DynamicPartitionGroup(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ this();
+ if (extensionRegistry == null) {
+ throw new java.lang.NullPointerException();
+ }
+ 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;
+ case 10: {
+ com.google.protobuf.ByteString bs = input.readBytes();
+ bitField0_ |= 0x00000001;
+ name_ = bs;
+ break;
+ }
+ case 16: {
+ bitField0_ |= 0x00000002;
+ size_ = input.readUInt64();
+ break;
+ }
+ case 26: {
+ com.google.protobuf.ByteString bs = input.readBytes();
+ if (!((mutable_bitField0_ & 0x00000004) != 0)) {
+ partitionNames_ = new com.google.protobuf.LazyStringArrayList();
+ mutable_bitField0_ |= 0x00000004;
+ }
+ partitionNames_.add(bs);
+ break;
+ }
+ default: {
+ if (!parseUnknownField(
+ input, unknownFields, extensionRegistry, tag)) {
+ done = true;
+ }
+ break;
+ }
+ }
+ }
+ } catch (com.google.protobuf.InvalidProtocolBufferException e) {
+ throw e.setUnfinishedMessage(this);
+ } catch (java.io.IOException e) {
+ throw new com.google.protobuf.InvalidProtocolBufferException(
+ e).setUnfinishedMessage(this);
+ } finally {
+ if (((mutable_bitField0_ & 0x00000004) != 0)) {
+ partitionNames_ = partitionNames_.getUnmodifiableView();
+ }
+ this.unknownFields = unknownFields.build();
+ makeExtensionsImmutable();
+ }
+ }
+ public static final com.google.protobuf.Descriptors.Descriptor
+ getDescriptor() {
+ return chromeos_update_engine.UpdateMetadata.internal_static_chromeos_update_engine_DynamicPartitionGroup_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return chromeos_update_engine.UpdateMetadata.internal_static_chromeos_update_engine_DynamicPartitionGroup_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup.class, chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup.Builder.class);
+ }
+
+ private int bitField0_;
+ public static final int NAME_FIELD_NUMBER = 1;
+ private volatile java.lang.Object name_;
+ /**
+ * + * Name of the group. + *+ * + *
required string name = 1;
+ * @return Whether the name field is set.
+ */
+ @java.lang.Override
+ public boolean hasName() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * + * Name of the group. + *+ * + *
required string name = 1;
+ * @return The name.
+ */
+ @java.lang.Override
+ 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;
+ }
+ }
+ /**
+ * + * Name of the group. + *+ * + *
required string name = 1;
+ * @return The bytes for name.
+ */
+ @java.lang.Override
+ 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 SIZE_FIELD_NUMBER = 2;
+ private long size_;
+ /**
+ * + * Maximum size of the group. The sum of sizes of all partitions in the group + * must not exceed the maximum size of the group. + *+ * + *
optional uint64 size = 2;
+ * @return Whether the size field is set.
+ */
+ @java.lang.Override
+ public boolean hasSize() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * + * Maximum size of the group. The sum of sizes of all partitions in the group + * must not exceed the maximum size of the group. + *+ * + *
optional uint64 size = 2;
+ * @return The size.
+ */
+ @java.lang.Override
+ public long getSize() {
+ return size_;
+ }
+
+ public static final int PARTITION_NAMES_FIELD_NUMBER = 3;
+ private com.google.protobuf.LazyStringList partitionNames_;
+ /**
+ * + * A list of partitions that belong to the group. + *+ * + *
repeated string partition_names = 3;
+ * @return A list containing the partitionNames.
+ */
+ public com.google.protobuf.ProtocolStringList
+ getPartitionNamesList() {
+ return partitionNames_;
+ }
+ /**
+ * + * A list of partitions that belong to the group. + *+ * + *
repeated string partition_names = 3;
+ * @return The count of partitionNames.
+ */
+ public int getPartitionNamesCount() {
+ return partitionNames_.size();
+ }
+ /**
+ * + * A list of partitions that belong to the group. + *+ * + *
repeated string partition_names = 3;
+ * @param index The index of the element to return.
+ * @return The partitionNames at the given index.
+ */
+ public java.lang.String getPartitionNames(int index) {
+ return partitionNames_.get(index);
+ }
+ /**
+ * + * A list of partitions that belong to the group. + *+ * + *
repeated string partition_names = 3;
+ * @param index The index of the value to return.
+ * @return The bytes of the partitionNames at the given index.
+ */
+ public com.google.protobuf.ByteString
+ getPartitionNamesBytes(int index) {
+ return partitionNames_.getByteString(index);
+ }
+
+ private byte memoizedIsInitialized = -1;
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ if (!hasName()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output)
+ throws java.io.IOException {
+ if (((bitField0_ & 0x00000001) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ output.writeUInt64(2, size_);
+ }
+ for (int i = 0; i < partitionNames_.size(); i++) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 3, partitionNames_.getRaw(i));
+ }
+ unknownFields.writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeUInt64Size(2, size_);
+ }
+ {
+ int dataSize = 0;
+ for (int i = 0; i < partitionNames_.size(); i++) {
+ dataSize += computeStringSizeNoTag(partitionNames_.getRaw(i));
+ }
+ size += dataSize;
+ size += 1 * getPartitionNamesList().size();
+ }
+ size += unknownFields.getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup)) {
+ return super.equals(obj);
+ }
+ chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup other = (chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup) obj;
+
+ if (hasName() != other.hasName()) return false;
+ if (hasName()) {
+ if (!getName()
+ .equals(other.getName())) return false;
+ }
+ if (hasSize() != other.hasSize()) return false;
+ if (hasSize()) {
+ if (getSize()
+ != other.getSize()) return false;
+ }
+ if (!getPartitionNamesList()
+ .equals(other.getPartitionNamesList())) return false;
+ if (!unknownFields.equals(other.unknownFields)) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (hasName()) {
+ hash = (37 * hash) + NAME_FIELD_NUMBER;
+ hash = (53 * hash) + getName().hashCode();
+ }
+ if (hasSize()) {
+ hash = (37 * hash) + SIZE_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
+ getSize());
+ }
+ if (getPartitionNamesCount() > 0) {
+ hash = (37 * hash) + PARTITION_NAMES_FIELD_NUMBER;
+ hash = (53 * hash) + getPartitionNamesList().hashCode();
+ }
+ hash = (29 * hash) + unknownFields.hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup parseFrom(
+ java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup parseFrom(
+ java.nio.ByteBuffer data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup parseFrom(
+ byte[] data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup parseFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup parseDelimitedFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup parseDelimitedFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup parseFrom(
+ com.google.protobuf.CodedInputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() { return newBuilder(); }
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+ public static Builder newBuilder(chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE
+ ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(
+ com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+ /**
+ * Protobuf type {@code chromeos_update_engine.DynamicPartitionGroup}
+ */
+ public static final class Builder extends
+ com.google.protobuf.GeneratedMessageV3.Builder+ * Name of the group. + *+ * + *
required string name = 1;
+ * @return Whether the name field is set.
+ */
+ public boolean hasName() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * + * Name of the group. + *+ * + *
required string name = 1;
+ * @return The name.
+ */
+ 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;
+ }
+ }
+ /**
+ * + * Name of the group. + *+ * + *
required string name = 1;
+ * @return The bytes for name.
+ */
+ 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;
+ }
+ }
+ /**
+ * + * Name of the group. + *+ * + *
required string name = 1;
+ * @param value The name to set.
+ * @return This builder for chaining.
+ */
+ public Builder setName(
+ java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000001;
+ name_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * Name of the group. + *+ * + *
required string name = 1;
+ * @return This builder for chaining.
+ */
+ public Builder clearName() {
+ bitField0_ = (bitField0_ & ~0x00000001);
+ name_ = getDefaultInstance().getName();
+ onChanged();
+ return this;
+ }
+ /**
+ * + * Name of the group. + *+ * + *
required string name = 1;
+ * @param value The bytes for name to set.
+ * @return This builder for chaining.
+ */
+ public Builder setNameBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000001;
+ name_ = value;
+ onChanged();
+ return this;
+ }
+
+ private long size_ ;
+ /**
+ * + * Maximum size of the group. The sum of sizes of all partitions in the group + * must not exceed the maximum size of the group. + *+ * + *
optional uint64 size = 2;
+ * @return Whether the size field is set.
+ */
+ @java.lang.Override
+ public boolean hasSize() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * + * Maximum size of the group. The sum of sizes of all partitions in the group + * must not exceed the maximum size of the group. + *+ * + *
optional uint64 size = 2;
+ * @return The size.
+ */
+ @java.lang.Override
+ public long getSize() {
+ return size_;
+ }
+ /**
+ * + * Maximum size of the group. The sum of sizes of all partitions in the group + * must not exceed the maximum size of the group. + *+ * + *
optional uint64 size = 2;
+ * @param value The size to set.
+ * @return This builder for chaining.
+ */
+ public Builder setSize(long value) {
+ bitField0_ |= 0x00000002;
+ size_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * Maximum size of the group. The sum of sizes of all partitions in the group + * must not exceed the maximum size of the group. + *+ * + *
optional uint64 size = 2;
+ * @return This builder for chaining.
+ */
+ public Builder clearSize() {
+ bitField0_ = (bitField0_ & ~0x00000002);
+ size_ = 0L;
+ onChanged();
+ return this;
+ }
+
+ private com.google.protobuf.LazyStringList partitionNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
+ private void ensurePartitionNamesIsMutable() {
+ if (!((bitField0_ & 0x00000004) != 0)) {
+ partitionNames_ = new com.google.protobuf.LazyStringArrayList(partitionNames_);
+ bitField0_ |= 0x00000004;
+ }
+ }
+ /**
+ * + * A list of partitions that belong to the group. + *+ * + *
repeated string partition_names = 3;
+ * @return A list containing the partitionNames.
+ */
+ public com.google.protobuf.ProtocolStringList
+ getPartitionNamesList() {
+ return partitionNames_.getUnmodifiableView();
+ }
+ /**
+ * + * A list of partitions that belong to the group. + *+ * + *
repeated string partition_names = 3;
+ * @return The count of partitionNames.
+ */
+ public int getPartitionNamesCount() {
+ return partitionNames_.size();
+ }
+ /**
+ * + * A list of partitions that belong to the group. + *+ * + *
repeated string partition_names = 3;
+ * @param index The index of the element to return.
+ * @return The partitionNames at the given index.
+ */
+ public java.lang.String getPartitionNames(int index) {
+ return partitionNames_.get(index);
+ }
+ /**
+ * + * A list of partitions that belong to the group. + *+ * + *
repeated string partition_names = 3;
+ * @param index The index of the value to return.
+ * @return The bytes of the partitionNames at the given index.
+ */
+ public com.google.protobuf.ByteString
+ getPartitionNamesBytes(int index) {
+ return partitionNames_.getByteString(index);
+ }
+ /**
+ * + * A list of partitions that belong to the group. + *+ * + *
repeated string partition_names = 3;
+ * @param index The index to set the value at.
+ * @param value The partitionNames to set.
+ * @return This builder for chaining.
+ */
+ public Builder setPartitionNames(
+ int index, java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensurePartitionNamesIsMutable();
+ partitionNames_.set(index, value);
+ onChanged();
+ return this;
+ }
+ /**
+ * + * A list of partitions that belong to the group. + *+ * + *
repeated string partition_names = 3;
+ * @param value The partitionNames to add.
+ * @return This builder for chaining.
+ */
+ public Builder addPartitionNames(
+ java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensurePartitionNamesIsMutable();
+ partitionNames_.add(value);
+ onChanged();
+ return this;
+ }
+ /**
+ * + * A list of partitions that belong to the group. + *+ * + *
repeated string partition_names = 3;
+ * @param values The partitionNames to add.
+ * @return This builder for chaining.
+ */
+ public Builder addAllPartitionNames(
+ java.lang.Iterable+ * A list of partitions that belong to the group. + *+ * + *
repeated string partition_names = 3;
+ * @return This builder for chaining.
+ */
+ public Builder clearPartitionNames() {
+ partitionNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
+ bitField0_ = (bitField0_ & ~0x00000004);
+ onChanged();
+ return this;
+ }
+ /**
+ * + * A list of partitions that belong to the group. + *+ * + *
repeated string partition_names = 3;
+ * @param value The bytes of the partitionNames to add.
+ * @return This builder for chaining.
+ */
+ public Builder addPartitionNamesBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensurePartitionNamesIsMutable();
+ partitionNames_.add(value);
+ onChanged();
+ return this;
+ }
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+
+ // @@protoc_insertion_point(builder_scope:chromeos_update_engine.DynamicPartitionGroup)
+ }
+
+ // @@protoc_insertion_point(class_scope:chromeos_update_engine.DynamicPartitionGroup)
+ private static final chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup DEFAULT_INSTANCE;
+ static {
+ DEFAULT_INSTANCE = new chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup();
+ }
+
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ @java.lang.Deprecated public static final com.google.protobuf.Parser+ * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ java.util.List+ * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup getGroups(int index);
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ int getGroupsCount();
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ java.util.List extends chromeos_update_engine.UpdateMetadata.DynamicPartitionGroupOrBuilder>
+ getGroupsOrBuilderList();
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ chromeos_update_engine.UpdateMetadata.DynamicPartitionGroupOrBuilder getGroupsOrBuilder(
+ int index);
+
+ /**
+ * + * Whether dynamic partitions have snapshots during the update. If this is + * set to true, the update_engine daemon creates snapshots for all dynamic + * partitions if possible. If this is unset, the update_engine daemon MUST + * NOT create snapshots for dynamic partitions. + *+ * + *
optional bool snapshot_enabled = 2;
+ * @return Whether the snapshotEnabled field is set.
+ */
+ boolean hasSnapshotEnabled();
+ /**
+ * + * Whether dynamic partitions have snapshots during the update. If this is + * set to true, the update_engine daemon creates snapshots for all dynamic + * partitions if possible. If this is unset, the update_engine daemon MUST + * NOT create snapshots for dynamic partitions. + *+ * + *
optional bool snapshot_enabled = 2;
+ * @return The snapshotEnabled.
+ */
+ boolean getSnapshotEnabled();
+ }
+ /**
+ * + * Metadata related to all dynamic partitions. + *+ * + * Protobuf type {@code chromeos_update_engine.DynamicPartitionMetadata} + */ + public static final class DynamicPartitionMetadata extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:chromeos_update_engine.DynamicPartitionMetadata) + DynamicPartitionMetadataOrBuilder { + private static final long serialVersionUID = 0L; + // Use DynamicPartitionMetadata.newBuilder() to construct. + private DynamicPartitionMetadata(com.google.protobuf.GeneratedMessageV3.Builder> builder) { + super(builder); + } + private DynamicPartitionMetadata() { + groups_ = java.util.Collections.emptyList(); + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance( + UnusedPrivateParameter unused) { + return new DynamicPartitionMetadata(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private DynamicPartitionMetadata( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + 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; + case 10: { + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + groups_ = new java.util.ArrayList
+ * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ @java.lang.Override
+ public java.util.List+ * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ @java.lang.Override
+ public java.util.List extends chromeos_update_engine.UpdateMetadata.DynamicPartitionGroupOrBuilder>
+ getGroupsOrBuilderList() {
+ return groups_;
+ }
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ @java.lang.Override
+ public int getGroupsCount() {
+ return groups_.size();
+ }
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup getGroups(int index) {
+ return groups_.get(index);
+ }
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.DynamicPartitionGroupOrBuilder getGroupsOrBuilder(
+ int index) {
+ return groups_.get(index);
+ }
+
+ public static final int SNAPSHOT_ENABLED_FIELD_NUMBER = 2;
+ private boolean snapshotEnabled_;
+ /**
+ * + * Whether dynamic partitions have snapshots during the update. If this is + * set to true, the update_engine daemon creates snapshots for all dynamic + * partitions if possible. If this is unset, the update_engine daemon MUST + * NOT create snapshots for dynamic partitions. + *+ * + *
optional bool snapshot_enabled = 2;
+ * @return Whether the snapshotEnabled field is set.
+ */
+ @java.lang.Override
+ public boolean hasSnapshotEnabled() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * + * Whether dynamic partitions have snapshots during the update. If this is + * set to true, the update_engine daemon creates snapshots for all dynamic + * partitions if possible. If this is unset, the update_engine daemon MUST + * NOT create snapshots for dynamic partitions. + *+ * + *
optional bool snapshot_enabled = 2;
+ * @return The snapshotEnabled.
+ */
+ @java.lang.Override
+ public boolean getSnapshotEnabled() {
+ return snapshotEnabled_;
+ }
+
+ private byte memoizedIsInitialized = -1;
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ for (int i = 0; i < getGroupsCount(); i++) {
+ if (!getGroups(i).isInitialized()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ }
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output)
+ throws java.io.IOException {
+ for (int i = 0; i < groups_.size(); i++) {
+ output.writeMessage(1, groups_.get(i));
+ }
+ if (((bitField0_ & 0x00000001) != 0)) {
+ output.writeBool(2, snapshotEnabled_);
+ }
+ unknownFields.writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ for (int i = 0; i < groups_.size(); i++) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(1, groups_.get(i));
+ }
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeBoolSize(2, snapshotEnabled_);
+ }
+ size += unknownFields.getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata)) {
+ return super.equals(obj);
+ }
+ chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata other = (chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata) obj;
+
+ if (!getGroupsList()
+ .equals(other.getGroupsList())) return false;
+ if (hasSnapshotEnabled() != other.hasSnapshotEnabled()) return false;
+ if (hasSnapshotEnabled()) {
+ if (getSnapshotEnabled()
+ != other.getSnapshotEnabled()) return false;
+ }
+ if (!unknownFields.equals(other.unknownFields)) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (getGroupsCount() > 0) {
+ hash = (37 * hash) + GROUPS_FIELD_NUMBER;
+ hash = (53 * hash) + getGroupsList().hashCode();
+ }
+ if (hasSnapshotEnabled()) {
+ hash = (37 * hash) + SNAPSHOT_ENABLED_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
+ getSnapshotEnabled());
+ }
+ hash = (29 * hash) + unknownFields.hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata parseFrom(
+ java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata parseFrom(
+ java.nio.ByteBuffer data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata parseFrom(
+ byte[] data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata parseFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata parseDelimitedFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata parseDelimitedFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata parseFrom(
+ com.google.protobuf.CodedInputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() { return newBuilder(); }
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+ public static Builder newBuilder(chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE
+ ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(
+ com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+ /**
+ * + * Metadata related to all dynamic partitions. + *+ * + * Protobuf type {@code chromeos_update_engine.DynamicPartitionMetadata} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder
+ * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ public java.util.List+ * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ public int getGroupsCount() {
+ if (groupsBuilder_ == null) {
+ return groups_.size();
+ } else {
+ return groupsBuilder_.getCount();
+ }
+ }
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ public chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup getGroups(int index) {
+ if (groupsBuilder_ == null) {
+ return groups_.get(index);
+ } else {
+ return groupsBuilder_.getMessage(index);
+ }
+ }
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ public Builder setGroups(
+ int index, chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup value) {
+ if (groupsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureGroupsIsMutable();
+ groups_.set(index, value);
+ onChanged();
+ } else {
+ groupsBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ public Builder setGroups(
+ int index, chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup.Builder builderForValue) {
+ if (groupsBuilder_ == null) {
+ ensureGroupsIsMutable();
+ groups_.set(index, builderForValue.build());
+ onChanged();
+ } else {
+ groupsBuilder_.setMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ public Builder addGroups(chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup value) {
+ if (groupsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureGroupsIsMutable();
+ groups_.add(value);
+ onChanged();
+ } else {
+ groupsBuilder_.addMessage(value);
+ }
+ return this;
+ }
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ public Builder addGroups(
+ int index, chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup value) {
+ if (groupsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureGroupsIsMutable();
+ groups_.add(index, value);
+ onChanged();
+ } else {
+ groupsBuilder_.addMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ public Builder addGroups(
+ chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup.Builder builderForValue) {
+ if (groupsBuilder_ == null) {
+ ensureGroupsIsMutable();
+ groups_.add(builderForValue.build());
+ onChanged();
+ } else {
+ groupsBuilder_.addMessage(builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ public Builder addGroups(
+ int index, chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup.Builder builderForValue) {
+ if (groupsBuilder_ == null) {
+ ensureGroupsIsMutable();
+ groups_.add(index, builderForValue.build());
+ onChanged();
+ } else {
+ groupsBuilder_.addMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ public Builder addAllGroups(
+ java.lang.Iterable extends chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup> values) {
+ if (groupsBuilder_ == null) {
+ ensureGroupsIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(
+ values, groups_);
+ onChanged();
+ } else {
+ groupsBuilder_.addAllMessages(values);
+ }
+ return this;
+ }
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ public Builder clearGroups() {
+ if (groupsBuilder_ == null) {
+ groups_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ } else {
+ groupsBuilder_.clear();
+ }
+ return this;
+ }
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ public Builder removeGroups(int index) {
+ if (groupsBuilder_ == null) {
+ ensureGroupsIsMutable();
+ groups_.remove(index);
+ onChanged();
+ } else {
+ groupsBuilder_.remove(index);
+ }
+ return this;
+ }
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ public chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup.Builder getGroupsBuilder(
+ int index) {
+ return getGroupsFieldBuilder().getBuilder(index);
+ }
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ public chromeos_update_engine.UpdateMetadata.DynamicPartitionGroupOrBuilder getGroupsOrBuilder(
+ int index) {
+ if (groupsBuilder_ == null) {
+ return groups_.get(index); } else {
+ return groupsBuilder_.getMessageOrBuilder(index);
+ }
+ }
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ public java.util.List extends chromeos_update_engine.UpdateMetadata.DynamicPartitionGroupOrBuilder>
+ getGroupsOrBuilderList() {
+ if (groupsBuilder_ != null) {
+ return groupsBuilder_.getMessageOrBuilderList();
+ } else {
+ return java.util.Collections.unmodifiableList(groups_);
+ }
+ }
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ public chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup.Builder addGroupsBuilder() {
+ return getGroupsFieldBuilder().addBuilder(
+ chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup.getDefaultInstance());
+ }
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ public chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup.Builder addGroupsBuilder(
+ int index) {
+ return getGroupsFieldBuilder().addBuilder(
+ index, chromeos_update_engine.UpdateMetadata.DynamicPartitionGroup.getDefaultInstance());
+ }
+ /**
+ * + * All updatable groups present in |partitions| of this DeltaArchiveManifest. + * - If an updatable group is on the device but not in the manifest, it is + * not updated. Hence, the group will not be resized, and partitions cannot + * be added to or removed from the group. + * - If an updatable group is in the manifest but not on the device, the group + * is added to the device. + *+ * + *
repeated .chromeos_update_engine.DynamicPartitionGroup groups = 1;
+ */
+ public java.util.List+ * Whether dynamic partitions have snapshots during the update. If this is + * set to true, the update_engine daemon creates snapshots for all dynamic + * partitions if possible. If this is unset, the update_engine daemon MUST + * NOT create snapshots for dynamic partitions. + *+ * + *
optional bool snapshot_enabled = 2;
+ * @return Whether the snapshotEnabled field is set.
+ */
+ @java.lang.Override
+ public boolean hasSnapshotEnabled() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * + * Whether dynamic partitions have snapshots during the update. If this is + * set to true, the update_engine daemon creates snapshots for all dynamic + * partitions if possible. If this is unset, the update_engine daemon MUST + * NOT create snapshots for dynamic partitions. + *+ * + *
optional bool snapshot_enabled = 2;
+ * @return The snapshotEnabled.
+ */
+ @java.lang.Override
+ public boolean getSnapshotEnabled() {
+ return snapshotEnabled_;
+ }
+ /**
+ * + * Whether dynamic partitions have snapshots during the update. If this is + * set to true, the update_engine daemon creates snapshots for all dynamic + * partitions if possible. If this is unset, the update_engine daemon MUST + * NOT create snapshots for dynamic partitions. + *+ * + *
optional bool snapshot_enabled = 2;
+ * @param value The snapshotEnabled to set.
+ * @return This builder for chaining.
+ */
+ public Builder setSnapshotEnabled(boolean value) {
+ bitField0_ |= 0x00000002;
+ snapshotEnabled_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * Whether dynamic partitions have snapshots during the update. If this is + * set to true, the update_engine daemon creates snapshots for all dynamic + * partitions if possible. If this is unset, the update_engine daemon MUST + * NOT create snapshots for dynamic partitions. + *+ * + *
optional bool snapshot_enabled = 2;
+ * @return This builder for chaining.
+ */
+ public Builder clearSnapshotEnabled() {
+ bitField0_ = (bitField0_ & ~0x00000002);
+ snapshotEnabled_ = false;
+ onChanged();
+ return this;
+ }
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+
+ // @@protoc_insertion_point(builder_scope:chromeos_update_engine.DynamicPartitionMetadata)
+ }
+
+ // @@protoc_insertion_point(class_scope:chromeos_update_engine.DynamicPartitionMetadata)
+ private static final chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata DEFAULT_INSTANCE;
+ static {
+ DEFAULT_INSTANCE = new chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata();
+ }
+
+ public static chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ @java.lang.Deprecated public static final com.google.protobuf.Parser+ * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ java.util.List+ * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ chromeos_update_engine.UpdateMetadata.InstallOperation getInstallOperations(int index);
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ int getInstallOperationsCount();
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ java.util.List extends chromeos_update_engine.UpdateMetadata.InstallOperationOrBuilder>
+ getInstallOperationsOrBuilderList();
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ chromeos_update_engine.UpdateMetadata.InstallOperationOrBuilder getInstallOperationsOrBuilder(
+ int index);
+
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ java.util.Listrepeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ chromeos_update_engine.UpdateMetadata.InstallOperation getKernelInstallOperations(int index);
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ int getKernelInstallOperationsCount();
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ java.util.List extends chromeos_update_engine.UpdateMetadata.InstallOperationOrBuilder>
+ getKernelInstallOperationsOrBuilderList();
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ chromeos_update_engine.UpdateMetadata.InstallOperationOrBuilder getKernelInstallOperationsOrBuilder(
+ int index);
+
+ /**
+ * + * (At time of writing) usually 4096 + *+ * + *
optional uint32 block_size = 3 [default = 4096];
+ * @return Whether the blockSize field is set.
+ */
+ boolean hasBlockSize();
+ /**
+ * + * (At time of writing) usually 4096 + *+ * + *
optional uint32 block_size = 3 [default = 4096];
+ * @return The blockSize.
+ */
+ int getBlockSize();
+
+ /**
+ * + * If signatures are present, the offset into the blobs, generally + * tacked onto the end of the file, and the length. We use an offset + * rather than a bool to allow for more flexibility in future file formats. + * If either is absent, it means signatures aren't supported in this + * file. + *+ * + *
optional uint64 signatures_offset = 4;
+ * @return Whether the signaturesOffset field is set.
+ */
+ boolean hasSignaturesOffset();
+ /**
+ * + * If signatures are present, the offset into the blobs, generally + * tacked onto the end of the file, and the length. We use an offset + * rather than a bool to allow for more flexibility in future file formats. + * If either is absent, it means signatures aren't supported in this + * file. + *+ * + *
optional uint64 signatures_offset = 4;
+ * @return The signaturesOffset.
+ */
+ long getSignaturesOffset();
+
+ /**
+ * optional uint64 signatures_size = 5;
+ * @return Whether the signaturesSize field is set.
+ */
+ boolean hasSignaturesSize();
+ /**
+ * optional uint64 signatures_size = 5;
+ * @return The signaturesSize.
+ */
+ long getSignaturesSize();
+
+ /**
+ * + * Only present in major version = 1. Partition metadata used to validate the + * update. For major version = 2 see the |partitions| field. + *+ * + *
optional .chromeos_update_engine.PartitionInfo old_kernel_info = 6;
+ * @return Whether the oldKernelInfo field is set.
+ */
+ boolean hasOldKernelInfo();
+ /**
+ * + * Only present in major version = 1. Partition metadata used to validate the + * update. For major version = 2 see the |partitions| field. + *+ * + *
optional .chromeos_update_engine.PartitionInfo old_kernel_info = 6;
+ * @return The oldKernelInfo.
+ */
+ chromeos_update_engine.UpdateMetadata.PartitionInfo getOldKernelInfo();
+ /**
+ * + * Only present in major version = 1. Partition metadata used to validate the + * update. For major version = 2 see the |partitions| field. + *+ * + *
optional .chromeos_update_engine.PartitionInfo old_kernel_info = 6;
+ */
+ chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder getOldKernelInfoOrBuilder();
+
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_kernel_info = 7;
+ * @return Whether the newKernelInfo field is set.
+ */
+ boolean hasNewKernelInfo();
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_kernel_info = 7;
+ * @return The newKernelInfo.
+ */
+ chromeos_update_engine.UpdateMetadata.PartitionInfo getNewKernelInfo();
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_kernel_info = 7;
+ */
+ chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder getNewKernelInfoOrBuilder();
+
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_rootfs_info = 8;
+ * @return Whether the oldRootfsInfo field is set.
+ */
+ boolean hasOldRootfsInfo();
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_rootfs_info = 8;
+ * @return The oldRootfsInfo.
+ */
+ chromeos_update_engine.UpdateMetadata.PartitionInfo getOldRootfsInfo();
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_rootfs_info = 8;
+ */
+ chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder getOldRootfsInfoOrBuilder();
+
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_rootfs_info = 9;
+ * @return Whether the newRootfsInfo field is set.
+ */
+ boolean hasNewRootfsInfo();
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_rootfs_info = 9;
+ * @return The newRootfsInfo.
+ */
+ chromeos_update_engine.UpdateMetadata.PartitionInfo getNewRootfsInfo();
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_rootfs_info = 9;
+ */
+ chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder getNewRootfsInfoOrBuilder();
+
+ /**
+ * + * old_image_info will only be present for delta images. + *+ * + *
optional .chromeos_update_engine.ImageInfo old_image_info = 10;
+ * @return Whether the oldImageInfo field is set.
+ */
+ boolean hasOldImageInfo();
+ /**
+ * + * old_image_info will only be present for delta images. + *+ * + *
optional .chromeos_update_engine.ImageInfo old_image_info = 10;
+ * @return The oldImageInfo.
+ */
+ chromeos_update_engine.UpdateMetadata.ImageInfo getOldImageInfo();
+ /**
+ * + * old_image_info will only be present for delta images. + *+ * + *
optional .chromeos_update_engine.ImageInfo old_image_info = 10;
+ */
+ chromeos_update_engine.UpdateMetadata.ImageInfoOrBuilder getOldImageInfoOrBuilder();
+
+ /**
+ * optional .chromeos_update_engine.ImageInfo new_image_info = 11;
+ * @return Whether the newImageInfo field is set.
+ */
+ boolean hasNewImageInfo();
+ /**
+ * optional .chromeos_update_engine.ImageInfo new_image_info = 11;
+ * @return The newImageInfo.
+ */
+ chromeos_update_engine.UpdateMetadata.ImageInfo getNewImageInfo();
+ /**
+ * optional .chromeos_update_engine.ImageInfo new_image_info = 11;
+ */
+ chromeos_update_engine.UpdateMetadata.ImageInfoOrBuilder getNewImageInfoOrBuilder();
+
+ /**
+ * + * The minor version, also referred as "delta version", of the payload. + * Minor version 0 is full payload, everything else is delta payload. + *+ * + *
optional uint32 minor_version = 12 [default = 0];
+ * @return Whether the minorVersion field is set.
+ */
+ boolean hasMinorVersion();
+ /**
+ * + * The minor version, also referred as "delta version", of the payload. + * Minor version 0 is full payload, everything else is delta payload. + *+ * + *
optional uint32 minor_version = 12 [default = 0];
+ * @return The minorVersion.
+ */
+ int getMinorVersion();
+
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ java.util.List+ * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ chromeos_update_engine.UpdateMetadata.PartitionUpdate getPartitions(int index);
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ int getPartitionsCount();
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ java.util.List extends chromeos_update_engine.UpdateMetadata.PartitionUpdateOrBuilder>
+ getPartitionsOrBuilderList();
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ chromeos_update_engine.UpdateMetadata.PartitionUpdateOrBuilder getPartitionsOrBuilder(
+ int index);
+
+ /**
+ * + * The maximum timestamp of the OS allowed to apply this payload. + * Can be used to prevent downgrading the OS. + *+ * + *
optional int64 max_timestamp = 14;
+ * @return Whether the maxTimestamp field is set.
+ */
+ boolean hasMaxTimestamp();
+ /**
+ * + * The maximum timestamp of the OS allowed to apply this payload. + * Can be used to prevent downgrading the OS. + *+ * + *
optional int64 max_timestamp = 14;
+ * @return The maxTimestamp.
+ */
+ long getMaxTimestamp();
+
+ /**
+ * + * Metadata related to all dynamic partitions. + *+ * + *
optional .chromeos_update_engine.DynamicPartitionMetadata dynamic_partition_metadata = 15;
+ * @return Whether the dynamicPartitionMetadata field is set.
+ */
+ boolean hasDynamicPartitionMetadata();
+ /**
+ * + * Metadata related to all dynamic partitions. + *+ * + *
optional .chromeos_update_engine.DynamicPartitionMetadata dynamic_partition_metadata = 15;
+ * @return The dynamicPartitionMetadata.
+ */
+ chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata getDynamicPartitionMetadata();
+ /**
+ * + * Metadata related to all dynamic partitions. + *+ * + *
optional .chromeos_update_engine.DynamicPartitionMetadata dynamic_partition_metadata = 15;
+ */
+ chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadataOrBuilder getDynamicPartitionMetadataOrBuilder();
+
+ /**
+ * + * If the payload only updates a subset of partitions on the device. + *+ * + *
optional bool partial_update = 16;
+ * @return Whether the partialUpdate field is set.
+ */
+ boolean hasPartialUpdate();
+ /**
+ * + * If the payload only updates a subset of partitions on the device. + *+ * + *
optional bool partial_update = 16;
+ * @return The partialUpdate.
+ */
+ boolean getPartialUpdate();
+ }
+ /**
+ * Protobuf type {@code chromeos_update_engine.DeltaArchiveManifest}
+ */
+ public static final class DeltaArchiveManifest extends
+ com.google.protobuf.GeneratedMessageV3 implements
+ // @@protoc_insertion_point(message_implements:chromeos_update_engine.DeltaArchiveManifest)
+ DeltaArchiveManifestOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use DeltaArchiveManifest.newBuilder() to construct.
+ private DeltaArchiveManifest(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+ private DeltaArchiveManifest() {
+ installOperations_ = java.util.Collections.emptyList();
+ kernelInstallOperations_ = java.util.Collections.emptyList();
+ blockSize_ = 4096;
+ partitions_ = java.util.Collections.emptyList();
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(
+ UnusedPrivateParameter unused) {
+ return new DeltaArchiveManifest();
+ }
+
+ @java.lang.Override
+ public final com.google.protobuf.UnknownFieldSet
+ getUnknownFields() {
+ return this.unknownFields;
+ }
+ private DeltaArchiveManifest(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ this();
+ if (extensionRegistry == null) {
+ throw new java.lang.NullPointerException();
+ }
+ 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;
+ case 10: {
+ if (!((mutable_bitField0_ & 0x00000001) != 0)) {
+ installOperations_ = new java.util.ArrayList+ * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ @java.lang.Override
+ public java.util.List+ * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ @java.lang.Override
+ public java.util.List extends chromeos_update_engine.UpdateMetadata.InstallOperationOrBuilder>
+ getInstallOperationsOrBuilderList() {
+ return installOperations_;
+ }
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ @java.lang.Override
+ public int getInstallOperationsCount() {
+ return installOperations_.size();
+ }
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.InstallOperation getInstallOperations(int index) {
+ return installOperations_.get(index);
+ }
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.InstallOperationOrBuilder getInstallOperationsOrBuilder(
+ int index) {
+ return installOperations_.get(index);
+ }
+
+ public static final int KERNEL_INSTALL_OPERATIONS_FIELD_NUMBER = 2;
+ private java.util.Listrepeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ @java.lang.Override
+ public java.util.Listrepeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ @java.lang.Override
+ public java.util.List extends chromeos_update_engine.UpdateMetadata.InstallOperationOrBuilder>
+ getKernelInstallOperationsOrBuilderList() {
+ return kernelInstallOperations_;
+ }
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ @java.lang.Override
+ public int getKernelInstallOperationsCount() {
+ return kernelInstallOperations_.size();
+ }
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.InstallOperation getKernelInstallOperations(int index) {
+ return kernelInstallOperations_.get(index);
+ }
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.InstallOperationOrBuilder getKernelInstallOperationsOrBuilder(
+ int index) {
+ return kernelInstallOperations_.get(index);
+ }
+
+ public static final int BLOCK_SIZE_FIELD_NUMBER = 3;
+ private int blockSize_;
+ /**
+ * + * (At time of writing) usually 4096 + *+ * + *
optional uint32 block_size = 3 [default = 4096];
+ * @return Whether the blockSize field is set.
+ */
+ @java.lang.Override
+ public boolean hasBlockSize() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * + * (At time of writing) usually 4096 + *+ * + *
optional uint32 block_size = 3 [default = 4096];
+ * @return The blockSize.
+ */
+ @java.lang.Override
+ public int getBlockSize() {
+ return blockSize_;
+ }
+
+ public static final int SIGNATURES_OFFSET_FIELD_NUMBER = 4;
+ private long signaturesOffset_;
+ /**
+ * + * If signatures are present, the offset into the blobs, generally + * tacked onto the end of the file, and the length. We use an offset + * rather than a bool to allow for more flexibility in future file formats. + * If either is absent, it means signatures aren't supported in this + * file. + *+ * + *
optional uint64 signatures_offset = 4;
+ * @return Whether the signaturesOffset field is set.
+ */
+ @java.lang.Override
+ public boolean hasSignaturesOffset() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * + * If signatures are present, the offset into the blobs, generally + * tacked onto the end of the file, and the length. We use an offset + * rather than a bool to allow for more flexibility in future file formats. + * If either is absent, it means signatures aren't supported in this + * file. + *+ * + *
optional uint64 signatures_offset = 4;
+ * @return The signaturesOffset.
+ */
+ @java.lang.Override
+ public long getSignaturesOffset() {
+ return signaturesOffset_;
+ }
+
+ public static final int SIGNATURES_SIZE_FIELD_NUMBER = 5;
+ private long signaturesSize_;
+ /**
+ * optional uint64 signatures_size = 5;
+ * @return Whether the signaturesSize field is set.
+ */
+ @java.lang.Override
+ public boolean hasSignaturesSize() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ * optional uint64 signatures_size = 5;
+ * @return The signaturesSize.
+ */
+ @java.lang.Override
+ public long getSignaturesSize() {
+ return signaturesSize_;
+ }
+
+ public static final int OLD_KERNEL_INFO_FIELD_NUMBER = 6;
+ private chromeos_update_engine.UpdateMetadata.PartitionInfo oldKernelInfo_;
+ /**
+ * + * Only present in major version = 1. Partition metadata used to validate the + * update. For major version = 2 see the |partitions| field. + *+ * + *
optional .chromeos_update_engine.PartitionInfo old_kernel_info = 6;
+ * @return Whether the oldKernelInfo field is set.
+ */
+ @java.lang.Override
+ public boolean hasOldKernelInfo() {
+ return ((bitField0_ & 0x00000008) != 0);
+ }
+ /**
+ * + * Only present in major version = 1. Partition metadata used to validate the + * update. For major version = 2 see the |partitions| field. + *+ * + *
optional .chromeos_update_engine.PartitionInfo old_kernel_info = 6;
+ * @return The oldKernelInfo.
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.PartitionInfo getOldKernelInfo() {
+ return oldKernelInfo_ == null ? chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : oldKernelInfo_;
+ }
+ /**
+ * + * Only present in major version = 1. Partition metadata used to validate the + * update. For major version = 2 see the |partitions| field. + *+ * + *
optional .chromeos_update_engine.PartitionInfo old_kernel_info = 6;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder getOldKernelInfoOrBuilder() {
+ return oldKernelInfo_ == null ? chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : oldKernelInfo_;
+ }
+
+ public static final int NEW_KERNEL_INFO_FIELD_NUMBER = 7;
+ private chromeos_update_engine.UpdateMetadata.PartitionInfo newKernelInfo_;
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_kernel_info = 7;
+ * @return Whether the newKernelInfo field is set.
+ */
+ @java.lang.Override
+ public boolean hasNewKernelInfo() {
+ return ((bitField0_ & 0x00000010) != 0);
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_kernel_info = 7;
+ * @return The newKernelInfo.
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.PartitionInfo getNewKernelInfo() {
+ return newKernelInfo_ == null ? chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : newKernelInfo_;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_kernel_info = 7;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder getNewKernelInfoOrBuilder() {
+ return newKernelInfo_ == null ? chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : newKernelInfo_;
+ }
+
+ public static final int OLD_ROOTFS_INFO_FIELD_NUMBER = 8;
+ private chromeos_update_engine.UpdateMetadata.PartitionInfo oldRootfsInfo_;
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_rootfs_info = 8;
+ * @return Whether the oldRootfsInfo field is set.
+ */
+ @java.lang.Override
+ public boolean hasOldRootfsInfo() {
+ return ((bitField0_ & 0x00000020) != 0);
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_rootfs_info = 8;
+ * @return The oldRootfsInfo.
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.PartitionInfo getOldRootfsInfo() {
+ return oldRootfsInfo_ == null ? chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : oldRootfsInfo_;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_rootfs_info = 8;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder getOldRootfsInfoOrBuilder() {
+ return oldRootfsInfo_ == null ? chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : oldRootfsInfo_;
+ }
+
+ public static final int NEW_ROOTFS_INFO_FIELD_NUMBER = 9;
+ private chromeos_update_engine.UpdateMetadata.PartitionInfo newRootfsInfo_;
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_rootfs_info = 9;
+ * @return Whether the newRootfsInfo field is set.
+ */
+ @java.lang.Override
+ public boolean hasNewRootfsInfo() {
+ return ((bitField0_ & 0x00000040) != 0);
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_rootfs_info = 9;
+ * @return The newRootfsInfo.
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.PartitionInfo getNewRootfsInfo() {
+ return newRootfsInfo_ == null ? chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : newRootfsInfo_;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_rootfs_info = 9;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder getNewRootfsInfoOrBuilder() {
+ return newRootfsInfo_ == null ? chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : newRootfsInfo_;
+ }
+
+ public static final int OLD_IMAGE_INFO_FIELD_NUMBER = 10;
+ private chromeos_update_engine.UpdateMetadata.ImageInfo oldImageInfo_;
+ /**
+ * + * old_image_info will only be present for delta images. + *+ * + *
optional .chromeos_update_engine.ImageInfo old_image_info = 10;
+ * @return Whether the oldImageInfo field is set.
+ */
+ @java.lang.Override
+ public boolean hasOldImageInfo() {
+ return ((bitField0_ & 0x00000080) != 0);
+ }
+ /**
+ * + * old_image_info will only be present for delta images. + *+ * + *
optional .chromeos_update_engine.ImageInfo old_image_info = 10;
+ * @return The oldImageInfo.
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.ImageInfo getOldImageInfo() {
+ return oldImageInfo_ == null ? chromeos_update_engine.UpdateMetadata.ImageInfo.getDefaultInstance() : oldImageInfo_;
+ }
+ /**
+ * + * old_image_info will only be present for delta images. + *+ * + *
optional .chromeos_update_engine.ImageInfo old_image_info = 10;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.ImageInfoOrBuilder getOldImageInfoOrBuilder() {
+ return oldImageInfo_ == null ? chromeos_update_engine.UpdateMetadata.ImageInfo.getDefaultInstance() : oldImageInfo_;
+ }
+
+ public static final int NEW_IMAGE_INFO_FIELD_NUMBER = 11;
+ private chromeos_update_engine.UpdateMetadata.ImageInfo newImageInfo_;
+ /**
+ * optional .chromeos_update_engine.ImageInfo new_image_info = 11;
+ * @return Whether the newImageInfo field is set.
+ */
+ @java.lang.Override
+ public boolean hasNewImageInfo() {
+ return ((bitField0_ & 0x00000100) != 0);
+ }
+ /**
+ * optional .chromeos_update_engine.ImageInfo new_image_info = 11;
+ * @return The newImageInfo.
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.ImageInfo getNewImageInfo() {
+ return newImageInfo_ == null ? chromeos_update_engine.UpdateMetadata.ImageInfo.getDefaultInstance() : newImageInfo_;
+ }
+ /**
+ * optional .chromeos_update_engine.ImageInfo new_image_info = 11;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.ImageInfoOrBuilder getNewImageInfoOrBuilder() {
+ return newImageInfo_ == null ? chromeos_update_engine.UpdateMetadata.ImageInfo.getDefaultInstance() : newImageInfo_;
+ }
+
+ public static final int MINOR_VERSION_FIELD_NUMBER = 12;
+ private int minorVersion_;
+ /**
+ * + * The minor version, also referred as "delta version", of the payload. + * Minor version 0 is full payload, everything else is delta payload. + *+ * + *
optional uint32 minor_version = 12 [default = 0];
+ * @return Whether the minorVersion field is set.
+ */
+ @java.lang.Override
+ public boolean hasMinorVersion() {
+ return ((bitField0_ & 0x00000200) != 0);
+ }
+ /**
+ * + * The minor version, also referred as "delta version", of the payload. + * Minor version 0 is full payload, everything else is delta payload. + *+ * + *
optional uint32 minor_version = 12 [default = 0];
+ * @return The minorVersion.
+ */
+ @java.lang.Override
+ public int getMinorVersion() {
+ return minorVersion_;
+ }
+
+ public static final int PARTITIONS_FIELD_NUMBER = 13;
+ private java.util.List+ * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ @java.lang.Override
+ public java.util.List+ * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ @java.lang.Override
+ public java.util.List extends chromeos_update_engine.UpdateMetadata.PartitionUpdateOrBuilder>
+ getPartitionsOrBuilderList() {
+ return partitions_;
+ }
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ @java.lang.Override
+ public int getPartitionsCount() {
+ return partitions_.size();
+ }
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.PartitionUpdate getPartitions(int index) {
+ return partitions_.get(index);
+ }
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.PartitionUpdateOrBuilder getPartitionsOrBuilder(
+ int index) {
+ return partitions_.get(index);
+ }
+
+ public static final int MAX_TIMESTAMP_FIELD_NUMBER = 14;
+ private long maxTimestamp_;
+ /**
+ * + * The maximum timestamp of the OS allowed to apply this payload. + * Can be used to prevent downgrading the OS. + *+ * + *
optional int64 max_timestamp = 14;
+ * @return Whether the maxTimestamp field is set.
+ */
+ @java.lang.Override
+ public boolean hasMaxTimestamp() {
+ return ((bitField0_ & 0x00000400) != 0);
+ }
+ /**
+ * + * The maximum timestamp of the OS allowed to apply this payload. + * Can be used to prevent downgrading the OS. + *+ * + *
optional int64 max_timestamp = 14;
+ * @return The maxTimestamp.
+ */
+ @java.lang.Override
+ public long getMaxTimestamp() {
+ return maxTimestamp_;
+ }
+
+ public static final int DYNAMIC_PARTITION_METADATA_FIELD_NUMBER = 15;
+ private chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata dynamicPartitionMetadata_;
+ /**
+ * + * Metadata related to all dynamic partitions. + *+ * + *
optional .chromeos_update_engine.DynamicPartitionMetadata dynamic_partition_metadata = 15;
+ * @return Whether the dynamicPartitionMetadata field is set.
+ */
+ @java.lang.Override
+ public boolean hasDynamicPartitionMetadata() {
+ return ((bitField0_ & 0x00000800) != 0);
+ }
+ /**
+ * + * Metadata related to all dynamic partitions. + *+ * + *
optional .chromeos_update_engine.DynamicPartitionMetadata dynamic_partition_metadata = 15;
+ * @return The dynamicPartitionMetadata.
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata getDynamicPartitionMetadata() {
+ return dynamicPartitionMetadata_ == null ? chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata.getDefaultInstance() : dynamicPartitionMetadata_;
+ }
+ /**
+ * + * Metadata related to all dynamic partitions. + *+ * + *
optional .chromeos_update_engine.DynamicPartitionMetadata dynamic_partition_metadata = 15;
+ */
+ @java.lang.Override
+ public chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadataOrBuilder getDynamicPartitionMetadataOrBuilder() {
+ return dynamicPartitionMetadata_ == null ? chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata.getDefaultInstance() : dynamicPartitionMetadata_;
+ }
+
+ public static final int PARTIAL_UPDATE_FIELD_NUMBER = 16;
+ private boolean partialUpdate_;
+ /**
+ * + * If the payload only updates a subset of partitions on the device. + *+ * + *
optional bool partial_update = 16;
+ * @return Whether the partialUpdate field is set.
+ */
+ @java.lang.Override
+ public boolean hasPartialUpdate() {
+ return ((bitField0_ & 0x00001000) != 0);
+ }
+ /**
+ * + * If the payload only updates a subset of partitions on the device. + *+ * + *
optional bool partial_update = 16;
+ * @return The partialUpdate.
+ */
+ @java.lang.Override
+ public boolean getPartialUpdate() {
+ return partialUpdate_;
+ }
+
+ private byte memoizedIsInitialized = -1;
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ for (int i = 0; i < getInstallOperationsCount(); i++) {
+ if (!getInstallOperations(i).isInitialized()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ }
+ for (int i = 0; i < getKernelInstallOperationsCount(); i++) {
+ if (!getKernelInstallOperations(i).isInitialized()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ }
+ for (int i = 0; i < getPartitionsCount(); i++) {
+ if (!getPartitions(i).isInitialized()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ }
+ if (hasDynamicPartitionMetadata()) {
+ if (!getDynamicPartitionMetadata().isInitialized()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ }
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output)
+ throws java.io.IOException {
+ for (int i = 0; i < installOperations_.size(); i++) {
+ output.writeMessage(1, installOperations_.get(i));
+ }
+ for (int i = 0; i < kernelInstallOperations_.size(); i++) {
+ output.writeMessage(2, kernelInstallOperations_.get(i));
+ }
+ if (((bitField0_ & 0x00000001) != 0)) {
+ output.writeUInt32(3, blockSize_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ output.writeUInt64(4, signaturesOffset_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ output.writeUInt64(5, signaturesSize_);
+ }
+ if (((bitField0_ & 0x00000008) != 0)) {
+ output.writeMessage(6, getOldKernelInfo());
+ }
+ if (((bitField0_ & 0x00000010) != 0)) {
+ output.writeMessage(7, getNewKernelInfo());
+ }
+ if (((bitField0_ & 0x00000020) != 0)) {
+ output.writeMessage(8, getOldRootfsInfo());
+ }
+ if (((bitField0_ & 0x00000040) != 0)) {
+ output.writeMessage(9, getNewRootfsInfo());
+ }
+ if (((bitField0_ & 0x00000080) != 0)) {
+ output.writeMessage(10, getOldImageInfo());
+ }
+ if (((bitField0_ & 0x00000100) != 0)) {
+ output.writeMessage(11, getNewImageInfo());
+ }
+ if (((bitField0_ & 0x00000200) != 0)) {
+ output.writeUInt32(12, minorVersion_);
+ }
+ for (int i = 0; i < partitions_.size(); i++) {
+ output.writeMessage(13, partitions_.get(i));
+ }
+ if (((bitField0_ & 0x00000400) != 0)) {
+ output.writeInt64(14, maxTimestamp_);
+ }
+ if (((bitField0_ & 0x00000800) != 0)) {
+ output.writeMessage(15, getDynamicPartitionMetadata());
+ }
+ if (((bitField0_ & 0x00001000) != 0)) {
+ output.writeBool(16, partialUpdate_);
+ }
+ unknownFields.writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ for (int i = 0; i < installOperations_.size(); i++) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(1, installOperations_.get(i));
+ }
+ for (int i = 0; i < kernelInstallOperations_.size(); i++) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(2, kernelInstallOperations_.get(i));
+ }
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeUInt32Size(3, blockSize_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeUInt64Size(4, signaturesOffset_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeUInt64Size(5, signaturesSize_);
+ }
+ if (((bitField0_ & 0x00000008) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(6, getOldKernelInfo());
+ }
+ if (((bitField0_ & 0x00000010) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(7, getNewKernelInfo());
+ }
+ if (((bitField0_ & 0x00000020) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(8, getOldRootfsInfo());
+ }
+ if (((bitField0_ & 0x00000040) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(9, getNewRootfsInfo());
+ }
+ if (((bitField0_ & 0x00000080) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(10, getOldImageInfo());
+ }
+ if (((bitField0_ & 0x00000100) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(11, getNewImageInfo());
+ }
+ if (((bitField0_ & 0x00000200) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeUInt32Size(12, minorVersion_);
+ }
+ for (int i = 0; i < partitions_.size(); i++) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(13, partitions_.get(i));
+ }
+ if (((bitField0_ & 0x00000400) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeInt64Size(14, maxTimestamp_);
+ }
+ if (((bitField0_ & 0x00000800) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(15, getDynamicPartitionMetadata());
+ }
+ if (((bitField0_ & 0x00001000) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeBoolSize(16, partialUpdate_);
+ }
+ size += unknownFields.getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof chromeos_update_engine.UpdateMetadata.DeltaArchiveManifest)) {
+ return super.equals(obj);
+ }
+ chromeos_update_engine.UpdateMetadata.DeltaArchiveManifest other = (chromeos_update_engine.UpdateMetadata.DeltaArchiveManifest) obj;
+
+ if (!getInstallOperationsList()
+ .equals(other.getInstallOperationsList())) return false;
+ if (!getKernelInstallOperationsList()
+ .equals(other.getKernelInstallOperationsList())) return false;
+ if (hasBlockSize() != other.hasBlockSize()) return false;
+ if (hasBlockSize()) {
+ if (getBlockSize()
+ != other.getBlockSize()) return false;
+ }
+ if (hasSignaturesOffset() != other.hasSignaturesOffset()) return false;
+ if (hasSignaturesOffset()) {
+ if (getSignaturesOffset()
+ != other.getSignaturesOffset()) return false;
+ }
+ if (hasSignaturesSize() != other.hasSignaturesSize()) return false;
+ if (hasSignaturesSize()) {
+ if (getSignaturesSize()
+ != other.getSignaturesSize()) return false;
+ }
+ if (hasOldKernelInfo() != other.hasOldKernelInfo()) return false;
+ if (hasOldKernelInfo()) {
+ if (!getOldKernelInfo()
+ .equals(other.getOldKernelInfo())) return false;
+ }
+ if (hasNewKernelInfo() != other.hasNewKernelInfo()) return false;
+ if (hasNewKernelInfo()) {
+ if (!getNewKernelInfo()
+ .equals(other.getNewKernelInfo())) return false;
+ }
+ if (hasOldRootfsInfo() != other.hasOldRootfsInfo()) return false;
+ if (hasOldRootfsInfo()) {
+ if (!getOldRootfsInfo()
+ .equals(other.getOldRootfsInfo())) return false;
+ }
+ if (hasNewRootfsInfo() != other.hasNewRootfsInfo()) return false;
+ if (hasNewRootfsInfo()) {
+ if (!getNewRootfsInfo()
+ .equals(other.getNewRootfsInfo())) return false;
+ }
+ if (hasOldImageInfo() != other.hasOldImageInfo()) return false;
+ if (hasOldImageInfo()) {
+ if (!getOldImageInfo()
+ .equals(other.getOldImageInfo())) return false;
+ }
+ if (hasNewImageInfo() != other.hasNewImageInfo()) return false;
+ if (hasNewImageInfo()) {
+ if (!getNewImageInfo()
+ .equals(other.getNewImageInfo())) return false;
+ }
+ if (hasMinorVersion() != other.hasMinorVersion()) return false;
+ if (hasMinorVersion()) {
+ if (getMinorVersion()
+ != other.getMinorVersion()) return false;
+ }
+ if (!getPartitionsList()
+ .equals(other.getPartitionsList())) return false;
+ if (hasMaxTimestamp() != other.hasMaxTimestamp()) return false;
+ if (hasMaxTimestamp()) {
+ if (getMaxTimestamp()
+ != other.getMaxTimestamp()) return false;
+ }
+ if (hasDynamicPartitionMetadata() != other.hasDynamicPartitionMetadata()) return false;
+ if (hasDynamicPartitionMetadata()) {
+ if (!getDynamicPartitionMetadata()
+ .equals(other.getDynamicPartitionMetadata())) return false;
+ }
+ if (hasPartialUpdate() != other.hasPartialUpdate()) return false;
+ if (hasPartialUpdate()) {
+ if (getPartialUpdate()
+ != other.getPartialUpdate()) return false;
+ }
+ if (!unknownFields.equals(other.unknownFields)) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (getInstallOperationsCount() > 0) {
+ hash = (37 * hash) + INSTALL_OPERATIONS_FIELD_NUMBER;
+ hash = (53 * hash) + getInstallOperationsList().hashCode();
+ }
+ if (getKernelInstallOperationsCount() > 0) {
+ hash = (37 * hash) + KERNEL_INSTALL_OPERATIONS_FIELD_NUMBER;
+ hash = (53 * hash) + getKernelInstallOperationsList().hashCode();
+ }
+ if (hasBlockSize()) {
+ hash = (37 * hash) + BLOCK_SIZE_FIELD_NUMBER;
+ hash = (53 * hash) + getBlockSize();
+ }
+ if (hasSignaturesOffset()) {
+ hash = (37 * hash) + SIGNATURES_OFFSET_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
+ getSignaturesOffset());
+ }
+ if (hasSignaturesSize()) {
+ hash = (37 * hash) + SIGNATURES_SIZE_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
+ getSignaturesSize());
+ }
+ if (hasOldKernelInfo()) {
+ hash = (37 * hash) + OLD_KERNEL_INFO_FIELD_NUMBER;
+ hash = (53 * hash) + getOldKernelInfo().hashCode();
+ }
+ if (hasNewKernelInfo()) {
+ hash = (37 * hash) + NEW_KERNEL_INFO_FIELD_NUMBER;
+ hash = (53 * hash) + getNewKernelInfo().hashCode();
+ }
+ if (hasOldRootfsInfo()) {
+ hash = (37 * hash) + OLD_ROOTFS_INFO_FIELD_NUMBER;
+ hash = (53 * hash) + getOldRootfsInfo().hashCode();
+ }
+ if (hasNewRootfsInfo()) {
+ hash = (37 * hash) + NEW_ROOTFS_INFO_FIELD_NUMBER;
+ hash = (53 * hash) + getNewRootfsInfo().hashCode();
+ }
+ if (hasOldImageInfo()) {
+ hash = (37 * hash) + OLD_IMAGE_INFO_FIELD_NUMBER;
+ hash = (53 * hash) + getOldImageInfo().hashCode();
+ }
+ if (hasNewImageInfo()) {
+ hash = (37 * hash) + NEW_IMAGE_INFO_FIELD_NUMBER;
+ hash = (53 * hash) + getNewImageInfo().hashCode();
+ }
+ if (hasMinorVersion()) {
+ hash = (37 * hash) + MINOR_VERSION_FIELD_NUMBER;
+ hash = (53 * hash) + getMinorVersion();
+ }
+ if (getPartitionsCount() > 0) {
+ hash = (37 * hash) + PARTITIONS_FIELD_NUMBER;
+ hash = (53 * hash) + getPartitionsList().hashCode();
+ }
+ if (hasMaxTimestamp()) {
+ hash = (37 * hash) + MAX_TIMESTAMP_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
+ getMaxTimestamp());
+ }
+ if (hasDynamicPartitionMetadata()) {
+ hash = (37 * hash) + DYNAMIC_PARTITION_METADATA_FIELD_NUMBER;
+ hash = (53 * hash) + getDynamicPartitionMetadata().hashCode();
+ }
+ if (hasPartialUpdate()) {
+ hash = (37 * hash) + PARTIAL_UPDATE_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
+ getPartialUpdate());
+ }
+ hash = (29 * hash) + unknownFields.hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static chromeos_update_engine.UpdateMetadata.DeltaArchiveManifest parseFrom(
+ java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DeltaArchiveManifest parseFrom(
+ java.nio.ByteBuffer data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DeltaArchiveManifest parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DeltaArchiveManifest parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DeltaArchiveManifest parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DeltaArchiveManifest parseFrom(
+ byte[] data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DeltaArchiveManifest parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DeltaArchiveManifest parseFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DeltaArchiveManifest parseDelimitedFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DeltaArchiveManifest parseDelimitedFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DeltaArchiveManifest parseFrom(
+ com.google.protobuf.CodedInputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static chromeos_update_engine.UpdateMetadata.DeltaArchiveManifest parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() { return newBuilder(); }
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+ public static Builder newBuilder(chromeos_update_engine.UpdateMetadata.DeltaArchiveManifest prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE
+ ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(
+ com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+ /**
+ * Protobuf type {@code chromeos_update_engine.DeltaArchiveManifest}
+ */
+ public static final class Builder extends
+ com.google.protobuf.GeneratedMessageV3.Builder+ * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ public java.util.List+ * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ public int getInstallOperationsCount() {
+ if (installOperationsBuilder_ == null) {
+ return installOperations_.size();
+ } else {
+ return installOperationsBuilder_.getCount();
+ }
+ }
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ public chromeos_update_engine.UpdateMetadata.InstallOperation getInstallOperations(int index) {
+ if (installOperationsBuilder_ == null) {
+ return installOperations_.get(index);
+ } else {
+ return installOperationsBuilder_.getMessage(index);
+ }
+ }
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ public Builder setInstallOperations(
+ int index, chromeos_update_engine.UpdateMetadata.InstallOperation value) {
+ if (installOperationsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureInstallOperationsIsMutable();
+ installOperations_.set(index, value);
+ onChanged();
+ } else {
+ installOperationsBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ public Builder setInstallOperations(
+ int index, chromeos_update_engine.UpdateMetadata.InstallOperation.Builder builderForValue) {
+ if (installOperationsBuilder_ == null) {
+ ensureInstallOperationsIsMutable();
+ installOperations_.set(index, builderForValue.build());
+ onChanged();
+ } else {
+ installOperationsBuilder_.setMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ public Builder addInstallOperations(chromeos_update_engine.UpdateMetadata.InstallOperation value) {
+ if (installOperationsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureInstallOperationsIsMutable();
+ installOperations_.add(value);
+ onChanged();
+ } else {
+ installOperationsBuilder_.addMessage(value);
+ }
+ return this;
+ }
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ public Builder addInstallOperations(
+ int index, chromeos_update_engine.UpdateMetadata.InstallOperation value) {
+ if (installOperationsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureInstallOperationsIsMutable();
+ installOperations_.add(index, value);
+ onChanged();
+ } else {
+ installOperationsBuilder_.addMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ public Builder addInstallOperations(
+ chromeos_update_engine.UpdateMetadata.InstallOperation.Builder builderForValue) {
+ if (installOperationsBuilder_ == null) {
+ ensureInstallOperationsIsMutable();
+ installOperations_.add(builderForValue.build());
+ onChanged();
+ } else {
+ installOperationsBuilder_.addMessage(builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ public Builder addInstallOperations(
+ int index, chromeos_update_engine.UpdateMetadata.InstallOperation.Builder builderForValue) {
+ if (installOperationsBuilder_ == null) {
+ ensureInstallOperationsIsMutable();
+ installOperations_.add(index, builderForValue.build());
+ onChanged();
+ } else {
+ installOperationsBuilder_.addMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ public Builder addAllInstallOperations(
+ java.lang.Iterable extends chromeos_update_engine.UpdateMetadata.InstallOperation> values) {
+ if (installOperationsBuilder_ == null) {
+ ensureInstallOperationsIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(
+ values, installOperations_);
+ onChanged();
+ } else {
+ installOperationsBuilder_.addAllMessages(values);
+ }
+ return this;
+ }
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ public Builder clearInstallOperations() {
+ if (installOperationsBuilder_ == null) {
+ installOperations_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ } else {
+ installOperationsBuilder_.clear();
+ }
+ return this;
+ }
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ public Builder removeInstallOperations(int index) {
+ if (installOperationsBuilder_ == null) {
+ ensureInstallOperationsIsMutable();
+ installOperations_.remove(index);
+ onChanged();
+ } else {
+ installOperationsBuilder_.remove(index);
+ }
+ return this;
+ }
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ public chromeos_update_engine.UpdateMetadata.InstallOperation.Builder getInstallOperationsBuilder(
+ int index) {
+ return getInstallOperationsFieldBuilder().getBuilder(index);
+ }
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ public chromeos_update_engine.UpdateMetadata.InstallOperationOrBuilder getInstallOperationsOrBuilder(
+ int index) {
+ if (installOperationsBuilder_ == null) {
+ return installOperations_.get(index); } else {
+ return installOperationsBuilder_.getMessageOrBuilder(index);
+ }
+ }
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ public java.util.List extends chromeos_update_engine.UpdateMetadata.InstallOperationOrBuilder>
+ getInstallOperationsOrBuilderList() {
+ if (installOperationsBuilder_ != null) {
+ return installOperationsBuilder_.getMessageOrBuilderList();
+ } else {
+ return java.util.Collections.unmodifiableList(installOperations_);
+ }
+ }
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ public chromeos_update_engine.UpdateMetadata.InstallOperation.Builder addInstallOperationsBuilder() {
+ return getInstallOperationsFieldBuilder().addBuilder(
+ chromeos_update_engine.UpdateMetadata.InstallOperation.getDefaultInstance());
+ }
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ public chromeos_update_engine.UpdateMetadata.InstallOperation.Builder addInstallOperationsBuilder(
+ int index) {
+ return getInstallOperationsFieldBuilder().addBuilder(
+ index, chromeos_update_engine.UpdateMetadata.InstallOperation.getDefaultInstance());
+ }
+ /**
+ * + * Only present in major version = 1. List of install operations for the + * kernel and rootfs partitions. For major version = 2 see the |partitions| + * field. + *+ * + *
repeated .chromeos_update_engine.InstallOperation install_operations = 1;
+ */
+ public java.util.Listrepeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ public java.util.Listrepeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ public int getKernelInstallOperationsCount() {
+ if (kernelInstallOperationsBuilder_ == null) {
+ return kernelInstallOperations_.size();
+ } else {
+ return kernelInstallOperationsBuilder_.getCount();
+ }
+ }
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ public chromeos_update_engine.UpdateMetadata.InstallOperation getKernelInstallOperations(int index) {
+ if (kernelInstallOperationsBuilder_ == null) {
+ return kernelInstallOperations_.get(index);
+ } else {
+ return kernelInstallOperationsBuilder_.getMessage(index);
+ }
+ }
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ public Builder setKernelInstallOperations(
+ int index, chromeos_update_engine.UpdateMetadata.InstallOperation value) {
+ if (kernelInstallOperationsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureKernelInstallOperationsIsMutable();
+ kernelInstallOperations_.set(index, value);
+ onChanged();
+ } else {
+ kernelInstallOperationsBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ public Builder setKernelInstallOperations(
+ int index, chromeos_update_engine.UpdateMetadata.InstallOperation.Builder builderForValue) {
+ if (kernelInstallOperationsBuilder_ == null) {
+ ensureKernelInstallOperationsIsMutable();
+ kernelInstallOperations_.set(index, builderForValue.build());
+ onChanged();
+ } else {
+ kernelInstallOperationsBuilder_.setMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ public Builder addKernelInstallOperations(chromeos_update_engine.UpdateMetadata.InstallOperation value) {
+ if (kernelInstallOperationsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureKernelInstallOperationsIsMutable();
+ kernelInstallOperations_.add(value);
+ onChanged();
+ } else {
+ kernelInstallOperationsBuilder_.addMessage(value);
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ public Builder addKernelInstallOperations(
+ int index, chromeos_update_engine.UpdateMetadata.InstallOperation value) {
+ if (kernelInstallOperationsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureKernelInstallOperationsIsMutable();
+ kernelInstallOperations_.add(index, value);
+ onChanged();
+ } else {
+ kernelInstallOperationsBuilder_.addMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ public Builder addKernelInstallOperations(
+ chromeos_update_engine.UpdateMetadata.InstallOperation.Builder builderForValue) {
+ if (kernelInstallOperationsBuilder_ == null) {
+ ensureKernelInstallOperationsIsMutable();
+ kernelInstallOperations_.add(builderForValue.build());
+ onChanged();
+ } else {
+ kernelInstallOperationsBuilder_.addMessage(builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ public Builder addKernelInstallOperations(
+ int index, chromeos_update_engine.UpdateMetadata.InstallOperation.Builder builderForValue) {
+ if (kernelInstallOperationsBuilder_ == null) {
+ ensureKernelInstallOperationsIsMutable();
+ kernelInstallOperations_.add(index, builderForValue.build());
+ onChanged();
+ } else {
+ kernelInstallOperationsBuilder_.addMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ public Builder addAllKernelInstallOperations(
+ java.lang.Iterable extends chromeos_update_engine.UpdateMetadata.InstallOperation> values) {
+ if (kernelInstallOperationsBuilder_ == null) {
+ ensureKernelInstallOperationsIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(
+ values, kernelInstallOperations_);
+ onChanged();
+ } else {
+ kernelInstallOperationsBuilder_.addAllMessages(values);
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ public Builder clearKernelInstallOperations() {
+ if (kernelInstallOperationsBuilder_ == null) {
+ kernelInstallOperations_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ } else {
+ kernelInstallOperationsBuilder_.clear();
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ public Builder removeKernelInstallOperations(int index) {
+ if (kernelInstallOperationsBuilder_ == null) {
+ ensureKernelInstallOperationsIsMutable();
+ kernelInstallOperations_.remove(index);
+ onChanged();
+ } else {
+ kernelInstallOperationsBuilder_.remove(index);
+ }
+ return this;
+ }
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ public chromeos_update_engine.UpdateMetadata.InstallOperation.Builder getKernelInstallOperationsBuilder(
+ int index) {
+ return getKernelInstallOperationsFieldBuilder().getBuilder(index);
+ }
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ public chromeos_update_engine.UpdateMetadata.InstallOperationOrBuilder getKernelInstallOperationsOrBuilder(
+ int index) {
+ if (kernelInstallOperationsBuilder_ == null) {
+ return kernelInstallOperations_.get(index); } else {
+ return kernelInstallOperationsBuilder_.getMessageOrBuilder(index);
+ }
+ }
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ public java.util.List extends chromeos_update_engine.UpdateMetadata.InstallOperationOrBuilder>
+ getKernelInstallOperationsOrBuilderList() {
+ if (kernelInstallOperationsBuilder_ != null) {
+ return kernelInstallOperationsBuilder_.getMessageOrBuilderList();
+ } else {
+ return java.util.Collections.unmodifiableList(kernelInstallOperations_);
+ }
+ }
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ public chromeos_update_engine.UpdateMetadata.InstallOperation.Builder addKernelInstallOperationsBuilder() {
+ return getKernelInstallOperationsFieldBuilder().addBuilder(
+ chromeos_update_engine.UpdateMetadata.InstallOperation.getDefaultInstance());
+ }
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ public chromeos_update_engine.UpdateMetadata.InstallOperation.Builder addKernelInstallOperationsBuilder(
+ int index) {
+ return getKernelInstallOperationsFieldBuilder().addBuilder(
+ index, chromeos_update_engine.UpdateMetadata.InstallOperation.getDefaultInstance());
+ }
+ /**
+ * repeated .chromeos_update_engine.InstallOperation kernel_install_operations = 2;
+ */
+ public java.util.List+ * (At time of writing) usually 4096 + *+ * + *
optional uint32 block_size = 3 [default = 4096];
+ * @return Whether the blockSize field is set.
+ */
+ @java.lang.Override
+ public boolean hasBlockSize() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ * + * (At time of writing) usually 4096 + *+ * + *
optional uint32 block_size = 3 [default = 4096];
+ * @return The blockSize.
+ */
+ @java.lang.Override
+ public int getBlockSize() {
+ return blockSize_;
+ }
+ /**
+ * + * (At time of writing) usually 4096 + *+ * + *
optional uint32 block_size = 3 [default = 4096];
+ * @param value The blockSize to set.
+ * @return This builder for chaining.
+ */
+ public Builder setBlockSize(int value) {
+ bitField0_ |= 0x00000004;
+ blockSize_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * (At time of writing) usually 4096 + *+ * + *
optional uint32 block_size = 3 [default = 4096];
+ * @return This builder for chaining.
+ */
+ public Builder clearBlockSize() {
+ bitField0_ = (bitField0_ & ~0x00000004);
+ blockSize_ = 4096;
+ onChanged();
+ return this;
+ }
+
+ private long signaturesOffset_ ;
+ /**
+ * + * If signatures are present, the offset into the blobs, generally + * tacked onto the end of the file, and the length. We use an offset + * rather than a bool to allow for more flexibility in future file formats. + * If either is absent, it means signatures aren't supported in this + * file. + *+ * + *
optional uint64 signatures_offset = 4;
+ * @return Whether the signaturesOffset field is set.
+ */
+ @java.lang.Override
+ public boolean hasSignaturesOffset() {
+ return ((bitField0_ & 0x00000008) != 0);
+ }
+ /**
+ * + * If signatures are present, the offset into the blobs, generally + * tacked onto the end of the file, and the length. We use an offset + * rather than a bool to allow for more flexibility in future file formats. + * If either is absent, it means signatures aren't supported in this + * file. + *+ * + *
optional uint64 signatures_offset = 4;
+ * @return The signaturesOffset.
+ */
+ @java.lang.Override
+ public long getSignaturesOffset() {
+ return signaturesOffset_;
+ }
+ /**
+ * + * If signatures are present, the offset into the blobs, generally + * tacked onto the end of the file, and the length. We use an offset + * rather than a bool to allow for more flexibility in future file formats. + * If either is absent, it means signatures aren't supported in this + * file. + *+ * + *
optional uint64 signatures_offset = 4;
+ * @param value The signaturesOffset to set.
+ * @return This builder for chaining.
+ */
+ public Builder setSignaturesOffset(long value) {
+ bitField0_ |= 0x00000008;
+ signaturesOffset_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * If signatures are present, the offset into the blobs, generally + * tacked onto the end of the file, and the length. We use an offset + * rather than a bool to allow for more flexibility in future file formats. + * If either is absent, it means signatures aren't supported in this + * file. + *+ * + *
optional uint64 signatures_offset = 4;
+ * @return This builder for chaining.
+ */
+ public Builder clearSignaturesOffset() {
+ bitField0_ = (bitField0_ & ~0x00000008);
+ signaturesOffset_ = 0L;
+ onChanged();
+ return this;
+ }
+
+ private long signaturesSize_ ;
+ /**
+ * optional uint64 signatures_size = 5;
+ * @return Whether the signaturesSize field is set.
+ */
+ @java.lang.Override
+ public boolean hasSignaturesSize() {
+ return ((bitField0_ & 0x00000010) != 0);
+ }
+ /**
+ * optional uint64 signatures_size = 5;
+ * @return The signaturesSize.
+ */
+ @java.lang.Override
+ public long getSignaturesSize() {
+ return signaturesSize_;
+ }
+ /**
+ * optional uint64 signatures_size = 5;
+ * @param value The signaturesSize to set.
+ * @return This builder for chaining.
+ */
+ public Builder setSignaturesSize(long value) {
+ bitField0_ |= 0x00000010;
+ signaturesSize_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * optional uint64 signatures_size = 5;
+ * @return This builder for chaining.
+ */
+ public Builder clearSignaturesSize() {
+ bitField0_ = (bitField0_ & ~0x00000010);
+ signaturesSize_ = 0L;
+ onChanged();
+ return this;
+ }
+
+ private chromeos_update_engine.UpdateMetadata.PartitionInfo oldKernelInfo_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.PartitionInfo, chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder, chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder> oldKernelInfoBuilder_;
+ /**
+ * + * Only present in major version = 1. Partition metadata used to validate the + * update. For major version = 2 see the |partitions| field. + *+ * + *
optional .chromeos_update_engine.PartitionInfo old_kernel_info = 6;
+ * @return Whether the oldKernelInfo field is set.
+ */
+ public boolean hasOldKernelInfo() {
+ return ((bitField0_ & 0x00000020) != 0);
+ }
+ /**
+ * + * Only present in major version = 1. Partition metadata used to validate the + * update. For major version = 2 see the |partitions| field. + *+ * + *
optional .chromeos_update_engine.PartitionInfo old_kernel_info = 6;
+ * @return The oldKernelInfo.
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionInfo getOldKernelInfo() {
+ if (oldKernelInfoBuilder_ == null) {
+ return oldKernelInfo_ == null ? chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : oldKernelInfo_;
+ } else {
+ return oldKernelInfoBuilder_.getMessage();
+ }
+ }
+ /**
+ * + * Only present in major version = 1. Partition metadata used to validate the + * update. For major version = 2 see the |partitions| field. + *+ * + *
optional .chromeos_update_engine.PartitionInfo old_kernel_info = 6;
+ */
+ public Builder setOldKernelInfo(chromeos_update_engine.UpdateMetadata.PartitionInfo value) {
+ if (oldKernelInfoBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ oldKernelInfo_ = value;
+ onChanged();
+ } else {
+ oldKernelInfoBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000020;
+ return this;
+ }
+ /**
+ * + * Only present in major version = 1. Partition metadata used to validate the + * update. For major version = 2 see the |partitions| field. + *+ * + *
optional .chromeos_update_engine.PartitionInfo old_kernel_info = 6;
+ */
+ public Builder setOldKernelInfo(
+ chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder builderForValue) {
+ if (oldKernelInfoBuilder_ == null) {
+ oldKernelInfo_ = builderForValue.build();
+ onChanged();
+ } else {
+ oldKernelInfoBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000020;
+ return this;
+ }
+ /**
+ * + * Only present in major version = 1. Partition metadata used to validate the + * update. For major version = 2 see the |partitions| field. + *+ * + *
optional .chromeos_update_engine.PartitionInfo old_kernel_info = 6;
+ */
+ public Builder mergeOldKernelInfo(chromeos_update_engine.UpdateMetadata.PartitionInfo value) {
+ if (oldKernelInfoBuilder_ == null) {
+ if (((bitField0_ & 0x00000020) != 0) &&
+ oldKernelInfo_ != null &&
+ oldKernelInfo_ != chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance()) {
+ oldKernelInfo_ =
+ chromeos_update_engine.UpdateMetadata.PartitionInfo.newBuilder(oldKernelInfo_).mergeFrom(value).buildPartial();
+ } else {
+ oldKernelInfo_ = value;
+ }
+ onChanged();
+ } else {
+ oldKernelInfoBuilder_.mergeFrom(value);
+ }
+ bitField0_ |= 0x00000020;
+ return this;
+ }
+ /**
+ * + * Only present in major version = 1. Partition metadata used to validate the + * update. For major version = 2 see the |partitions| field. + *+ * + *
optional .chromeos_update_engine.PartitionInfo old_kernel_info = 6;
+ */
+ public Builder clearOldKernelInfo() {
+ if (oldKernelInfoBuilder_ == null) {
+ oldKernelInfo_ = null;
+ onChanged();
+ } else {
+ oldKernelInfoBuilder_.clear();
+ }
+ bitField0_ = (bitField0_ & ~0x00000020);
+ return this;
+ }
+ /**
+ * + * Only present in major version = 1. Partition metadata used to validate the + * update. For major version = 2 see the |partitions| field. + *+ * + *
optional .chromeos_update_engine.PartitionInfo old_kernel_info = 6;
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder getOldKernelInfoBuilder() {
+ bitField0_ |= 0x00000020;
+ onChanged();
+ return getOldKernelInfoFieldBuilder().getBuilder();
+ }
+ /**
+ * + * Only present in major version = 1. Partition metadata used to validate the + * update. For major version = 2 see the |partitions| field. + *+ * + *
optional .chromeos_update_engine.PartitionInfo old_kernel_info = 6;
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder getOldKernelInfoOrBuilder() {
+ if (oldKernelInfoBuilder_ != null) {
+ return oldKernelInfoBuilder_.getMessageOrBuilder();
+ } else {
+ return oldKernelInfo_ == null ?
+ chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : oldKernelInfo_;
+ }
+ }
+ /**
+ * + * Only present in major version = 1. Partition metadata used to validate the + * update. For major version = 2 see the |partitions| field. + *+ * + *
optional .chromeos_update_engine.PartitionInfo old_kernel_info = 6;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.PartitionInfo, chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder, chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder>
+ getOldKernelInfoFieldBuilder() {
+ if (oldKernelInfoBuilder_ == null) {
+ oldKernelInfoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.PartitionInfo, chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder, chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder>(
+ getOldKernelInfo(),
+ getParentForChildren(),
+ isClean());
+ oldKernelInfo_ = null;
+ }
+ return oldKernelInfoBuilder_;
+ }
+
+ private chromeos_update_engine.UpdateMetadata.PartitionInfo newKernelInfo_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.PartitionInfo, chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder, chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder> newKernelInfoBuilder_;
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_kernel_info = 7;
+ * @return Whether the newKernelInfo field is set.
+ */
+ public boolean hasNewKernelInfo() {
+ return ((bitField0_ & 0x00000040) != 0);
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_kernel_info = 7;
+ * @return The newKernelInfo.
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionInfo getNewKernelInfo() {
+ if (newKernelInfoBuilder_ == null) {
+ return newKernelInfo_ == null ? chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : newKernelInfo_;
+ } else {
+ return newKernelInfoBuilder_.getMessage();
+ }
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_kernel_info = 7;
+ */
+ public Builder setNewKernelInfo(chromeos_update_engine.UpdateMetadata.PartitionInfo value) {
+ if (newKernelInfoBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ newKernelInfo_ = value;
+ onChanged();
+ } else {
+ newKernelInfoBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000040;
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_kernel_info = 7;
+ */
+ public Builder setNewKernelInfo(
+ chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder builderForValue) {
+ if (newKernelInfoBuilder_ == null) {
+ newKernelInfo_ = builderForValue.build();
+ onChanged();
+ } else {
+ newKernelInfoBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000040;
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_kernel_info = 7;
+ */
+ public Builder mergeNewKernelInfo(chromeos_update_engine.UpdateMetadata.PartitionInfo value) {
+ if (newKernelInfoBuilder_ == null) {
+ if (((bitField0_ & 0x00000040) != 0) &&
+ newKernelInfo_ != null &&
+ newKernelInfo_ != chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance()) {
+ newKernelInfo_ =
+ chromeos_update_engine.UpdateMetadata.PartitionInfo.newBuilder(newKernelInfo_).mergeFrom(value).buildPartial();
+ } else {
+ newKernelInfo_ = value;
+ }
+ onChanged();
+ } else {
+ newKernelInfoBuilder_.mergeFrom(value);
+ }
+ bitField0_ |= 0x00000040;
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_kernel_info = 7;
+ */
+ public Builder clearNewKernelInfo() {
+ if (newKernelInfoBuilder_ == null) {
+ newKernelInfo_ = null;
+ onChanged();
+ } else {
+ newKernelInfoBuilder_.clear();
+ }
+ bitField0_ = (bitField0_ & ~0x00000040);
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_kernel_info = 7;
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder getNewKernelInfoBuilder() {
+ bitField0_ |= 0x00000040;
+ onChanged();
+ return getNewKernelInfoFieldBuilder().getBuilder();
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_kernel_info = 7;
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder getNewKernelInfoOrBuilder() {
+ if (newKernelInfoBuilder_ != null) {
+ return newKernelInfoBuilder_.getMessageOrBuilder();
+ } else {
+ return newKernelInfo_ == null ?
+ chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : newKernelInfo_;
+ }
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_kernel_info = 7;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.PartitionInfo, chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder, chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder>
+ getNewKernelInfoFieldBuilder() {
+ if (newKernelInfoBuilder_ == null) {
+ newKernelInfoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.PartitionInfo, chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder, chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder>(
+ getNewKernelInfo(),
+ getParentForChildren(),
+ isClean());
+ newKernelInfo_ = null;
+ }
+ return newKernelInfoBuilder_;
+ }
+
+ private chromeos_update_engine.UpdateMetadata.PartitionInfo oldRootfsInfo_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.PartitionInfo, chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder, chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder> oldRootfsInfoBuilder_;
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_rootfs_info = 8;
+ * @return Whether the oldRootfsInfo field is set.
+ */
+ public boolean hasOldRootfsInfo() {
+ return ((bitField0_ & 0x00000080) != 0);
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_rootfs_info = 8;
+ * @return The oldRootfsInfo.
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionInfo getOldRootfsInfo() {
+ if (oldRootfsInfoBuilder_ == null) {
+ return oldRootfsInfo_ == null ? chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : oldRootfsInfo_;
+ } else {
+ return oldRootfsInfoBuilder_.getMessage();
+ }
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_rootfs_info = 8;
+ */
+ public Builder setOldRootfsInfo(chromeos_update_engine.UpdateMetadata.PartitionInfo value) {
+ if (oldRootfsInfoBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ oldRootfsInfo_ = value;
+ onChanged();
+ } else {
+ oldRootfsInfoBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000080;
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_rootfs_info = 8;
+ */
+ public Builder setOldRootfsInfo(
+ chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder builderForValue) {
+ if (oldRootfsInfoBuilder_ == null) {
+ oldRootfsInfo_ = builderForValue.build();
+ onChanged();
+ } else {
+ oldRootfsInfoBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000080;
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_rootfs_info = 8;
+ */
+ public Builder mergeOldRootfsInfo(chromeos_update_engine.UpdateMetadata.PartitionInfo value) {
+ if (oldRootfsInfoBuilder_ == null) {
+ if (((bitField0_ & 0x00000080) != 0) &&
+ oldRootfsInfo_ != null &&
+ oldRootfsInfo_ != chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance()) {
+ oldRootfsInfo_ =
+ chromeos_update_engine.UpdateMetadata.PartitionInfo.newBuilder(oldRootfsInfo_).mergeFrom(value).buildPartial();
+ } else {
+ oldRootfsInfo_ = value;
+ }
+ onChanged();
+ } else {
+ oldRootfsInfoBuilder_.mergeFrom(value);
+ }
+ bitField0_ |= 0x00000080;
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_rootfs_info = 8;
+ */
+ public Builder clearOldRootfsInfo() {
+ if (oldRootfsInfoBuilder_ == null) {
+ oldRootfsInfo_ = null;
+ onChanged();
+ } else {
+ oldRootfsInfoBuilder_.clear();
+ }
+ bitField0_ = (bitField0_ & ~0x00000080);
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_rootfs_info = 8;
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder getOldRootfsInfoBuilder() {
+ bitField0_ |= 0x00000080;
+ onChanged();
+ return getOldRootfsInfoFieldBuilder().getBuilder();
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_rootfs_info = 8;
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder getOldRootfsInfoOrBuilder() {
+ if (oldRootfsInfoBuilder_ != null) {
+ return oldRootfsInfoBuilder_.getMessageOrBuilder();
+ } else {
+ return oldRootfsInfo_ == null ?
+ chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : oldRootfsInfo_;
+ }
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo old_rootfs_info = 8;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.PartitionInfo, chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder, chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder>
+ getOldRootfsInfoFieldBuilder() {
+ if (oldRootfsInfoBuilder_ == null) {
+ oldRootfsInfoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.PartitionInfo, chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder, chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder>(
+ getOldRootfsInfo(),
+ getParentForChildren(),
+ isClean());
+ oldRootfsInfo_ = null;
+ }
+ return oldRootfsInfoBuilder_;
+ }
+
+ private chromeos_update_engine.UpdateMetadata.PartitionInfo newRootfsInfo_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.PartitionInfo, chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder, chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder> newRootfsInfoBuilder_;
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_rootfs_info = 9;
+ * @return Whether the newRootfsInfo field is set.
+ */
+ public boolean hasNewRootfsInfo() {
+ return ((bitField0_ & 0x00000100) != 0);
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_rootfs_info = 9;
+ * @return The newRootfsInfo.
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionInfo getNewRootfsInfo() {
+ if (newRootfsInfoBuilder_ == null) {
+ return newRootfsInfo_ == null ? chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : newRootfsInfo_;
+ } else {
+ return newRootfsInfoBuilder_.getMessage();
+ }
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_rootfs_info = 9;
+ */
+ public Builder setNewRootfsInfo(chromeos_update_engine.UpdateMetadata.PartitionInfo value) {
+ if (newRootfsInfoBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ newRootfsInfo_ = value;
+ onChanged();
+ } else {
+ newRootfsInfoBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000100;
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_rootfs_info = 9;
+ */
+ public Builder setNewRootfsInfo(
+ chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder builderForValue) {
+ if (newRootfsInfoBuilder_ == null) {
+ newRootfsInfo_ = builderForValue.build();
+ onChanged();
+ } else {
+ newRootfsInfoBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000100;
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_rootfs_info = 9;
+ */
+ public Builder mergeNewRootfsInfo(chromeos_update_engine.UpdateMetadata.PartitionInfo value) {
+ if (newRootfsInfoBuilder_ == null) {
+ if (((bitField0_ & 0x00000100) != 0) &&
+ newRootfsInfo_ != null &&
+ newRootfsInfo_ != chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance()) {
+ newRootfsInfo_ =
+ chromeos_update_engine.UpdateMetadata.PartitionInfo.newBuilder(newRootfsInfo_).mergeFrom(value).buildPartial();
+ } else {
+ newRootfsInfo_ = value;
+ }
+ onChanged();
+ } else {
+ newRootfsInfoBuilder_.mergeFrom(value);
+ }
+ bitField0_ |= 0x00000100;
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_rootfs_info = 9;
+ */
+ public Builder clearNewRootfsInfo() {
+ if (newRootfsInfoBuilder_ == null) {
+ newRootfsInfo_ = null;
+ onChanged();
+ } else {
+ newRootfsInfoBuilder_.clear();
+ }
+ bitField0_ = (bitField0_ & ~0x00000100);
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_rootfs_info = 9;
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder getNewRootfsInfoBuilder() {
+ bitField0_ |= 0x00000100;
+ onChanged();
+ return getNewRootfsInfoFieldBuilder().getBuilder();
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_rootfs_info = 9;
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder getNewRootfsInfoOrBuilder() {
+ if (newRootfsInfoBuilder_ != null) {
+ return newRootfsInfoBuilder_.getMessageOrBuilder();
+ } else {
+ return newRootfsInfo_ == null ?
+ chromeos_update_engine.UpdateMetadata.PartitionInfo.getDefaultInstance() : newRootfsInfo_;
+ }
+ }
+ /**
+ * optional .chromeos_update_engine.PartitionInfo new_rootfs_info = 9;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.PartitionInfo, chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder, chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder>
+ getNewRootfsInfoFieldBuilder() {
+ if (newRootfsInfoBuilder_ == null) {
+ newRootfsInfoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.PartitionInfo, chromeos_update_engine.UpdateMetadata.PartitionInfo.Builder, chromeos_update_engine.UpdateMetadata.PartitionInfoOrBuilder>(
+ getNewRootfsInfo(),
+ getParentForChildren(),
+ isClean());
+ newRootfsInfo_ = null;
+ }
+ return newRootfsInfoBuilder_;
+ }
+
+ private chromeos_update_engine.UpdateMetadata.ImageInfo oldImageInfo_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.ImageInfo, chromeos_update_engine.UpdateMetadata.ImageInfo.Builder, chromeos_update_engine.UpdateMetadata.ImageInfoOrBuilder> oldImageInfoBuilder_;
+ /**
+ * + * old_image_info will only be present for delta images. + *+ * + *
optional .chromeos_update_engine.ImageInfo old_image_info = 10;
+ * @return Whether the oldImageInfo field is set.
+ */
+ public boolean hasOldImageInfo() {
+ return ((bitField0_ & 0x00000200) != 0);
+ }
+ /**
+ * + * old_image_info will only be present for delta images. + *+ * + *
optional .chromeos_update_engine.ImageInfo old_image_info = 10;
+ * @return The oldImageInfo.
+ */
+ public chromeos_update_engine.UpdateMetadata.ImageInfo getOldImageInfo() {
+ if (oldImageInfoBuilder_ == null) {
+ return oldImageInfo_ == null ? chromeos_update_engine.UpdateMetadata.ImageInfo.getDefaultInstance() : oldImageInfo_;
+ } else {
+ return oldImageInfoBuilder_.getMessage();
+ }
+ }
+ /**
+ * + * old_image_info will only be present for delta images. + *+ * + *
optional .chromeos_update_engine.ImageInfo old_image_info = 10;
+ */
+ public Builder setOldImageInfo(chromeos_update_engine.UpdateMetadata.ImageInfo value) {
+ if (oldImageInfoBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ oldImageInfo_ = value;
+ onChanged();
+ } else {
+ oldImageInfoBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000200;
+ return this;
+ }
+ /**
+ * + * old_image_info will only be present for delta images. + *+ * + *
optional .chromeos_update_engine.ImageInfo old_image_info = 10;
+ */
+ public Builder setOldImageInfo(
+ chromeos_update_engine.UpdateMetadata.ImageInfo.Builder builderForValue) {
+ if (oldImageInfoBuilder_ == null) {
+ oldImageInfo_ = builderForValue.build();
+ onChanged();
+ } else {
+ oldImageInfoBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000200;
+ return this;
+ }
+ /**
+ * + * old_image_info will only be present for delta images. + *+ * + *
optional .chromeos_update_engine.ImageInfo old_image_info = 10;
+ */
+ public Builder mergeOldImageInfo(chromeos_update_engine.UpdateMetadata.ImageInfo value) {
+ if (oldImageInfoBuilder_ == null) {
+ if (((bitField0_ & 0x00000200) != 0) &&
+ oldImageInfo_ != null &&
+ oldImageInfo_ != chromeos_update_engine.UpdateMetadata.ImageInfo.getDefaultInstance()) {
+ oldImageInfo_ =
+ chromeos_update_engine.UpdateMetadata.ImageInfo.newBuilder(oldImageInfo_).mergeFrom(value).buildPartial();
+ } else {
+ oldImageInfo_ = value;
+ }
+ onChanged();
+ } else {
+ oldImageInfoBuilder_.mergeFrom(value);
+ }
+ bitField0_ |= 0x00000200;
+ return this;
+ }
+ /**
+ * + * old_image_info will only be present for delta images. + *+ * + *
optional .chromeos_update_engine.ImageInfo old_image_info = 10;
+ */
+ public Builder clearOldImageInfo() {
+ if (oldImageInfoBuilder_ == null) {
+ oldImageInfo_ = null;
+ onChanged();
+ } else {
+ oldImageInfoBuilder_.clear();
+ }
+ bitField0_ = (bitField0_ & ~0x00000200);
+ return this;
+ }
+ /**
+ * + * old_image_info will only be present for delta images. + *+ * + *
optional .chromeos_update_engine.ImageInfo old_image_info = 10;
+ */
+ public chromeos_update_engine.UpdateMetadata.ImageInfo.Builder getOldImageInfoBuilder() {
+ bitField0_ |= 0x00000200;
+ onChanged();
+ return getOldImageInfoFieldBuilder().getBuilder();
+ }
+ /**
+ * + * old_image_info will only be present for delta images. + *+ * + *
optional .chromeos_update_engine.ImageInfo old_image_info = 10;
+ */
+ public chromeos_update_engine.UpdateMetadata.ImageInfoOrBuilder getOldImageInfoOrBuilder() {
+ if (oldImageInfoBuilder_ != null) {
+ return oldImageInfoBuilder_.getMessageOrBuilder();
+ } else {
+ return oldImageInfo_ == null ?
+ chromeos_update_engine.UpdateMetadata.ImageInfo.getDefaultInstance() : oldImageInfo_;
+ }
+ }
+ /**
+ * + * old_image_info will only be present for delta images. + *+ * + *
optional .chromeos_update_engine.ImageInfo old_image_info = 10;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.ImageInfo, chromeos_update_engine.UpdateMetadata.ImageInfo.Builder, chromeos_update_engine.UpdateMetadata.ImageInfoOrBuilder>
+ getOldImageInfoFieldBuilder() {
+ if (oldImageInfoBuilder_ == null) {
+ oldImageInfoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.ImageInfo, chromeos_update_engine.UpdateMetadata.ImageInfo.Builder, chromeos_update_engine.UpdateMetadata.ImageInfoOrBuilder>(
+ getOldImageInfo(),
+ getParentForChildren(),
+ isClean());
+ oldImageInfo_ = null;
+ }
+ return oldImageInfoBuilder_;
+ }
+
+ private chromeos_update_engine.UpdateMetadata.ImageInfo newImageInfo_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.ImageInfo, chromeos_update_engine.UpdateMetadata.ImageInfo.Builder, chromeos_update_engine.UpdateMetadata.ImageInfoOrBuilder> newImageInfoBuilder_;
+ /**
+ * optional .chromeos_update_engine.ImageInfo new_image_info = 11;
+ * @return Whether the newImageInfo field is set.
+ */
+ public boolean hasNewImageInfo() {
+ return ((bitField0_ & 0x00000400) != 0);
+ }
+ /**
+ * optional .chromeos_update_engine.ImageInfo new_image_info = 11;
+ * @return The newImageInfo.
+ */
+ public chromeos_update_engine.UpdateMetadata.ImageInfo getNewImageInfo() {
+ if (newImageInfoBuilder_ == null) {
+ return newImageInfo_ == null ? chromeos_update_engine.UpdateMetadata.ImageInfo.getDefaultInstance() : newImageInfo_;
+ } else {
+ return newImageInfoBuilder_.getMessage();
+ }
+ }
+ /**
+ * optional .chromeos_update_engine.ImageInfo new_image_info = 11;
+ */
+ public Builder setNewImageInfo(chromeos_update_engine.UpdateMetadata.ImageInfo value) {
+ if (newImageInfoBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ newImageInfo_ = value;
+ onChanged();
+ } else {
+ newImageInfoBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000400;
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.ImageInfo new_image_info = 11;
+ */
+ public Builder setNewImageInfo(
+ chromeos_update_engine.UpdateMetadata.ImageInfo.Builder builderForValue) {
+ if (newImageInfoBuilder_ == null) {
+ newImageInfo_ = builderForValue.build();
+ onChanged();
+ } else {
+ newImageInfoBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000400;
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.ImageInfo new_image_info = 11;
+ */
+ public Builder mergeNewImageInfo(chromeos_update_engine.UpdateMetadata.ImageInfo value) {
+ if (newImageInfoBuilder_ == null) {
+ if (((bitField0_ & 0x00000400) != 0) &&
+ newImageInfo_ != null &&
+ newImageInfo_ != chromeos_update_engine.UpdateMetadata.ImageInfo.getDefaultInstance()) {
+ newImageInfo_ =
+ chromeos_update_engine.UpdateMetadata.ImageInfo.newBuilder(newImageInfo_).mergeFrom(value).buildPartial();
+ } else {
+ newImageInfo_ = value;
+ }
+ onChanged();
+ } else {
+ newImageInfoBuilder_.mergeFrom(value);
+ }
+ bitField0_ |= 0x00000400;
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.ImageInfo new_image_info = 11;
+ */
+ public Builder clearNewImageInfo() {
+ if (newImageInfoBuilder_ == null) {
+ newImageInfo_ = null;
+ onChanged();
+ } else {
+ newImageInfoBuilder_.clear();
+ }
+ bitField0_ = (bitField0_ & ~0x00000400);
+ return this;
+ }
+ /**
+ * optional .chromeos_update_engine.ImageInfo new_image_info = 11;
+ */
+ public chromeos_update_engine.UpdateMetadata.ImageInfo.Builder getNewImageInfoBuilder() {
+ bitField0_ |= 0x00000400;
+ onChanged();
+ return getNewImageInfoFieldBuilder().getBuilder();
+ }
+ /**
+ * optional .chromeos_update_engine.ImageInfo new_image_info = 11;
+ */
+ public chromeos_update_engine.UpdateMetadata.ImageInfoOrBuilder getNewImageInfoOrBuilder() {
+ if (newImageInfoBuilder_ != null) {
+ return newImageInfoBuilder_.getMessageOrBuilder();
+ } else {
+ return newImageInfo_ == null ?
+ chromeos_update_engine.UpdateMetadata.ImageInfo.getDefaultInstance() : newImageInfo_;
+ }
+ }
+ /**
+ * optional .chromeos_update_engine.ImageInfo new_image_info = 11;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.ImageInfo, chromeos_update_engine.UpdateMetadata.ImageInfo.Builder, chromeos_update_engine.UpdateMetadata.ImageInfoOrBuilder>
+ getNewImageInfoFieldBuilder() {
+ if (newImageInfoBuilder_ == null) {
+ newImageInfoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.ImageInfo, chromeos_update_engine.UpdateMetadata.ImageInfo.Builder, chromeos_update_engine.UpdateMetadata.ImageInfoOrBuilder>(
+ getNewImageInfo(),
+ getParentForChildren(),
+ isClean());
+ newImageInfo_ = null;
+ }
+ return newImageInfoBuilder_;
+ }
+
+ private int minorVersion_ ;
+ /**
+ * + * The minor version, also referred as "delta version", of the payload. + * Minor version 0 is full payload, everything else is delta payload. + *+ * + *
optional uint32 minor_version = 12 [default = 0];
+ * @return Whether the minorVersion field is set.
+ */
+ @java.lang.Override
+ public boolean hasMinorVersion() {
+ return ((bitField0_ & 0x00000800) != 0);
+ }
+ /**
+ * + * The minor version, also referred as "delta version", of the payload. + * Minor version 0 is full payload, everything else is delta payload. + *+ * + *
optional uint32 minor_version = 12 [default = 0];
+ * @return The minorVersion.
+ */
+ @java.lang.Override
+ public int getMinorVersion() {
+ return minorVersion_;
+ }
+ /**
+ * + * The minor version, also referred as "delta version", of the payload. + * Minor version 0 is full payload, everything else is delta payload. + *+ * + *
optional uint32 minor_version = 12 [default = 0];
+ * @param value The minorVersion to set.
+ * @return This builder for chaining.
+ */
+ public Builder setMinorVersion(int value) {
+ bitField0_ |= 0x00000800;
+ minorVersion_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * The minor version, also referred as "delta version", of the payload. + * Minor version 0 is full payload, everything else is delta payload. + *+ * + *
optional uint32 minor_version = 12 [default = 0];
+ * @return This builder for chaining.
+ */
+ public Builder clearMinorVersion() {
+ bitField0_ = (bitField0_ & ~0x00000800);
+ minorVersion_ = 0;
+ onChanged();
+ return this;
+ }
+
+ private java.util.List+ * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ public java.util.List+ * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ public int getPartitionsCount() {
+ if (partitionsBuilder_ == null) {
+ return partitions_.size();
+ } else {
+ return partitionsBuilder_.getCount();
+ }
+ }
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionUpdate getPartitions(int index) {
+ if (partitionsBuilder_ == null) {
+ return partitions_.get(index);
+ } else {
+ return partitionsBuilder_.getMessage(index);
+ }
+ }
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ public Builder setPartitions(
+ int index, chromeos_update_engine.UpdateMetadata.PartitionUpdate value) {
+ if (partitionsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensurePartitionsIsMutable();
+ partitions_.set(index, value);
+ onChanged();
+ } else {
+ partitionsBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ public Builder setPartitions(
+ int index, chromeos_update_engine.UpdateMetadata.PartitionUpdate.Builder builderForValue) {
+ if (partitionsBuilder_ == null) {
+ ensurePartitionsIsMutable();
+ partitions_.set(index, builderForValue.build());
+ onChanged();
+ } else {
+ partitionsBuilder_.setMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ public Builder addPartitions(chromeos_update_engine.UpdateMetadata.PartitionUpdate value) {
+ if (partitionsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensurePartitionsIsMutable();
+ partitions_.add(value);
+ onChanged();
+ } else {
+ partitionsBuilder_.addMessage(value);
+ }
+ return this;
+ }
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ public Builder addPartitions(
+ int index, chromeos_update_engine.UpdateMetadata.PartitionUpdate value) {
+ if (partitionsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensurePartitionsIsMutable();
+ partitions_.add(index, value);
+ onChanged();
+ } else {
+ partitionsBuilder_.addMessage(index, value);
+ }
+ return this;
+ }
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ public Builder addPartitions(
+ chromeos_update_engine.UpdateMetadata.PartitionUpdate.Builder builderForValue) {
+ if (partitionsBuilder_ == null) {
+ ensurePartitionsIsMutable();
+ partitions_.add(builderForValue.build());
+ onChanged();
+ } else {
+ partitionsBuilder_.addMessage(builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ public Builder addPartitions(
+ int index, chromeos_update_engine.UpdateMetadata.PartitionUpdate.Builder builderForValue) {
+ if (partitionsBuilder_ == null) {
+ ensurePartitionsIsMutable();
+ partitions_.add(index, builderForValue.build());
+ onChanged();
+ } else {
+ partitionsBuilder_.addMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ public Builder addAllPartitions(
+ java.lang.Iterable extends chromeos_update_engine.UpdateMetadata.PartitionUpdate> values) {
+ if (partitionsBuilder_ == null) {
+ ensurePartitionsIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(
+ values, partitions_);
+ onChanged();
+ } else {
+ partitionsBuilder_.addAllMessages(values);
+ }
+ return this;
+ }
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ public Builder clearPartitions() {
+ if (partitionsBuilder_ == null) {
+ partitions_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00001000);
+ onChanged();
+ } else {
+ partitionsBuilder_.clear();
+ }
+ return this;
+ }
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ public Builder removePartitions(int index) {
+ if (partitionsBuilder_ == null) {
+ ensurePartitionsIsMutable();
+ partitions_.remove(index);
+ onChanged();
+ } else {
+ partitionsBuilder_.remove(index);
+ }
+ return this;
+ }
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionUpdate.Builder getPartitionsBuilder(
+ int index) {
+ return getPartitionsFieldBuilder().getBuilder(index);
+ }
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionUpdateOrBuilder getPartitionsOrBuilder(
+ int index) {
+ if (partitionsBuilder_ == null) {
+ return partitions_.get(index); } else {
+ return partitionsBuilder_.getMessageOrBuilder(index);
+ }
+ }
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ public java.util.List extends chromeos_update_engine.UpdateMetadata.PartitionUpdateOrBuilder>
+ getPartitionsOrBuilderList() {
+ if (partitionsBuilder_ != null) {
+ return partitionsBuilder_.getMessageOrBuilderList();
+ } else {
+ return java.util.Collections.unmodifiableList(partitions_);
+ }
+ }
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionUpdate.Builder addPartitionsBuilder() {
+ return getPartitionsFieldBuilder().addBuilder(
+ chromeos_update_engine.UpdateMetadata.PartitionUpdate.getDefaultInstance());
+ }
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ public chromeos_update_engine.UpdateMetadata.PartitionUpdate.Builder addPartitionsBuilder(
+ int index) {
+ return getPartitionsFieldBuilder().addBuilder(
+ index, chromeos_update_engine.UpdateMetadata.PartitionUpdate.getDefaultInstance());
+ }
+ /**
+ * + * Only present in major version >= 2. List of partitions that will be + * updated, in the order they will be updated. This field replaces the + * |install_operations|, |kernel_install_operations| and the + * |{old,new}_{kernel,rootfs}_info| fields used in major version = 1. This + * array can have more than two partitions if needed, and they are identified + * by the partition name. + *+ * + *
repeated .chromeos_update_engine.PartitionUpdate partitions = 13;
+ */
+ public java.util.List+ * The maximum timestamp of the OS allowed to apply this payload. + * Can be used to prevent downgrading the OS. + *+ * + *
optional int64 max_timestamp = 14;
+ * @return Whether the maxTimestamp field is set.
+ */
+ @java.lang.Override
+ public boolean hasMaxTimestamp() {
+ return ((bitField0_ & 0x00002000) != 0);
+ }
+ /**
+ * + * The maximum timestamp of the OS allowed to apply this payload. + * Can be used to prevent downgrading the OS. + *+ * + *
optional int64 max_timestamp = 14;
+ * @return The maxTimestamp.
+ */
+ @java.lang.Override
+ public long getMaxTimestamp() {
+ return maxTimestamp_;
+ }
+ /**
+ * + * The maximum timestamp of the OS allowed to apply this payload. + * Can be used to prevent downgrading the OS. + *+ * + *
optional int64 max_timestamp = 14;
+ * @param value The maxTimestamp to set.
+ * @return This builder for chaining.
+ */
+ public Builder setMaxTimestamp(long value) {
+ bitField0_ |= 0x00002000;
+ maxTimestamp_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * The maximum timestamp of the OS allowed to apply this payload. + * Can be used to prevent downgrading the OS. + *+ * + *
optional int64 max_timestamp = 14;
+ * @return This builder for chaining.
+ */
+ public Builder clearMaxTimestamp() {
+ bitField0_ = (bitField0_ & ~0x00002000);
+ maxTimestamp_ = 0L;
+ onChanged();
+ return this;
+ }
+
+ private chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata dynamicPartitionMetadata_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata, chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata.Builder, chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadataOrBuilder> dynamicPartitionMetadataBuilder_;
+ /**
+ * + * Metadata related to all dynamic partitions. + *+ * + *
optional .chromeos_update_engine.DynamicPartitionMetadata dynamic_partition_metadata = 15;
+ * @return Whether the dynamicPartitionMetadata field is set.
+ */
+ public boolean hasDynamicPartitionMetadata() {
+ return ((bitField0_ & 0x00004000) != 0);
+ }
+ /**
+ * + * Metadata related to all dynamic partitions. + *+ * + *
optional .chromeos_update_engine.DynamicPartitionMetadata dynamic_partition_metadata = 15;
+ * @return The dynamicPartitionMetadata.
+ */
+ public chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata getDynamicPartitionMetadata() {
+ if (dynamicPartitionMetadataBuilder_ == null) {
+ return dynamicPartitionMetadata_ == null ? chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata.getDefaultInstance() : dynamicPartitionMetadata_;
+ } else {
+ return dynamicPartitionMetadataBuilder_.getMessage();
+ }
+ }
+ /**
+ * + * Metadata related to all dynamic partitions. + *+ * + *
optional .chromeos_update_engine.DynamicPartitionMetadata dynamic_partition_metadata = 15;
+ */
+ public Builder setDynamicPartitionMetadata(chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata value) {
+ if (dynamicPartitionMetadataBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ dynamicPartitionMetadata_ = value;
+ onChanged();
+ } else {
+ dynamicPartitionMetadataBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00004000;
+ return this;
+ }
+ /**
+ * + * Metadata related to all dynamic partitions. + *+ * + *
optional .chromeos_update_engine.DynamicPartitionMetadata dynamic_partition_metadata = 15;
+ */
+ public Builder setDynamicPartitionMetadata(
+ chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata.Builder builderForValue) {
+ if (dynamicPartitionMetadataBuilder_ == null) {
+ dynamicPartitionMetadata_ = builderForValue.build();
+ onChanged();
+ } else {
+ dynamicPartitionMetadataBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00004000;
+ return this;
+ }
+ /**
+ * + * Metadata related to all dynamic partitions. + *+ * + *
optional .chromeos_update_engine.DynamicPartitionMetadata dynamic_partition_metadata = 15;
+ */
+ public Builder mergeDynamicPartitionMetadata(chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata value) {
+ if (dynamicPartitionMetadataBuilder_ == null) {
+ if (((bitField0_ & 0x00004000) != 0) &&
+ dynamicPartitionMetadata_ != null &&
+ dynamicPartitionMetadata_ != chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata.getDefaultInstance()) {
+ dynamicPartitionMetadata_ =
+ chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata.newBuilder(dynamicPartitionMetadata_).mergeFrom(value).buildPartial();
+ } else {
+ dynamicPartitionMetadata_ = value;
+ }
+ onChanged();
+ } else {
+ dynamicPartitionMetadataBuilder_.mergeFrom(value);
+ }
+ bitField0_ |= 0x00004000;
+ return this;
+ }
+ /**
+ * + * Metadata related to all dynamic partitions. + *+ * + *
optional .chromeos_update_engine.DynamicPartitionMetadata dynamic_partition_metadata = 15;
+ */
+ public Builder clearDynamicPartitionMetadata() {
+ if (dynamicPartitionMetadataBuilder_ == null) {
+ dynamicPartitionMetadata_ = null;
+ onChanged();
+ } else {
+ dynamicPartitionMetadataBuilder_.clear();
+ }
+ bitField0_ = (bitField0_ & ~0x00004000);
+ return this;
+ }
+ /**
+ * + * Metadata related to all dynamic partitions. + *+ * + *
optional .chromeos_update_engine.DynamicPartitionMetadata dynamic_partition_metadata = 15;
+ */
+ public chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata.Builder getDynamicPartitionMetadataBuilder() {
+ bitField0_ |= 0x00004000;
+ onChanged();
+ return getDynamicPartitionMetadataFieldBuilder().getBuilder();
+ }
+ /**
+ * + * Metadata related to all dynamic partitions. + *+ * + *
optional .chromeos_update_engine.DynamicPartitionMetadata dynamic_partition_metadata = 15;
+ */
+ public chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadataOrBuilder getDynamicPartitionMetadataOrBuilder() {
+ if (dynamicPartitionMetadataBuilder_ != null) {
+ return dynamicPartitionMetadataBuilder_.getMessageOrBuilder();
+ } else {
+ return dynamicPartitionMetadata_ == null ?
+ chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata.getDefaultInstance() : dynamicPartitionMetadata_;
+ }
+ }
+ /**
+ * + * Metadata related to all dynamic partitions. + *+ * + *
optional .chromeos_update_engine.DynamicPartitionMetadata dynamic_partition_metadata = 15;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata, chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata.Builder, chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadataOrBuilder>
+ getDynamicPartitionMetadataFieldBuilder() {
+ if (dynamicPartitionMetadataBuilder_ == null) {
+ dynamicPartitionMetadataBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+ chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata, chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadata.Builder, chromeos_update_engine.UpdateMetadata.DynamicPartitionMetadataOrBuilder>(
+ getDynamicPartitionMetadata(),
+ getParentForChildren(),
+ isClean());
+ dynamicPartitionMetadata_ = null;
+ }
+ return dynamicPartitionMetadataBuilder_;
+ }
+
+ private boolean partialUpdate_ ;
+ /**
+ * + * If the payload only updates a subset of partitions on the device. + *+ * + *
optional bool partial_update = 16;
+ * @return Whether the partialUpdate field is set.
+ */
+ @java.lang.Override
+ public boolean hasPartialUpdate() {
+ return ((bitField0_ & 0x00008000) != 0);
+ }
+ /**
+ * + * If the payload only updates a subset of partitions on the device. + *+ * + *
optional bool partial_update = 16;
+ * @return The partialUpdate.
+ */
+ @java.lang.Override
+ public boolean getPartialUpdate() {
+ return partialUpdate_;
+ }
+ /**
+ * + * If the payload only updates a subset of partitions on the device. + *+ * + *
optional bool partial_update = 16;
+ * @param value The partialUpdate to set.
+ * @return This builder for chaining.
+ */
+ public Builder setPartialUpdate(boolean value) {
+ bitField0_ |= 0x00008000;
+ partialUpdate_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * + * If the payload only updates a subset of partitions on the device. + *+ * + *
optional bool partial_update = 16;
+ * @return This builder for chaining.
+ */
+ public Builder clearPartialUpdate() {
+ bitField0_ = (bitField0_ & ~0x00008000);
+ partialUpdate_ = false;
+ onChanged();
+ return this;
+ }
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+
+ // @@protoc_insertion_point(builder_scope:chromeos_update_engine.DeltaArchiveManifest)
+ }
+
+ // @@protoc_insertion_point(class_scope:chromeos_update_engine.DeltaArchiveManifest)
+ private static final chromeos_update_engine.UpdateMetadata.DeltaArchiveManifest DEFAULT_INSTANCE;
+ static {
+ DEFAULT_INSTANCE = new chromeos_update_engine.UpdateMetadata.DeltaArchiveManifest();
+ }
+
+ public static chromeos_update_engine.UpdateMetadata.DeltaArchiveManifest getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ @java.lang.Deprecated public static final com.google.protobuf.Parser