• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2020 Google LLC
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     https://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 // Generated by the protocol buffer compiler.  DO NOT EDIT!
17 // source: google/cloud/compute/v1/compute.proto
18 
19 package com.google.cloud.compute.v1;
20 
21 /**
22  *
23  *
24  * <pre>
25  * Represents a Persistent Disk Snapshot resource. You can use snapshots to back up data on a regular interval. For more information, read Creating persistent disk snapshots.
26  * </pre>
27  *
28  * Protobuf type {@code google.cloud.compute.v1.Snapshot}
29  */
30 public final class Snapshot extends com.google.protobuf.GeneratedMessageV3
31     implements
32     // @@protoc_insertion_point(message_implements:google.cloud.compute.v1.Snapshot)
33     SnapshotOrBuilder {
34   private static final long serialVersionUID = 0L;
35   // Use Snapshot.newBuilder() to construct.
Snapshot(com.google.protobuf.GeneratedMessageV3.Builder<?> builder)36   private Snapshot(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
37     super(builder);
38   }
39 
Snapshot()40   private Snapshot() {
41     architecture_ = "";
42     chainName_ = "";
43     creationTimestamp_ = "";
44     description_ = "";
45     kind_ = "";
46     labelFingerprint_ = "";
47     licenseCodes_ = emptyLongList();
48     licenses_ = com.google.protobuf.LazyStringArrayList.EMPTY;
49     locationHint_ = "";
50     name_ = "";
51     selfLink_ = "";
52     snapshotType_ = "";
53     sourceDisk_ = "";
54     sourceDiskId_ = "";
55     sourceSnapshotSchedulePolicy_ = "";
56     sourceSnapshotSchedulePolicyId_ = "";
57     status_ = "";
58     storageBytesStatus_ = "";
59     storageLocations_ = com.google.protobuf.LazyStringArrayList.EMPTY;
60   }
61 
62   @java.lang.Override
63   @SuppressWarnings({"unused"})
newInstance(UnusedPrivateParameter unused)64   protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
65     return new Snapshot();
66   }
67 
68   @java.lang.Override
getUnknownFields()69   public final com.google.protobuf.UnknownFieldSet getUnknownFields() {
70     return this.unknownFields;
71   }
72 
getDescriptor()73   public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
74     return com.google.cloud.compute.v1.Compute
75         .internal_static_google_cloud_compute_v1_Snapshot_descriptor;
76   }
77 
78   @SuppressWarnings({"rawtypes"})
79   @java.lang.Override
internalGetMapField(int number)80   protected com.google.protobuf.MapField internalGetMapField(int number) {
81     switch (number) {
82       case 500195327:
83         return internalGetLabels();
84       default:
85         throw new RuntimeException("Invalid map field number: " + number);
86     }
87   }
88 
89   @java.lang.Override
90   protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()91       internalGetFieldAccessorTable() {
92     return com.google.cloud.compute.v1.Compute
93         .internal_static_google_cloud_compute_v1_Snapshot_fieldAccessorTable
94         .ensureFieldAccessorsInitialized(
95             com.google.cloud.compute.v1.Snapshot.class,
96             com.google.cloud.compute.v1.Snapshot.Builder.class);
97   }
98 
99   /**
100    *
101    *
102    * <pre>
103    * [Output Only] The architecture of the snapshot. Valid values are ARM64 or X86_64.
104    * </pre>
105    *
106    * Protobuf enum {@code google.cloud.compute.v1.Snapshot.Architecture}
107    */
108   public enum Architecture implements com.google.protobuf.ProtocolMessageEnum {
109     /**
110      *
111      *
112      * <pre>
113      * A value indicating that the enum field is not set.
114      * </pre>
115      *
116      * <code>UNDEFINED_ARCHITECTURE = 0;</code>
117      */
118     UNDEFINED_ARCHITECTURE(0),
119     /**
120      *
121      *
122      * <pre>
123      * Default value indicating Architecture is not set.
124      * </pre>
125      *
126      * <code>ARCHITECTURE_UNSPECIFIED = 394750507;</code>
127      */
128     ARCHITECTURE_UNSPECIFIED(394750507),
129     /**
130      *
131      *
132      * <pre>
133      * Machines with architecture ARM64
134      * </pre>
135      *
136      * <code>ARM64 = 62547450;</code>
137      */
138     ARM64(62547450),
139     /**
140      *
141      *
142      * <pre>
143      * Machines with architecture X86_64
144      * </pre>
145      *
146      * <code>X86_64 = 425300551;</code>
147      */
148     X86_64(425300551),
149     UNRECOGNIZED(-1),
150     ;
151 
152     /**
153      *
154      *
155      * <pre>
156      * A value indicating that the enum field is not set.
157      * </pre>
158      *
159      * <code>UNDEFINED_ARCHITECTURE = 0;</code>
160      */
161     public static final int UNDEFINED_ARCHITECTURE_VALUE = 0;
162     /**
163      *
164      *
165      * <pre>
166      * Default value indicating Architecture is not set.
167      * </pre>
168      *
169      * <code>ARCHITECTURE_UNSPECIFIED = 394750507;</code>
170      */
171     public static final int ARCHITECTURE_UNSPECIFIED_VALUE = 394750507;
172     /**
173      *
174      *
175      * <pre>
176      * Machines with architecture ARM64
177      * </pre>
178      *
179      * <code>ARM64 = 62547450;</code>
180      */
181     public static final int ARM64_VALUE = 62547450;
182     /**
183      *
184      *
185      * <pre>
186      * Machines with architecture X86_64
187      * </pre>
188      *
189      * <code>X86_64 = 425300551;</code>
190      */
191     public static final int X86_64_VALUE = 425300551;
192 
getNumber()193     public final int getNumber() {
194       if (this == UNRECOGNIZED) {
195         throw new java.lang.IllegalArgumentException(
196             "Can't get the number of an unknown enum value.");
197       }
198       return value;
199     }
200 
201     /**
202      * @param value The numeric wire value of the corresponding enum entry.
203      * @return The enum associated with the given numeric wire value.
204      * @deprecated Use {@link #forNumber(int)} instead.
205      */
206     @java.lang.Deprecated
valueOf(int value)207     public static Architecture valueOf(int value) {
208       return forNumber(value);
209     }
210 
211     /**
212      * @param value The numeric wire value of the corresponding enum entry.
213      * @return The enum associated with the given numeric wire value.
214      */
forNumber(int value)215     public static Architecture forNumber(int value) {
216       switch (value) {
217         case 0:
218           return UNDEFINED_ARCHITECTURE;
219         case 394750507:
220           return ARCHITECTURE_UNSPECIFIED;
221         case 62547450:
222           return ARM64;
223         case 425300551:
224           return X86_64;
225         default:
226           return null;
227       }
228     }
229 
internalGetValueMap()230     public static com.google.protobuf.Internal.EnumLiteMap<Architecture> internalGetValueMap() {
231       return internalValueMap;
232     }
233 
234     private static final com.google.protobuf.Internal.EnumLiteMap<Architecture> internalValueMap =
235         new com.google.protobuf.Internal.EnumLiteMap<Architecture>() {
236           public Architecture findValueByNumber(int number) {
237             return Architecture.forNumber(number);
238           }
239         };
240 
getValueDescriptor()241     public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() {
242       if (this == UNRECOGNIZED) {
243         throw new java.lang.IllegalStateException(
244             "Can't get the descriptor of an unrecognized enum value.");
245       }
246       return getDescriptor().getValues().get(ordinal());
247     }
248 
getDescriptorForType()249     public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() {
250       return getDescriptor();
251     }
252 
getDescriptor()253     public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() {
254       return com.google.cloud.compute.v1.Snapshot.getDescriptor().getEnumTypes().get(0);
255     }
256 
257     private static final Architecture[] VALUES = values();
258 
valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc)259     public static Architecture valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
260       if (desc.getType() != getDescriptor()) {
261         throw new java.lang.IllegalArgumentException("EnumValueDescriptor is not for this type.");
262       }
263       if (desc.getIndex() == -1) {
264         return UNRECOGNIZED;
265       }
266       return VALUES[desc.getIndex()];
267     }
268 
269     private final int value;
270 
Architecture(int value)271     private Architecture(int value) {
272       this.value = value;
273     }
274 
275     // @@protoc_insertion_point(enum_scope:google.cloud.compute.v1.Snapshot.Architecture)
276   }
277 
278   /**
279    *
280    *
281    * <pre>
282    * Indicates the type of the snapshot.
283    * </pre>
284    *
285    * Protobuf enum {@code google.cloud.compute.v1.Snapshot.SnapshotType}
286    */
287   public enum SnapshotType implements com.google.protobuf.ProtocolMessageEnum {
288     /**
289      *
290      *
291      * <pre>
292      * A value indicating that the enum field is not set.
293      * </pre>
294      *
295      * <code>UNDEFINED_SNAPSHOT_TYPE = 0;</code>
296      */
297     UNDEFINED_SNAPSHOT_TYPE(0),
298     /** <code>ARCHIVE = 506752162;</code> */
299     ARCHIVE(506752162),
300     /** <code>STANDARD = 484642493;</code> */
301     STANDARD(484642493),
302     UNRECOGNIZED(-1),
303     ;
304 
305     /**
306      *
307      *
308      * <pre>
309      * A value indicating that the enum field is not set.
310      * </pre>
311      *
312      * <code>UNDEFINED_SNAPSHOT_TYPE = 0;</code>
313      */
314     public static final int UNDEFINED_SNAPSHOT_TYPE_VALUE = 0;
315     /** <code>ARCHIVE = 506752162;</code> */
316     public static final int ARCHIVE_VALUE = 506752162;
317     /** <code>STANDARD = 484642493;</code> */
318     public static final int STANDARD_VALUE = 484642493;
319 
getNumber()320     public final int getNumber() {
321       if (this == UNRECOGNIZED) {
322         throw new java.lang.IllegalArgumentException(
323             "Can't get the number of an unknown enum value.");
324       }
325       return value;
326     }
327 
328     /**
329      * @param value The numeric wire value of the corresponding enum entry.
330      * @return The enum associated with the given numeric wire value.
331      * @deprecated Use {@link #forNumber(int)} instead.
332      */
333     @java.lang.Deprecated
valueOf(int value)334     public static SnapshotType valueOf(int value) {
335       return forNumber(value);
336     }
337 
338     /**
339      * @param value The numeric wire value of the corresponding enum entry.
340      * @return The enum associated with the given numeric wire value.
341      */
forNumber(int value)342     public static SnapshotType forNumber(int value) {
343       switch (value) {
344         case 0:
345           return UNDEFINED_SNAPSHOT_TYPE;
346         case 506752162:
347           return ARCHIVE;
348         case 484642493:
349           return STANDARD;
350         default:
351           return null;
352       }
353     }
354 
internalGetValueMap()355     public static com.google.protobuf.Internal.EnumLiteMap<SnapshotType> internalGetValueMap() {
356       return internalValueMap;
357     }
358 
359     private static final com.google.protobuf.Internal.EnumLiteMap<SnapshotType> internalValueMap =
360         new com.google.protobuf.Internal.EnumLiteMap<SnapshotType>() {
361           public SnapshotType findValueByNumber(int number) {
362             return SnapshotType.forNumber(number);
363           }
364         };
365 
getValueDescriptor()366     public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() {
367       if (this == UNRECOGNIZED) {
368         throw new java.lang.IllegalStateException(
369             "Can't get the descriptor of an unrecognized enum value.");
370       }
371       return getDescriptor().getValues().get(ordinal());
372     }
373 
getDescriptorForType()374     public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() {
375       return getDescriptor();
376     }
377 
getDescriptor()378     public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() {
379       return com.google.cloud.compute.v1.Snapshot.getDescriptor().getEnumTypes().get(1);
380     }
381 
382     private static final SnapshotType[] VALUES = values();
383 
valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc)384     public static SnapshotType valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
385       if (desc.getType() != getDescriptor()) {
386         throw new java.lang.IllegalArgumentException("EnumValueDescriptor is not for this type.");
387       }
388       if (desc.getIndex() == -1) {
389         return UNRECOGNIZED;
390       }
391       return VALUES[desc.getIndex()];
392     }
393 
394     private final int value;
395 
SnapshotType(int value)396     private SnapshotType(int value) {
397       this.value = value;
398     }
399 
400     // @@protoc_insertion_point(enum_scope:google.cloud.compute.v1.Snapshot.SnapshotType)
401   }
402 
403   /**
404    *
405    *
406    * <pre>
407    * [Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.
408    * </pre>
409    *
410    * Protobuf enum {@code google.cloud.compute.v1.Snapshot.Status}
411    */
412   public enum Status implements com.google.protobuf.ProtocolMessageEnum {
413     /**
414      *
415      *
416      * <pre>
417      * A value indicating that the enum field is not set.
418      * </pre>
419      *
420      * <code>UNDEFINED_STATUS = 0;</code>
421      */
422     UNDEFINED_STATUS(0),
423     /**
424      *
425      *
426      * <pre>
427      * Snapshot creation is in progress.
428      * </pre>
429      *
430      * <code>CREATING = 455564985;</code>
431      */
432     CREATING(455564985),
433     /**
434      *
435      *
436      * <pre>
437      * Snapshot is currently being deleted.
438      * </pre>
439      *
440      * <code>DELETING = 528602024;</code>
441      */
442     DELETING(528602024),
443     /**
444      *
445      *
446      * <pre>
447      * Snapshot creation failed.
448      * </pre>
449      *
450      * <code>FAILED = 455706685;</code>
451      */
452     FAILED(455706685),
453     /**
454      *
455      *
456      * <pre>
457      * Snapshot has been created successfully.
458      * </pre>
459      *
460      * <code>READY = 77848963;</code>
461      */
462     READY(77848963),
463     /**
464      *
465      *
466      * <pre>
467      * Snapshot is being uploaded.
468      * </pre>
469      *
470      * <code>UPLOADING = 267603489;</code>
471      */
472     UPLOADING(267603489),
473     UNRECOGNIZED(-1),
474     ;
475 
476     /**
477      *
478      *
479      * <pre>
480      * A value indicating that the enum field is not set.
481      * </pre>
482      *
483      * <code>UNDEFINED_STATUS = 0;</code>
484      */
485     public static final int UNDEFINED_STATUS_VALUE = 0;
486     /**
487      *
488      *
489      * <pre>
490      * Snapshot creation is in progress.
491      * </pre>
492      *
493      * <code>CREATING = 455564985;</code>
494      */
495     public static final int CREATING_VALUE = 455564985;
496     /**
497      *
498      *
499      * <pre>
500      * Snapshot is currently being deleted.
501      * </pre>
502      *
503      * <code>DELETING = 528602024;</code>
504      */
505     public static final int DELETING_VALUE = 528602024;
506     /**
507      *
508      *
509      * <pre>
510      * Snapshot creation failed.
511      * </pre>
512      *
513      * <code>FAILED = 455706685;</code>
514      */
515     public static final int FAILED_VALUE = 455706685;
516     /**
517      *
518      *
519      * <pre>
520      * Snapshot has been created successfully.
521      * </pre>
522      *
523      * <code>READY = 77848963;</code>
524      */
525     public static final int READY_VALUE = 77848963;
526     /**
527      *
528      *
529      * <pre>
530      * Snapshot is being uploaded.
531      * </pre>
532      *
533      * <code>UPLOADING = 267603489;</code>
534      */
535     public static final int UPLOADING_VALUE = 267603489;
536 
getNumber()537     public final int getNumber() {
538       if (this == UNRECOGNIZED) {
539         throw new java.lang.IllegalArgumentException(
540             "Can't get the number of an unknown enum value.");
541       }
542       return value;
543     }
544 
545     /**
546      * @param value The numeric wire value of the corresponding enum entry.
547      * @return The enum associated with the given numeric wire value.
548      * @deprecated Use {@link #forNumber(int)} instead.
549      */
550     @java.lang.Deprecated
valueOf(int value)551     public static Status valueOf(int value) {
552       return forNumber(value);
553     }
554 
555     /**
556      * @param value The numeric wire value of the corresponding enum entry.
557      * @return The enum associated with the given numeric wire value.
558      */
forNumber(int value)559     public static Status forNumber(int value) {
560       switch (value) {
561         case 0:
562           return UNDEFINED_STATUS;
563         case 455564985:
564           return CREATING;
565         case 528602024:
566           return DELETING;
567         case 455706685:
568           return FAILED;
569         case 77848963:
570           return READY;
571         case 267603489:
572           return UPLOADING;
573         default:
574           return null;
575       }
576     }
577 
internalGetValueMap()578     public static com.google.protobuf.Internal.EnumLiteMap<Status> internalGetValueMap() {
579       return internalValueMap;
580     }
581 
582     private static final com.google.protobuf.Internal.EnumLiteMap<Status> internalValueMap =
583         new com.google.protobuf.Internal.EnumLiteMap<Status>() {
584           public Status findValueByNumber(int number) {
585             return Status.forNumber(number);
586           }
587         };
588 
getValueDescriptor()589     public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() {
590       if (this == UNRECOGNIZED) {
591         throw new java.lang.IllegalStateException(
592             "Can't get the descriptor of an unrecognized enum value.");
593       }
594       return getDescriptor().getValues().get(ordinal());
595     }
596 
getDescriptorForType()597     public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() {
598       return getDescriptor();
599     }
600 
getDescriptor()601     public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() {
602       return com.google.cloud.compute.v1.Snapshot.getDescriptor().getEnumTypes().get(2);
603     }
604 
605     private static final Status[] VALUES = values();
606 
valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc)607     public static Status valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
608       if (desc.getType() != getDescriptor()) {
609         throw new java.lang.IllegalArgumentException("EnumValueDescriptor is not for this type.");
610       }
611       if (desc.getIndex() == -1) {
612         return UNRECOGNIZED;
613       }
614       return VALUES[desc.getIndex()];
615     }
616 
617     private final int value;
618 
Status(int value)619     private Status(int value) {
620       this.value = value;
621     }
622 
623     // @@protoc_insertion_point(enum_scope:google.cloud.compute.v1.Snapshot.Status)
624   }
625 
626   /**
627    *
628    *
629    * <pre>
630    * [Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date.
631    * </pre>
632    *
633    * Protobuf enum {@code google.cloud.compute.v1.Snapshot.StorageBytesStatus}
634    */
635   public enum StorageBytesStatus implements com.google.protobuf.ProtocolMessageEnum {
636     /**
637      *
638      *
639      * <pre>
640      * A value indicating that the enum field is not set.
641      * </pre>
642      *
643      * <code>UNDEFINED_STORAGE_BYTES_STATUS = 0;</code>
644      */
645     UNDEFINED_STORAGE_BYTES_STATUS(0),
646     /** <code>UPDATING = 494614342;</code> */
647     UPDATING(494614342),
648     /** <code>UP_TO_DATE = 101306702;</code> */
649     UP_TO_DATE(101306702),
650     UNRECOGNIZED(-1),
651     ;
652 
653     /**
654      *
655      *
656      * <pre>
657      * A value indicating that the enum field is not set.
658      * </pre>
659      *
660      * <code>UNDEFINED_STORAGE_BYTES_STATUS = 0;</code>
661      */
662     public static final int UNDEFINED_STORAGE_BYTES_STATUS_VALUE = 0;
663     /** <code>UPDATING = 494614342;</code> */
664     public static final int UPDATING_VALUE = 494614342;
665     /** <code>UP_TO_DATE = 101306702;</code> */
666     public static final int UP_TO_DATE_VALUE = 101306702;
667 
getNumber()668     public final int getNumber() {
669       if (this == UNRECOGNIZED) {
670         throw new java.lang.IllegalArgumentException(
671             "Can't get the number of an unknown enum value.");
672       }
673       return value;
674     }
675 
676     /**
677      * @param value The numeric wire value of the corresponding enum entry.
678      * @return The enum associated with the given numeric wire value.
679      * @deprecated Use {@link #forNumber(int)} instead.
680      */
681     @java.lang.Deprecated
valueOf(int value)682     public static StorageBytesStatus valueOf(int value) {
683       return forNumber(value);
684     }
685 
686     /**
687      * @param value The numeric wire value of the corresponding enum entry.
688      * @return The enum associated with the given numeric wire value.
689      */
forNumber(int value)690     public static StorageBytesStatus forNumber(int value) {
691       switch (value) {
692         case 0:
693           return UNDEFINED_STORAGE_BYTES_STATUS;
694         case 494614342:
695           return UPDATING;
696         case 101306702:
697           return UP_TO_DATE;
698         default:
699           return null;
700       }
701     }
702 
703     public static com.google.protobuf.Internal.EnumLiteMap<StorageBytesStatus>
internalGetValueMap()704         internalGetValueMap() {
705       return internalValueMap;
706     }
707 
708     private static final com.google.protobuf.Internal.EnumLiteMap<StorageBytesStatus>
709         internalValueMap =
710             new com.google.protobuf.Internal.EnumLiteMap<StorageBytesStatus>() {
711               public StorageBytesStatus findValueByNumber(int number) {
712                 return StorageBytesStatus.forNumber(number);
713               }
714             };
715 
getValueDescriptor()716     public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() {
717       if (this == UNRECOGNIZED) {
718         throw new java.lang.IllegalStateException(
719             "Can't get the descriptor of an unrecognized enum value.");
720       }
721       return getDescriptor().getValues().get(ordinal());
722     }
723 
getDescriptorForType()724     public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() {
725       return getDescriptor();
726     }
727 
getDescriptor()728     public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() {
729       return com.google.cloud.compute.v1.Snapshot.getDescriptor().getEnumTypes().get(3);
730     }
731 
732     private static final StorageBytesStatus[] VALUES = values();
733 
valueOf( com.google.protobuf.Descriptors.EnumValueDescriptor desc)734     public static StorageBytesStatus valueOf(
735         com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
736       if (desc.getType() != getDescriptor()) {
737         throw new java.lang.IllegalArgumentException("EnumValueDescriptor is not for this type.");
738       }
739       if (desc.getIndex() == -1) {
740         return UNRECOGNIZED;
741       }
742       return VALUES[desc.getIndex()];
743     }
744 
745     private final int value;
746 
StorageBytesStatus(int value)747     private StorageBytesStatus(int value) {
748       this.value = value;
749     }
750 
751     // @@protoc_insertion_point(enum_scope:google.cloud.compute.v1.Snapshot.StorageBytesStatus)
752   }
753 
754   private int bitField0_;
755   public static final int ARCHITECTURE_FIELD_NUMBER = 302803283;
756 
757   @SuppressWarnings("serial")
758   private volatile java.lang.Object architecture_ = "";
759   /**
760    *
761    *
762    * <pre>
763    * [Output Only] The architecture of the snapshot. Valid values are ARM64 or X86_64.
764    * Check the Architecture enum for the list of possible values.
765    * </pre>
766    *
767    * <code>optional string architecture = 302803283;</code>
768    *
769    * @return Whether the architecture field is set.
770    */
771   @java.lang.Override
hasArchitecture()772   public boolean hasArchitecture() {
773     return ((bitField0_ & 0x00000001) != 0);
774   }
775   /**
776    *
777    *
778    * <pre>
779    * [Output Only] The architecture of the snapshot. Valid values are ARM64 or X86_64.
780    * Check the Architecture enum for the list of possible values.
781    * </pre>
782    *
783    * <code>optional string architecture = 302803283;</code>
784    *
785    * @return The architecture.
786    */
787   @java.lang.Override
getArchitecture()788   public java.lang.String getArchitecture() {
789     java.lang.Object ref = architecture_;
790     if (ref instanceof java.lang.String) {
791       return (java.lang.String) ref;
792     } else {
793       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
794       java.lang.String s = bs.toStringUtf8();
795       architecture_ = s;
796       return s;
797     }
798   }
799   /**
800    *
801    *
802    * <pre>
803    * [Output Only] The architecture of the snapshot. Valid values are ARM64 or X86_64.
804    * Check the Architecture enum for the list of possible values.
805    * </pre>
806    *
807    * <code>optional string architecture = 302803283;</code>
808    *
809    * @return The bytes for architecture.
810    */
811   @java.lang.Override
getArchitectureBytes()812   public com.google.protobuf.ByteString getArchitectureBytes() {
813     java.lang.Object ref = architecture_;
814     if (ref instanceof java.lang.String) {
815       com.google.protobuf.ByteString b =
816           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
817       architecture_ = b;
818       return b;
819     } else {
820       return (com.google.protobuf.ByteString) ref;
821     }
822   }
823 
824   public static final int AUTO_CREATED_FIELD_NUMBER = 463922264;
825   private boolean autoCreated_ = false;
826   /**
827    *
828    *
829    * <pre>
830    * [Output Only] Set to true if snapshots are automatically created by applying resource policy on the target disk.
831    * </pre>
832    *
833    * <code>optional bool auto_created = 463922264;</code>
834    *
835    * @return Whether the autoCreated field is set.
836    */
837   @java.lang.Override
hasAutoCreated()838   public boolean hasAutoCreated() {
839     return ((bitField0_ & 0x00000002) != 0);
840   }
841   /**
842    *
843    *
844    * <pre>
845    * [Output Only] Set to true if snapshots are automatically created by applying resource policy on the target disk.
846    * </pre>
847    *
848    * <code>optional bool auto_created = 463922264;</code>
849    *
850    * @return The autoCreated.
851    */
852   @java.lang.Override
getAutoCreated()853   public boolean getAutoCreated() {
854     return autoCreated_;
855   }
856 
857   public static final int CHAIN_NAME_FIELD_NUMBER = 68644169;
858 
859   @SuppressWarnings("serial")
860   private volatile java.lang.Object chainName_ = "";
861   /**
862    *
863    *
864    * <pre>
865    * Creates the new snapshot in the snapshot chain labeled with the specified name. The chain name must be 1-63 characters long and comply with RFC1035. This is an uncommon option only for advanced service owners who needs to create separate snapshot chains, for example, for chargeback tracking. When you describe your snapshot resource, this field is visible only if it has a non-empty value.
866    * </pre>
867    *
868    * <code>optional string chain_name = 68644169;</code>
869    *
870    * @return Whether the chainName field is set.
871    */
872   @java.lang.Override
hasChainName()873   public boolean hasChainName() {
874     return ((bitField0_ & 0x00000004) != 0);
875   }
876   /**
877    *
878    *
879    * <pre>
880    * Creates the new snapshot in the snapshot chain labeled with the specified name. The chain name must be 1-63 characters long and comply with RFC1035. This is an uncommon option only for advanced service owners who needs to create separate snapshot chains, for example, for chargeback tracking. When you describe your snapshot resource, this field is visible only if it has a non-empty value.
881    * </pre>
882    *
883    * <code>optional string chain_name = 68644169;</code>
884    *
885    * @return The chainName.
886    */
887   @java.lang.Override
getChainName()888   public java.lang.String getChainName() {
889     java.lang.Object ref = chainName_;
890     if (ref instanceof java.lang.String) {
891       return (java.lang.String) ref;
892     } else {
893       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
894       java.lang.String s = bs.toStringUtf8();
895       chainName_ = s;
896       return s;
897     }
898   }
899   /**
900    *
901    *
902    * <pre>
903    * Creates the new snapshot in the snapshot chain labeled with the specified name. The chain name must be 1-63 characters long and comply with RFC1035. This is an uncommon option only for advanced service owners who needs to create separate snapshot chains, for example, for chargeback tracking. When you describe your snapshot resource, this field is visible only if it has a non-empty value.
904    * </pre>
905    *
906    * <code>optional string chain_name = 68644169;</code>
907    *
908    * @return The bytes for chainName.
909    */
910   @java.lang.Override
getChainNameBytes()911   public com.google.protobuf.ByteString getChainNameBytes() {
912     java.lang.Object ref = chainName_;
913     if (ref instanceof java.lang.String) {
914       com.google.protobuf.ByteString b =
915           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
916       chainName_ = b;
917       return b;
918     } else {
919       return (com.google.protobuf.ByteString) ref;
920     }
921   }
922 
923   public static final int CREATION_SIZE_BYTES_FIELD_NUMBER = 125400077;
924   private long creationSizeBytes_ = 0L;
925   /**
926    *
927    *
928    * <pre>
929    * [Output Only] Size in bytes of the snapshot at creation time.
930    * </pre>
931    *
932    * <code>optional int64 creation_size_bytes = 125400077;</code>
933    *
934    * @return Whether the creationSizeBytes field is set.
935    */
936   @java.lang.Override
hasCreationSizeBytes()937   public boolean hasCreationSizeBytes() {
938     return ((bitField0_ & 0x00000008) != 0);
939   }
940   /**
941    *
942    *
943    * <pre>
944    * [Output Only] Size in bytes of the snapshot at creation time.
945    * </pre>
946    *
947    * <code>optional int64 creation_size_bytes = 125400077;</code>
948    *
949    * @return The creationSizeBytes.
950    */
951   @java.lang.Override
getCreationSizeBytes()952   public long getCreationSizeBytes() {
953     return creationSizeBytes_;
954   }
955 
956   public static final int CREATION_TIMESTAMP_FIELD_NUMBER = 30525366;
957 
958   @SuppressWarnings("serial")
959   private volatile java.lang.Object creationTimestamp_ = "";
960   /**
961    *
962    *
963    * <pre>
964    * [Output Only] Creation timestamp in RFC3339 text format.
965    * </pre>
966    *
967    * <code>optional string creation_timestamp = 30525366;</code>
968    *
969    * @return Whether the creationTimestamp field is set.
970    */
971   @java.lang.Override
hasCreationTimestamp()972   public boolean hasCreationTimestamp() {
973     return ((bitField0_ & 0x00000010) != 0);
974   }
975   /**
976    *
977    *
978    * <pre>
979    * [Output Only] Creation timestamp in RFC3339 text format.
980    * </pre>
981    *
982    * <code>optional string creation_timestamp = 30525366;</code>
983    *
984    * @return The creationTimestamp.
985    */
986   @java.lang.Override
getCreationTimestamp()987   public java.lang.String getCreationTimestamp() {
988     java.lang.Object ref = creationTimestamp_;
989     if (ref instanceof java.lang.String) {
990       return (java.lang.String) ref;
991     } else {
992       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
993       java.lang.String s = bs.toStringUtf8();
994       creationTimestamp_ = s;
995       return s;
996     }
997   }
998   /**
999    *
1000    *
1001    * <pre>
1002    * [Output Only] Creation timestamp in RFC3339 text format.
1003    * </pre>
1004    *
1005    * <code>optional string creation_timestamp = 30525366;</code>
1006    *
1007    * @return The bytes for creationTimestamp.
1008    */
1009   @java.lang.Override
getCreationTimestampBytes()1010   public com.google.protobuf.ByteString getCreationTimestampBytes() {
1011     java.lang.Object ref = creationTimestamp_;
1012     if (ref instanceof java.lang.String) {
1013       com.google.protobuf.ByteString b =
1014           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1015       creationTimestamp_ = b;
1016       return b;
1017     } else {
1018       return (com.google.protobuf.ByteString) ref;
1019     }
1020   }
1021 
1022   public static final int DESCRIPTION_FIELD_NUMBER = 422937596;
1023 
1024   @SuppressWarnings("serial")
1025   private volatile java.lang.Object description_ = "";
1026   /**
1027    *
1028    *
1029    * <pre>
1030    * An optional description of this resource. Provide this property when you create the resource.
1031    * </pre>
1032    *
1033    * <code>optional string description = 422937596;</code>
1034    *
1035    * @return Whether the description field is set.
1036    */
1037   @java.lang.Override
hasDescription()1038   public boolean hasDescription() {
1039     return ((bitField0_ & 0x00000020) != 0);
1040   }
1041   /**
1042    *
1043    *
1044    * <pre>
1045    * An optional description of this resource. Provide this property when you create the resource.
1046    * </pre>
1047    *
1048    * <code>optional string description = 422937596;</code>
1049    *
1050    * @return The description.
1051    */
1052   @java.lang.Override
getDescription()1053   public java.lang.String getDescription() {
1054     java.lang.Object ref = description_;
1055     if (ref instanceof java.lang.String) {
1056       return (java.lang.String) ref;
1057     } else {
1058       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1059       java.lang.String s = bs.toStringUtf8();
1060       description_ = s;
1061       return s;
1062     }
1063   }
1064   /**
1065    *
1066    *
1067    * <pre>
1068    * An optional description of this resource. Provide this property when you create the resource.
1069    * </pre>
1070    *
1071    * <code>optional string description = 422937596;</code>
1072    *
1073    * @return The bytes for description.
1074    */
1075   @java.lang.Override
getDescriptionBytes()1076   public com.google.protobuf.ByteString getDescriptionBytes() {
1077     java.lang.Object ref = description_;
1078     if (ref instanceof java.lang.String) {
1079       com.google.protobuf.ByteString b =
1080           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1081       description_ = b;
1082       return b;
1083     } else {
1084       return (com.google.protobuf.ByteString) ref;
1085     }
1086   }
1087 
1088   public static final int DISK_SIZE_GB_FIELD_NUMBER = 316263735;
1089   private long diskSizeGb_ = 0L;
1090   /**
1091    *
1092    *
1093    * <pre>
1094    * [Output Only] Size of the source disk, specified in GB.
1095    * </pre>
1096    *
1097    * <code>optional int64 disk_size_gb = 316263735;</code>
1098    *
1099    * @return Whether the diskSizeGb field is set.
1100    */
1101   @java.lang.Override
hasDiskSizeGb()1102   public boolean hasDiskSizeGb() {
1103     return ((bitField0_ & 0x00000040) != 0);
1104   }
1105   /**
1106    *
1107    *
1108    * <pre>
1109    * [Output Only] Size of the source disk, specified in GB.
1110    * </pre>
1111    *
1112    * <code>optional int64 disk_size_gb = 316263735;</code>
1113    *
1114    * @return The diskSizeGb.
1115    */
1116   @java.lang.Override
getDiskSizeGb()1117   public long getDiskSizeGb() {
1118     return diskSizeGb_;
1119   }
1120 
1121   public static final int DOWNLOAD_BYTES_FIELD_NUMBER = 435054068;
1122   private long downloadBytes_ = 0L;
1123   /**
1124    *
1125    *
1126    * <pre>
1127    * [Output Only] Number of bytes downloaded to restore a snapshot to a disk.
1128    * </pre>
1129    *
1130    * <code>optional int64 download_bytes = 435054068;</code>
1131    *
1132    * @return Whether the downloadBytes field is set.
1133    */
1134   @java.lang.Override
hasDownloadBytes()1135   public boolean hasDownloadBytes() {
1136     return ((bitField0_ & 0x00000080) != 0);
1137   }
1138   /**
1139    *
1140    *
1141    * <pre>
1142    * [Output Only] Number of bytes downloaded to restore a snapshot to a disk.
1143    * </pre>
1144    *
1145    * <code>optional int64 download_bytes = 435054068;</code>
1146    *
1147    * @return The downloadBytes.
1148    */
1149   @java.lang.Override
getDownloadBytes()1150   public long getDownloadBytes() {
1151     return downloadBytes_;
1152   }
1153 
1154   public static final int ID_FIELD_NUMBER = 3355;
1155   private long id_ = 0L;
1156   /**
1157    *
1158    *
1159    * <pre>
1160    * [Output Only] The unique identifier for the resource. This identifier is defined by the server.
1161    * </pre>
1162    *
1163    * <code>optional uint64 id = 3355;</code>
1164    *
1165    * @return Whether the id field is set.
1166    */
1167   @java.lang.Override
hasId()1168   public boolean hasId() {
1169     return ((bitField0_ & 0x00000100) != 0);
1170   }
1171   /**
1172    *
1173    *
1174    * <pre>
1175    * [Output Only] The unique identifier for the resource. This identifier is defined by the server.
1176    * </pre>
1177    *
1178    * <code>optional uint64 id = 3355;</code>
1179    *
1180    * @return The id.
1181    */
1182   @java.lang.Override
getId()1183   public long getId() {
1184     return id_;
1185   }
1186 
1187   public static final int KIND_FIELD_NUMBER = 3292052;
1188 
1189   @SuppressWarnings("serial")
1190   private volatile java.lang.Object kind_ = "";
1191   /**
1192    *
1193    *
1194    * <pre>
1195    * [Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.
1196    * </pre>
1197    *
1198    * <code>optional string kind = 3292052;</code>
1199    *
1200    * @return Whether the kind field is set.
1201    */
1202   @java.lang.Override
hasKind()1203   public boolean hasKind() {
1204     return ((bitField0_ & 0x00000200) != 0);
1205   }
1206   /**
1207    *
1208    *
1209    * <pre>
1210    * [Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.
1211    * </pre>
1212    *
1213    * <code>optional string kind = 3292052;</code>
1214    *
1215    * @return The kind.
1216    */
1217   @java.lang.Override
getKind()1218   public java.lang.String getKind() {
1219     java.lang.Object ref = kind_;
1220     if (ref instanceof java.lang.String) {
1221       return (java.lang.String) ref;
1222     } else {
1223       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1224       java.lang.String s = bs.toStringUtf8();
1225       kind_ = s;
1226       return s;
1227     }
1228   }
1229   /**
1230    *
1231    *
1232    * <pre>
1233    * [Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.
1234    * </pre>
1235    *
1236    * <code>optional string kind = 3292052;</code>
1237    *
1238    * @return The bytes for kind.
1239    */
1240   @java.lang.Override
getKindBytes()1241   public com.google.protobuf.ByteString getKindBytes() {
1242     java.lang.Object ref = kind_;
1243     if (ref instanceof java.lang.String) {
1244       com.google.protobuf.ByteString b =
1245           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1246       kind_ = b;
1247       return b;
1248     } else {
1249       return (com.google.protobuf.ByteString) ref;
1250     }
1251   }
1252 
1253   public static final int LABEL_FINGERPRINT_FIELD_NUMBER = 178124825;
1254 
1255   @SuppressWarnings("serial")
1256   private volatile java.lang.Object labelFingerprint_ = "";
1257   /**
1258    *
1259    *
1260    * <pre>
1261    * A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a snapshot.
1262    * </pre>
1263    *
1264    * <code>optional string label_fingerprint = 178124825;</code>
1265    *
1266    * @return Whether the labelFingerprint field is set.
1267    */
1268   @java.lang.Override
hasLabelFingerprint()1269   public boolean hasLabelFingerprint() {
1270     return ((bitField0_ & 0x00000400) != 0);
1271   }
1272   /**
1273    *
1274    *
1275    * <pre>
1276    * A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a snapshot.
1277    * </pre>
1278    *
1279    * <code>optional string label_fingerprint = 178124825;</code>
1280    *
1281    * @return The labelFingerprint.
1282    */
1283   @java.lang.Override
getLabelFingerprint()1284   public java.lang.String getLabelFingerprint() {
1285     java.lang.Object ref = labelFingerprint_;
1286     if (ref instanceof java.lang.String) {
1287       return (java.lang.String) ref;
1288     } else {
1289       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1290       java.lang.String s = bs.toStringUtf8();
1291       labelFingerprint_ = s;
1292       return s;
1293     }
1294   }
1295   /**
1296    *
1297    *
1298    * <pre>
1299    * A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a snapshot.
1300    * </pre>
1301    *
1302    * <code>optional string label_fingerprint = 178124825;</code>
1303    *
1304    * @return The bytes for labelFingerprint.
1305    */
1306   @java.lang.Override
getLabelFingerprintBytes()1307   public com.google.protobuf.ByteString getLabelFingerprintBytes() {
1308     java.lang.Object ref = labelFingerprint_;
1309     if (ref instanceof java.lang.String) {
1310       com.google.protobuf.ByteString b =
1311           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1312       labelFingerprint_ = b;
1313       return b;
1314     } else {
1315       return (com.google.protobuf.ByteString) ref;
1316     }
1317   }
1318 
1319   public static final int LABELS_FIELD_NUMBER = 500195327;
1320 
1321   private static final class LabelsDefaultEntryHolder {
1322     static final com.google.protobuf.MapEntry<java.lang.String, java.lang.String> defaultEntry =
1323         com.google.protobuf.MapEntry.<java.lang.String, java.lang.String>newDefaultInstance(
1324             com.google.cloud.compute.v1.Compute
1325                 .internal_static_google_cloud_compute_v1_Snapshot_LabelsEntry_descriptor,
1326             com.google.protobuf.WireFormat.FieldType.STRING,
1327             "",
1328             com.google.protobuf.WireFormat.FieldType.STRING,
1329             "");
1330   }
1331 
1332   @SuppressWarnings("serial")
1333   private com.google.protobuf.MapField<java.lang.String, java.lang.String> labels_;
1334 
internalGetLabels()1335   private com.google.protobuf.MapField<java.lang.String, java.lang.String> internalGetLabels() {
1336     if (labels_ == null) {
1337       return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry);
1338     }
1339     return labels_;
1340   }
1341 
getLabelsCount()1342   public int getLabelsCount() {
1343     return internalGetLabels().getMap().size();
1344   }
1345   /**
1346    *
1347    *
1348    * <pre>
1349    * Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.
1350    * </pre>
1351    *
1352    * <code>map&lt;string, string&gt; labels = 500195327;</code>
1353    */
1354   @java.lang.Override
containsLabels(java.lang.String key)1355   public boolean containsLabels(java.lang.String key) {
1356     if (key == null) {
1357       throw new NullPointerException("map key");
1358     }
1359     return internalGetLabels().getMap().containsKey(key);
1360   }
1361   /** Use {@link #getLabelsMap()} instead. */
1362   @java.lang.Override
1363   @java.lang.Deprecated
getLabels()1364   public java.util.Map<java.lang.String, java.lang.String> getLabels() {
1365     return getLabelsMap();
1366   }
1367   /**
1368    *
1369    *
1370    * <pre>
1371    * Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.
1372    * </pre>
1373    *
1374    * <code>map&lt;string, string&gt; labels = 500195327;</code>
1375    */
1376   @java.lang.Override
getLabelsMap()1377   public java.util.Map<java.lang.String, java.lang.String> getLabelsMap() {
1378     return internalGetLabels().getMap();
1379   }
1380   /**
1381    *
1382    *
1383    * <pre>
1384    * Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.
1385    * </pre>
1386    *
1387    * <code>map&lt;string, string&gt; labels = 500195327;</code>
1388    */
1389   @java.lang.Override
getLabelsOrDefault( java.lang.String key, java.lang.String defaultValue)1390   public /* nullable */ java.lang.String getLabelsOrDefault(
1391       java.lang.String key,
1392       /* nullable */
1393       java.lang.String defaultValue) {
1394     if (key == null) {
1395       throw new NullPointerException("map key");
1396     }
1397     java.util.Map<java.lang.String, java.lang.String> map = internalGetLabels().getMap();
1398     return map.containsKey(key) ? map.get(key) : defaultValue;
1399   }
1400   /**
1401    *
1402    *
1403    * <pre>
1404    * Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.
1405    * </pre>
1406    *
1407    * <code>map&lt;string, string&gt; labels = 500195327;</code>
1408    */
1409   @java.lang.Override
getLabelsOrThrow(java.lang.String key)1410   public java.lang.String getLabelsOrThrow(java.lang.String key) {
1411     if (key == null) {
1412       throw new NullPointerException("map key");
1413     }
1414     java.util.Map<java.lang.String, java.lang.String> map = internalGetLabels().getMap();
1415     if (!map.containsKey(key)) {
1416       throw new java.lang.IllegalArgumentException();
1417     }
1418     return map.get(key);
1419   }
1420 
1421   public static final int LICENSE_CODES_FIELD_NUMBER = 45482664;
1422 
1423   @SuppressWarnings("serial")
1424   private com.google.protobuf.Internal.LongList licenseCodes_;
1425   /**
1426    *
1427    *
1428    * <pre>
1429    * [Output Only] Integer license codes indicating which licenses are attached to this snapshot.
1430    * </pre>
1431    *
1432    * <code>repeated int64 license_codes = 45482664;</code>
1433    *
1434    * @return A list containing the licenseCodes.
1435    */
1436   @java.lang.Override
getLicenseCodesList()1437   public java.util.List<java.lang.Long> getLicenseCodesList() {
1438     return licenseCodes_;
1439   }
1440   /**
1441    *
1442    *
1443    * <pre>
1444    * [Output Only] Integer license codes indicating which licenses are attached to this snapshot.
1445    * </pre>
1446    *
1447    * <code>repeated int64 license_codes = 45482664;</code>
1448    *
1449    * @return The count of licenseCodes.
1450    */
getLicenseCodesCount()1451   public int getLicenseCodesCount() {
1452     return licenseCodes_.size();
1453   }
1454   /**
1455    *
1456    *
1457    * <pre>
1458    * [Output Only] Integer license codes indicating which licenses are attached to this snapshot.
1459    * </pre>
1460    *
1461    * <code>repeated int64 license_codes = 45482664;</code>
1462    *
1463    * @param index The index of the element to return.
1464    * @return The licenseCodes at the given index.
1465    */
getLicenseCodes(int index)1466   public long getLicenseCodes(int index) {
1467     return licenseCodes_.getLong(index);
1468   }
1469 
1470   private int licenseCodesMemoizedSerializedSize = -1;
1471 
1472   public static final int LICENSES_FIELD_NUMBER = 337642578;
1473 
1474   @SuppressWarnings("serial")
1475   private com.google.protobuf.LazyStringList licenses_;
1476   /**
1477    *
1478    *
1479    * <pre>
1480    * [Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).
1481    * </pre>
1482    *
1483    * <code>repeated string licenses = 337642578;</code>
1484    *
1485    * @return A list containing the licenses.
1486    */
getLicensesList()1487   public com.google.protobuf.ProtocolStringList getLicensesList() {
1488     return licenses_;
1489   }
1490   /**
1491    *
1492    *
1493    * <pre>
1494    * [Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).
1495    * </pre>
1496    *
1497    * <code>repeated string licenses = 337642578;</code>
1498    *
1499    * @return The count of licenses.
1500    */
getLicensesCount()1501   public int getLicensesCount() {
1502     return licenses_.size();
1503   }
1504   /**
1505    *
1506    *
1507    * <pre>
1508    * [Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).
1509    * </pre>
1510    *
1511    * <code>repeated string licenses = 337642578;</code>
1512    *
1513    * @param index The index of the element to return.
1514    * @return The licenses at the given index.
1515    */
getLicenses(int index)1516   public java.lang.String getLicenses(int index) {
1517     return licenses_.get(index);
1518   }
1519   /**
1520    *
1521    *
1522    * <pre>
1523    * [Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).
1524    * </pre>
1525    *
1526    * <code>repeated string licenses = 337642578;</code>
1527    *
1528    * @param index The index of the value to return.
1529    * @return The bytes of the licenses at the given index.
1530    */
getLicensesBytes(int index)1531   public com.google.protobuf.ByteString getLicensesBytes(int index) {
1532     return licenses_.getByteString(index);
1533   }
1534 
1535   public static final int LOCATION_HINT_FIELD_NUMBER = 350519505;
1536 
1537   @SuppressWarnings("serial")
1538   private volatile java.lang.Object locationHint_ = "";
1539   /**
1540    *
1541    *
1542    * <pre>
1543    * An opaque location hint used to place the snapshot close to other resources. This field is for use by internal tools that use the public API.
1544    * </pre>
1545    *
1546    * <code>optional string location_hint = 350519505;</code>
1547    *
1548    * @return Whether the locationHint field is set.
1549    */
1550   @java.lang.Override
hasLocationHint()1551   public boolean hasLocationHint() {
1552     return ((bitField0_ & 0x00000800) != 0);
1553   }
1554   /**
1555    *
1556    *
1557    * <pre>
1558    * An opaque location hint used to place the snapshot close to other resources. This field is for use by internal tools that use the public API.
1559    * </pre>
1560    *
1561    * <code>optional string location_hint = 350519505;</code>
1562    *
1563    * @return The locationHint.
1564    */
1565   @java.lang.Override
getLocationHint()1566   public java.lang.String getLocationHint() {
1567     java.lang.Object ref = locationHint_;
1568     if (ref instanceof java.lang.String) {
1569       return (java.lang.String) ref;
1570     } else {
1571       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1572       java.lang.String s = bs.toStringUtf8();
1573       locationHint_ = s;
1574       return s;
1575     }
1576   }
1577   /**
1578    *
1579    *
1580    * <pre>
1581    * An opaque location hint used to place the snapshot close to other resources. This field is for use by internal tools that use the public API.
1582    * </pre>
1583    *
1584    * <code>optional string location_hint = 350519505;</code>
1585    *
1586    * @return The bytes for locationHint.
1587    */
1588   @java.lang.Override
getLocationHintBytes()1589   public com.google.protobuf.ByteString getLocationHintBytes() {
1590     java.lang.Object ref = locationHint_;
1591     if (ref instanceof java.lang.String) {
1592       com.google.protobuf.ByteString b =
1593           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1594       locationHint_ = b;
1595       return b;
1596     } else {
1597       return (com.google.protobuf.ByteString) ref;
1598     }
1599   }
1600 
1601   public static final int NAME_FIELD_NUMBER = 3373707;
1602 
1603   @SuppressWarnings("serial")
1604   private volatile java.lang.Object name_ = "";
1605   /**
1606    *
1607    *
1608    * <pre>
1609    * Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
1610    * </pre>
1611    *
1612    * <code>optional string name = 3373707;</code>
1613    *
1614    * @return Whether the name field is set.
1615    */
1616   @java.lang.Override
hasName()1617   public boolean hasName() {
1618     return ((bitField0_ & 0x00001000) != 0);
1619   }
1620   /**
1621    *
1622    *
1623    * <pre>
1624    * Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
1625    * </pre>
1626    *
1627    * <code>optional string name = 3373707;</code>
1628    *
1629    * @return The name.
1630    */
1631   @java.lang.Override
getName()1632   public java.lang.String getName() {
1633     java.lang.Object ref = name_;
1634     if (ref instanceof java.lang.String) {
1635       return (java.lang.String) ref;
1636     } else {
1637       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1638       java.lang.String s = bs.toStringUtf8();
1639       name_ = s;
1640       return s;
1641     }
1642   }
1643   /**
1644    *
1645    *
1646    * <pre>
1647    * Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
1648    * </pre>
1649    *
1650    * <code>optional string name = 3373707;</code>
1651    *
1652    * @return The bytes for name.
1653    */
1654   @java.lang.Override
getNameBytes()1655   public com.google.protobuf.ByteString getNameBytes() {
1656     java.lang.Object ref = name_;
1657     if (ref instanceof java.lang.String) {
1658       com.google.protobuf.ByteString b =
1659           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1660       name_ = b;
1661       return b;
1662     } else {
1663       return (com.google.protobuf.ByteString) ref;
1664     }
1665   }
1666 
1667   public static final int SATISFIES_PZS_FIELD_NUMBER = 480964267;
1668   private boolean satisfiesPzs_ = false;
1669   /**
1670    *
1671    *
1672    * <pre>
1673    * [Output Only] Reserved for future use.
1674    * </pre>
1675    *
1676    * <code>optional bool satisfies_pzs = 480964267;</code>
1677    *
1678    * @return Whether the satisfiesPzs field is set.
1679    */
1680   @java.lang.Override
hasSatisfiesPzs()1681   public boolean hasSatisfiesPzs() {
1682     return ((bitField0_ & 0x00002000) != 0);
1683   }
1684   /**
1685    *
1686    *
1687    * <pre>
1688    * [Output Only] Reserved for future use.
1689    * </pre>
1690    *
1691    * <code>optional bool satisfies_pzs = 480964267;</code>
1692    *
1693    * @return The satisfiesPzs.
1694    */
1695   @java.lang.Override
getSatisfiesPzs()1696   public boolean getSatisfiesPzs() {
1697     return satisfiesPzs_;
1698   }
1699 
1700   public static final int SELF_LINK_FIELD_NUMBER = 456214797;
1701 
1702   @SuppressWarnings("serial")
1703   private volatile java.lang.Object selfLink_ = "";
1704   /**
1705    *
1706    *
1707    * <pre>
1708    * [Output Only] Server-defined URL for the resource.
1709    * </pre>
1710    *
1711    * <code>optional string self_link = 456214797;</code>
1712    *
1713    * @return Whether the selfLink field is set.
1714    */
1715   @java.lang.Override
hasSelfLink()1716   public boolean hasSelfLink() {
1717     return ((bitField0_ & 0x00004000) != 0);
1718   }
1719   /**
1720    *
1721    *
1722    * <pre>
1723    * [Output Only] Server-defined URL for the resource.
1724    * </pre>
1725    *
1726    * <code>optional string self_link = 456214797;</code>
1727    *
1728    * @return The selfLink.
1729    */
1730   @java.lang.Override
getSelfLink()1731   public java.lang.String getSelfLink() {
1732     java.lang.Object ref = selfLink_;
1733     if (ref instanceof java.lang.String) {
1734       return (java.lang.String) ref;
1735     } else {
1736       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1737       java.lang.String s = bs.toStringUtf8();
1738       selfLink_ = s;
1739       return s;
1740     }
1741   }
1742   /**
1743    *
1744    *
1745    * <pre>
1746    * [Output Only] Server-defined URL for the resource.
1747    * </pre>
1748    *
1749    * <code>optional string self_link = 456214797;</code>
1750    *
1751    * @return The bytes for selfLink.
1752    */
1753   @java.lang.Override
getSelfLinkBytes()1754   public com.google.protobuf.ByteString getSelfLinkBytes() {
1755     java.lang.Object ref = selfLink_;
1756     if (ref instanceof java.lang.String) {
1757       com.google.protobuf.ByteString b =
1758           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1759       selfLink_ = b;
1760       return b;
1761     } else {
1762       return (com.google.protobuf.ByteString) ref;
1763     }
1764   }
1765 
1766   public static final int SNAPSHOT_ENCRYPTION_KEY_FIELD_NUMBER = 43334526;
1767   private com.google.cloud.compute.v1.CustomerEncryptionKey snapshotEncryptionKey_;
1768   /**
1769    *
1770    *
1771    * <pre>
1772    * Encrypts the snapshot using a customer-supplied encryption key. After you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the snapshot later. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. Customer-supplied encryption keys do not protect access to metadata of the snapshot. If you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later.
1773    * </pre>
1774    *
1775    * <code>
1776    * optional .google.cloud.compute.v1.CustomerEncryptionKey snapshot_encryption_key = 43334526;
1777    * </code>
1778    *
1779    * @return Whether the snapshotEncryptionKey field is set.
1780    */
1781   @java.lang.Override
hasSnapshotEncryptionKey()1782   public boolean hasSnapshotEncryptionKey() {
1783     return ((bitField0_ & 0x00008000) != 0);
1784   }
1785   /**
1786    *
1787    *
1788    * <pre>
1789    * Encrypts the snapshot using a customer-supplied encryption key. After you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the snapshot later. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. Customer-supplied encryption keys do not protect access to metadata of the snapshot. If you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later.
1790    * </pre>
1791    *
1792    * <code>
1793    * optional .google.cloud.compute.v1.CustomerEncryptionKey snapshot_encryption_key = 43334526;
1794    * </code>
1795    *
1796    * @return The snapshotEncryptionKey.
1797    */
1798   @java.lang.Override
getSnapshotEncryptionKey()1799   public com.google.cloud.compute.v1.CustomerEncryptionKey getSnapshotEncryptionKey() {
1800     return snapshotEncryptionKey_ == null
1801         ? com.google.cloud.compute.v1.CustomerEncryptionKey.getDefaultInstance()
1802         : snapshotEncryptionKey_;
1803   }
1804   /**
1805    *
1806    *
1807    * <pre>
1808    * Encrypts the snapshot using a customer-supplied encryption key. After you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the snapshot later. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. Customer-supplied encryption keys do not protect access to metadata of the snapshot. If you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later.
1809    * </pre>
1810    *
1811    * <code>
1812    * optional .google.cloud.compute.v1.CustomerEncryptionKey snapshot_encryption_key = 43334526;
1813    * </code>
1814    */
1815   @java.lang.Override
1816   public com.google.cloud.compute.v1.CustomerEncryptionKeyOrBuilder
getSnapshotEncryptionKeyOrBuilder()1817       getSnapshotEncryptionKeyOrBuilder() {
1818     return snapshotEncryptionKey_ == null
1819         ? com.google.cloud.compute.v1.CustomerEncryptionKey.getDefaultInstance()
1820         : snapshotEncryptionKey_;
1821   }
1822 
1823   public static final int SNAPSHOT_TYPE_FIELD_NUMBER = 124349653;
1824 
1825   @SuppressWarnings("serial")
1826   private volatile java.lang.Object snapshotType_ = "";
1827   /**
1828    *
1829    *
1830    * <pre>
1831    * Indicates the type of the snapshot.
1832    * Check the SnapshotType enum for the list of possible values.
1833    * </pre>
1834    *
1835    * <code>optional string snapshot_type = 124349653;</code>
1836    *
1837    * @return Whether the snapshotType field is set.
1838    */
1839   @java.lang.Override
hasSnapshotType()1840   public boolean hasSnapshotType() {
1841     return ((bitField0_ & 0x00010000) != 0);
1842   }
1843   /**
1844    *
1845    *
1846    * <pre>
1847    * Indicates the type of the snapshot.
1848    * Check the SnapshotType enum for the list of possible values.
1849    * </pre>
1850    *
1851    * <code>optional string snapshot_type = 124349653;</code>
1852    *
1853    * @return The snapshotType.
1854    */
1855   @java.lang.Override
getSnapshotType()1856   public java.lang.String getSnapshotType() {
1857     java.lang.Object ref = snapshotType_;
1858     if (ref instanceof java.lang.String) {
1859       return (java.lang.String) ref;
1860     } else {
1861       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1862       java.lang.String s = bs.toStringUtf8();
1863       snapshotType_ = s;
1864       return s;
1865     }
1866   }
1867   /**
1868    *
1869    *
1870    * <pre>
1871    * Indicates the type of the snapshot.
1872    * Check the SnapshotType enum for the list of possible values.
1873    * </pre>
1874    *
1875    * <code>optional string snapshot_type = 124349653;</code>
1876    *
1877    * @return The bytes for snapshotType.
1878    */
1879   @java.lang.Override
getSnapshotTypeBytes()1880   public com.google.protobuf.ByteString getSnapshotTypeBytes() {
1881     java.lang.Object ref = snapshotType_;
1882     if (ref instanceof java.lang.String) {
1883       com.google.protobuf.ByteString b =
1884           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1885       snapshotType_ = b;
1886       return b;
1887     } else {
1888       return (com.google.protobuf.ByteString) ref;
1889     }
1890   }
1891 
1892   public static final int SOURCE_DISK_FIELD_NUMBER = 451753793;
1893 
1894   @SuppressWarnings("serial")
1895   private volatile java.lang.Object sourceDisk_ = "";
1896   /**
1897    *
1898    *
1899    * <pre>
1900    * The source disk used to create this snapshot.
1901    * </pre>
1902    *
1903    * <code>optional string source_disk = 451753793;</code>
1904    *
1905    * @return Whether the sourceDisk field is set.
1906    */
1907   @java.lang.Override
hasSourceDisk()1908   public boolean hasSourceDisk() {
1909     return ((bitField0_ & 0x00020000) != 0);
1910   }
1911   /**
1912    *
1913    *
1914    * <pre>
1915    * The source disk used to create this snapshot.
1916    * </pre>
1917    *
1918    * <code>optional string source_disk = 451753793;</code>
1919    *
1920    * @return The sourceDisk.
1921    */
1922   @java.lang.Override
getSourceDisk()1923   public java.lang.String getSourceDisk() {
1924     java.lang.Object ref = sourceDisk_;
1925     if (ref instanceof java.lang.String) {
1926       return (java.lang.String) ref;
1927     } else {
1928       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1929       java.lang.String s = bs.toStringUtf8();
1930       sourceDisk_ = s;
1931       return s;
1932     }
1933   }
1934   /**
1935    *
1936    *
1937    * <pre>
1938    * The source disk used to create this snapshot.
1939    * </pre>
1940    *
1941    * <code>optional string source_disk = 451753793;</code>
1942    *
1943    * @return The bytes for sourceDisk.
1944    */
1945   @java.lang.Override
getSourceDiskBytes()1946   public com.google.protobuf.ByteString getSourceDiskBytes() {
1947     java.lang.Object ref = sourceDisk_;
1948     if (ref instanceof java.lang.String) {
1949       com.google.protobuf.ByteString b =
1950           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1951       sourceDisk_ = b;
1952       return b;
1953     } else {
1954       return (com.google.protobuf.ByteString) ref;
1955     }
1956   }
1957 
1958   public static final int SOURCE_DISK_ENCRYPTION_KEY_FIELD_NUMBER = 531501153;
1959   private com.google.cloud.compute.v1.CustomerEncryptionKey sourceDiskEncryptionKey_;
1960   /**
1961    *
1962    *
1963    * <pre>
1964    * The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key.
1965    * </pre>
1966    *
1967    * <code>
1968    * optional .google.cloud.compute.v1.CustomerEncryptionKey source_disk_encryption_key = 531501153;
1969    * </code>
1970    *
1971    * @return Whether the sourceDiskEncryptionKey field is set.
1972    */
1973   @java.lang.Override
hasSourceDiskEncryptionKey()1974   public boolean hasSourceDiskEncryptionKey() {
1975     return ((bitField0_ & 0x00040000) != 0);
1976   }
1977   /**
1978    *
1979    *
1980    * <pre>
1981    * The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key.
1982    * </pre>
1983    *
1984    * <code>
1985    * optional .google.cloud.compute.v1.CustomerEncryptionKey source_disk_encryption_key = 531501153;
1986    * </code>
1987    *
1988    * @return The sourceDiskEncryptionKey.
1989    */
1990   @java.lang.Override
getSourceDiskEncryptionKey()1991   public com.google.cloud.compute.v1.CustomerEncryptionKey getSourceDiskEncryptionKey() {
1992     return sourceDiskEncryptionKey_ == null
1993         ? com.google.cloud.compute.v1.CustomerEncryptionKey.getDefaultInstance()
1994         : sourceDiskEncryptionKey_;
1995   }
1996   /**
1997    *
1998    *
1999    * <pre>
2000    * The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key.
2001    * </pre>
2002    *
2003    * <code>
2004    * optional .google.cloud.compute.v1.CustomerEncryptionKey source_disk_encryption_key = 531501153;
2005    * </code>
2006    */
2007   @java.lang.Override
2008   public com.google.cloud.compute.v1.CustomerEncryptionKeyOrBuilder
getSourceDiskEncryptionKeyOrBuilder()2009       getSourceDiskEncryptionKeyOrBuilder() {
2010     return sourceDiskEncryptionKey_ == null
2011         ? com.google.cloud.compute.v1.CustomerEncryptionKey.getDefaultInstance()
2012         : sourceDiskEncryptionKey_;
2013   }
2014 
2015   public static final int SOURCE_DISK_ID_FIELD_NUMBER = 454190809;
2016 
2017   @SuppressWarnings("serial")
2018   private volatile java.lang.Object sourceDiskId_ = "";
2019   /**
2020    *
2021    *
2022    * <pre>
2023    * [Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name.
2024    * </pre>
2025    *
2026    * <code>optional string source_disk_id = 454190809;</code>
2027    *
2028    * @return Whether the sourceDiskId field is set.
2029    */
2030   @java.lang.Override
hasSourceDiskId()2031   public boolean hasSourceDiskId() {
2032     return ((bitField0_ & 0x00080000) != 0);
2033   }
2034   /**
2035    *
2036    *
2037    * <pre>
2038    * [Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name.
2039    * </pre>
2040    *
2041    * <code>optional string source_disk_id = 454190809;</code>
2042    *
2043    * @return The sourceDiskId.
2044    */
2045   @java.lang.Override
getSourceDiskId()2046   public java.lang.String getSourceDiskId() {
2047     java.lang.Object ref = sourceDiskId_;
2048     if (ref instanceof java.lang.String) {
2049       return (java.lang.String) ref;
2050     } else {
2051       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
2052       java.lang.String s = bs.toStringUtf8();
2053       sourceDiskId_ = s;
2054       return s;
2055     }
2056   }
2057   /**
2058    *
2059    *
2060    * <pre>
2061    * [Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name.
2062    * </pre>
2063    *
2064    * <code>optional string source_disk_id = 454190809;</code>
2065    *
2066    * @return The bytes for sourceDiskId.
2067    */
2068   @java.lang.Override
getSourceDiskIdBytes()2069   public com.google.protobuf.ByteString getSourceDiskIdBytes() {
2070     java.lang.Object ref = sourceDiskId_;
2071     if (ref instanceof java.lang.String) {
2072       com.google.protobuf.ByteString b =
2073           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
2074       sourceDiskId_ = b;
2075       return b;
2076     } else {
2077       return (com.google.protobuf.ByteString) ref;
2078     }
2079   }
2080 
2081   public static final int SOURCE_SNAPSHOT_SCHEDULE_POLICY_FIELD_NUMBER = 235756291;
2082 
2083   @SuppressWarnings("serial")
2084   private volatile java.lang.Object sourceSnapshotSchedulePolicy_ = "";
2085   /**
2086    *
2087    *
2088    * <pre>
2089    * [Output Only] URL of the resource policy which created this scheduled snapshot.
2090    * </pre>
2091    *
2092    * <code>optional string source_snapshot_schedule_policy = 235756291;</code>
2093    *
2094    * @return Whether the sourceSnapshotSchedulePolicy field is set.
2095    */
2096   @java.lang.Override
hasSourceSnapshotSchedulePolicy()2097   public boolean hasSourceSnapshotSchedulePolicy() {
2098     return ((bitField0_ & 0x00100000) != 0);
2099   }
2100   /**
2101    *
2102    *
2103    * <pre>
2104    * [Output Only] URL of the resource policy which created this scheduled snapshot.
2105    * </pre>
2106    *
2107    * <code>optional string source_snapshot_schedule_policy = 235756291;</code>
2108    *
2109    * @return The sourceSnapshotSchedulePolicy.
2110    */
2111   @java.lang.Override
getSourceSnapshotSchedulePolicy()2112   public java.lang.String getSourceSnapshotSchedulePolicy() {
2113     java.lang.Object ref = sourceSnapshotSchedulePolicy_;
2114     if (ref instanceof java.lang.String) {
2115       return (java.lang.String) ref;
2116     } else {
2117       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
2118       java.lang.String s = bs.toStringUtf8();
2119       sourceSnapshotSchedulePolicy_ = s;
2120       return s;
2121     }
2122   }
2123   /**
2124    *
2125    *
2126    * <pre>
2127    * [Output Only] URL of the resource policy which created this scheduled snapshot.
2128    * </pre>
2129    *
2130    * <code>optional string source_snapshot_schedule_policy = 235756291;</code>
2131    *
2132    * @return The bytes for sourceSnapshotSchedulePolicy.
2133    */
2134   @java.lang.Override
getSourceSnapshotSchedulePolicyBytes()2135   public com.google.protobuf.ByteString getSourceSnapshotSchedulePolicyBytes() {
2136     java.lang.Object ref = sourceSnapshotSchedulePolicy_;
2137     if (ref instanceof java.lang.String) {
2138       com.google.protobuf.ByteString b =
2139           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
2140       sourceSnapshotSchedulePolicy_ = b;
2141       return b;
2142     } else {
2143       return (com.google.protobuf.ByteString) ref;
2144     }
2145   }
2146 
2147   public static final int SOURCE_SNAPSHOT_SCHEDULE_POLICY_ID_FIELD_NUMBER = 70489047;
2148 
2149   @SuppressWarnings("serial")
2150   private volatile java.lang.Object sourceSnapshotSchedulePolicyId_ = "";
2151   /**
2152    *
2153    *
2154    * <pre>
2155    * [Output Only] ID of the resource policy which created this scheduled snapshot.
2156    * </pre>
2157    *
2158    * <code>optional string source_snapshot_schedule_policy_id = 70489047;</code>
2159    *
2160    * @return Whether the sourceSnapshotSchedulePolicyId field is set.
2161    */
2162   @java.lang.Override
hasSourceSnapshotSchedulePolicyId()2163   public boolean hasSourceSnapshotSchedulePolicyId() {
2164     return ((bitField0_ & 0x00200000) != 0);
2165   }
2166   /**
2167    *
2168    *
2169    * <pre>
2170    * [Output Only] ID of the resource policy which created this scheduled snapshot.
2171    * </pre>
2172    *
2173    * <code>optional string source_snapshot_schedule_policy_id = 70489047;</code>
2174    *
2175    * @return The sourceSnapshotSchedulePolicyId.
2176    */
2177   @java.lang.Override
getSourceSnapshotSchedulePolicyId()2178   public java.lang.String getSourceSnapshotSchedulePolicyId() {
2179     java.lang.Object ref = sourceSnapshotSchedulePolicyId_;
2180     if (ref instanceof java.lang.String) {
2181       return (java.lang.String) ref;
2182     } else {
2183       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
2184       java.lang.String s = bs.toStringUtf8();
2185       sourceSnapshotSchedulePolicyId_ = s;
2186       return s;
2187     }
2188   }
2189   /**
2190    *
2191    *
2192    * <pre>
2193    * [Output Only] ID of the resource policy which created this scheduled snapshot.
2194    * </pre>
2195    *
2196    * <code>optional string source_snapshot_schedule_policy_id = 70489047;</code>
2197    *
2198    * @return The bytes for sourceSnapshotSchedulePolicyId.
2199    */
2200   @java.lang.Override
getSourceSnapshotSchedulePolicyIdBytes()2201   public com.google.protobuf.ByteString getSourceSnapshotSchedulePolicyIdBytes() {
2202     java.lang.Object ref = sourceSnapshotSchedulePolicyId_;
2203     if (ref instanceof java.lang.String) {
2204       com.google.protobuf.ByteString b =
2205           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
2206       sourceSnapshotSchedulePolicyId_ = b;
2207       return b;
2208     } else {
2209       return (com.google.protobuf.ByteString) ref;
2210     }
2211   }
2212 
2213   public static final int STATUS_FIELD_NUMBER = 181260274;
2214 
2215   @SuppressWarnings("serial")
2216   private volatile java.lang.Object status_ = "";
2217   /**
2218    *
2219    *
2220    * <pre>
2221    * [Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.
2222    * Check the Status enum for the list of possible values.
2223    * </pre>
2224    *
2225    * <code>optional string status = 181260274;</code>
2226    *
2227    * @return Whether the status field is set.
2228    */
2229   @java.lang.Override
hasStatus()2230   public boolean hasStatus() {
2231     return ((bitField0_ & 0x00400000) != 0);
2232   }
2233   /**
2234    *
2235    *
2236    * <pre>
2237    * [Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.
2238    * Check the Status enum for the list of possible values.
2239    * </pre>
2240    *
2241    * <code>optional string status = 181260274;</code>
2242    *
2243    * @return The status.
2244    */
2245   @java.lang.Override
getStatus()2246   public java.lang.String getStatus() {
2247     java.lang.Object ref = status_;
2248     if (ref instanceof java.lang.String) {
2249       return (java.lang.String) ref;
2250     } else {
2251       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
2252       java.lang.String s = bs.toStringUtf8();
2253       status_ = s;
2254       return s;
2255     }
2256   }
2257   /**
2258    *
2259    *
2260    * <pre>
2261    * [Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.
2262    * Check the Status enum for the list of possible values.
2263    * </pre>
2264    *
2265    * <code>optional string status = 181260274;</code>
2266    *
2267    * @return The bytes for status.
2268    */
2269   @java.lang.Override
getStatusBytes()2270   public com.google.protobuf.ByteString getStatusBytes() {
2271     java.lang.Object ref = status_;
2272     if (ref instanceof java.lang.String) {
2273       com.google.protobuf.ByteString b =
2274           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
2275       status_ = b;
2276       return b;
2277     } else {
2278       return (com.google.protobuf.ByteString) ref;
2279     }
2280   }
2281 
2282   public static final int STORAGE_BYTES_FIELD_NUMBER = 424631719;
2283   private long storageBytes_ = 0L;
2284   /**
2285    *
2286    *
2287    * <pre>
2288    * [Output Only] A size of the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion.
2289    * </pre>
2290    *
2291    * <code>optional int64 storage_bytes = 424631719;</code>
2292    *
2293    * @return Whether the storageBytes field is set.
2294    */
2295   @java.lang.Override
hasStorageBytes()2296   public boolean hasStorageBytes() {
2297     return ((bitField0_ & 0x00800000) != 0);
2298   }
2299   /**
2300    *
2301    *
2302    * <pre>
2303    * [Output Only] A size of the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion.
2304    * </pre>
2305    *
2306    * <code>optional int64 storage_bytes = 424631719;</code>
2307    *
2308    * @return The storageBytes.
2309    */
2310   @java.lang.Override
getStorageBytes()2311   public long getStorageBytes() {
2312     return storageBytes_;
2313   }
2314 
2315   public static final int STORAGE_BYTES_STATUS_FIELD_NUMBER = 490739082;
2316 
2317   @SuppressWarnings("serial")
2318   private volatile java.lang.Object storageBytesStatus_ = "";
2319   /**
2320    *
2321    *
2322    * <pre>
2323    * [Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date.
2324    * Check the StorageBytesStatus enum for the list of possible values.
2325    * </pre>
2326    *
2327    * <code>optional string storage_bytes_status = 490739082;</code>
2328    *
2329    * @return Whether the storageBytesStatus field is set.
2330    */
2331   @java.lang.Override
hasStorageBytesStatus()2332   public boolean hasStorageBytesStatus() {
2333     return ((bitField0_ & 0x01000000) != 0);
2334   }
2335   /**
2336    *
2337    *
2338    * <pre>
2339    * [Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date.
2340    * Check the StorageBytesStatus enum for the list of possible values.
2341    * </pre>
2342    *
2343    * <code>optional string storage_bytes_status = 490739082;</code>
2344    *
2345    * @return The storageBytesStatus.
2346    */
2347   @java.lang.Override
getStorageBytesStatus()2348   public java.lang.String getStorageBytesStatus() {
2349     java.lang.Object ref = storageBytesStatus_;
2350     if (ref instanceof java.lang.String) {
2351       return (java.lang.String) ref;
2352     } else {
2353       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
2354       java.lang.String s = bs.toStringUtf8();
2355       storageBytesStatus_ = s;
2356       return s;
2357     }
2358   }
2359   /**
2360    *
2361    *
2362    * <pre>
2363    * [Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date.
2364    * Check the StorageBytesStatus enum for the list of possible values.
2365    * </pre>
2366    *
2367    * <code>optional string storage_bytes_status = 490739082;</code>
2368    *
2369    * @return The bytes for storageBytesStatus.
2370    */
2371   @java.lang.Override
getStorageBytesStatusBytes()2372   public com.google.protobuf.ByteString getStorageBytesStatusBytes() {
2373     java.lang.Object ref = storageBytesStatus_;
2374     if (ref instanceof java.lang.String) {
2375       com.google.protobuf.ByteString b =
2376           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
2377       storageBytesStatus_ = b;
2378       return b;
2379     } else {
2380       return (com.google.protobuf.ByteString) ref;
2381     }
2382   }
2383 
2384   public static final int STORAGE_LOCATIONS_FIELD_NUMBER = 328005274;
2385 
2386   @SuppressWarnings("serial")
2387   private com.google.protobuf.LazyStringList storageLocations_;
2388   /**
2389    *
2390    *
2391    * <pre>
2392    * Cloud Storage bucket storage location of the snapshot (regional or multi-regional).
2393    * </pre>
2394    *
2395    * <code>repeated string storage_locations = 328005274;</code>
2396    *
2397    * @return A list containing the storageLocations.
2398    */
getStorageLocationsList()2399   public com.google.protobuf.ProtocolStringList getStorageLocationsList() {
2400     return storageLocations_;
2401   }
2402   /**
2403    *
2404    *
2405    * <pre>
2406    * Cloud Storage bucket storage location of the snapshot (regional or multi-regional).
2407    * </pre>
2408    *
2409    * <code>repeated string storage_locations = 328005274;</code>
2410    *
2411    * @return The count of storageLocations.
2412    */
getStorageLocationsCount()2413   public int getStorageLocationsCount() {
2414     return storageLocations_.size();
2415   }
2416   /**
2417    *
2418    *
2419    * <pre>
2420    * Cloud Storage bucket storage location of the snapshot (regional or multi-regional).
2421    * </pre>
2422    *
2423    * <code>repeated string storage_locations = 328005274;</code>
2424    *
2425    * @param index The index of the element to return.
2426    * @return The storageLocations at the given index.
2427    */
getStorageLocations(int index)2428   public java.lang.String getStorageLocations(int index) {
2429     return storageLocations_.get(index);
2430   }
2431   /**
2432    *
2433    *
2434    * <pre>
2435    * Cloud Storage bucket storage location of the snapshot (regional or multi-regional).
2436    * </pre>
2437    *
2438    * <code>repeated string storage_locations = 328005274;</code>
2439    *
2440    * @param index The index of the value to return.
2441    * @return The bytes of the storageLocations at the given index.
2442    */
getStorageLocationsBytes(int index)2443   public com.google.protobuf.ByteString getStorageLocationsBytes(int index) {
2444     return storageLocations_.getByteString(index);
2445   }
2446 
2447   private byte memoizedIsInitialized = -1;
2448 
2449   @java.lang.Override
isInitialized()2450   public final boolean isInitialized() {
2451     byte isInitialized = memoizedIsInitialized;
2452     if (isInitialized == 1) return true;
2453     if (isInitialized == 0) return false;
2454 
2455     memoizedIsInitialized = 1;
2456     return true;
2457   }
2458 
2459   @java.lang.Override
writeTo(com.google.protobuf.CodedOutputStream output)2460   public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
2461     getSerializedSize();
2462     if (((bitField0_ & 0x00000100) != 0)) {
2463       output.writeUInt64(3355, id_);
2464     }
2465     if (((bitField0_ & 0x00000200) != 0)) {
2466       com.google.protobuf.GeneratedMessageV3.writeString(output, 3292052, kind_);
2467     }
2468     if (((bitField0_ & 0x00001000) != 0)) {
2469       com.google.protobuf.GeneratedMessageV3.writeString(output, 3373707, name_);
2470     }
2471     if (((bitField0_ & 0x00000010) != 0)) {
2472       com.google.protobuf.GeneratedMessageV3.writeString(output, 30525366, creationTimestamp_);
2473     }
2474     if (((bitField0_ & 0x00008000) != 0)) {
2475       output.writeMessage(43334526, getSnapshotEncryptionKey());
2476     }
2477     if (getLicenseCodesList().size() > 0) {
2478       output.writeUInt32NoTag(363861314);
2479       output.writeUInt32NoTag(licenseCodesMemoizedSerializedSize);
2480     }
2481     for (int i = 0; i < licenseCodes_.size(); i++) {
2482       output.writeInt64NoTag(licenseCodes_.getLong(i));
2483     }
2484     if (((bitField0_ & 0x00000004) != 0)) {
2485       com.google.protobuf.GeneratedMessageV3.writeString(output, 68644169, chainName_);
2486     }
2487     if (((bitField0_ & 0x00200000) != 0)) {
2488       com.google.protobuf.GeneratedMessageV3.writeString(
2489           output, 70489047, sourceSnapshotSchedulePolicyId_);
2490     }
2491     if (((bitField0_ & 0x00010000) != 0)) {
2492       com.google.protobuf.GeneratedMessageV3.writeString(output, 124349653, snapshotType_);
2493     }
2494     if (((bitField0_ & 0x00000008) != 0)) {
2495       output.writeInt64(125400077, creationSizeBytes_);
2496     }
2497     if (((bitField0_ & 0x00000400) != 0)) {
2498       com.google.protobuf.GeneratedMessageV3.writeString(output, 178124825, labelFingerprint_);
2499     }
2500     if (((bitField0_ & 0x00400000) != 0)) {
2501       com.google.protobuf.GeneratedMessageV3.writeString(output, 181260274, status_);
2502     }
2503     if (((bitField0_ & 0x00100000) != 0)) {
2504       com.google.protobuf.GeneratedMessageV3.writeString(
2505           output, 235756291, sourceSnapshotSchedulePolicy_);
2506     }
2507     if (((bitField0_ & 0x00000001) != 0)) {
2508       com.google.protobuf.GeneratedMessageV3.writeString(output, 302803283, architecture_);
2509     }
2510     if (((bitField0_ & 0x00000040) != 0)) {
2511       output.writeInt64(316263735, diskSizeGb_);
2512     }
2513     for (int i = 0; i < storageLocations_.size(); i++) {
2514       com.google.protobuf.GeneratedMessageV3.writeString(
2515           output, 328005274, storageLocations_.getRaw(i));
2516     }
2517     for (int i = 0; i < licenses_.size(); i++) {
2518       com.google.protobuf.GeneratedMessageV3.writeString(output, 337642578, licenses_.getRaw(i));
2519     }
2520     if (((bitField0_ & 0x00000800) != 0)) {
2521       com.google.protobuf.GeneratedMessageV3.writeString(output, 350519505, locationHint_);
2522     }
2523     if (((bitField0_ & 0x00000020) != 0)) {
2524       com.google.protobuf.GeneratedMessageV3.writeString(output, 422937596, description_);
2525     }
2526     if (((bitField0_ & 0x00800000) != 0)) {
2527       output.writeInt64(424631719, storageBytes_);
2528     }
2529     if (((bitField0_ & 0x00000080) != 0)) {
2530       output.writeInt64(435054068, downloadBytes_);
2531     }
2532     if (((bitField0_ & 0x00020000) != 0)) {
2533       com.google.protobuf.GeneratedMessageV3.writeString(output, 451753793, sourceDisk_);
2534     }
2535     if (((bitField0_ & 0x00080000) != 0)) {
2536       com.google.protobuf.GeneratedMessageV3.writeString(output, 454190809, sourceDiskId_);
2537     }
2538     if (((bitField0_ & 0x00004000) != 0)) {
2539       com.google.protobuf.GeneratedMessageV3.writeString(output, 456214797, selfLink_);
2540     }
2541     if (((bitField0_ & 0x00000002) != 0)) {
2542       output.writeBool(463922264, autoCreated_);
2543     }
2544     if (((bitField0_ & 0x00002000) != 0)) {
2545       output.writeBool(480964267, satisfiesPzs_);
2546     }
2547     if (((bitField0_ & 0x01000000) != 0)) {
2548       com.google.protobuf.GeneratedMessageV3.writeString(output, 490739082, storageBytesStatus_);
2549     }
2550     com.google.protobuf.GeneratedMessageV3.serializeStringMapTo(
2551         output, internalGetLabels(), LabelsDefaultEntryHolder.defaultEntry, 500195327);
2552     if (((bitField0_ & 0x00040000) != 0)) {
2553       output.writeMessage(531501153, getSourceDiskEncryptionKey());
2554     }
2555     getUnknownFields().writeTo(output);
2556   }
2557 
2558   @java.lang.Override
getSerializedSize()2559   public int getSerializedSize() {
2560     int size = memoizedSize;
2561     if (size != -1) return size;
2562 
2563     size = 0;
2564     if (((bitField0_ & 0x00000100) != 0)) {
2565       size += com.google.protobuf.CodedOutputStream.computeUInt64Size(3355, id_);
2566     }
2567     if (((bitField0_ & 0x00000200) != 0)) {
2568       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3292052, kind_);
2569     }
2570     if (((bitField0_ & 0x00001000) != 0)) {
2571       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3373707, name_);
2572     }
2573     if (((bitField0_ & 0x00000010) != 0)) {
2574       size +=
2575           com.google.protobuf.GeneratedMessageV3.computeStringSize(30525366, creationTimestamp_);
2576     }
2577     if (((bitField0_ & 0x00008000) != 0)) {
2578       size +=
2579           com.google.protobuf.CodedOutputStream.computeMessageSize(
2580               43334526, getSnapshotEncryptionKey());
2581     }
2582     {
2583       int dataSize = 0;
2584       for (int i = 0; i < licenseCodes_.size(); i++) {
2585         dataSize +=
2586             com.google.protobuf.CodedOutputStream.computeInt64SizeNoTag(licenseCodes_.getLong(i));
2587       }
2588       size += dataSize;
2589       if (!getLicenseCodesList().isEmpty()) {
2590         size += 5;
2591         size += com.google.protobuf.CodedOutputStream.computeInt32SizeNoTag(dataSize);
2592       }
2593       licenseCodesMemoizedSerializedSize = dataSize;
2594     }
2595     if (((bitField0_ & 0x00000004) != 0)) {
2596       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(68644169, chainName_);
2597     }
2598     if (((bitField0_ & 0x00200000) != 0)) {
2599       size +=
2600           com.google.protobuf.GeneratedMessageV3.computeStringSize(
2601               70489047, sourceSnapshotSchedulePolicyId_);
2602     }
2603     if (((bitField0_ & 0x00010000) != 0)) {
2604       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(124349653, snapshotType_);
2605     }
2606     if (((bitField0_ & 0x00000008) != 0)) {
2607       size += com.google.protobuf.CodedOutputStream.computeInt64Size(125400077, creationSizeBytes_);
2608     }
2609     if (((bitField0_ & 0x00000400) != 0)) {
2610       size +=
2611           com.google.protobuf.GeneratedMessageV3.computeStringSize(178124825, labelFingerprint_);
2612     }
2613     if (((bitField0_ & 0x00400000) != 0)) {
2614       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(181260274, status_);
2615     }
2616     if (((bitField0_ & 0x00100000) != 0)) {
2617       size +=
2618           com.google.protobuf.GeneratedMessageV3.computeStringSize(
2619               235756291, sourceSnapshotSchedulePolicy_);
2620     }
2621     if (((bitField0_ & 0x00000001) != 0)) {
2622       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(302803283, architecture_);
2623     }
2624     if (((bitField0_ & 0x00000040) != 0)) {
2625       size += com.google.protobuf.CodedOutputStream.computeInt64Size(316263735, diskSizeGb_);
2626     }
2627     {
2628       int dataSize = 0;
2629       for (int i = 0; i < storageLocations_.size(); i++) {
2630         dataSize += computeStringSizeNoTag(storageLocations_.getRaw(i));
2631       }
2632       size += dataSize;
2633       size += 5 * getStorageLocationsList().size();
2634     }
2635     {
2636       int dataSize = 0;
2637       for (int i = 0; i < licenses_.size(); i++) {
2638         dataSize += computeStringSizeNoTag(licenses_.getRaw(i));
2639       }
2640       size += dataSize;
2641       size += 5 * getLicensesList().size();
2642     }
2643     if (((bitField0_ & 0x00000800) != 0)) {
2644       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(350519505, locationHint_);
2645     }
2646     if (((bitField0_ & 0x00000020) != 0)) {
2647       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(422937596, description_);
2648     }
2649     if (((bitField0_ & 0x00800000) != 0)) {
2650       size += com.google.protobuf.CodedOutputStream.computeInt64Size(424631719, storageBytes_);
2651     }
2652     if (((bitField0_ & 0x00000080) != 0)) {
2653       size += com.google.protobuf.CodedOutputStream.computeInt64Size(435054068, downloadBytes_);
2654     }
2655     if (((bitField0_ & 0x00020000) != 0)) {
2656       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(451753793, sourceDisk_);
2657     }
2658     if (((bitField0_ & 0x00080000) != 0)) {
2659       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(454190809, sourceDiskId_);
2660     }
2661     if (((bitField0_ & 0x00004000) != 0)) {
2662       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(456214797, selfLink_);
2663     }
2664     if (((bitField0_ & 0x00000002) != 0)) {
2665       size += com.google.protobuf.CodedOutputStream.computeBoolSize(463922264, autoCreated_);
2666     }
2667     if (((bitField0_ & 0x00002000) != 0)) {
2668       size += com.google.protobuf.CodedOutputStream.computeBoolSize(480964267, satisfiesPzs_);
2669     }
2670     if (((bitField0_ & 0x01000000) != 0)) {
2671       size +=
2672           com.google.protobuf.GeneratedMessageV3.computeStringSize(490739082, storageBytesStatus_);
2673     }
2674     for (java.util.Map.Entry<java.lang.String, java.lang.String> entry :
2675         internalGetLabels().getMap().entrySet()) {
2676       com.google.protobuf.MapEntry<java.lang.String, java.lang.String> labels__ =
2677           LabelsDefaultEntryHolder.defaultEntry
2678               .newBuilderForType()
2679               .setKey(entry.getKey())
2680               .setValue(entry.getValue())
2681               .build();
2682       size += com.google.protobuf.CodedOutputStream.computeMessageSize(500195327, labels__);
2683     }
2684     if (((bitField0_ & 0x00040000) != 0)) {
2685       size +=
2686           com.google.protobuf.CodedOutputStream.computeMessageSize(
2687               531501153, getSourceDiskEncryptionKey());
2688     }
2689     size += getUnknownFields().getSerializedSize();
2690     memoizedSize = size;
2691     return size;
2692   }
2693 
2694   @java.lang.Override
equals(final java.lang.Object obj)2695   public boolean equals(final java.lang.Object obj) {
2696     if (obj == this) {
2697       return true;
2698     }
2699     if (!(obj instanceof com.google.cloud.compute.v1.Snapshot)) {
2700       return super.equals(obj);
2701     }
2702     com.google.cloud.compute.v1.Snapshot other = (com.google.cloud.compute.v1.Snapshot) obj;
2703 
2704     if (hasArchitecture() != other.hasArchitecture()) return false;
2705     if (hasArchitecture()) {
2706       if (!getArchitecture().equals(other.getArchitecture())) return false;
2707     }
2708     if (hasAutoCreated() != other.hasAutoCreated()) return false;
2709     if (hasAutoCreated()) {
2710       if (getAutoCreated() != other.getAutoCreated()) return false;
2711     }
2712     if (hasChainName() != other.hasChainName()) return false;
2713     if (hasChainName()) {
2714       if (!getChainName().equals(other.getChainName())) return false;
2715     }
2716     if (hasCreationSizeBytes() != other.hasCreationSizeBytes()) return false;
2717     if (hasCreationSizeBytes()) {
2718       if (getCreationSizeBytes() != other.getCreationSizeBytes()) return false;
2719     }
2720     if (hasCreationTimestamp() != other.hasCreationTimestamp()) return false;
2721     if (hasCreationTimestamp()) {
2722       if (!getCreationTimestamp().equals(other.getCreationTimestamp())) return false;
2723     }
2724     if (hasDescription() != other.hasDescription()) return false;
2725     if (hasDescription()) {
2726       if (!getDescription().equals(other.getDescription())) return false;
2727     }
2728     if (hasDiskSizeGb() != other.hasDiskSizeGb()) return false;
2729     if (hasDiskSizeGb()) {
2730       if (getDiskSizeGb() != other.getDiskSizeGb()) return false;
2731     }
2732     if (hasDownloadBytes() != other.hasDownloadBytes()) return false;
2733     if (hasDownloadBytes()) {
2734       if (getDownloadBytes() != other.getDownloadBytes()) return false;
2735     }
2736     if (hasId() != other.hasId()) return false;
2737     if (hasId()) {
2738       if (getId() != other.getId()) return false;
2739     }
2740     if (hasKind() != other.hasKind()) return false;
2741     if (hasKind()) {
2742       if (!getKind().equals(other.getKind())) return false;
2743     }
2744     if (hasLabelFingerprint() != other.hasLabelFingerprint()) return false;
2745     if (hasLabelFingerprint()) {
2746       if (!getLabelFingerprint().equals(other.getLabelFingerprint())) return false;
2747     }
2748     if (!internalGetLabels().equals(other.internalGetLabels())) return false;
2749     if (!getLicenseCodesList().equals(other.getLicenseCodesList())) return false;
2750     if (!getLicensesList().equals(other.getLicensesList())) return false;
2751     if (hasLocationHint() != other.hasLocationHint()) return false;
2752     if (hasLocationHint()) {
2753       if (!getLocationHint().equals(other.getLocationHint())) return false;
2754     }
2755     if (hasName() != other.hasName()) return false;
2756     if (hasName()) {
2757       if (!getName().equals(other.getName())) return false;
2758     }
2759     if (hasSatisfiesPzs() != other.hasSatisfiesPzs()) return false;
2760     if (hasSatisfiesPzs()) {
2761       if (getSatisfiesPzs() != other.getSatisfiesPzs()) return false;
2762     }
2763     if (hasSelfLink() != other.hasSelfLink()) return false;
2764     if (hasSelfLink()) {
2765       if (!getSelfLink().equals(other.getSelfLink())) return false;
2766     }
2767     if (hasSnapshotEncryptionKey() != other.hasSnapshotEncryptionKey()) return false;
2768     if (hasSnapshotEncryptionKey()) {
2769       if (!getSnapshotEncryptionKey().equals(other.getSnapshotEncryptionKey())) return false;
2770     }
2771     if (hasSnapshotType() != other.hasSnapshotType()) return false;
2772     if (hasSnapshotType()) {
2773       if (!getSnapshotType().equals(other.getSnapshotType())) return false;
2774     }
2775     if (hasSourceDisk() != other.hasSourceDisk()) return false;
2776     if (hasSourceDisk()) {
2777       if (!getSourceDisk().equals(other.getSourceDisk())) return false;
2778     }
2779     if (hasSourceDiskEncryptionKey() != other.hasSourceDiskEncryptionKey()) return false;
2780     if (hasSourceDiskEncryptionKey()) {
2781       if (!getSourceDiskEncryptionKey().equals(other.getSourceDiskEncryptionKey())) return false;
2782     }
2783     if (hasSourceDiskId() != other.hasSourceDiskId()) return false;
2784     if (hasSourceDiskId()) {
2785       if (!getSourceDiskId().equals(other.getSourceDiskId())) return false;
2786     }
2787     if (hasSourceSnapshotSchedulePolicy() != other.hasSourceSnapshotSchedulePolicy()) return false;
2788     if (hasSourceSnapshotSchedulePolicy()) {
2789       if (!getSourceSnapshotSchedulePolicy().equals(other.getSourceSnapshotSchedulePolicy()))
2790         return false;
2791     }
2792     if (hasSourceSnapshotSchedulePolicyId() != other.hasSourceSnapshotSchedulePolicyId())
2793       return false;
2794     if (hasSourceSnapshotSchedulePolicyId()) {
2795       if (!getSourceSnapshotSchedulePolicyId().equals(other.getSourceSnapshotSchedulePolicyId()))
2796         return false;
2797     }
2798     if (hasStatus() != other.hasStatus()) return false;
2799     if (hasStatus()) {
2800       if (!getStatus().equals(other.getStatus())) return false;
2801     }
2802     if (hasStorageBytes() != other.hasStorageBytes()) return false;
2803     if (hasStorageBytes()) {
2804       if (getStorageBytes() != other.getStorageBytes()) return false;
2805     }
2806     if (hasStorageBytesStatus() != other.hasStorageBytesStatus()) return false;
2807     if (hasStorageBytesStatus()) {
2808       if (!getStorageBytesStatus().equals(other.getStorageBytesStatus())) return false;
2809     }
2810     if (!getStorageLocationsList().equals(other.getStorageLocationsList())) return false;
2811     if (!getUnknownFields().equals(other.getUnknownFields())) return false;
2812     return true;
2813   }
2814 
2815   @java.lang.Override
hashCode()2816   public int hashCode() {
2817     if (memoizedHashCode != 0) {
2818       return memoizedHashCode;
2819     }
2820     int hash = 41;
2821     hash = (19 * hash) + getDescriptor().hashCode();
2822     if (hasArchitecture()) {
2823       hash = (37 * hash) + ARCHITECTURE_FIELD_NUMBER;
2824       hash = (53 * hash) + getArchitecture().hashCode();
2825     }
2826     if (hasAutoCreated()) {
2827       hash = (37 * hash) + AUTO_CREATED_FIELD_NUMBER;
2828       hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getAutoCreated());
2829     }
2830     if (hasChainName()) {
2831       hash = (37 * hash) + CHAIN_NAME_FIELD_NUMBER;
2832       hash = (53 * hash) + getChainName().hashCode();
2833     }
2834     if (hasCreationSizeBytes()) {
2835       hash = (37 * hash) + CREATION_SIZE_BYTES_FIELD_NUMBER;
2836       hash = (53 * hash) + com.google.protobuf.Internal.hashLong(getCreationSizeBytes());
2837     }
2838     if (hasCreationTimestamp()) {
2839       hash = (37 * hash) + CREATION_TIMESTAMP_FIELD_NUMBER;
2840       hash = (53 * hash) + getCreationTimestamp().hashCode();
2841     }
2842     if (hasDescription()) {
2843       hash = (37 * hash) + DESCRIPTION_FIELD_NUMBER;
2844       hash = (53 * hash) + getDescription().hashCode();
2845     }
2846     if (hasDiskSizeGb()) {
2847       hash = (37 * hash) + DISK_SIZE_GB_FIELD_NUMBER;
2848       hash = (53 * hash) + com.google.protobuf.Internal.hashLong(getDiskSizeGb());
2849     }
2850     if (hasDownloadBytes()) {
2851       hash = (37 * hash) + DOWNLOAD_BYTES_FIELD_NUMBER;
2852       hash = (53 * hash) + com.google.protobuf.Internal.hashLong(getDownloadBytes());
2853     }
2854     if (hasId()) {
2855       hash = (37 * hash) + ID_FIELD_NUMBER;
2856       hash = (53 * hash) + com.google.protobuf.Internal.hashLong(getId());
2857     }
2858     if (hasKind()) {
2859       hash = (37 * hash) + KIND_FIELD_NUMBER;
2860       hash = (53 * hash) + getKind().hashCode();
2861     }
2862     if (hasLabelFingerprint()) {
2863       hash = (37 * hash) + LABEL_FINGERPRINT_FIELD_NUMBER;
2864       hash = (53 * hash) + getLabelFingerprint().hashCode();
2865     }
2866     if (!internalGetLabels().getMap().isEmpty()) {
2867       hash = (37 * hash) + LABELS_FIELD_NUMBER;
2868       hash = (53 * hash) + internalGetLabels().hashCode();
2869     }
2870     if (getLicenseCodesCount() > 0) {
2871       hash = (37 * hash) + LICENSE_CODES_FIELD_NUMBER;
2872       hash = (53 * hash) + getLicenseCodesList().hashCode();
2873     }
2874     if (getLicensesCount() > 0) {
2875       hash = (37 * hash) + LICENSES_FIELD_NUMBER;
2876       hash = (53 * hash) + getLicensesList().hashCode();
2877     }
2878     if (hasLocationHint()) {
2879       hash = (37 * hash) + LOCATION_HINT_FIELD_NUMBER;
2880       hash = (53 * hash) + getLocationHint().hashCode();
2881     }
2882     if (hasName()) {
2883       hash = (37 * hash) + NAME_FIELD_NUMBER;
2884       hash = (53 * hash) + getName().hashCode();
2885     }
2886     if (hasSatisfiesPzs()) {
2887       hash = (37 * hash) + SATISFIES_PZS_FIELD_NUMBER;
2888       hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getSatisfiesPzs());
2889     }
2890     if (hasSelfLink()) {
2891       hash = (37 * hash) + SELF_LINK_FIELD_NUMBER;
2892       hash = (53 * hash) + getSelfLink().hashCode();
2893     }
2894     if (hasSnapshotEncryptionKey()) {
2895       hash = (37 * hash) + SNAPSHOT_ENCRYPTION_KEY_FIELD_NUMBER;
2896       hash = (53 * hash) + getSnapshotEncryptionKey().hashCode();
2897     }
2898     if (hasSnapshotType()) {
2899       hash = (37 * hash) + SNAPSHOT_TYPE_FIELD_NUMBER;
2900       hash = (53 * hash) + getSnapshotType().hashCode();
2901     }
2902     if (hasSourceDisk()) {
2903       hash = (37 * hash) + SOURCE_DISK_FIELD_NUMBER;
2904       hash = (53 * hash) + getSourceDisk().hashCode();
2905     }
2906     if (hasSourceDiskEncryptionKey()) {
2907       hash = (37 * hash) + SOURCE_DISK_ENCRYPTION_KEY_FIELD_NUMBER;
2908       hash = (53 * hash) + getSourceDiskEncryptionKey().hashCode();
2909     }
2910     if (hasSourceDiskId()) {
2911       hash = (37 * hash) + SOURCE_DISK_ID_FIELD_NUMBER;
2912       hash = (53 * hash) + getSourceDiskId().hashCode();
2913     }
2914     if (hasSourceSnapshotSchedulePolicy()) {
2915       hash = (37 * hash) + SOURCE_SNAPSHOT_SCHEDULE_POLICY_FIELD_NUMBER;
2916       hash = (53 * hash) + getSourceSnapshotSchedulePolicy().hashCode();
2917     }
2918     if (hasSourceSnapshotSchedulePolicyId()) {
2919       hash = (37 * hash) + SOURCE_SNAPSHOT_SCHEDULE_POLICY_ID_FIELD_NUMBER;
2920       hash = (53 * hash) + getSourceSnapshotSchedulePolicyId().hashCode();
2921     }
2922     if (hasStatus()) {
2923       hash = (37 * hash) + STATUS_FIELD_NUMBER;
2924       hash = (53 * hash) + getStatus().hashCode();
2925     }
2926     if (hasStorageBytes()) {
2927       hash = (37 * hash) + STORAGE_BYTES_FIELD_NUMBER;
2928       hash = (53 * hash) + com.google.protobuf.Internal.hashLong(getStorageBytes());
2929     }
2930     if (hasStorageBytesStatus()) {
2931       hash = (37 * hash) + STORAGE_BYTES_STATUS_FIELD_NUMBER;
2932       hash = (53 * hash) + getStorageBytesStatus().hashCode();
2933     }
2934     if (getStorageLocationsCount() > 0) {
2935       hash = (37 * hash) + STORAGE_LOCATIONS_FIELD_NUMBER;
2936       hash = (53 * hash) + getStorageLocationsList().hashCode();
2937     }
2938     hash = (29 * hash) + getUnknownFields().hashCode();
2939     memoizedHashCode = hash;
2940     return hash;
2941   }
2942 
parseFrom(java.nio.ByteBuffer data)2943   public static com.google.cloud.compute.v1.Snapshot parseFrom(java.nio.ByteBuffer data)
2944       throws com.google.protobuf.InvalidProtocolBufferException {
2945     return PARSER.parseFrom(data);
2946   }
2947 
parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)2948   public static com.google.cloud.compute.v1.Snapshot parseFrom(
2949       java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2950       throws com.google.protobuf.InvalidProtocolBufferException {
2951     return PARSER.parseFrom(data, extensionRegistry);
2952   }
2953 
parseFrom(com.google.protobuf.ByteString data)2954   public static com.google.cloud.compute.v1.Snapshot parseFrom(com.google.protobuf.ByteString data)
2955       throws com.google.protobuf.InvalidProtocolBufferException {
2956     return PARSER.parseFrom(data);
2957   }
2958 
parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)2959   public static com.google.cloud.compute.v1.Snapshot parseFrom(
2960       com.google.protobuf.ByteString data,
2961       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2962       throws com.google.protobuf.InvalidProtocolBufferException {
2963     return PARSER.parseFrom(data, extensionRegistry);
2964   }
2965 
parseFrom(byte[] data)2966   public static com.google.cloud.compute.v1.Snapshot parseFrom(byte[] data)
2967       throws com.google.protobuf.InvalidProtocolBufferException {
2968     return PARSER.parseFrom(data);
2969   }
2970 
parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)2971   public static com.google.cloud.compute.v1.Snapshot parseFrom(
2972       byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2973       throws com.google.protobuf.InvalidProtocolBufferException {
2974     return PARSER.parseFrom(data, extensionRegistry);
2975   }
2976 
parseFrom(java.io.InputStream input)2977   public static com.google.cloud.compute.v1.Snapshot parseFrom(java.io.InputStream input)
2978       throws java.io.IOException {
2979     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
2980   }
2981 
parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)2982   public static com.google.cloud.compute.v1.Snapshot parseFrom(
2983       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2984       throws java.io.IOException {
2985     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
2986         PARSER, input, extensionRegistry);
2987   }
2988 
parseDelimitedFrom(java.io.InputStream input)2989   public static com.google.cloud.compute.v1.Snapshot parseDelimitedFrom(java.io.InputStream input)
2990       throws java.io.IOException {
2991     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
2992   }
2993 
parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)2994   public static com.google.cloud.compute.v1.Snapshot parseDelimitedFrom(
2995       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2996       throws java.io.IOException {
2997     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(
2998         PARSER, input, extensionRegistry);
2999   }
3000 
parseFrom( com.google.protobuf.CodedInputStream input)3001   public static com.google.cloud.compute.v1.Snapshot parseFrom(
3002       com.google.protobuf.CodedInputStream input) throws java.io.IOException {
3003     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
3004   }
3005 
parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)3006   public static com.google.cloud.compute.v1.Snapshot parseFrom(
3007       com.google.protobuf.CodedInputStream input,
3008       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3009       throws java.io.IOException {
3010     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
3011         PARSER, input, extensionRegistry);
3012   }
3013 
3014   @java.lang.Override
newBuilderForType()3015   public Builder newBuilderForType() {
3016     return newBuilder();
3017   }
3018 
newBuilder()3019   public static Builder newBuilder() {
3020     return DEFAULT_INSTANCE.toBuilder();
3021   }
3022 
newBuilder(com.google.cloud.compute.v1.Snapshot prototype)3023   public static Builder newBuilder(com.google.cloud.compute.v1.Snapshot prototype) {
3024     return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
3025   }
3026 
3027   @java.lang.Override
toBuilder()3028   public Builder toBuilder() {
3029     return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
3030   }
3031 
3032   @java.lang.Override
newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)3033   protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
3034     Builder builder = new Builder(parent);
3035     return builder;
3036   }
3037   /**
3038    *
3039    *
3040    * <pre>
3041    * Represents a Persistent Disk Snapshot resource. You can use snapshots to back up data on a regular interval. For more information, read Creating persistent disk snapshots.
3042    * </pre>
3043    *
3044    * Protobuf type {@code google.cloud.compute.v1.Snapshot}
3045    */
3046   public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder>
3047       implements
3048       // @@protoc_insertion_point(builder_implements:google.cloud.compute.v1.Snapshot)
3049       com.google.cloud.compute.v1.SnapshotOrBuilder {
getDescriptor()3050     public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
3051       return com.google.cloud.compute.v1.Compute
3052           .internal_static_google_cloud_compute_v1_Snapshot_descriptor;
3053     }
3054 
3055     @SuppressWarnings({"rawtypes"})
internalGetMapField(int number)3056     protected com.google.protobuf.MapField internalGetMapField(int number) {
3057       switch (number) {
3058         case 500195327:
3059           return internalGetLabels();
3060         default:
3061           throw new RuntimeException("Invalid map field number: " + number);
3062       }
3063     }
3064 
3065     @SuppressWarnings({"rawtypes"})
internalGetMutableMapField(int number)3066     protected com.google.protobuf.MapField internalGetMutableMapField(int number) {
3067       switch (number) {
3068         case 500195327:
3069           return internalGetMutableLabels();
3070         default:
3071           throw new RuntimeException("Invalid map field number: " + number);
3072       }
3073     }
3074 
3075     @java.lang.Override
3076     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()3077         internalGetFieldAccessorTable() {
3078       return com.google.cloud.compute.v1.Compute
3079           .internal_static_google_cloud_compute_v1_Snapshot_fieldAccessorTable
3080           .ensureFieldAccessorsInitialized(
3081               com.google.cloud.compute.v1.Snapshot.class,
3082               com.google.cloud.compute.v1.Snapshot.Builder.class);
3083     }
3084 
3085     // Construct using com.google.cloud.compute.v1.Snapshot.newBuilder()
Builder()3086     private Builder() {
3087       maybeForceBuilderInitialization();
3088     }
3089 
Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)3090     private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
3091       super(parent);
3092       maybeForceBuilderInitialization();
3093     }
3094 
maybeForceBuilderInitialization()3095     private void maybeForceBuilderInitialization() {
3096       if (com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders) {
3097         getSnapshotEncryptionKeyFieldBuilder();
3098         getSourceDiskEncryptionKeyFieldBuilder();
3099       }
3100     }
3101 
3102     @java.lang.Override
clear()3103     public Builder clear() {
3104       super.clear();
3105       bitField0_ = 0;
3106       architecture_ = "";
3107       autoCreated_ = false;
3108       chainName_ = "";
3109       creationSizeBytes_ = 0L;
3110       creationTimestamp_ = "";
3111       description_ = "";
3112       diskSizeGb_ = 0L;
3113       downloadBytes_ = 0L;
3114       id_ = 0L;
3115       kind_ = "";
3116       labelFingerprint_ = "";
3117       internalGetMutableLabels().clear();
3118       licenseCodes_ = emptyLongList();
3119       licenses_ = com.google.protobuf.LazyStringArrayList.EMPTY;
3120       bitField0_ = (bitField0_ & ~0x00002000);
3121       locationHint_ = "";
3122       name_ = "";
3123       satisfiesPzs_ = false;
3124       selfLink_ = "";
3125       snapshotEncryptionKey_ = null;
3126       if (snapshotEncryptionKeyBuilder_ != null) {
3127         snapshotEncryptionKeyBuilder_.dispose();
3128         snapshotEncryptionKeyBuilder_ = null;
3129       }
3130       snapshotType_ = "";
3131       sourceDisk_ = "";
3132       sourceDiskEncryptionKey_ = null;
3133       if (sourceDiskEncryptionKeyBuilder_ != null) {
3134         sourceDiskEncryptionKeyBuilder_.dispose();
3135         sourceDiskEncryptionKeyBuilder_ = null;
3136       }
3137       sourceDiskId_ = "";
3138       sourceSnapshotSchedulePolicy_ = "";
3139       sourceSnapshotSchedulePolicyId_ = "";
3140       status_ = "";
3141       storageBytes_ = 0L;
3142       storageBytesStatus_ = "";
3143       storageLocations_ = com.google.protobuf.LazyStringArrayList.EMPTY;
3144       bitField0_ = (bitField0_ & ~0x10000000);
3145       return this;
3146     }
3147 
3148     @java.lang.Override
getDescriptorForType()3149     public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() {
3150       return com.google.cloud.compute.v1.Compute
3151           .internal_static_google_cloud_compute_v1_Snapshot_descriptor;
3152     }
3153 
3154     @java.lang.Override
getDefaultInstanceForType()3155     public com.google.cloud.compute.v1.Snapshot getDefaultInstanceForType() {
3156       return com.google.cloud.compute.v1.Snapshot.getDefaultInstance();
3157     }
3158 
3159     @java.lang.Override
build()3160     public com.google.cloud.compute.v1.Snapshot build() {
3161       com.google.cloud.compute.v1.Snapshot result = buildPartial();
3162       if (!result.isInitialized()) {
3163         throw newUninitializedMessageException(result);
3164       }
3165       return result;
3166     }
3167 
3168     @java.lang.Override
buildPartial()3169     public com.google.cloud.compute.v1.Snapshot buildPartial() {
3170       com.google.cloud.compute.v1.Snapshot result = new com.google.cloud.compute.v1.Snapshot(this);
3171       buildPartialRepeatedFields(result);
3172       if (bitField0_ != 0) {
3173         buildPartial0(result);
3174       }
3175       onBuilt();
3176       return result;
3177     }
3178 
buildPartialRepeatedFields(com.google.cloud.compute.v1.Snapshot result)3179     private void buildPartialRepeatedFields(com.google.cloud.compute.v1.Snapshot result) {
3180       if (((bitField0_ & 0x00001000) != 0)) {
3181         licenseCodes_.makeImmutable();
3182         bitField0_ = (bitField0_ & ~0x00001000);
3183       }
3184       result.licenseCodes_ = licenseCodes_;
3185       if (((bitField0_ & 0x00002000) != 0)) {
3186         licenses_ = licenses_.getUnmodifiableView();
3187         bitField0_ = (bitField0_ & ~0x00002000);
3188       }
3189       result.licenses_ = licenses_;
3190       if (((bitField0_ & 0x10000000) != 0)) {
3191         storageLocations_ = storageLocations_.getUnmodifiableView();
3192         bitField0_ = (bitField0_ & ~0x10000000);
3193       }
3194       result.storageLocations_ = storageLocations_;
3195     }
3196 
buildPartial0(com.google.cloud.compute.v1.Snapshot result)3197     private void buildPartial0(com.google.cloud.compute.v1.Snapshot result) {
3198       int from_bitField0_ = bitField0_;
3199       int to_bitField0_ = 0;
3200       if (((from_bitField0_ & 0x00000001) != 0)) {
3201         result.architecture_ = architecture_;
3202         to_bitField0_ |= 0x00000001;
3203       }
3204       if (((from_bitField0_ & 0x00000002) != 0)) {
3205         result.autoCreated_ = autoCreated_;
3206         to_bitField0_ |= 0x00000002;
3207       }
3208       if (((from_bitField0_ & 0x00000004) != 0)) {
3209         result.chainName_ = chainName_;
3210         to_bitField0_ |= 0x00000004;
3211       }
3212       if (((from_bitField0_ & 0x00000008) != 0)) {
3213         result.creationSizeBytes_ = creationSizeBytes_;
3214         to_bitField0_ |= 0x00000008;
3215       }
3216       if (((from_bitField0_ & 0x00000010) != 0)) {
3217         result.creationTimestamp_ = creationTimestamp_;
3218         to_bitField0_ |= 0x00000010;
3219       }
3220       if (((from_bitField0_ & 0x00000020) != 0)) {
3221         result.description_ = description_;
3222         to_bitField0_ |= 0x00000020;
3223       }
3224       if (((from_bitField0_ & 0x00000040) != 0)) {
3225         result.diskSizeGb_ = diskSizeGb_;
3226         to_bitField0_ |= 0x00000040;
3227       }
3228       if (((from_bitField0_ & 0x00000080) != 0)) {
3229         result.downloadBytes_ = downloadBytes_;
3230         to_bitField0_ |= 0x00000080;
3231       }
3232       if (((from_bitField0_ & 0x00000100) != 0)) {
3233         result.id_ = id_;
3234         to_bitField0_ |= 0x00000100;
3235       }
3236       if (((from_bitField0_ & 0x00000200) != 0)) {
3237         result.kind_ = kind_;
3238         to_bitField0_ |= 0x00000200;
3239       }
3240       if (((from_bitField0_ & 0x00000400) != 0)) {
3241         result.labelFingerprint_ = labelFingerprint_;
3242         to_bitField0_ |= 0x00000400;
3243       }
3244       if (((from_bitField0_ & 0x00000800) != 0)) {
3245         result.labels_ = internalGetLabels();
3246         result.labels_.makeImmutable();
3247       }
3248       if (((from_bitField0_ & 0x00004000) != 0)) {
3249         result.locationHint_ = locationHint_;
3250         to_bitField0_ |= 0x00000800;
3251       }
3252       if (((from_bitField0_ & 0x00008000) != 0)) {
3253         result.name_ = name_;
3254         to_bitField0_ |= 0x00001000;
3255       }
3256       if (((from_bitField0_ & 0x00010000) != 0)) {
3257         result.satisfiesPzs_ = satisfiesPzs_;
3258         to_bitField0_ |= 0x00002000;
3259       }
3260       if (((from_bitField0_ & 0x00020000) != 0)) {
3261         result.selfLink_ = selfLink_;
3262         to_bitField0_ |= 0x00004000;
3263       }
3264       if (((from_bitField0_ & 0x00040000) != 0)) {
3265         result.snapshotEncryptionKey_ =
3266             snapshotEncryptionKeyBuilder_ == null
3267                 ? snapshotEncryptionKey_
3268                 : snapshotEncryptionKeyBuilder_.build();
3269         to_bitField0_ |= 0x00008000;
3270       }
3271       if (((from_bitField0_ & 0x00080000) != 0)) {
3272         result.snapshotType_ = snapshotType_;
3273         to_bitField0_ |= 0x00010000;
3274       }
3275       if (((from_bitField0_ & 0x00100000) != 0)) {
3276         result.sourceDisk_ = sourceDisk_;
3277         to_bitField0_ |= 0x00020000;
3278       }
3279       if (((from_bitField0_ & 0x00200000) != 0)) {
3280         result.sourceDiskEncryptionKey_ =
3281             sourceDiskEncryptionKeyBuilder_ == null
3282                 ? sourceDiskEncryptionKey_
3283                 : sourceDiskEncryptionKeyBuilder_.build();
3284         to_bitField0_ |= 0x00040000;
3285       }
3286       if (((from_bitField0_ & 0x00400000) != 0)) {
3287         result.sourceDiskId_ = sourceDiskId_;
3288         to_bitField0_ |= 0x00080000;
3289       }
3290       if (((from_bitField0_ & 0x00800000) != 0)) {
3291         result.sourceSnapshotSchedulePolicy_ = sourceSnapshotSchedulePolicy_;
3292         to_bitField0_ |= 0x00100000;
3293       }
3294       if (((from_bitField0_ & 0x01000000) != 0)) {
3295         result.sourceSnapshotSchedulePolicyId_ = sourceSnapshotSchedulePolicyId_;
3296         to_bitField0_ |= 0x00200000;
3297       }
3298       if (((from_bitField0_ & 0x02000000) != 0)) {
3299         result.status_ = status_;
3300         to_bitField0_ |= 0x00400000;
3301       }
3302       if (((from_bitField0_ & 0x04000000) != 0)) {
3303         result.storageBytes_ = storageBytes_;
3304         to_bitField0_ |= 0x00800000;
3305       }
3306       if (((from_bitField0_ & 0x08000000) != 0)) {
3307         result.storageBytesStatus_ = storageBytesStatus_;
3308         to_bitField0_ |= 0x01000000;
3309       }
3310       result.bitField0_ |= to_bitField0_;
3311     }
3312 
3313     @java.lang.Override
clone()3314     public Builder clone() {
3315       return super.clone();
3316     }
3317 
3318     @java.lang.Override
setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)3319     public Builder setField(
3320         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
3321       return super.setField(field, value);
3322     }
3323 
3324     @java.lang.Override
clearField(com.google.protobuf.Descriptors.FieldDescriptor field)3325     public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) {
3326       return super.clearField(field);
3327     }
3328 
3329     @java.lang.Override
clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)3330     public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) {
3331       return super.clearOneof(oneof);
3332     }
3333 
3334     @java.lang.Override
setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)3335     public Builder setRepeatedField(
3336         com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) {
3337       return super.setRepeatedField(field, index, value);
3338     }
3339 
3340     @java.lang.Override
addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)3341     public Builder addRepeatedField(
3342         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
3343       return super.addRepeatedField(field, value);
3344     }
3345 
3346     @java.lang.Override
mergeFrom(com.google.protobuf.Message other)3347     public Builder mergeFrom(com.google.protobuf.Message other) {
3348       if (other instanceof com.google.cloud.compute.v1.Snapshot) {
3349         return mergeFrom((com.google.cloud.compute.v1.Snapshot) other);
3350       } else {
3351         super.mergeFrom(other);
3352         return this;
3353       }
3354     }
3355 
mergeFrom(com.google.cloud.compute.v1.Snapshot other)3356     public Builder mergeFrom(com.google.cloud.compute.v1.Snapshot other) {
3357       if (other == com.google.cloud.compute.v1.Snapshot.getDefaultInstance()) return this;
3358       if (other.hasArchitecture()) {
3359         architecture_ = other.architecture_;
3360         bitField0_ |= 0x00000001;
3361         onChanged();
3362       }
3363       if (other.hasAutoCreated()) {
3364         setAutoCreated(other.getAutoCreated());
3365       }
3366       if (other.hasChainName()) {
3367         chainName_ = other.chainName_;
3368         bitField0_ |= 0x00000004;
3369         onChanged();
3370       }
3371       if (other.hasCreationSizeBytes()) {
3372         setCreationSizeBytes(other.getCreationSizeBytes());
3373       }
3374       if (other.hasCreationTimestamp()) {
3375         creationTimestamp_ = other.creationTimestamp_;
3376         bitField0_ |= 0x00000010;
3377         onChanged();
3378       }
3379       if (other.hasDescription()) {
3380         description_ = other.description_;
3381         bitField0_ |= 0x00000020;
3382         onChanged();
3383       }
3384       if (other.hasDiskSizeGb()) {
3385         setDiskSizeGb(other.getDiskSizeGb());
3386       }
3387       if (other.hasDownloadBytes()) {
3388         setDownloadBytes(other.getDownloadBytes());
3389       }
3390       if (other.hasId()) {
3391         setId(other.getId());
3392       }
3393       if (other.hasKind()) {
3394         kind_ = other.kind_;
3395         bitField0_ |= 0x00000200;
3396         onChanged();
3397       }
3398       if (other.hasLabelFingerprint()) {
3399         labelFingerprint_ = other.labelFingerprint_;
3400         bitField0_ |= 0x00000400;
3401         onChanged();
3402       }
3403       internalGetMutableLabels().mergeFrom(other.internalGetLabels());
3404       bitField0_ |= 0x00000800;
3405       if (!other.licenseCodes_.isEmpty()) {
3406         if (licenseCodes_.isEmpty()) {
3407           licenseCodes_ = other.licenseCodes_;
3408           bitField0_ = (bitField0_ & ~0x00001000);
3409         } else {
3410           ensureLicenseCodesIsMutable();
3411           licenseCodes_.addAll(other.licenseCodes_);
3412         }
3413         onChanged();
3414       }
3415       if (!other.licenses_.isEmpty()) {
3416         if (licenses_.isEmpty()) {
3417           licenses_ = other.licenses_;
3418           bitField0_ = (bitField0_ & ~0x00002000);
3419         } else {
3420           ensureLicensesIsMutable();
3421           licenses_.addAll(other.licenses_);
3422         }
3423         onChanged();
3424       }
3425       if (other.hasLocationHint()) {
3426         locationHint_ = other.locationHint_;
3427         bitField0_ |= 0x00004000;
3428         onChanged();
3429       }
3430       if (other.hasName()) {
3431         name_ = other.name_;
3432         bitField0_ |= 0x00008000;
3433         onChanged();
3434       }
3435       if (other.hasSatisfiesPzs()) {
3436         setSatisfiesPzs(other.getSatisfiesPzs());
3437       }
3438       if (other.hasSelfLink()) {
3439         selfLink_ = other.selfLink_;
3440         bitField0_ |= 0x00020000;
3441         onChanged();
3442       }
3443       if (other.hasSnapshotEncryptionKey()) {
3444         mergeSnapshotEncryptionKey(other.getSnapshotEncryptionKey());
3445       }
3446       if (other.hasSnapshotType()) {
3447         snapshotType_ = other.snapshotType_;
3448         bitField0_ |= 0x00080000;
3449         onChanged();
3450       }
3451       if (other.hasSourceDisk()) {
3452         sourceDisk_ = other.sourceDisk_;
3453         bitField0_ |= 0x00100000;
3454         onChanged();
3455       }
3456       if (other.hasSourceDiskEncryptionKey()) {
3457         mergeSourceDiskEncryptionKey(other.getSourceDiskEncryptionKey());
3458       }
3459       if (other.hasSourceDiskId()) {
3460         sourceDiskId_ = other.sourceDiskId_;
3461         bitField0_ |= 0x00400000;
3462         onChanged();
3463       }
3464       if (other.hasSourceSnapshotSchedulePolicy()) {
3465         sourceSnapshotSchedulePolicy_ = other.sourceSnapshotSchedulePolicy_;
3466         bitField0_ |= 0x00800000;
3467         onChanged();
3468       }
3469       if (other.hasSourceSnapshotSchedulePolicyId()) {
3470         sourceSnapshotSchedulePolicyId_ = other.sourceSnapshotSchedulePolicyId_;
3471         bitField0_ |= 0x01000000;
3472         onChanged();
3473       }
3474       if (other.hasStatus()) {
3475         status_ = other.status_;
3476         bitField0_ |= 0x02000000;
3477         onChanged();
3478       }
3479       if (other.hasStorageBytes()) {
3480         setStorageBytes(other.getStorageBytes());
3481       }
3482       if (other.hasStorageBytesStatus()) {
3483         storageBytesStatus_ = other.storageBytesStatus_;
3484         bitField0_ |= 0x08000000;
3485         onChanged();
3486       }
3487       if (!other.storageLocations_.isEmpty()) {
3488         if (storageLocations_.isEmpty()) {
3489           storageLocations_ = other.storageLocations_;
3490           bitField0_ = (bitField0_ & ~0x10000000);
3491         } else {
3492           ensureStorageLocationsIsMutable();
3493           storageLocations_.addAll(other.storageLocations_);
3494         }
3495         onChanged();
3496       }
3497       this.mergeUnknownFields(other.getUnknownFields());
3498       onChanged();
3499       return this;
3500     }
3501 
3502     @java.lang.Override
isInitialized()3503     public final boolean isInitialized() {
3504       return true;
3505     }
3506 
3507     @java.lang.Override
mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)3508     public Builder mergeFrom(
3509         com.google.protobuf.CodedInputStream input,
3510         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3511         throws java.io.IOException {
3512       if (extensionRegistry == null) {
3513         throw new java.lang.NullPointerException();
3514       }
3515       try {
3516         boolean done = false;
3517         while (!done) {
3518           int tag = input.readTag();
3519           switch (tag) {
3520             case 0:
3521               done = true;
3522               break;
3523             case 26840:
3524               {
3525                 id_ = input.readUInt64();
3526                 bitField0_ |= 0x00000100;
3527                 break;
3528               } // case 26840
3529             case 26336418:
3530               {
3531                 kind_ = input.readStringRequireUtf8();
3532                 bitField0_ |= 0x00000200;
3533                 break;
3534               } // case 26336418
3535             case 26989658:
3536               {
3537                 name_ = input.readStringRequireUtf8();
3538                 bitField0_ |= 0x00008000;
3539                 break;
3540               } // case 26989658
3541             case 244202930:
3542               {
3543                 creationTimestamp_ = input.readStringRequireUtf8();
3544                 bitField0_ |= 0x00000010;
3545                 break;
3546               } // case 244202930
3547             case 346676210:
3548               {
3549                 input.readMessage(
3550                     getSnapshotEncryptionKeyFieldBuilder().getBuilder(), extensionRegistry);
3551                 bitField0_ |= 0x00040000;
3552                 break;
3553               } // case 346676210
3554             case 363861312:
3555               {
3556                 long v = input.readInt64();
3557                 ensureLicenseCodesIsMutable();
3558                 licenseCodes_.addLong(v);
3559                 break;
3560               } // case 363861312
3561             case 363861314:
3562               {
3563                 int length = input.readRawVarint32();
3564                 int limit = input.pushLimit(length);
3565                 ensureLicenseCodesIsMutable();
3566                 while (input.getBytesUntilLimit() > 0) {
3567                   licenseCodes_.addLong(input.readInt64());
3568                 }
3569                 input.popLimit(limit);
3570                 break;
3571               } // case 363861314
3572             case 549153354:
3573               {
3574                 chainName_ = input.readStringRequireUtf8();
3575                 bitField0_ |= 0x00000004;
3576                 break;
3577               } // case 549153354
3578             case 563912378:
3579               {
3580                 sourceSnapshotSchedulePolicyId_ = input.readStringRequireUtf8();
3581                 bitField0_ |= 0x01000000;
3582                 break;
3583               } // case 563912378
3584             case 994797226:
3585               {
3586                 snapshotType_ = input.readStringRequireUtf8();
3587                 bitField0_ |= 0x00080000;
3588                 break;
3589               } // case 994797226
3590             case 1003200616:
3591               {
3592                 creationSizeBytes_ = input.readInt64();
3593                 bitField0_ |= 0x00000008;
3594                 break;
3595               } // case 1003200616
3596             case 1424998602:
3597               {
3598                 labelFingerprint_ = input.readStringRequireUtf8();
3599                 bitField0_ |= 0x00000400;
3600                 break;
3601               } // case 1424998602
3602             case 1450082194:
3603               {
3604                 status_ = input.readStringRequireUtf8();
3605                 bitField0_ |= 0x02000000;
3606                 break;
3607               } // case 1450082194
3608             case 1886050330:
3609               {
3610                 sourceSnapshotSchedulePolicy_ = input.readStringRequireUtf8();
3611                 bitField0_ |= 0x00800000;
3612                 break;
3613               } // case 1886050330
3614             case -1872541030:
3615               {
3616                 architecture_ = input.readStringRequireUtf8();
3617                 bitField0_ |= 0x00000001;
3618                 break;
3619               } // case -1872541030
3620             case -1764857416:
3621               {
3622                 diskSizeGb_ = input.readInt64();
3623                 bitField0_ |= 0x00000040;
3624                 break;
3625               } // case -1764857416
3626             case -1670925102:
3627               {
3628                 java.lang.String s = input.readStringRequireUtf8();
3629                 ensureStorageLocationsIsMutable();
3630                 storageLocations_.add(s);
3631                 break;
3632               } // case -1670925102
3633             case -1593826670:
3634               {
3635                 java.lang.String s = input.readStringRequireUtf8();
3636                 ensureLicensesIsMutable();
3637                 licenses_.add(s);
3638                 break;
3639               } // case -1593826670
3640             case -1490811254:
3641               {
3642                 locationHint_ = input.readStringRequireUtf8();
3643                 bitField0_ |= 0x00004000;
3644                 break;
3645               } // case -1490811254
3646             case -911466526:
3647               {
3648                 description_ = input.readStringRequireUtf8();
3649                 bitField0_ |= 0x00000020;
3650                 break;
3651               } // case -911466526
3652             case -897913544:
3653               {
3654                 storageBytes_ = input.readInt64();
3655                 bitField0_ |= 0x04000000;
3656                 break;
3657               } // case -897913544
3658             case -814534752:
3659               {
3660                 downloadBytes_ = input.readInt64();
3661                 bitField0_ |= 0x00000080;
3662                 break;
3663               } // case -814534752
3664             case -680936950:
3665               {
3666                 sourceDisk_ = input.readStringRequireUtf8();
3667                 bitField0_ |= 0x00100000;
3668                 break;
3669               } // case -680936950
3670             case -661440822:
3671               {
3672                 sourceDiskId_ = input.readStringRequireUtf8();
3673                 bitField0_ |= 0x00400000;
3674                 break;
3675               } // case -661440822
3676             case -645248918:
3677               {
3678                 selfLink_ = input.readStringRequireUtf8();
3679                 bitField0_ |= 0x00020000;
3680                 break;
3681               } // case -645248918
3682             case -583589184:
3683               {
3684                 autoCreated_ = input.readBool();
3685                 bitField0_ |= 0x00000002;
3686                 break;
3687               } // case -583589184
3688             case -447253160:
3689               {
3690                 satisfiesPzs_ = input.readBool();
3691                 bitField0_ |= 0x00010000;
3692                 break;
3693               } // case -447253160
3694             case -369054638:
3695               {
3696                 storageBytesStatus_ = input.readStringRequireUtf8();
3697                 bitField0_ |= 0x08000000;
3698                 break;
3699               } // case -369054638
3700             case -293404678:
3701               {
3702                 com.google.protobuf.MapEntry<java.lang.String, java.lang.String> labels__ =
3703                     input.readMessage(
3704                         LabelsDefaultEntryHolder.defaultEntry.getParserForType(),
3705                         extensionRegistry);
3706                 internalGetMutableLabels()
3707                     .getMutableMap()
3708                     .put(labels__.getKey(), labels__.getValue());
3709                 bitField0_ |= 0x00000800;
3710                 break;
3711               } // case -293404678
3712             case -42958070:
3713               {
3714                 input.readMessage(
3715                     getSourceDiskEncryptionKeyFieldBuilder().getBuilder(), extensionRegistry);
3716                 bitField0_ |= 0x00200000;
3717                 break;
3718               } // case -42958070
3719             default:
3720               {
3721                 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
3722                   done = true; // was an endgroup tag
3723                 }
3724                 break;
3725               } // default:
3726           } // switch (tag)
3727         } // while (!done)
3728       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
3729         throw e.unwrapIOException();
3730       } finally {
3731         onChanged();
3732       } // finally
3733       return this;
3734     }
3735 
3736     private int bitField0_;
3737 
3738     private java.lang.Object architecture_ = "";
3739     /**
3740      *
3741      *
3742      * <pre>
3743      * [Output Only] The architecture of the snapshot. Valid values are ARM64 or X86_64.
3744      * Check the Architecture enum for the list of possible values.
3745      * </pre>
3746      *
3747      * <code>optional string architecture = 302803283;</code>
3748      *
3749      * @return Whether the architecture field is set.
3750      */
hasArchitecture()3751     public boolean hasArchitecture() {
3752       return ((bitField0_ & 0x00000001) != 0);
3753     }
3754     /**
3755      *
3756      *
3757      * <pre>
3758      * [Output Only] The architecture of the snapshot. Valid values are ARM64 or X86_64.
3759      * Check the Architecture enum for the list of possible values.
3760      * </pre>
3761      *
3762      * <code>optional string architecture = 302803283;</code>
3763      *
3764      * @return The architecture.
3765      */
getArchitecture()3766     public java.lang.String getArchitecture() {
3767       java.lang.Object ref = architecture_;
3768       if (!(ref instanceof java.lang.String)) {
3769         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
3770         java.lang.String s = bs.toStringUtf8();
3771         architecture_ = s;
3772         return s;
3773       } else {
3774         return (java.lang.String) ref;
3775       }
3776     }
3777     /**
3778      *
3779      *
3780      * <pre>
3781      * [Output Only] The architecture of the snapshot. Valid values are ARM64 or X86_64.
3782      * Check the Architecture enum for the list of possible values.
3783      * </pre>
3784      *
3785      * <code>optional string architecture = 302803283;</code>
3786      *
3787      * @return The bytes for architecture.
3788      */
getArchitectureBytes()3789     public com.google.protobuf.ByteString getArchitectureBytes() {
3790       java.lang.Object ref = architecture_;
3791       if (ref instanceof String) {
3792         com.google.protobuf.ByteString b =
3793             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
3794         architecture_ = b;
3795         return b;
3796       } else {
3797         return (com.google.protobuf.ByteString) ref;
3798       }
3799     }
3800     /**
3801      *
3802      *
3803      * <pre>
3804      * [Output Only] The architecture of the snapshot. Valid values are ARM64 or X86_64.
3805      * Check the Architecture enum for the list of possible values.
3806      * </pre>
3807      *
3808      * <code>optional string architecture = 302803283;</code>
3809      *
3810      * @param value The architecture to set.
3811      * @return This builder for chaining.
3812      */
setArchitecture(java.lang.String value)3813     public Builder setArchitecture(java.lang.String value) {
3814       if (value == null) {
3815         throw new NullPointerException();
3816       }
3817       architecture_ = value;
3818       bitField0_ |= 0x00000001;
3819       onChanged();
3820       return this;
3821     }
3822     /**
3823      *
3824      *
3825      * <pre>
3826      * [Output Only] The architecture of the snapshot. Valid values are ARM64 or X86_64.
3827      * Check the Architecture enum for the list of possible values.
3828      * </pre>
3829      *
3830      * <code>optional string architecture = 302803283;</code>
3831      *
3832      * @return This builder for chaining.
3833      */
clearArchitecture()3834     public Builder clearArchitecture() {
3835       architecture_ = getDefaultInstance().getArchitecture();
3836       bitField0_ = (bitField0_ & ~0x00000001);
3837       onChanged();
3838       return this;
3839     }
3840     /**
3841      *
3842      *
3843      * <pre>
3844      * [Output Only] The architecture of the snapshot. Valid values are ARM64 or X86_64.
3845      * Check the Architecture enum for the list of possible values.
3846      * </pre>
3847      *
3848      * <code>optional string architecture = 302803283;</code>
3849      *
3850      * @param value The bytes for architecture to set.
3851      * @return This builder for chaining.
3852      */
setArchitectureBytes(com.google.protobuf.ByteString value)3853     public Builder setArchitectureBytes(com.google.protobuf.ByteString value) {
3854       if (value == null) {
3855         throw new NullPointerException();
3856       }
3857       checkByteStringIsUtf8(value);
3858       architecture_ = value;
3859       bitField0_ |= 0x00000001;
3860       onChanged();
3861       return this;
3862     }
3863 
3864     private boolean autoCreated_;
3865     /**
3866      *
3867      *
3868      * <pre>
3869      * [Output Only] Set to true if snapshots are automatically created by applying resource policy on the target disk.
3870      * </pre>
3871      *
3872      * <code>optional bool auto_created = 463922264;</code>
3873      *
3874      * @return Whether the autoCreated field is set.
3875      */
3876     @java.lang.Override
hasAutoCreated()3877     public boolean hasAutoCreated() {
3878       return ((bitField0_ & 0x00000002) != 0);
3879     }
3880     /**
3881      *
3882      *
3883      * <pre>
3884      * [Output Only] Set to true if snapshots are automatically created by applying resource policy on the target disk.
3885      * </pre>
3886      *
3887      * <code>optional bool auto_created = 463922264;</code>
3888      *
3889      * @return The autoCreated.
3890      */
3891     @java.lang.Override
getAutoCreated()3892     public boolean getAutoCreated() {
3893       return autoCreated_;
3894     }
3895     /**
3896      *
3897      *
3898      * <pre>
3899      * [Output Only] Set to true if snapshots are automatically created by applying resource policy on the target disk.
3900      * </pre>
3901      *
3902      * <code>optional bool auto_created = 463922264;</code>
3903      *
3904      * @param value The autoCreated to set.
3905      * @return This builder for chaining.
3906      */
setAutoCreated(boolean value)3907     public Builder setAutoCreated(boolean value) {
3908 
3909       autoCreated_ = value;
3910       bitField0_ |= 0x00000002;
3911       onChanged();
3912       return this;
3913     }
3914     /**
3915      *
3916      *
3917      * <pre>
3918      * [Output Only] Set to true if snapshots are automatically created by applying resource policy on the target disk.
3919      * </pre>
3920      *
3921      * <code>optional bool auto_created = 463922264;</code>
3922      *
3923      * @return This builder for chaining.
3924      */
clearAutoCreated()3925     public Builder clearAutoCreated() {
3926       bitField0_ = (bitField0_ & ~0x00000002);
3927       autoCreated_ = false;
3928       onChanged();
3929       return this;
3930     }
3931 
3932     private java.lang.Object chainName_ = "";
3933     /**
3934      *
3935      *
3936      * <pre>
3937      * Creates the new snapshot in the snapshot chain labeled with the specified name. The chain name must be 1-63 characters long and comply with RFC1035. This is an uncommon option only for advanced service owners who needs to create separate snapshot chains, for example, for chargeback tracking. When you describe your snapshot resource, this field is visible only if it has a non-empty value.
3938      * </pre>
3939      *
3940      * <code>optional string chain_name = 68644169;</code>
3941      *
3942      * @return Whether the chainName field is set.
3943      */
hasChainName()3944     public boolean hasChainName() {
3945       return ((bitField0_ & 0x00000004) != 0);
3946     }
3947     /**
3948      *
3949      *
3950      * <pre>
3951      * Creates the new snapshot in the snapshot chain labeled with the specified name. The chain name must be 1-63 characters long and comply with RFC1035. This is an uncommon option only for advanced service owners who needs to create separate snapshot chains, for example, for chargeback tracking. When you describe your snapshot resource, this field is visible only if it has a non-empty value.
3952      * </pre>
3953      *
3954      * <code>optional string chain_name = 68644169;</code>
3955      *
3956      * @return The chainName.
3957      */
getChainName()3958     public java.lang.String getChainName() {
3959       java.lang.Object ref = chainName_;
3960       if (!(ref instanceof java.lang.String)) {
3961         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
3962         java.lang.String s = bs.toStringUtf8();
3963         chainName_ = s;
3964         return s;
3965       } else {
3966         return (java.lang.String) ref;
3967       }
3968     }
3969     /**
3970      *
3971      *
3972      * <pre>
3973      * Creates the new snapshot in the snapshot chain labeled with the specified name. The chain name must be 1-63 characters long and comply with RFC1035. This is an uncommon option only for advanced service owners who needs to create separate snapshot chains, for example, for chargeback tracking. When you describe your snapshot resource, this field is visible only if it has a non-empty value.
3974      * </pre>
3975      *
3976      * <code>optional string chain_name = 68644169;</code>
3977      *
3978      * @return The bytes for chainName.
3979      */
getChainNameBytes()3980     public com.google.protobuf.ByteString getChainNameBytes() {
3981       java.lang.Object ref = chainName_;
3982       if (ref instanceof String) {
3983         com.google.protobuf.ByteString b =
3984             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
3985         chainName_ = b;
3986         return b;
3987       } else {
3988         return (com.google.protobuf.ByteString) ref;
3989       }
3990     }
3991     /**
3992      *
3993      *
3994      * <pre>
3995      * Creates the new snapshot in the snapshot chain labeled with the specified name. The chain name must be 1-63 characters long and comply with RFC1035. This is an uncommon option only for advanced service owners who needs to create separate snapshot chains, for example, for chargeback tracking. When you describe your snapshot resource, this field is visible only if it has a non-empty value.
3996      * </pre>
3997      *
3998      * <code>optional string chain_name = 68644169;</code>
3999      *
4000      * @param value The chainName to set.
4001      * @return This builder for chaining.
4002      */
setChainName(java.lang.String value)4003     public Builder setChainName(java.lang.String value) {
4004       if (value == null) {
4005         throw new NullPointerException();
4006       }
4007       chainName_ = value;
4008       bitField0_ |= 0x00000004;
4009       onChanged();
4010       return this;
4011     }
4012     /**
4013      *
4014      *
4015      * <pre>
4016      * Creates the new snapshot in the snapshot chain labeled with the specified name. The chain name must be 1-63 characters long and comply with RFC1035. This is an uncommon option only for advanced service owners who needs to create separate snapshot chains, for example, for chargeback tracking. When you describe your snapshot resource, this field is visible only if it has a non-empty value.
4017      * </pre>
4018      *
4019      * <code>optional string chain_name = 68644169;</code>
4020      *
4021      * @return This builder for chaining.
4022      */
clearChainName()4023     public Builder clearChainName() {
4024       chainName_ = getDefaultInstance().getChainName();
4025       bitField0_ = (bitField0_ & ~0x00000004);
4026       onChanged();
4027       return this;
4028     }
4029     /**
4030      *
4031      *
4032      * <pre>
4033      * Creates the new snapshot in the snapshot chain labeled with the specified name. The chain name must be 1-63 characters long and comply with RFC1035. This is an uncommon option only for advanced service owners who needs to create separate snapshot chains, for example, for chargeback tracking. When you describe your snapshot resource, this field is visible only if it has a non-empty value.
4034      * </pre>
4035      *
4036      * <code>optional string chain_name = 68644169;</code>
4037      *
4038      * @param value The bytes for chainName to set.
4039      * @return This builder for chaining.
4040      */
setChainNameBytes(com.google.protobuf.ByteString value)4041     public Builder setChainNameBytes(com.google.protobuf.ByteString value) {
4042       if (value == null) {
4043         throw new NullPointerException();
4044       }
4045       checkByteStringIsUtf8(value);
4046       chainName_ = value;
4047       bitField0_ |= 0x00000004;
4048       onChanged();
4049       return this;
4050     }
4051 
4052     private long creationSizeBytes_;
4053     /**
4054      *
4055      *
4056      * <pre>
4057      * [Output Only] Size in bytes of the snapshot at creation time.
4058      * </pre>
4059      *
4060      * <code>optional int64 creation_size_bytes = 125400077;</code>
4061      *
4062      * @return Whether the creationSizeBytes field is set.
4063      */
4064     @java.lang.Override
hasCreationSizeBytes()4065     public boolean hasCreationSizeBytes() {
4066       return ((bitField0_ & 0x00000008) != 0);
4067     }
4068     /**
4069      *
4070      *
4071      * <pre>
4072      * [Output Only] Size in bytes of the snapshot at creation time.
4073      * </pre>
4074      *
4075      * <code>optional int64 creation_size_bytes = 125400077;</code>
4076      *
4077      * @return The creationSizeBytes.
4078      */
4079     @java.lang.Override
getCreationSizeBytes()4080     public long getCreationSizeBytes() {
4081       return creationSizeBytes_;
4082     }
4083     /**
4084      *
4085      *
4086      * <pre>
4087      * [Output Only] Size in bytes of the snapshot at creation time.
4088      * </pre>
4089      *
4090      * <code>optional int64 creation_size_bytes = 125400077;</code>
4091      *
4092      * @param value The creationSizeBytes to set.
4093      * @return This builder for chaining.
4094      */
setCreationSizeBytes(long value)4095     public Builder setCreationSizeBytes(long value) {
4096 
4097       creationSizeBytes_ = value;
4098       bitField0_ |= 0x00000008;
4099       onChanged();
4100       return this;
4101     }
4102     /**
4103      *
4104      *
4105      * <pre>
4106      * [Output Only] Size in bytes of the snapshot at creation time.
4107      * </pre>
4108      *
4109      * <code>optional int64 creation_size_bytes = 125400077;</code>
4110      *
4111      * @return This builder for chaining.
4112      */
clearCreationSizeBytes()4113     public Builder clearCreationSizeBytes() {
4114       bitField0_ = (bitField0_ & ~0x00000008);
4115       creationSizeBytes_ = 0L;
4116       onChanged();
4117       return this;
4118     }
4119 
4120     private java.lang.Object creationTimestamp_ = "";
4121     /**
4122      *
4123      *
4124      * <pre>
4125      * [Output Only] Creation timestamp in RFC3339 text format.
4126      * </pre>
4127      *
4128      * <code>optional string creation_timestamp = 30525366;</code>
4129      *
4130      * @return Whether the creationTimestamp field is set.
4131      */
hasCreationTimestamp()4132     public boolean hasCreationTimestamp() {
4133       return ((bitField0_ & 0x00000010) != 0);
4134     }
4135     /**
4136      *
4137      *
4138      * <pre>
4139      * [Output Only] Creation timestamp in RFC3339 text format.
4140      * </pre>
4141      *
4142      * <code>optional string creation_timestamp = 30525366;</code>
4143      *
4144      * @return The creationTimestamp.
4145      */
getCreationTimestamp()4146     public java.lang.String getCreationTimestamp() {
4147       java.lang.Object ref = creationTimestamp_;
4148       if (!(ref instanceof java.lang.String)) {
4149         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
4150         java.lang.String s = bs.toStringUtf8();
4151         creationTimestamp_ = s;
4152         return s;
4153       } else {
4154         return (java.lang.String) ref;
4155       }
4156     }
4157     /**
4158      *
4159      *
4160      * <pre>
4161      * [Output Only] Creation timestamp in RFC3339 text format.
4162      * </pre>
4163      *
4164      * <code>optional string creation_timestamp = 30525366;</code>
4165      *
4166      * @return The bytes for creationTimestamp.
4167      */
getCreationTimestampBytes()4168     public com.google.protobuf.ByteString getCreationTimestampBytes() {
4169       java.lang.Object ref = creationTimestamp_;
4170       if (ref instanceof String) {
4171         com.google.protobuf.ByteString b =
4172             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
4173         creationTimestamp_ = b;
4174         return b;
4175       } else {
4176         return (com.google.protobuf.ByteString) ref;
4177       }
4178     }
4179     /**
4180      *
4181      *
4182      * <pre>
4183      * [Output Only] Creation timestamp in RFC3339 text format.
4184      * </pre>
4185      *
4186      * <code>optional string creation_timestamp = 30525366;</code>
4187      *
4188      * @param value The creationTimestamp to set.
4189      * @return This builder for chaining.
4190      */
setCreationTimestamp(java.lang.String value)4191     public Builder setCreationTimestamp(java.lang.String value) {
4192       if (value == null) {
4193         throw new NullPointerException();
4194       }
4195       creationTimestamp_ = value;
4196       bitField0_ |= 0x00000010;
4197       onChanged();
4198       return this;
4199     }
4200     /**
4201      *
4202      *
4203      * <pre>
4204      * [Output Only] Creation timestamp in RFC3339 text format.
4205      * </pre>
4206      *
4207      * <code>optional string creation_timestamp = 30525366;</code>
4208      *
4209      * @return This builder for chaining.
4210      */
clearCreationTimestamp()4211     public Builder clearCreationTimestamp() {
4212       creationTimestamp_ = getDefaultInstance().getCreationTimestamp();
4213       bitField0_ = (bitField0_ & ~0x00000010);
4214       onChanged();
4215       return this;
4216     }
4217     /**
4218      *
4219      *
4220      * <pre>
4221      * [Output Only] Creation timestamp in RFC3339 text format.
4222      * </pre>
4223      *
4224      * <code>optional string creation_timestamp = 30525366;</code>
4225      *
4226      * @param value The bytes for creationTimestamp to set.
4227      * @return This builder for chaining.
4228      */
setCreationTimestampBytes(com.google.protobuf.ByteString value)4229     public Builder setCreationTimestampBytes(com.google.protobuf.ByteString value) {
4230       if (value == null) {
4231         throw new NullPointerException();
4232       }
4233       checkByteStringIsUtf8(value);
4234       creationTimestamp_ = value;
4235       bitField0_ |= 0x00000010;
4236       onChanged();
4237       return this;
4238     }
4239 
4240     private java.lang.Object description_ = "";
4241     /**
4242      *
4243      *
4244      * <pre>
4245      * An optional description of this resource. Provide this property when you create the resource.
4246      * </pre>
4247      *
4248      * <code>optional string description = 422937596;</code>
4249      *
4250      * @return Whether the description field is set.
4251      */
hasDescription()4252     public boolean hasDescription() {
4253       return ((bitField0_ & 0x00000020) != 0);
4254     }
4255     /**
4256      *
4257      *
4258      * <pre>
4259      * An optional description of this resource. Provide this property when you create the resource.
4260      * </pre>
4261      *
4262      * <code>optional string description = 422937596;</code>
4263      *
4264      * @return The description.
4265      */
getDescription()4266     public java.lang.String getDescription() {
4267       java.lang.Object ref = description_;
4268       if (!(ref instanceof java.lang.String)) {
4269         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
4270         java.lang.String s = bs.toStringUtf8();
4271         description_ = s;
4272         return s;
4273       } else {
4274         return (java.lang.String) ref;
4275       }
4276     }
4277     /**
4278      *
4279      *
4280      * <pre>
4281      * An optional description of this resource. Provide this property when you create the resource.
4282      * </pre>
4283      *
4284      * <code>optional string description = 422937596;</code>
4285      *
4286      * @return The bytes for description.
4287      */
getDescriptionBytes()4288     public com.google.protobuf.ByteString getDescriptionBytes() {
4289       java.lang.Object ref = description_;
4290       if (ref instanceof String) {
4291         com.google.protobuf.ByteString b =
4292             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
4293         description_ = b;
4294         return b;
4295       } else {
4296         return (com.google.protobuf.ByteString) ref;
4297       }
4298     }
4299     /**
4300      *
4301      *
4302      * <pre>
4303      * An optional description of this resource. Provide this property when you create the resource.
4304      * </pre>
4305      *
4306      * <code>optional string description = 422937596;</code>
4307      *
4308      * @param value The description to set.
4309      * @return This builder for chaining.
4310      */
setDescription(java.lang.String value)4311     public Builder setDescription(java.lang.String value) {
4312       if (value == null) {
4313         throw new NullPointerException();
4314       }
4315       description_ = value;
4316       bitField0_ |= 0x00000020;
4317       onChanged();
4318       return this;
4319     }
4320     /**
4321      *
4322      *
4323      * <pre>
4324      * An optional description of this resource. Provide this property when you create the resource.
4325      * </pre>
4326      *
4327      * <code>optional string description = 422937596;</code>
4328      *
4329      * @return This builder for chaining.
4330      */
clearDescription()4331     public Builder clearDescription() {
4332       description_ = getDefaultInstance().getDescription();
4333       bitField0_ = (bitField0_ & ~0x00000020);
4334       onChanged();
4335       return this;
4336     }
4337     /**
4338      *
4339      *
4340      * <pre>
4341      * An optional description of this resource. Provide this property when you create the resource.
4342      * </pre>
4343      *
4344      * <code>optional string description = 422937596;</code>
4345      *
4346      * @param value The bytes for description to set.
4347      * @return This builder for chaining.
4348      */
setDescriptionBytes(com.google.protobuf.ByteString value)4349     public Builder setDescriptionBytes(com.google.protobuf.ByteString value) {
4350       if (value == null) {
4351         throw new NullPointerException();
4352       }
4353       checkByteStringIsUtf8(value);
4354       description_ = value;
4355       bitField0_ |= 0x00000020;
4356       onChanged();
4357       return this;
4358     }
4359 
4360     private long diskSizeGb_;
4361     /**
4362      *
4363      *
4364      * <pre>
4365      * [Output Only] Size of the source disk, specified in GB.
4366      * </pre>
4367      *
4368      * <code>optional int64 disk_size_gb = 316263735;</code>
4369      *
4370      * @return Whether the diskSizeGb field is set.
4371      */
4372     @java.lang.Override
hasDiskSizeGb()4373     public boolean hasDiskSizeGb() {
4374       return ((bitField0_ & 0x00000040) != 0);
4375     }
4376     /**
4377      *
4378      *
4379      * <pre>
4380      * [Output Only] Size of the source disk, specified in GB.
4381      * </pre>
4382      *
4383      * <code>optional int64 disk_size_gb = 316263735;</code>
4384      *
4385      * @return The diskSizeGb.
4386      */
4387     @java.lang.Override
getDiskSizeGb()4388     public long getDiskSizeGb() {
4389       return diskSizeGb_;
4390     }
4391     /**
4392      *
4393      *
4394      * <pre>
4395      * [Output Only] Size of the source disk, specified in GB.
4396      * </pre>
4397      *
4398      * <code>optional int64 disk_size_gb = 316263735;</code>
4399      *
4400      * @param value The diskSizeGb to set.
4401      * @return This builder for chaining.
4402      */
setDiskSizeGb(long value)4403     public Builder setDiskSizeGb(long value) {
4404 
4405       diskSizeGb_ = value;
4406       bitField0_ |= 0x00000040;
4407       onChanged();
4408       return this;
4409     }
4410     /**
4411      *
4412      *
4413      * <pre>
4414      * [Output Only] Size of the source disk, specified in GB.
4415      * </pre>
4416      *
4417      * <code>optional int64 disk_size_gb = 316263735;</code>
4418      *
4419      * @return This builder for chaining.
4420      */
clearDiskSizeGb()4421     public Builder clearDiskSizeGb() {
4422       bitField0_ = (bitField0_ & ~0x00000040);
4423       diskSizeGb_ = 0L;
4424       onChanged();
4425       return this;
4426     }
4427 
4428     private long downloadBytes_;
4429     /**
4430      *
4431      *
4432      * <pre>
4433      * [Output Only] Number of bytes downloaded to restore a snapshot to a disk.
4434      * </pre>
4435      *
4436      * <code>optional int64 download_bytes = 435054068;</code>
4437      *
4438      * @return Whether the downloadBytes field is set.
4439      */
4440     @java.lang.Override
hasDownloadBytes()4441     public boolean hasDownloadBytes() {
4442       return ((bitField0_ & 0x00000080) != 0);
4443     }
4444     /**
4445      *
4446      *
4447      * <pre>
4448      * [Output Only] Number of bytes downloaded to restore a snapshot to a disk.
4449      * </pre>
4450      *
4451      * <code>optional int64 download_bytes = 435054068;</code>
4452      *
4453      * @return The downloadBytes.
4454      */
4455     @java.lang.Override
getDownloadBytes()4456     public long getDownloadBytes() {
4457       return downloadBytes_;
4458     }
4459     /**
4460      *
4461      *
4462      * <pre>
4463      * [Output Only] Number of bytes downloaded to restore a snapshot to a disk.
4464      * </pre>
4465      *
4466      * <code>optional int64 download_bytes = 435054068;</code>
4467      *
4468      * @param value The downloadBytes to set.
4469      * @return This builder for chaining.
4470      */
setDownloadBytes(long value)4471     public Builder setDownloadBytes(long value) {
4472 
4473       downloadBytes_ = value;
4474       bitField0_ |= 0x00000080;
4475       onChanged();
4476       return this;
4477     }
4478     /**
4479      *
4480      *
4481      * <pre>
4482      * [Output Only] Number of bytes downloaded to restore a snapshot to a disk.
4483      * </pre>
4484      *
4485      * <code>optional int64 download_bytes = 435054068;</code>
4486      *
4487      * @return This builder for chaining.
4488      */
clearDownloadBytes()4489     public Builder clearDownloadBytes() {
4490       bitField0_ = (bitField0_ & ~0x00000080);
4491       downloadBytes_ = 0L;
4492       onChanged();
4493       return this;
4494     }
4495 
4496     private long id_;
4497     /**
4498      *
4499      *
4500      * <pre>
4501      * [Output Only] The unique identifier for the resource. This identifier is defined by the server.
4502      * </pre>
4503      *
4504      * <code>optional uint64 id = 3355;</code>
4505      *
4506      * @return Whether the id field is set.
4507      */
4508     @java.lang.Override
hasId()4509     public boolean hasId() {
4510       return ((bitField0_ & 0x00000100) != 0);
4511     }
4512     /**
4513      *
4514      *
4515      * <pre>
4516      * [Output Only] The unique identifier for the resource. This identifier is defined by the server.
4517      * </pre>
4518      *
4519      * <code>optional uint64 id = 3355;</code>
4520      *
4521      * @return The id.
4522      */
4523     @java.lang.Override
getId()4524     public long getId() {
4525       return id_;
4526     }
4527     /**
4528      *
4529      *
4530      * <pre>
4531      * [Output Only] The unique identifier for the resource. This identifier is defined by the server.
4532      * </pre>
4533      *
4534      * <code>optional uint64 id = 3355;</code>
4535      *
4536      * @param value The id to set.
4537      * @return This builder for chaining.
4538      */
setId(long value)4539     public Builder setId(long value) {
4540 
4541       id_ = value;
4542       bitField0_ |= 0x00000100;
4543       onChanged();
4544       return this;
4545     }
4546     /**
4547      *
4548      *
4549      * <pre>
4550      * [Output Only] The unique identifier for the resource. This identifier is defined by the server.
4551      * </pre>
4552      *
4553      * <code>optional uint64 id = 3355;</code>
4554      *
4555      * @return This builder for chaining.
4556      */
clearId()4557     public Builder clearId() {
4558       bitField0_ = (bitField0_ & ~0x00000100);
4559       id_ = 0L;
4560       onChanged();
4561       return this;
4562     }
4563 
4564     private java.lang.Object kind_ = "";
4565     /**
4566      *
4567      *
4568      * <pre>
4569      * [Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.
4570      * </pre>
4571      *
4572      * <code>optional string kind = 3292052;</code>
4573      *
4574      * @return Whether the kind field is set.
4575      */
hasKind()4576     public boolean hasKind() {
4577       return ((bitField0_ & 0x00000200) != 0);
4578     }
4579     /**
4580      *
4581      *
4582      * <pre>
4583      * [Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.
4584      * </pre>
4585      *
4586      * <code>optional string kind = 3292052;</code>
4587      *
4588      * @return The kind.
4589      */
getKind()4590     public java.lang.String getKind() {
4591       java.lang.Object ref = kind_;
4592       if (!(ref instanceof java.lang.String)) {
4593         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
4594         java.lang.String s = bs.toStringUtf8();
4595         kind_ = s;
4596         return s;
4597       } else {
4598         return (java.lang.String) ref;
4599       }
4600     }
4601     /**
4602      *
4603      *
4604      * <pre>
4605      * [Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.
4606      * </pre>
4607      *
4608      * <code>optional string kind = 3292052;</code>
4609      *
4610      * @return The bytes for kind.
4611      */
getKindBytes()4612     public com.google.protobuf.ByteString getKindBytes() {
4613       java.lang.Object ref = kind_;
4614       if (ref instanceof String) {
4615         com.google.protobuf.ByteString b =
4616             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
4617         kind_ = b;
4618         return b;
4619       } else {
4620         return (com.google.protobuf.ByteString) ref;
4621       }
4622     }
4623     /**
4624      *
4625      *
4626      * <pre>
4627      * [Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.
4628      * </pre>
4629      *
4630      * <code>optional string kind = 3292052;</code>
4631      *
4632      * @param value The kind to set.
4633      * @return This builder for chaining.
4634      */
setKind(java.lang.String value)4635     public Builder setKind(java.lang.String value) {
4636       if (value == null) {
4637         throw new NullPointerException();
4638       }
4639       kind_ = value;
4640       bitField0_ |= 0x00000200;
4641       onChanged();
4642       return this;
4643     }
4644     /**
4645      *
4646      *
4647      * <pre>
4648      * [Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.
4649      * </pre>
4650      *
4651      * <code>optional string kind = 3292052;</code>
4652      *
4653      * @return This builder for chaining.
4654      */
clearKind()4655     public Builder clearKind() {
4656       kind_ = getDefaultInstance().getKind();
4657       bitField0_ = (bitField0_ & ~0x00000200);
4658       onChanged();
4659       return this;
4660     }
4661     /**
4662      *
4663      *
4664      * <pre>
4665      * [Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.
4666      * </pre>
4667      *
4668      * <code>optional string kind = 3292052;</code>
4669      *
4670      * @param value The bytes for kind to set.
4671      * @return This builder for chaining.
4672      */
setKindBytes(com.google.protobuf.ByteString value)4673     public Builder setKindBytes(com.google.protobuf.ByteString value) {
4674       if (value == null) {
4675         throw new NullPointerException();
4676       }
4677       checkByteStringIsUtf8(value);
4678       kind_ = value;
4679       bitField0_ |= 0x00000200;
4680       onChanged();
4681       return this;
4682     }
4683 
4684     private java.lang.Object labelFingerprint_ = "";
4685     /**
4686      *
4687      *
4688      * <pre>
4689      * A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a snapshot.
4690      * </pre>
4691      *
4692      * <code>optional string label_fingerprint = 178124825;</code>
4693      *
4694      * @return Whether the labelFingerprint field is set.
4695      */
hasLabelFingerprint()4696     public boolean hasLabelFingerprint() {
4697       return ((bitField0_ & 0x00000400) != 0);
4698     }
4699     /**
4700      *
4701      *
4702      * <pre>
4703      * A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a snapshot.
4704      * </pre>
4705      *
4706      * <code>optional string label_fingerprint = 178124825;</code>
4707      *
4708      * @return The labelFingerprint.
4709      */
getLabelFingerprint()4710     public java.lang.String getLabelFingerprint() {
4711       java.lang.Object ref = labelFingerprint_;
4712       if (!(ref instanceof java.lang.String)) {
4713         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
4714         java.lang.String s = bs.toStringUtf8();
4715         labelFingerprint_ = s;
4716         return s;
4717       } else {
4718         return (java.lang.String) ref;
4719       }
4720     }
4721     /**
4722      *
4723      *
4724      * <pre>
4725      * A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a snapshot.
4726      * </pre>
4727      *
4728      * <code>optional string label_fingerprint = 178124825;</code>
4729      *
4730      * @return The bytes for labelFingerprint.
4731      */
getLabelFingerprintBytes()4732     public com.google.protobuf.ByteString getLabelFingerprintBytes() {
4733       java.lang.Object ref = labelFingerprint_;
4734       if (ref instanceof String) {
4735         com.google.protobuf.ByteString b =
4736             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
4737         labelFingerprint_ = b;
4738         return b;
4739       } else {
4740         return (com.google.protobuf.ByteString) ref;
4741       }
4742     }
4743     /**
4744      *
4745      *
4746      * <pre>
4747      * A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a snapshot.
4748      * </pre>
4749      *
4750      * <code>optional string label_fingerprint = 178124825;</code>
4751      *
4752      * @param value The labelFingerprint to set.
4753      * @return This builder for chaining.
4754      */
setLabelFingerprint(java.lang.String value)4755     public Builder setLabelFingerprint(java.lang.String value) {
4756       if (value == null) {
4757         throw new NullPointerException();
4758       }
4759       labelFingerprint_ = value;
4760       bitField0_ |= 0x00000400;
4761       onChanged();
4762       return this;
4763     }
4764     /**
4765      *
4766      *
4767      * <pre>
4768      * A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a snapshot.
4769      * </pre>
4770      *
4771      * <code>optional string label_fingerprint = 178124825;</code>
4772      *
4773      * @return This builder for chaining.
4774      */
clearLabelFingerprint()4775     public Builder clearLabelFingerprint() {
4776       labelFingerprint_ = getDefaultInstance().getLabelFingerprint();
4777       bitField0_ = (bitField0_ & ~0x00000400);
4778       onChanged();
4779       return this;
4780     }
4781     /**
4782      *
4783      *
4784      * <pre>
4785      * A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a snapshot.
4786      * </pre>
4787      *
4788      * <code>optional string label_fingerprint = 178124825;</code>
4789      *
4790      * @param value The bytes for labelFingerprint to set.
4791      * @return This builder for chaining.
4792      */
setLabelFingerprintBytes(com.google.protobuf.ByteString value)4793     public Builder setLabelFingerprintBytes(com.google.protobuf.ByteString value) {
4794       if (value == null) {
4795         throw new NullPointerException();
4796       }
4797       checkByteStringIsUtf8(value);
4798       labelFingerprint_ = value;
4799       bitField0_ |= 0x00000400;
4800       onChanged();
4801       return this;
4802     }
4803 
4804     private com.google.protobuf.MapField<java.lang.String, java.lang.String> labels_;
4805 
internalGetLabels()4806     private com.google.protobuf.MapField<java.lang.String, java.lang.String> internalGetLabels() {
4807       if (labels_ == null) {
4808         return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry);
4809       }
4810       return labels_;
4811     }
4812 
4813     private com.google.protobuf.MapField<java.lang.String, java.lang.String>
internalGetMutableLabels()4814         internalGetMutableLabels() {
4815       if (labels_ == null) {
4816         labels_ = com.google.protobuf.MapField.newMapField(LabelsDefaultEntryHolder.defaultEntry);
4817       }
4818       if (!labels_.isMutable()) {
4819         labels_ = labels_.copy();
4820       }
4821       bitField0_ |= 0x00000800;
4822       onChanged();
4823       return labels_;
4824     }
4825 
getLabelsCount()4826     public int getLabelsCount() {
4827       return internalGetLabels().getMap().size();
4828     }
4829     /**
4830      *
4831      *
4832      * <pre>
4833      * Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.
4834      * </pre>
4835      *
4836      * <code>map&lt;string, string&gt; labels = 500195327;</code>
4837      */
4838     @java.lang.Override
containsLabels(java.lang.String key)4839     public boolean containsLabels(java.lang.String key) {
4840       if (key == null) {
4841         throw new NullPointerException("map key");
4842       }
4843       return internalGetLabels().getMap().containsKey(key);
4844     }
4845     /** Use {@link #getLabelsMap()} instead. */
4846     @java.lang.Override
4847     @java.lang.Deprecated
getLabels()4848     public java.util.Map<java.lang.String, java.lang.String> getLabels() {
4849       return getLabelsMap();
4850     }
4851     /**
4852      *
4853      *
4854      * <pre>
4855      * Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.
4856      * </pre>
4857      *
4858      * <code>map&lt;string, string&gt; labels = 500195327;</code>
4859      */
4860     @java.lang.Override
getLabelsMap()4861     public java.util.Map<java.lang.String, java.lang.String> getLabelsMap() {
4862       return internalGetLabels().getMap();
4863     }
4864     /**
4865      *
4866      *
4867      * <pre>
4868      * Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.
4869      * </pre>
4870      *
4871      * <code>map&lt;string, string&gt; labels = 500195327;</code>
4872      */
4873     @java.lang.Override
getLabelsOrDefault( java.lang.String key, java.lang.String defaultValue)4874     public /* nullable */ java.lang.String getLabelsOrDefault(
4875         java.lang.String key,
4876         /* nullable */
4877         java.lang.String defaultValue) {
4878       if (key == null) {
4879         throw new NullPointerException("map key");
4880       }
4881       java.util.Map<java.lang.String, java.lang.String> map = internalGetLabels().getMap();
4882       return map.containsKey(key) ? map.get(key) : defaultValue;
4883     }
4884     /**
4885      *
4886      *
4887      * <pre>
4888      * Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.
4889      * </pre>
4890      *
4891      * <code>map&lt;string, string&gt; labels = 500195327;</code>
4892      */
4893     @java.lang.Override
getLabelsOrThrow(java.lang.String key)4894     public java.lang.String getLabelsOrThrow(java.lang.String key) {
4895       if (key == null) {
4896         throw new NullPointerException("map key");
4897       }
4898       java.util.Map<java.lang.String, java.lang.String> map = internalGetLabels().getMap();
4899       if (!map.containsKey(key)) {
4900         throw new java.lang.IllegalArgumentException();
4901       }
4902       return map.get(key);
4903     }
4904 
clearLabels()4905     public Builder clearLabels() {
4906       bitField0_ = (bitField0_ & ~0x00000800);
4907       internalGetMutableLabels().getMutableMap().clear();
4908       return this;
4909     }
4910     /**
4911      *
4912      *
4913      * <pre>
4914      * Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.
4915      * </pre>
4916      *
4917      * <code>map&lt;string, string&gt; labels = 500195327;</code>
4918      */
removeLabels(java.lang.String key)4919     public Builder removeLabels(java.lang.String key) {
4920       if (key == null) {
4921         throw new NullPointerException("map key");
4922       }
4923       internalGetMutableLabels().getMutableMap().remove(key);
4924       return this;
4925     }
4926     /** Use alternate mutation accessors instead. */
4927     @java.lang.Deprecated
getMutableLabels()4928     public java.util.Map<java.lang.String, java.lang.String> getMutableLabels() {
4929       bitField0_ |= 0x00000800;
4930       return internalGetMutableLabels().getMutableMap();
4931     }
4932     /**
4933      *
4934      *
4935      * <pre>
4936      * Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.
4937      * </pre>
4938      *
4939      * <code>map&lt;string, string&gt; labels = 500195327;</code>
4940      */
putLabels(java.lang.String key, java.lang.String value)4941     public Builder putLabels(java.lang.String key, java.lang.String value) {
4942       if (key == null) {
4943         throw new NullPointerException("map key");
4944       }
4945       if (value == null) {
4946         throw new NullPointerException("map value");
4947       }
4948       internalGetMutableLabels().getMutableMap().put(key, value);
4949       bitField0_ |= 0x00000800;
4950       return this;
4951     }
4952     /**
4953      *
4954      *
4955      * <pre>
4956      * Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.
4957      * </pre>
4958      *
4959      * <code>map&lt;string, string&gt; labels = 500195327;</code>
4960      */
putAllLabels(java.util.Map<java.lang.String, java.lang.String> values)4961     public Builder putAllLabels(java.util.Map<java.lang.String, java.lang.String> values) {
4962       internalGetMutableLabels().getMutableMap().putAll(values);
4963       bitField0_ |= 0x00000800;
4964       return this;
4965     }
4966 
4967     private com.google.protobuf.Internal.LongList licenseCodes_ = emptyLongList();
4968 
ensureLicenseCodesIsMutable()4969     private void ensureLicenseCodesIsMutable() {
4970       if (!((bitField0_ & 0x00001000) != 0)) {
4971         licenseCodes_ = mutableCopy(licenseCodes_);
4972         bitField0_ |= 0x00001000;
4973       }
4974     }
4975     /**
4976      *
4977      *
4978      * <pre>
4979      * [Output Only] Integer license codes indicating which licenses are attached to this snapshot.
4980      * </pre>
4981      *
4982      * <code>repeated int64 license_codes = 45482664;</code>
4983      *
4984      * @return A list containing the licenseCodes.
4985      */
getLicenseCodesList()4986     public java.util.List<java.lang.Long> getLicenseCodesList() {
4987       return ((bitField0_ & 0x00001000) != 0)
4988           ? java.util.Collections.unmodifiableList(licenseCodes_)
4989           : licenseCodes_;
4990     }
4991     /**
4992      *
4993      *
4994      * <pre>
4995      * [Output Only] Integer license codes indicating which licenses are attached to this snapshot.
4996      * </pre>
4997      *
4998      * <code>repeated int64 license_codes = 45482664;</code>
4999      *
5000      * @return The count of licenseCodes.
5001      */
getLicenseCodesCount()5002     public int getLicenseCodesCount() {
5003       return licenseCodes_.size();
5004     }
5005     /**
5006      *
5007      *
5008      * <pre>
5009      * [Output Only] Integer license codes indicating which licenses are attached to this snapshot.
5010      * </pre>
5011      *
5012      * <code>repeated int64 license_codes = 45482664;</code>
5013      *
5014      * @param index The index of the element to return.
5015      * @return The licenseCodes at the given index.
5016      */
getLicenseCodes(int index)5017     public long getLicenseCodes(int index) {
5018       return licenseCodes_.getLong(index);
5019     }
5020     /**
5021      *
5022      *
5023      * <pre>
5024      * [Output Only] Integer license codes indicating which licenses are attached to this snapshot.
5025      * </pre>
5026      *
5027      * <code>repeated int64 license_codes = 45482664;</code>
5028      *
5029      * @param index The index to set the value at.
5030      * @param value The licenseCodes to set.
5031      * @return This builder for chaining.
5032      */
setLicenseCodes(int index, long value)5033     public Builder setLicenseCodes(int index, long value) {
5034 
5035       ensureLicenseCodesIsMutable();
5036       licenseCodes_.setLong(index, value);
5037       onChanged();
5038       return this;
5039     }
5040     /**
5041      *
5042      *
5043      * <pre>
5044      * [Output Only] Integer license codes indicating which licenses are attached to this snapshot.
5045      * </pre>
5046      *
5047      * <code>repeated int64 license_codes = 45482664;</code>
5048      *
5049      * @param value The licenseCodes to add.
5050      * @return This builder for chaining.
5051      */
addLicenseCodes(long value)5052     public Builder addLicenseCodes(long value) {
5053 
5054       ensureLicenseCodesIsMutable();
5055       licenseCodes_.addLong(value);
5056       onChanged();
5057       return this;
5058     }
5059     /**
5060      *
5061      *
5062      * <pre>
5063      * [Output Only] Integer license codes indicating which licenses are attached to this snapshot.
5064      * </pre>
5065      *
5066      * <code>repeated int64 license_codes = 45482664;</code>
5067      *
5068      * @param values The licenseCodes to add.
5069      * @return This builder for chaining.
5070      */
addAllLicenseCodes(java.lang.Iterable<? extends java.lang.Long> values)5071     public Builder addAllLicenseCodes(java.lang.Iterable<? extends java.lang.Long> values) {
5072       ensureLicenseCodesIsMutable();
5073       com.google.protobuf.AbstractMessageLite.Builder.addAll(values, licenseCodes_);
5074       onChanged();
5075       return this;
5076     }
5077     /**
5078      *
5079      *
5080      * <pre>
5081      * [Output Only] Integer license codes indicating which licenses are attached to this snapshot.
5082      * </pre>
5083      *
5084      * <code>repeated int64 license_codes = 45482664;</code>
5085      *
5086      * @return This builder for chaining.
5087      */
clearLicenseCodes()5088     public Builder clearLicenseCodes() {
5089       licenseCodes_ = emptyLongList();
5090       bitField0_ = (bitField0_ & ~0x00001000);
5091       onChanged();
5092       return this;
5093     }
5094 
5095     private com.google.protobuf.LazyStringList licenses_ =
5096         com.google.protobuf.LazyStringArrayList.EMPTY;
5097 
ensureLicensesIsMutable()5098     private void ensureLicensesIsMutable() {
5099       if (!((bitField0_ & 0x00002000) != 0)) {
5100         licenses_ = new com.google.protobuf.LazyStringArrayList(licenses_);
5101         bitField0_ |= 0x00002000;
5102       }
5103     }
5104     /**
5105      *
5106      *
5107      * <pre>
5108      * [Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).
5109      * </pre>
5110      *
5111      * <code>repeated string licenses = 337642578;</code>
5112      *
5113      * @return A list containing the licenses.
5114      */
getLicensesList()5115     public com.google.protobuf.ProtocolStringList getLicensesList() {
5116       return licenses_.getUnmodifiableView();
5117     }
5118     /**
5119      *
5120      *
5121      * <pre>
5122      * [Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).
5123      * </pre>
5124      *
5125      * <code>repeated string licenses = 337642578;</code>
5126      *
5127      * @return The count of licenses.
5128      */
getLicensesCount()5129     public int getLicensesCount() {
5130       return licenses_.size();
5131     }
5132     /**
5133      *
5134      *
5135      * <pre>
5136      * [Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).
5137      * </pre>
5138      *
5139      * <code>repeated string licenses = 337642578;</code>
5140      *
5141      * @param index The index of the element to return.
5142      * @return The licenses at the given index.
5143      */
getLicenses(int index)5144     public java.lang.String getLicenses(int index) {
5145       return licenses_.get(index);
5146     }
5147     /**
5148      *
5149      *
5150      * <pre>
5151      * [Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).
5152      * </pre>
5153      *
5154      * <code>repeated string licenses = 337642578;</code>
5155      *
5156      * @param index The index of the value to return.
5157      * @return The bytes of the licenses at the given index.
5158      */
getLicensesBytes(int index)5159     public com.google.protobuf.ByteString getLicensesBytes(int index) {
5160       return licenses_.getByteString(index);
5161     }
5162     /**
5163      *
5164      *
5165      * <pre>
5166      * [Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).
5167      * </pre>
5168      *
5169      * <code>repeated string licenses = 337642578;</code>
5170      *
5171      * @param index The index to set the value at.
5172      * @param value The licenses to set.
5173      * @return This builder for chaining.
5174      */
setLicenses(int index, java.lang.String value)5175     public Builder setLicenses(int index, java.lang.String value) {
5176       if (value == null) {
5177         throw new NullPointerException();
5178       }
5179       ensureLicensesIsMutable();
5180       licenses_.set(index, value);
5181       onChanged();
5182       return this;
5183     }
5184     /**
5185      *
5186      *
5187      * <pre>
5188      * [Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).
5189      * </pre>
5190      *
5191      * <code>repeated string licenses = 337642578;</code>
5192      *
5193      * @param value The licenses to add.
5194      * @return This builder for chaining.
5195      */
addLicenses(java.lang.String value)5196     public Builder addLicenses(java.lang.String value) {
5197       if (value == null) {
5198         throw new NullPointerException();
5199       }
5200       ensureLicensesIsMutable();
5201       licenses_.add(value);
5202       onChanged();
5203       return this;
5204     }
5205     /**
5206      *
5207      *
5208      * <pre>
5209      * [Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).
5210      * </pre>
5211      *
5212      * <code>repeated string licenses = 337642578;</code>
5213      *
5214      * @param values The licenses to add.
5215      * @return This builder for chaining.
5216      */
addAllLicenses(java.lang.Iterable<java.lang.String> values)5217     public Builder addAllLicenses(java.lang.Iterable<java.lang.String> values) {
5218       ensureLicensesIsMutable();
5219       com.google.protobuf.AbstractMessageLite.Builder.addAll(values, licenses_);
5220       onChanged();
5221       return this;
5222     }
5223     /**
5224      *
5225      *
5226      * <pre>
5227      * [Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).
5228      * </pre>
5229      *
5230      * <code>repeated string licenses = 337642578;</code>
5231      *
5232      * @return This builder for chaining.
5233      */
clearLicenses()5234     public Builder clearLicenses() {
5235       licenses_ = com.google.protobuf.LazyStringArrayList.EMPTY;
5236       bitField0_ = (bitField0_ & ~0x00002000);
5237       onChanged();
5238       return this;
5239     }
5240     /**
5241      *
5242      *
5243      * <pre>
5244      * [Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).
5245      * </pre>
5246      *
5247      * <code>repeated string licenses = 337642578;</code>
5248      *
5249      * @param value The bytes of the licenses to add.
5250      * @return This builder for chaining.
5251      */
addLicensesBytes(com.google.protobuf.ByteString value)5252     public Builder addLicensesBytes(com.google.protobuf.ByteString value) {
5253       if (value == null) {
5254         throw new NullPointerException();
5255       }
5256       checkByteStringIsUtf8(value);
5257       ensureLicensesIsMutable();
5258       licenses_.add(value);
5259       onChanged();
5260       return this;
5261     }
5262 
5263     private java.lang.Object locationHint_ = "";
5264     /**
5265      *
5266      *
5267      * <pre>
5268      * An opaque location hint used to place the snapshot close to other resources. This field is for use by internal tools that use the public API.
5269      * </pre>
5270      *
5271      * <code>optional string location_hint = 350519505;</code>
5272      *
5273      * @return Whether the locationHint field is set.
5274      */
hasLocationHint()5275     public boolean hasLocationHint() {
5276       return ((bitField0_ & 0x00004000) != 0);
5277     }
5278     /**
5279      *
5280      *
5281      * <pre>
5282      * An opaque location hint used to place the snapshot close to other resources. This field is for use by internal tools that use the public API.
5283      * </pre>
5284      *
5285      * <code>optional string location_hint = 350519505;</code>
5286      *
5287      * @return The locationHint.
5288      */
getLocationHint()5289     public java.lang.String getLocationHint() {
5290       java.lang.Object ref = locationHint_;
5291       if (!(ref instanceof java.lang.String)) {
5292         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
5293         java.lang.String s = bs.toStringUtf8();
5294         locationHint_ = s;
5295         return s;
5296       } else {
5297         return (java.lang.String) ref;
5298       }
5299     }
5300     /**
5301      *
5302      *
5303      * <pre>
5304      * An opaque location hint used to place the snapshot close to other resources. This field is for use by internal tools that use the public API.
5305      * </pre>
5306      *
5307      * <code>optional string location_hint = 350519505;</code>
5308      *
5309      * @return The bytes for locationHint.
5310      */
getLocationHintBytes()5311     public com.google.protobuf.ByteString getLocationHintBytes() {
5312       java.lang.Object ref = locationHint_;
5313       if (ref instanceof String) {
5314         com.google.protobuf.ByteString b =
5315             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
5316         locationHint_ = b;
5317         return b;
5318       } else {
5319         return (com.google.protobuf.ByteString) ref;
5320       }
5321     }
5322     /**
5323      *
5324      *
5325      * <pre>
5326      * An opaque location hint used to place the snapshot close to other resources. This field is for use by internal tools that use the public API.
5327      * </pre>
5328      *
5329      * <code>optional string location_hint = 350519505;</code>
5330      *
5331      * @param value The locationHint to set.
5332      * @return This builder for chaining.
5333      */
setLocationHint(java.lang.String value)5334     public Builder setLocationHint(java.lang.String value) {
5335       if (value == null) {
5336         throw new NullPointerException();
5337       }
5338       locationHint_ = value;
5339       bitField0_ |= 0x00004000;
5340       onChanged();
5341       return this;
5342     }
5343     /**
5344      *
5345      *
5346      * <pre>
5347      * An opaque location hint used to place the snapshot close to other resources. This field is for use by internal tools that use the public API.
5348      * </pre>
5349      *
5350      * <code>optional string location_hint = 350519505;</code>
5351      *
5352      * @return This builder for chaining.
5353      */
clearLocationHint()5354     public Builder clearLocationHint() {
5355       locationHint_ = getDefaultInstance().getLocationHint();
5356       bitField0_ = (bitField0_ & ~0x00004000);
5357       onChanged();
5358       return this;
5359     }
5360     /**
5361      *
5362      *
5363      * <pre>
5364      * An opaque location hint used to place the snapshot close to other resources. This field is for use by internal tools that use the public API.
5365      * </pre>
5366      *
5367      * <code>optional string location_hint = 350519505;</code>
5368      *
5369      * @param value The bytes for locationHint to set.
5370      * @return This builder for chaining.
5371      */
setLocationHintBytes(com.google.protobuf.ByteString value)5372     public Builder setLocationHintBytes(com.google.protobuf.ByteString value) {
5373       if (value == null) {
5374         throw new NullPointerException();
5375       }
5376       checkByteStringIsUtf8(value);
5377       locationHint_ = value;
5378       bitField0_ |= 0x00004000;
5379       onChanged();
5380       return this;
5381     }
5382 
5383     private java.lang.Object name_ = "";
5384     /**
5385      *
5386      *
5387      * <pre>
5388      * Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
5389      * </pre>
5390      *
5391      * <code>optional string name = 3373707;</code>
5392      *
5393      * @return Whether the name field is set.
5394      */
hasName()5395     public boolean hasName() {
5396       return ((bitField0_ & 0x00008000) != 0);
5397     }
5398     /**
5399      *
5400      *
5401      * <pre>
5402      * Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
5403      * </pre>
5404      *
5405      * <code>optional string name = 3373707;</code>
5406      *
5407      * @return The name.
5408      */
getName()5409     public java.lang.String getName() {
5410       java.lang.Object ref = name_;
5411       if (!(ref instanceof java.lang.String)) {
5412         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
5413         java.lang.String s = bs.toStringUtf8();
5414         name_ = s;
5415         return s;
5416       } else {
5417         return (java.lang.String) ref;
5418       }
5419     }
5420     /**
5421      *
5422      *
5423      * <pre>
5424      * Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
5425      * </pre>
5426      *
5427      * <code>optional string name = 3373707;</code>
5428      *
5429      * @return The bytes for name.
5430      */
getNameBytes()5431     public com.google.protobuf.ByteString getNameBytes() {
5432       java.lang.Object ref = name_;
5433       if (ref instanceof String) {
5434         com.google.protobuf.ByteString b =
5435             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
5436         name_ = b;
5437         return b;
5438       } else {
5439         return (com.google.protobuf.ByteString) ref;
5440       }
5441     }
5442     /**
5443      *
5444      *
5445      * <pre>
5446      * Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
5447      * </pre>
5448      *
5449      * <code>optional string name = 3373707;</code>
5450      *
5451      * @param value The name to set.
5452      * @return This builder for chaining.
5453      */
setName(java.lang.String value)5454     public Builder setName(java.lang.String value) {
5455       if (value == null) {
5456         throw new NullPointerException();
5457       }
5458       name_ = value;
5459       bitField0_ |= 0x00008000;
5460       onChanged();
5461       return this;
5462     }
5463     /**
5464      *
5465      *
5466      * <pre>
5467      * Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
5468      * </pre>
5469      *
5470      * <code>optional string name = 3373707;</code>
5471      *
5472      * @return This builder for chaining.
5473      */
clearName()5474     public Builder clearName() {
5475       name_ = getDefaultInstance().getName();
5476       bitField0_ = (bitField0_ & ~0x00008000);
5477       onChanged();
5478       return this;
5479     }
5480     /**
5481      *
5482      *
5483      * <pre>
5484      * Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
5485      * </pre>
5486      *
5487      * <code>optional string name = 3373707;</code>
5488      *
5489      * @param value The bytes for name to set.
5490      * @return This builder for chaining.
5491      */
setNameBytes(com.google.protobuf.ByteString value)5492     public Builder setNameBytes(com.google.protobuf.ByteString value) {
5493       if (value == null) {
5494         throw new NullPointerException();
5495       }
5496       checkByteStringIsUtf8(value);
5497       name_ = value;
5498       bitField0_ |= 0x00008000;
5499       onChanged();
5500       return this;
5501     }
5502 
5503     private boolean satisfiesPzs_;
5504     /**
5505      *
5506      *
5507      * <pre>
5508      * [Output Only] Reserved for future use.
5509      * </pre>
5510      *
5511      * <code>optional bool satisfies_pzs = 480964267;</code>
5512      *
5513      * @return Whether the satisfiesPzs field is set.
5514      */
5515     @java.lang.Override
hasSatisfiesPzs()5516     public boolean hasSatisfiesPzs() {
5517       return ((bitField0_ & 0x00010000) != 0);
5518     }
5519     /**
5520      *
5521      *
5522      * <pre>
5523      * [Output Only] Reserved for future use.
5524      * </pre>
5525      *
5526      * <code>optional bool satisfies_pzs = 480964267;</code>
5527      *
5528      * @return The satisfiesPzs.
5529      */
5530     @java.lang.Override
getSatisfiesPzs()5531     public boolean getSatisfiesPzs() {
5532       return satisfiesPzs_;
5533     }
5534     /**
5535      *
5536      *
5537      * <pre>
5538      * [Output Only] Reserved for future use.
5539      * </pre>
5540      *
5541      * <code>optional bool satisfies_pzs = 480964267;</code>
5542      *
5543      * @param value The satisfiesPzs to set.
5544      * @return This builder for chaining.
5545      */
setSatisfiesPzs(boolean value)5546     public Builder setSatisfiesPzs(boolean value) {
5547 
5548       satisfiesPzs_ = value;
5549       bitField0_ |= 0x00010000;
5550       onChanged();
5551       return this;
5552     }
5553     /**
5554      *
5555      *
5556      * <pre>
5557      * [Output Only] Reserved for future use.
5558      * </pre>
5559      *
5560      * <code>optional bool satisfies_pzs = 480964267;</code>
5561      *
5562      * @return This builder for chaining.
5563      */
clearSatisfiesPzs()5564     public Builder clearSatisfiesPzs() {
5565       bitField0_ = (bitField0_ & ~0x00010000);
5566       satisfiesPzs_ = false;
5567       onChanged();
5568       return this;
5569     }
5570 
5571     private java.lang.Object selfLink_ = "";
5572     /**
5573      *
5574      *
5575      * <pre>
5576      * [Output Only] Server-defined URL for the resource.
5577      * </pre>
5578      *
5579      * <code>optional string self_link = 456214797;</code>
5580      *
5581      * @return Whether the selfLink field is set.
5582      */
hasSelfLink()5583     public boolean hasSelfLink() {
5584       return ((bitField0_ & 0x00020000) != 0);
5585     }
5586     /**
5587      *
5588      *
5589      * <pre>
5590      * [Output Only] Server-defined URL for the resource.
5591      * </pre>
5592      *
5593      * <code>optional string self_link = 456214797;</code>
5594      *
5595      * @return The selfLink.
5596      */
getSelfLink()5597     public java.lang.String getSelfLink() {
5598       java.lang.Object ref = selfLink_;
5599       if (!(ref instanceof java.lang.String)) {
5600         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
5601         java.lang.String s = bs.toStringUtf8();
5602         selfLink_ = s;
5603         return s;
5604       } else {
5605         return (java.lang.String) ref;
5606       }
5607     }
5608     /**
5609      *
5610      *
5611      * <pre>
5612      * [Output Only] Server-defined URL for the resource.
5613      * </pre>
5614      *
5615      * <code>optional string self_link = 456214797;</code>
5616      *
5617      * @return The bytes for selfLink.
5618      */
getSelfLinkBytes()5619     public com.google.protobuf.ByteString getSelfLinkBytes() {
5620       java.lang.Object ref = selfLink_;
5621       if (ref instanceof String) {
5622         com.google.protobuf.ByteString b =
5623             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
5624         selfLink_ = b;
5625         return b;
5626       } else {
5627         return (com.google.protobuf.ByteString) ref;
5628       }
5629     }
5630     /**
5631      *
5632      *
5633      * <pre>
5634      * [Output Only] Server-defined URL for the resource.
5635      * </pre>
5636      *
5637      * <code>optional string self_link = 456214797;</code>
5638      *
5639      * @param value The selfLink to set.
5640      * @return This builder for chaining.
5641      */
setSelfLink(java.lang.String value)5642     public Builder setSelfLink(java.lang.String value) {
5643       if (value == null) {
5644         throw new NullPointerException();
5645       }
5646       selfLink_ = value;
5647       bitField0_ |= 0x00020000;
5648       onChanged();
5649       return this;
5650     }
5651     /**
5652      *
5653      *
5654      * <pre>
5655      * [Output Only] Server-defined URL for the resource.
5656      * </pre>
5657      *
5658      * <code>optional string self_link = 456214797;</code>
5659      *
5660      * @return This builder for chaining.
5661      */
clearSelfLink()5662     public Builder clearSelfLink() {
5663       selfLink_ = getDefaultInstance().getSelfLink();
5664       bitField0_ = (bitField0_ & ~0x00020000);
5665       onChanged();
5666       return this;
5667     }
5668     /**
5669      *
5670      *
5671      * <pre>
5672      * [Output Only] Server-defined URL for the resource.
5673      * </pre>
5674      *
5675      * <code>optional string self_link = 456214797;</code>
5676      *
5677      * @param value The bytes for selfLink to set.
5678      * @return This builder for chaining.
5679      */
setSelfLinkBytes(com.google.protobuf.ByteString value)5680     public Builder setSelfLinkBytes(com.google.protobuf.ByteString value) {
5681       if (value == null) {
5682         throw new NullPointerException();
5683       }
5684       checkByteStringIsUtf8(value);
5685       selfLink_ = value;
5686       bitField0_ |= 0x00020000;
5687       onChanged();
5688       return this;
5689     }
5690 
5691     private com.google.cloud.compute.v1.CustomerEncryptionKey snapshotEncryptionKey_;
5692     private com.google.protobuf.SingleFieldBuilderV3<
5693             com.google.cloud.compute.v1.CustomerEncryptionKey,
5694             com.google.cloud.compute.v1.CustomerEncryptionKey.Builder,
5695             com.google.cloud.compute.v1.CustomerEncryptionKeyOrBuilder>
5696         snapshotEncryptionKeyBuilder_;
5697     /**
5698      *
5699      *
5700      * <pre>
5701      * Encrypts the snapshot using a customer-supplied encryption key. After you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the snapshot later. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. Customer-supplied encryption keys do not protect access to metadata of the snapshot. If you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later.
5702      * </pre>
5703      *
5704      * <code>
5705      * optional .google.cloud.compute.v1.CustomerEncryptionKey snapshot_encryption_key = 43334526;
5706      * </code>
5707      *
5708      * @return Whether the snapshotEncryptionKey field is set.
5709      */
hasSnapshotEncryptionKey()5710     public boolean hasSnapshotEncryptionKey() {
5711       return ((bitField0_ & 0x00040000) != 0);
5712     }
5713     /**
5714      *
5715      *
5716      * <pre>
5717      * Encrypts the snapshot using a customer-supplied encryption key. After you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the snapshot later. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. Customer-supplied encryption keys do not protect access to metadata of the snapshot. If you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later.
5718      * </pre>
5719      *
5720      * <code>
5721      * optional .google.cloud.compute.v1.CustomerEncryptionKey snapshot_encryption_key = 43334526;
5722      * </code>
5723      *
5724      * @return The snapshotEncryptionKey.
5725      */
getSnapshotEncryptionKey()5726     public com.google.cloud.compute.v1.CustomerEncryptionKey getSnapshotEncryptionKey() {
5727       if (snapshotEncryptionKeyBuilder_ == null) {
5728         return snapshotEncryptionKey_ == null
5729             ? com.google.cloud.compute.v1.CustomerEncryptionKey.getDefaultInstance()
5730             : snapshotEncryptionKey_;
5731       } else {
5732         return snapshotEncryptionKeyBuilder_.getMessage();
5733       }
5734     }
5735     /**
5736      *
5737      *
5738      * <pre>
5739      * Encrypts the snapshot using a customer-supplied encryption key. After you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the snapshot later. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. Customer-supplied encryption keys do not protect access to metadata of the snapshot. If you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later.
5740      * </pre>
5741      *
5742      * <code>
5743      * optional .google.cloud.compute.v1.CustomerEncryptionKey snapshot_encryption_key = 43334526;
5744      * </code>
5745      */
setSnapshotEncryptionKey( com.google.cloud.compute.v1.CustomerEncryptionKey value)5746     public Builder setSnapshotEncryptionKey(
5747         com.google.cloud.compute.v1.CustomerEncryptionKey value) {
5748       if (snapshotEncryptionKeyBuilder_ == null) {
5749         if (value == null) {
5750           throw new NullPointerException();
5751         }
5752         snapshotEncryptionKey_ = value;
5753       } else {
5754         snapshotEncryptionKeyBuilder_.setMessage(value);
5755       }
5756       bitField0_ |= 0x00040000;
5757       onChanged();
5758       return this;
5759     }
5760     /**
5761      *
5762      *
5763      * <pre>
5764      * Encrypts the snapshot using a customer-supplied encryption key. After you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the snapshot later. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. Customer-supplied encryption keys do not protect access to metadata of the snapshot. If you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later.
5765      * </pre>
5766      *
5767      * <code>
5768      * optional .google.cloud.compute.v1.CustomerEncryptionKey snapshot_encryption_key = 43334526;
5769      * </code>
5770      */
setSnapshotEncryptionKey( com.google.cloud.compute.v1.CustomerEncryptionKey.Builder builderForValue)5771     public Builder setSnapshotEncryptionKey(
5772         com.google.cloud.compute.v1.CustomerEncryptionKey.Builder builderForValue) {
5773       if (snapshotEncryptionKeyBuilder_ == null) {
5774         snapshotEncryptionKey_ = builderForValue.build();
5775       } else {
5776         snapshotEncryptionKeyBuilder_.setMessage(builderForValue.build());
5777       }
5778       bitField0_ |= 0x00040000;
5779       onChanged();
5780       return this;
5781     }
5782     /**
5783      *
5784      *
5785      * <pre>
5786      * Encrypts the snapshot using a customer-supplied encryption key. After you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the snapshot later. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. Customer-supplied encryption keys do not protect access to metadata of the snapshot. If you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later.
5787      * </pre>
5788      *
5789      * <code>
5790      * optional .google.cloud.compute.v1.CustomerEncryptionKey snapshot_encryption_key = 43334526;
5791      * </code>
5792      */
mergeSnapshotEncryptionKey( com.google.cloud.compute.v1.CustomerEncryptionKey value)5793     public Builder mergeSnapshotEncryptionKey(
5794         com.google.cloud.compute.v1.CustomerEncryptionKey value) {
5795       if (snapshotEncryptionKeyBuilder_ == null) {
5796         if (((bitField0_ & 0x00040000) != 0)
5797             && snapshotEncryptionKey_ != null
5798             && snapshotEncryptionKey_
5799                 != com.google.cloud.compute.v1.CustomerEncryptionKey.getDefaultInstance()) {
5800           getSnapshotEncryptionKeyBuilder().mergeFrom(value);
5801         } else {
5802           snapshotEncryptionKey_ = value;
5803         }
5804       } else {
5805         snapshotEncryptionKeyBuilder_.mergeFrom(value);
5806       }
5807       bitField0_ |= 0x00040000;
5808       onChanged();
5809       return this;
5810     }
5811     /**
5812      *
5813      *
5814      * <pre>
5815      * Encrypts the snapshot using a customer-supplied encryption key. After you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the snapshot later. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. Customer-supplied encryption keys do not protect access to metadata of the snapshot. If you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later.
5816      * </pre>
5817      *
5818      * <code>
5819      * optional .google.cloud.compute.v1.CustomerEncryptionKey snapshot_encryption_key = 43334526;
5820      * </code>
5821      */
clearSnapshotEncryptionKey()5822     public Builder clearSnapshotEncryptionKey() {
5823       bitField0_ = (bitField0_ & ~0x00040000);
5824       snapshotEncryptionKey_ = null;
5825       if (snapshotEncryptionKeyBuilder_ != null) {
5826         snapshotEncryptionKeyBuilder_.dispose();
5827         snapshotEncryptionKeyBuilder_ = null;
5828       }
5829       onChanged();
5830       return this;
5831     }
5832     /**
5833      *
5834      *
5835      * <pre>
5836      * Encrypts the snapshot using a customer-supplied encryption key. After you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the snapshot later. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. Customer-supplied encryption keys do not protect access to metadata of the snapshot. If you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later.
5837      * </pre>
5838      *
5839      * <code>
5840      * optional .google.cloud.compute.v1.CustomerEncryptionKey snapshot_encryption_key = 43334526;
5841      * </code>
5842      */
5843     public com.google.cloud.compute.v1.CustomerEncryptionKey.Builder
getSnapshotEncryptionKeyBuilder()5844         getSnapshotEncryptionKeyBuilder() {
5845       bitField0_ |= 0x00040000;
5846       onChanged();
5847       return getSnapshotEncryptionKeyFieldBuilder().getBuilder();
5848     }
5849     /**
5850      *
5851      *
5852      * <pre>
5853      * Encrypts the snapshot using a customer-supplied encryption key. After you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the snapshot later. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. Customer-supplied encryption keys do not protect access to metadata of the snapshot. If you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later.
5854      * </pre>
5855      *
5856      * <code>
5857      * optional .google.cloud.compute.v1.CustomerEncryptionKey snapshot_encryption_key = 43334526;
5858      * </code>
5859      */
5860     public com.google.cloud.compute.v1.CustomerEncryptionKeyOrBuilder
getSnapshotEncryptionKeyOrBuilder()5861         getSnapshotEncryptionKeyOrBuilder() {
5862       if (snapshotEncryptionKeyBuilder_ != null) {
5863         return snapshotEncryptionKeyBuilder_.getMessageOrBuilder();
5864       } else {
5865         return snapshotEncryptionKey_ == null
5866             ? com.google.cloud.compute.v1.CustomerEncryptionKey.getDefaultInstance()
5867             : snapshotEncryptionKey_;
5868       }
5869     }
5870     /**
5871      *
5872      *
5873      * <pre>
5874      * Encrypts the snapshot using a customer-supplied encryption key. After you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the snapshot later. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. Customer-supplied encryption keys do not protect access to metadata of the snapshot. If you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later.
5875      * </pre>
5876      *
5877      * <code>
5878      * optional .google.cloud.compute.v1.CustomerEncryptionKey snapshot_encryption_key = 43334526;
5879      * </code>
5880      */
5881     private com.google.protobuf.SingleFieldBuilderV3<
5882             com.google.cloud.compute.v1.CustomerEncryptionKey,
5883             com.google.cloud.compute.v1.CustomerEncryptionKey.Builder,
5884             com.google.cloud.compute.v1.CustomerEncryptionKeyOrBuilder>
getSnapshotEncryptionKeyFieldBuilder()5885         getSnapshotEncryptionKeyFieldBuilder() {
5886       if (snapshotEncryptionKeyBuilder_ == null) {
5887         snapshotEncryptionKeyBuilder_ =
5888             new com.google.protobuf.SingleFieldBuilderV3<
5889                 com.google.cloud.compute.v1.CustomerEncryptionKey,
5890                 com.google.cloud.compute.v1.CustomerEncryptionKey.Builder,
5891                 com.google.cloud.compute.v1.CustomerEncryptionKeyOrBuilder>(
5892                 getSnapshotEncryptionKey(), getParentForChildren(), isClean());
5893         snapshotEncryptionKey_ = null;
5894       }
5895       return snapshotEncryptionKeyBuilder_;
5896     }
5897 
5898     private java.lang.Object snapshotType_ = "";
5899     /**
5900      *
5901      *
5902      * <pre>
5903      * Indicates the type of the snapshot.
5904      * Check the SnapshotType enum for the list of possible values.
5905      * </pre>
5906      *
5907      * <code>optional string snapshot_type = 124349653;</code>
5908      *
5909      * @return Whether the snapshotType field is set.
5910      */
hasSnapshotType()5911     public boolean hasSnapshotType() {
5912       return ((bitField0_ & 0x00080000) != 0);
5913     }
5914     /**
5915      *
5916      *
5917      * <pre>
5918      * Indicates the type of the snapshot.
5919      * Check the SnapshotType enum for the list of possible values.
5920      * </pre>
5921      *
5922      * <code>optional string snapshot_type = 124349653;</code>
5923      *
5924      * @return The snapshotType.
5925      */
getSnapshotType()5926     public java.lang.String getSnapshotType() {
5927       java.lang.Object ref = snapshotType_;
5928       if (!(ref instanceof java.lang.String)) {
5929         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
5930         java.lang.String s = bs.toStringUtf8();
5931         snapshotType_ = s;
5932         return s;
5933       } else {
5934         return (java.lang.String) ref;
5935       }
5936     }
5937     /**
5938      *
5939      *
5940      * <pre>
5941      * Indicates the type of the snapshot.
5942      * Check the SnapshotType enum for the list of possible values.
5943      * </pre>
5944      *
5945      * <code>optional string snapshot_type = 124349653;</code>
5946      *
5947      * @return The bytes for snapshotType.
5948      */
getSnapshotTypeBytes()5949     public com.google.protobuf.ByteString getSnapshotTypeBytes() {
5950       java.lang.Object ref = snapshotType_;
5951       if (ref instanceof String) {
5952         com.google.protobuf.ByteString b =
5953             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
5954         snapshotType_ = b;
5955         return b;
5956       } else {
5957         return (com.google.protobuf.ByteString) ref;
5958       }
5959     }
5960     /**
5961      *
5962      *
5963      * <pre>
5964      * Indicates the type of the snapshot.
5965      * Check the SnapshotType enum for the list of possible values.
5966      * </pre>
5967      *
5968      * <code>optional string snapshot_type = 124349653;</code>
5969      *
5970      * @param value The snapshotType to set.
5971      * @return This builder for chaining.
5972      */
setSnapshotType(java.lang.String value)5973     public Builder setSnapshotType(java.lang.String value) {
5974       if (value == null) {
5975         throw new NullPointerException();
5976       }
5977       snapshotType_ = value;
5978       bitField0_ |= 0x00080000;
5979       onChanged();
5980       return this;
5981     }
5982     /**
5983      *
5984      *
5985      * <pre>
5986      * Indicates the type of the snapshot.
5987      * Check the SnapshotType enum for the list of possible values.
5988      * </pre>
5989      *
5990      * <code>optional string snapshot_type = 124349653;</code>
5991      *
5992      * @return This builder for chaining.
5993      */
clearSnapshotType()5994     public Builder clearSnapshotType() {
5995       snapshotType_ = getDefaultInstance().getSnapshotType();
5996       bitField0_ = (bitField0_ & ~0x00080000);
5997       onChanged();
5998       return this;
5999     }
6000     /**
6001      *
6002      *
6003      * <pre>
6004      * Indicates the type of the snapshot.
6005      * Check the SnapshotType enum for the list of possible values.
6006      * </pre>
6007      *
6008      * <code>optional string snapshot_type = 124349653;</code>
6009      *
6010      * @param value The bytes for snapshotType to set.
6011      * @return This builder for chaining.
6012      */
setSnapshotTypeBytes(com.google.protobuf.ByteString value)6013     public Builder setSnapshotTypeBytes(com.google.protobuf.ByteString value) {
6014       if (value == null) {
6015         throw new NullPointerException();
6016       }
6017       checkByteStringIsUtf8(value);
6018       snapshotType_ = value;
6019       bitField0_ |= 0x00080000;
6020       onChanged();
6021       return this;
6022     }
6023 
6024     private java.lang.Object sourceDisk_ = "";
6025     /**
6026      *
6027      *
6028      * <pre>
6029      * The source disk used to create this snapshot.
6030      * </pre>
6031      *
6032      * <code>optional string source_disk = 451753793;</code>
6033      *
6034      * @return Whether the sourceDisk field is set.
6035      */
hasSourceDisk()6036     public boolean hasSourceDisk() {
6037       return ((bitField0_ & 0x00100000) != 0);
6038     }
6039     /**
6040      *
6041      *
6042      * <pre>
6043      * The source disk used to create this snapshot.
6044      * </pre>
6045      *
6046      * <code>optional string source_disk = 451753793;</code>
6047      *
6048      * @return The sourceDisk.
6049      */
getSourceDisk()6050     public java.lang.String getSourceDisk() {
6051       java.lang.Object ref = sourceDisk_;
6052       if (!(ref instanceof java.lang.String)) {
6053         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
6054         java.lang.String s = bs.toStringUtf8();
6055         sourceDisk_ = s;
6056         return s;
6057       } else {
6058         return (java.lang.String) ref;
6059       }
6060     }
6061     /**
6062      *
6063      *
6064      * <pre>
6065      * The source disk used to create this snapshot.
6066      * </pre>
6067      *
6068      * <code>optional string source_disk = 451753793;</code>
6069      *
6070      * @return The bytes for sourceDisk.
6071      */
getSourceDiskBytes()6072     public com.google.protobuf.ByteString getSourceDiskBytes() {
6073       java.lang.Object ref = sourceDisk_;
6074       if (ref instanceof String) {
6075         com.google.protobuf.ByteString b =
6076             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
6077         sourceDisk_ = b;
6078         return b;
6079       } else {
6080         return (com.google.protobuf.ByteString) ref;
6081       }
6082     }
6083     /**
6084      *
6085      *
6086      * <pre>
6087      * The source disk used to create this snapshot.
6088      * </pre>
6089      *
6090      * <code>optional string source_disk = 451753793;</code>
6091      *
6092      * @param value The sourceDisk to set.
6093      * @return This builder for chaining.
6094      */
setSourceDisk(java.lang.String value)6095     public Builder setSourceDisk(java.lang.String value) {
6096       if (value == null) {
6097         throw new NullPointerException();
6098       }
6099       sourceDisk_ = value;
6100       bitField0_ |= 0x00100000;
6101       onChanged();
6102       return this;
6103     }
6104     /**
6105      *
6106      *
6107      * <pre>
6108      * The source disk used to create this snapshot.
6109      * </pre>
6110      *
6111      * <code>optional string source_disk = 451753793;</code>
6112      *
6113      * @return This builder for chaining.
6114      */
clearSourceDisk()6115     public Builder clearSourceDisk() {
6116       sourceDisk_ = getDefaultInstance().getSourceDisk();
6117       bitField0_ = (bitField0_ & ~0x00100000);
6118       onChanged();
6119       return this;
6120     }
6121     /**
6122      *
6123      *
6124      * <pre>
6125      * The source disk used to create this snapshot.
6126      * </pre>
6127      *
6128      * <code>optional string source_disk = 451753793;</code>
6129      *
6130      * @param value The bytes for sourceDisk to set.
6131      * @return This builder for chaining.
6132      */
setSourceDiskBytes(com.google.protobuf.ByteString value)6133     public Builder setSourceDiskBytes(com.google.protobuf.ByteString value) {
6134       if (value == null) {
6135         throw new NullPointerException();
6136       }
6137       checkByteStringIsUtf8(value);
6138       sourceDisk_ = value;
6139       bitField0_ |= 0x00100000;
6140       onChanged();
6141       return this;
6142     }
6143 
6144     private com.google.cloud.compute.v1.CustomerEncryptionKey sourceDiskEncryptionKey_;
6145     private com.google.protobuf.SingleFieldBuilderV3<
6146             com.google.cloud.compute.v1.CustomerEncryptionKey,
6147             com.google.cloud.compute.v1.CustomerEncryptionKey.Builder,
6148             com.google.cloud.compute.v1.CustomerEncryptionKeyOrBuilder>
6149         sourceDiskEncryptionKeyBuilder_;
6150     /**
6151      *
6152      *
6153      * <pre>
6154      * The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key.
6155      * </pre>
6156      *
6157      * <code>
6158      * optional .google.cloud.compute.v1.CustomerEncryptionKey source_disk_encryption_key = 531501153;
6159      * </code>
6160      *
6161      * @return Whether the sourceDiskEncryptionKey field is set.
6162      */
hasSourceDiskEncryptionKey()6163     public boolean hasSourceDiskEncryptionKey() {
6164       return ((bitField0_ & 0x00200000) != 0);
6165     }
6166     /**
6167      *
6168      *
6169      * <pre>
6170      * The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key.
6171      * </pre>
6172      *
6173      * <code>
6174      * optional .google.cloud.compute.v1.CustomerEncryptionKey source_disk_encryption_key = 531501153;
6175      * </code>
6176      *
6177      * @return The sourceDiskEncryptionKey.
6178      */
getSourceDiskEncryptionKey()6179     public com.google.cloud.compute.v1.CustomerEncryptionKey getSourceDiskEncryptionKey() {
6180       if (sourceDiskEncryptionKeyBuilder_ == null) {
6181         return sourceDiskEncryptionKey_ == null
6182             ? com.google.cloud.compute.v1.CustomerEncryptionKey.getDefaultInstance()
6183             : sourceDiskEncryptionKey_;
6184       } else {
6185         return sourceDiskEncryptionKeyBuilder_.getMessage();
6186       }
6187     }
6188     /**
6189      *
6190      *
6191      * <pre>
6192      * The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key.
6193      * </pre>
6194      *
6195      * <code>
6196      * optional .google.cloud.compute.v1.CustomerEncryptionKey source_disk_encryption_key = 531501153;
6197      * </code>
6198      */
setSourceDiskEncryptionKey( com.google.cloud.compute.v1.CustomerEncryptionKey value)6199     public Builder setSourceDiskEncryptionKey(
6200         com.google.cloud.compute.v1.CustomerEncryptionKey value) {
6201       if (sourceDiskEncryptionKeyBuilder_ == null) {
6202         if (value == null) {
6203           throw new NullPointerException();
6204         }
6205         sourceDiskEncryptionKey_ = value;
6206       } else {
6207         sourceDiskEncryptionKeyBuilder_.setMessage(value);
6208       }
6209       bitField0_ |= 0x00200000;
6210       onChanged();
6211       return this;
6212     }
6213     /**
6214      *
6215      *
6216      * <pre>
6217      * The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key.
6218      * </pre>
6219      *
6220      * <code>
6221      * optional .google.cloud.compute.v1.CustomerEncryptionKey source_disk_encryption_key = 531501153;
6222      * </code>
6223      */
setSourceDiskEncryptionKey( com.google.cloud.compute.v1.CustomerEncryptionKey.Builder builderForValue)6224     public Builder setSourceDiskEncryptionKey(
6225         com.google.cloud.compute.v1.CustomerEncryptionKey.Builder builderForValue) {
6226       if (sourceDiskEncryptionKeyBuilder_ == null) {
6227         sourceDiskEncryptionKey_ = builderForValue.build();
6228       } else {
6229         sourceDiskEncryptionKeyBuilder_.setMessage(builderForValue.build());
6230       }
6231       bitField0_ |= 0x00200000;
6232       onChanged();
6233       return this;
6234     }
6235     /**
6236      *
6237      *
6238      * <pre>
6239      * The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key.
6240      * </pre>
6241      *
6242      * <code>
6243      * optional .google.cloud.compute.v1.CustomerEncryptionKey source_disk_encryption_key = 531501153;
6244      * </code>
6245      */
mergeSourceDiskEncryptionKey( com.google.cloud.compute.v1.CustomerEncryptionKey value)6246     public Builder mergeSourceDiskEncryptionKey(
6247         com.google.cloud.compute.v1.CustomerEncryptionKey value) {
6248       if (sourceDiskEncryptionKeyBuilder_ == null) {
6249         if (((bitField0_ & 0x00200000) != 0)
6250             && sourceDiskEncryptionKey_ != null
6251             && sourceDiskEncryptionKey_
6252                 != com.google.cloud.compute.v1.CustomerEncryptionKey.getDefaultInstance()) {
6253           getSourceDiskEncryptionKeyBuilder().mergeFrom(value);
6254         } else {
6255           sourceDiskEncryptionKey_ = value;
6256         }
6257       } else {
6258         sourceDiskEncryptionKeyBuilder_.mergeFrom(value);
6259       }
6260       bitField0_ |= 0x00200000;
6261       onChanged();
6262       return this;
6263     }
6264     /**
6265      *
6266      *
6267      * <pre>
6268      * The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key.
6269      * </pre>
6270      *
6271      * <code>
6272      * optional .google.cloud.compute.v1.CustomerEncryptionKey source_disk_encryption_key = 531501153;
6273      * </code>
6274      */
clearSourceDiskEncryptionKey()6275     public Builder clearSourceDiskEncryptionKey() {
6276       bitField0_ = (bitField0_ & ~0x00200000);
6277       sourceDiskEncryptionKey_ = null;
6278       if (sourceDiskEncryptionKeyBuilder_ != null) {
6279         sourceDiskEncryptionKeyBuilder_.dispose();
6280         sourceDiskEncryptionKeyBuilder_ = null;
6281       }
6282       onChanged();
6283       return this;
6284     }
6285     /**
6286      *
6287      *
6288      * <pre>
6289      * The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key.
6290      * </pre>
6291      *
6292      * <code>
6293      * optional .google.cloud.compute.v1.CustomerEncryptionKey source_disk_encryption_key = 531501153;
6294      * </code>
6295      */
6296     public com.google.cloud.compute.v1.CustomerEncryptionKey.Builder
getSourceDiskEncryptionKeyBuilder()6297         getSourceDiskEncryptionKeyBuilder() {
6298       bitField0_ |= 0x00200000;
6299       onChanged();
6300       return getSourceDiskEncryptionKeyFieldBuilder().getBuilder();
6301     }
6302     /**
6303      *
6304      *
6305      * <pre>
6306      * The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key.
6307      * </pre>
6308      *
6309      * <code>
6310      * optional .google.cloud.compute.v1.CustomerEncryptionKey source_disk_encryption_key = 531501153;
6311      * </code>
6312      */
6313     public com.google.cloud.compute.v1.CustomerEncryptionKeyOrBuilder
getSourceDiskEncryptionKeyOrBuilder()6314         getSourceDiskEncryptionKeyOrBuilder() {
6315       if (sourceDiskEncryptionKeyBuilder_ != null) {
6316         return sourceDiskEncryptionKeyBuilder_.getMessageOrBuilder();
6317       } else {
6318         return sourceDiskEncryptionKey_ == null
6319             ? com.google.cloud.compute.v1.CustomerEncryptionKey.getDefaultInstance()
6320             : sourceDiskEncryptionKey_;
6321       }
6322     }
6323     /**
6324      *
6325      *
6326      * <pre>
6327      * The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key.
6328      * </pre>
6329      *
6330      * <code>
6331      * optional .google.cloud.compute.v1.CustomerEncryptionKey source_disk_encryption_key = 531501153;
6332      * </code>
6333      */
6334     private com.google.protobuf.SingleFieldBuilderV3<
6335             com.google.cloud.compute.v1.CustomerEncryptionKey,
6336             com.google.cloud.compute.v1.CustomerEncryptionKey.Builder,
6337             com.google.cloud.compute.v1.CustomerEncryptionKeyOrBuilder>
getSourceDiskEncryptionKeyFieldBuilder()6338         getSourceDiskEncryptionKeyFieldBuilder() {
6339       if (sourceDiskEncryptionKeyBuilder_ == null) {
6340         sourceDiskEncryptionKeyBuilder_ =
6341             new com.google.protobuf.SingleFieldBuilderV3<
6342                 com.google.cloud.compute.v1.CustomerEncryptionKey,
6343                 com.google.cloud.compute.v1.CustomerEncryptionKey.Builder,
6344                 com.google.cloud.compute.v1.CustomerEncryptionKeyOrBuilder>(
6345                 getSourceDiskEncryptionKey(), getParentForChildren(), isClean());
6346         sourceDiskEncryptionKey_ = null;
6347       }
6348       return sourceDiskEncryptionKeyBuilder_;
6349     }
6350 
6351     private java.lang.Object sourceDiskId_ = "";
6352     /**
6353      *
6354      *
6355      * <pre>
6356      * [Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name.
6357      * </pre>
6358      *
6359      * <code>optional string source_disk_id = 454190809;</code>
6360      *
6361      * @return Whether the sourceDiskId field is set.
6362      */
hasSourceDiskId()6363     public boolean hasSourceDiskId() {
6364       return ((bitField0_ & 0x00400000) != 0);
6365     }
6366     /**
6367      *
6368      *
6369      * <pre>
6370      * [Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name.
6371      * </pre>
6372      *
6373      * <code>optional string source_disk_id = 454190809;</code>
6374      *
6375      * @return The sourceDiskId.
6376      */
getSourceDiskId()6377     public java.lang.String getSourceDiskId() {
6378       java.lang.Object ref = sourceDiskId_;
6379       if (!(ref instanceof java.lang.String)) {
6380         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
6381         java.lang.String s = bs.toStringUtf8();
6382         sourceDiskId_ = s;
6383         return s;
6384       } else {
6385         return (java.lang.String) ref;
6386       }
6387     }
6388     /**
6389      *
6390      *
6391      * <pre>
6392      * [Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name.
6393      * </pre>
6394      *
6395      * <code>optional string source_disk_id = 454190809;</code>
6396      *
6397      * @return The bytes for sourceDiskId.
6398      */
getSourceDiskIdBytes()6399     public com.google.protobuf.ByteString getSourceDiskIdBytes() {
6400       java.lang.Object ref = sourceDiskId_;
6401       if (ref instanceof String) {
6402         com.google.protobuf.ByteString b =
6403             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
6404         sourceDiskId_ = b;
6405         return b;
6406       } else {
6407         return (com.google.protobuf.ByteString) ref;
6408       }
6409     }
6410     /**
6411      *
6412      *
6413      * <pre>
6414      * [Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name.
6415      * </pre>
6416      *
6417      * <code>optional string source_disk_id = 454190809;</code>
6418      *
6419      * @param value The sourceDiskId to set.
6420      * @return This builder for chaining.
6421      */
setSourceDiskId(java.lang.String value)6422     public Builder setSourceDiskId(java.lang.String value) {
6423       if (value == null) {
6424         throw new NullPointerException();
6425       }
6426       sourceDiskId_ = value;
6427       bitField0_ |= 0x00400000;
6428       onChanged();
6429       return this;
6430     }
6431     /**
6432      *
6433      *
6434      * <pre>
6435      * [Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name.
6436      * </pre>
6437      *
6438      * <code>optional string source_disk_id = 454190809;</code>
6439      *
6440      * @return This builder for chaining.
6441      */
clearSourceDiskId()6442     public Builder clearSourceDiskId() {
6443       sourceDiskId_ = getDefaultInstance().getSourceDiskId();
6444       bitField0_ = (bitField0_ & ~0x00400000);
6445       onChanged();
6446       return this;
6447     }
6448     /**
6449      *
6450      *
6451      * <pre>
6452      * [Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name.
6453      * </pre>
6454      *
6455      * <code>optional string source_disk_id = 454190809;</code>
6456      *
6457      * @param value The bytes for sourceDiskId to set.
6458      * @return This builder for chaining.
6459      */
setSourceDiskIdBytes(com.google.protobuf.ByteString value)6460     public Builder setSourceDiskIdBytes(com.google.protobuf.ByteString value) {
6461       if (value == null) {
6462         throw new NullPointerException();
6463       }
6464       checkByteStringIsUtf8(value);
6465       sourceDiskId_ = value;
6466       bitField0_ |= 0x00400000;
6467       onChanged();
6468       return this;
6469     }
6470 
6471     private java.lang.Object sourceSnapshotSchedulePolicy_ = "";
6472     /**
6473      *
6474      *
6475      * <pre>
6476      * [Output Only] URL of the resource policy which created this scheduled snapshot.
6477      * </pre>
6478      *
6479      * <code>optional string source_snapshot_schedule_policy = 235756291;</code>
6480      *
6481      * @return Whether the sourceSnapshotSchedulePolicy field is set.
6482      */
hasSourceSnapshotSchedulePolicy()6483     public boolean hasSourceSnapshotSchedulePolicy() {
6484       return ((bitField0_ & 0x00800000) != 0);
6485     }
6486     /**
6487      *
6488      *
6489      * <pre>
6490      * [Output Only] URL of the resource policy which created this scheduled snapshot.
6491      * </pre>
6492      *
6493      * <code>optional string source_snapshot_schedule_policy = 235756291;</code>
6494      *
6495      * @return The sourceSnapshotSchedulePolicy.
6496      */
getSourceSnapshotSchedulePolicy()6497     public java.lang.String getSourceSnapshotSchedulePolicy() {
6498       java.lang.Object ref = sourceSnapshotSchedulePolicy_;
6499       if (!(ref instanceof java.lang.String)) {
6500         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
6501         java.lang.String s = bs.toStringUtf8();
6502         sourceSnapshotSchedulePolicy_ = s;
6503         return s;
6504       } else {
6505         return (java.lang.String) ref;
6506       }
6507     }
6508     /**
6509      *
6510      *
6511      * <pre>
6512      * [Output Only] URL of the resource policy which created this scheduled snapshot.
6513      * </pre>
6514      *
6515      * <code>optional string source_snapshot_schedule_policy = 235756291;</code>
6516      *
6517      * @return The bytes for sourceSnapshotSchedulePolicy.
6518      */
getSourceSnapshotSchedulePolicyBytes()6519     public com.google.protobuf.ByteString getSourceSnapshotSchedulePolicyBytes() {
6520       java.lang.Object ref = sourceSnapshotSchedulePolicy_;
6521       if (ref instanceof String) {
6522         com.google.protobuf.ByteString b =
6523             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
6524         sourceSnapshotSchedulePolicy_ = b;
6525         return b;
6526       } else {
6527         return (com.google.protobuf.ByteString) ref;
6528       }
6529     }
6530     /**
6531      *
6532      *
6533      * <pre>
6534      * [Output Only] URL of the resource policy which created this scheduled snapshot.
6535      * </pre>
6536      *
6537      * <code>optional string source_snapshot_schedule_policy = 235756291;</code>
6538      *
6539      * @param value The sourceSnapshotSchedulePolicy to set.
6540      * @return This builder for chaining.
6541      */
setSourceSnapshotSchedulePolicy(java.lang.String value)6542     public Builder setSourceSnapshotSchedulePolicy(java.lang.String value) {
6543       if (value == null) {
6544         throw new NullPointerException();
6545       }
6546       sourceSnapshotSchedulePolicy_ = value;
6547       bitField0_ |= 0x00800000;
6548       onChanged();
6549       return this;
6550     }
6551     /**
6552      *
6553      *
6554      * <pre>
6555      * [Output Only] URL of the resource policy which created this scheduled snapshot.
6556      * </pre>
6557      *
6558      * <code>optional string source_snapshot_schedule_policy = 235756291;</code>
6559      *
6560      * @return This builder for chaining.
6561      */
clearSourceSnapshotSchedulePolicy()6562     public Builder clearSourceSnapshotSchedulePolicy() {
6563       sourceSnapshotSchedulePolicy_ = getDefaultInstance().getSourceSnapshotSchedulePolicy();
6564       bitField0_ = (bitField0_ & ~0x00800000);
6565       onChanged();
6566       return this;
6567     }
6568     /**
6569      *
6570      *
6571      * <pre>
6572      * [Output Only] URL of the resource policy which created this scheduled snapshot.
6573      * </pre>
6574      *
6575      * <code>optional string source_snapshot_schedule_policy = 235756291;</code>
6576      *
6577      * @param value The bytes for sourceSnapshotSchedulePolicy to set.
6578      * @return This builder for chaining.
6579      */
setSourceSnapshotSchedulePolicyBytes(com.google.protobuf.ByteString value)6580     public Builder setSourceSnapshotSchedulePolicyBytes(com.google.protobuf.ByteString value) {
6581       if (value == null) {
6582         throw new NullPointerException();
6583       }
6584       checkByteStringIsUtf8(value);
6585       sourceSnapshotSchedulePolicy_ = value;
6586       bitField0_ |= 0x00800000;
6587       onChanged();
6588       return this;
6589     }
6590 
6591     private java.lang.Object sourceSnapshotSchedulePolicyId_ = "";
6592     /**
6593      *
6594      *
6595      * <pre>
6596      * [Output Only] ID of the resource policy which created this scheduled snapshot.
6597      * </pre>
6598      *
6599      * <code>optional string source_snapshot_schedule_policy_id = 70489047;</code>
6600      *
6601      * @return Whether the sourceSnapshotSchedulePolicyId field is set.
6602      */
hasSourceSnapshotSchedulePolicyId()6603     public boolean hasSourceSnapshotSchedulePolicyId() {
6604       return ((bitField0_ & 0x01000000) != 0);
6605     }
6606     /**
6607      *
6608      *
6609      * <pre>
6610      * [Output Only] ID of the resource policy which created this scheduled snapshot.
6611      * </pre>
6612      *
6613      * <code>optional string source_snapshot_schedule_policy_id = 70489047;</code>
6614      *
6615      * @return The sourceSnapshotSchedulePolicyId.
6616      */
getSourceSnapshotSchedulePolicyId()6617     public java.lang.String getSourceSnapshotSchedulePolicyId() {
6618       java.lang.Object ref = sourceSnapshotSchedulePolicyId_;
6619       if (!(ref instanceof java.lang.String)) {
6620         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
6621         java.lang.String s = bs.toStringUtf8();
6622         sourceSnapshotSchedulePolicyId_ = s;
6623         return s;
6624       } else {
6625         return (java.lang.String) ref;
6626       }
6627     }
6628     /**
6629      *
6630      *
6631      * <pre>
6632      * [Output Only] ID of the resource policy which created this scheduled snapshot.
6633      * </pre>
6634      *
6635      * <code>optional string source_snapshot_schedule_policy_id = 70489047;</code>
6636      *
6637      * @return The bytes for sourceSnapshotSchedulePolicyId.
6638      */
getSourceSnapshotSchedulePolicyIdBytes()6639     public com.google.protobuf.ByteString getSourceSnapshotSchedulePolicyIdBytes() {
6640       java.lang.Object ref = sourceSnapshotSchedulePolicyId_;
6641       if (ref instanceof String) {
6642         com.google.protobuf.ByteString b =
6643             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
6644         sourceSnapshotSchedulePolicyId_ = b;
6645         return b;
6646       } else {
6647         return (com.google.protobuf.ByteString) ref;
6648       }
6649     }
6650     /**
6651      *
6652      *
6653      * <pre>
6654      * [Output Only] ID of the resource policy which created this scheduled snapshot.
6655      * </pre>
6656      *
6657      * <code>optional string source_snapshot_schedule_policy_id = 70489047;</code>
6658      *
6659      * @param value The sourceSnapshotSchedulePolicyId to set.
6660      * @return This builder for chaining.
6661      */
setSourceSnapshotSchedulePolicyId(java.lang.String value)6662     public Builder setSourceSnapshotSchedulePolicyId(java.lang.String value) {
6663       if (value == null) {
6664         throw new NullPointerException();
6665       }
6666       sourceSnapshotSchedulePolicyId_ = value;
6667       bitField0_ |= 0x01000000;
6668       onChanged();
6669       return this;
6670     }
6671     /**
6672      *
6673      *
6674      * <pre>
6675      * [Output Only] ID of the resource policy which created this scheduled snapshot.
6676      * </pre>
6677      *
6678      * <code>optional string source_snapshot_schedule_policy_id = 70489047;</code>
6679      *
6680      * @return This builder for chaining.
6681      */
clearSourceSnapshotSchedulePolicyId()6682     public Builder clearSourceSnapshotSchedulePolicyId() {
6683       sourceSnapshotSchedulePolicyId_ = getDefaultInstance().getSourceSnapshotSchedulePolicyId();
6684       bitField0_ = (bitField0_ & ~0x01000000);
6685       onChanged();
6686       return this;
6687     }
6688     /**
6689      *
6690      *
6691      * <pre>
6692      * [Output Only] ID of the resource policy which created this scheduled snapshot.
6693      * </pre>
6694      *
6695      * <code>optional string source_snapshot_schedule_policy_id = 70489047;</code>
6696      *
6697      * @param value The bytes for sourceSnapshotSchedulePolicyId to set.
6698      * @return This builder for chaining.
6699      */
setSourceSnapshotSchedulePolicyIdBytes(com.google.protobuf.ByteString value)6700     public Builder setSourceSnapshotSchedulePolicyIdBytes(com.google.protobuf.ByteString value) {
6701       if (value == null) {
6702         throw new NullPointerException();
6703       }
6704       checkByteStringIsUtf8(value);
6705       sourceSnapshotSchedulePolicyId_ = value;
6706       bitField0_ |= 0x01000000;
6707       onChanged();
6708       return this;
6709     }
6710 
6711     private java.lang.Object status_ = "";
6712     /**
6713      *
6714      *
6715      * <pre>
6716      * [Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.
6717      * Check the Status enum for the list of possible values.
6718      * </pre>
6719      *
6720      * <code>optional string status = 181260274;</code>
6721      *
6722      * @return Whether the status field is set.
6723      */
hasStatus()6724     public boolean hasStatus() {
6725       return ((bitField0_ & 0x02000000) != 0);
6726     }
6727     /**
6728      *
6729      *
6730      * <pre>
6731      * [Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.
6732      * Check the Status enum for the list of possible values.
6733      * </pre>
6734      *
6735      * <code>optional string status = 181260274;</code>
6736      *
6737      * @return The status.
6738      */
getStatus()6739     public java.lang.String getStatus() {
6740       java.lang.Object ref = status_;
6741       if (!(ref instanceof java.lang.String)) {
6742         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
6743         java.lang.String s = bs.toStringUtf8();
6744         status_ = s;
6745         return s;
6746       } else {
6747         return (java.lang.String) ref;
6748       }
6749     }
6750     /**
6751      *
6752      *
6753      * <pre>
6754      * [Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.
6755      * Check the Status enum for the list of possible values.
6756      * </pre>
6757      *
6758      * <code>optional string status = 181260274;</code>
6759      *
6760      * @return The bytes for status.
6761      */
getStatusBytes()6762     public com.google.protobuf.ByteString getStatusBytes() {
6763       java.lang.Object ref = status_;
6764       if (ref instanceof String) {
6765         com.google.protobuf.ByteString b =
6766             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
6767         status_ = b;
6768         return b;
6769       } else {
6770         return (com.google.protobuf.ByteString) ref;
6771       }
6772     }
6773     /**
6774      *
6775      *
6776      * <pre>
6777      * [Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.
6778      * Check the Status enum for the list of possible values.
6779      * </pre>
6780      *
6781      * <code>optional string status = 181260274;</code>
6782      *
6783      * @param value The status to set.
6784      * @return This builder for chaining.
6785      */
setStatus(java.lang.String value)6786     public Builder setStatus(java.lang.String value) {
6787       if (value == null) {
6788         throw new NullPointerException();
6789       }
6790       status_ = value;
6791       bitField0_ |= 0x02000000;
6792       onChanged();
6793       return this;
6794     }
6795     /**
6796      *
6797      *
6798      * <pre>
6799      * [Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.
6800      * Check the Status enum for the list of possible values.
6801      * </pre>
6802      *
6803      * <code>optional string status = 181260274;</code>
6804      *
6805      * @return This builder for chaining.
6806      */
clearStatus()6807     public Builder clearStatus() {
6808       status_ = getDefaultInstance().getStatus();
6809       bitField0_ = (bitField0_ & ~0x02000000);
6810       onChanged();
6811       return this;
6812     }
6813     /**
6814      *
6815      *
6816      * <pre>
6817      * [Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.
6818      * Check the Status enum for the list of possible values.
6819      * </pre>
6820      *
6821      * <code>optional string status = 181260274;</code>
6822      *
6823      * @param value The bytes for status to set.
6824      * @return This builder for chaining.
6825      */
setStatusBytes(com.google.protobuf.ByteString value)6826     public Builder setStatusBytes(com.google.protobuf.ByteString value) {
6827       if (value == null) {
6828         throw new NullPointerException();
6829       }
6830       checkByteStringIsUtf8(value);
6831       status_ = value;
6832       bitField0_ |= 0x02000000;
6833       onChanged();
6834       return this;
6835     }
6836 
6837     private long storageBytes_;
6838     /**
6839      *
6840      *
6841      * <pre>
6842      * [Output Only] A size of the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion.
6843      * </pre>
6844      *
6845      * <code>optional int64 storage_bytes = 424631719;</code>
6846      *
6847      * @return Whether the storageBytes field is set.
6848      */
6849     @java.lang.Override
hasStorageBytes()6850     public boolean hasStorageBytes() {
6851       return ((bitField0_ & 0x04000000) != 0);
6852     }
6853     /**
6854      *
6855      *
6856      * <pre>
6857      * [Output Only] A size of the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion.
6858      * </pre>
6859      *
6860      * <code>optional int64 storage_bytes = 424631719;</code>
6861      *
6862      * @return The storageBytes.
6863      */
6864     @java.lang.Override
getStorageBytes()6865     public long getStorageBytes() {
6866       return storageBytes_;
6867     }
6868     /**
6869      *
6870      *
6871      * <pre>
6872      * [Output Only] A size of the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion.
6873      * </pre>
6874      *
6875      * <code>optional int64 storage_bytes = 424631719;</code>
6876      *
6877      * @param value The storageBytes to set.
6878      * @return This builder for chaining.
6879      */
setStorageBytes(long value)6880     public Builder setStorageBytes(long value) {
6881 
6882       storageBytes_ = value;
6883       bitField0_ |= 0x04000000;
6884       onChanged();
6885       return this;
6886     }
6887     /**
6888      *
6889      *
6890      * <pre>
6891      * [Output Only] A size of the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion.
6892      * </pre>
6893      *
6894      * <code>optional int64 storage_bytes = 424631719;</code>
6895      *
6896      * @return This builder for chaining.
6897      */
clearStorageBytes()6898     public Builder clearStorageBytes() {
6899       bitField0_ = (bitField0_ & ~0x04000000);
6900       storageBytes_ = 0L;
6901       onChanged();
6902       return this;
6903     }
6904 
6905     private java.lang.Object storageBytesStatus_ = "";
6906     /**
6907      *
6908      *
6909      * <pre>
6910      * [Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date.
6911      * Check the StorageBytesStatus enum for the list of possible values.
6912      * </pre>
6913      *
6914      * <code>optional string storage_bytes_status = 490739082;</code>
6915      *
6916      * @return Whether the storageBytesStatus field is set.
6917      */
hasStorageBytesStatus()6918     public boolean hasStorageBytesStatus() {
6919       return ((bitField0_ & 0x08000000) != 0);
6920     }
6921     /**
6922      *
6923      *
6924      * <pre>
6925      * [Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date.
6926      * Check the StorageBytesStatus enum for the list of possible values.
6927      * </pre>
6928      *
6929      * <code>optional string storage_bytes_status = 490739082;</code>
6930      *
6931      * @return The storageBytesStatus.
6932      */
getStorageBytesStatus()6933     public java.lang.String getStorageBytesStatus() {
6934       java.lang.Object ref = storageBytesStatus_;
6935       if (!(ref instanceof java.lang.String)) {
6936         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
6937         java.lang.String s = bs.toStringUtf8();
6938         storageBytesStatus_ = s;
6939         return s;
6940       } else {
6941         return (java.lang.String) ref;
6942       }
6943     }
6944     /**
6945      *
6946      *
6947      * <pre>
6948      * [Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date.
6949      * Check the StorageBytesStatus enum for the list of possible values.
6950      * </pre>
6951      *
6952      * <code>optional string storage_bytes_status = 490739082;</code>
6953      *
6954      * @return The bytes for storageBytesStatus.
6955      */
getStorageBytesStatusBytes()6956     public com.google.protobuf.ByteString getStorageBytesStatusBytes() {
6957       java.lang.Object ref = storageBytesStatus_;
6958       if (ref instanceof String) {
6959         com.google.protobuf.ByteString b =
6960             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
6961         storageBytesStatus_ = b;
6962         return b;
6963       } else {
6964         return (com.google.protobuf.ByteString) ref;
6965       }
6966     }
6967     /**
6968      *
6969      *
6970      * <pre>
6971      * [Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date.
6972      * Check the StorageBytesStatus enum for the list of possible values.
6973      * </pre>
6974      *
6975      * <code>optional string storage_bytes_status = 490739082;</code>
6976      *
6977      * @param value The storageBytesStatus to set.
6978      * @return This builder for chaining.
6979      */
setStorageBytesStatus(java.lang.String value)6980     public Builder setStorageBytesStatus(java.lang.String value) {
6981       if (value == null) {
6982         throw new NullPointerException();
6983       }
6984       storageBytesStatus_ = value;
6985       bitField0_ |= 0x08000000;
6986       onChanged();
6987       return this;
6988     }
6989     /**
6990      *
6991      *
6992      * <pre>
6993      * [Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date.
6994      * Check the StorageBytesStatus enum for the list of possible values.
6995      * </pre>
6996      *
6997      * <code>optional string storage_bytes_status = 490739082;</code>
6998      *
6999      * @return This builder for chaining.
7000      */
clearStorageBytesStatus()7001     public Builder clearStorageBytesStatus() {
7002       storageBytesStatus_ = getDefaultInstance().getStorageBytesStatus();
7003       bitField0_ = (bitField0_ & ~0x08000000);
7004       onChanged();
7005       return this;
7006     }
7007     /**
7008      *
7009      *
7010      * <pre>
7011      * [Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date.
7012      * Check the StorageBytesStatus enum for the list of possible values.
7013      * </pre>
7014      *
7015      * <code>optional string storage_bytes_status = 490739082;</code>
7016      *
7017      * @param value The bytes for storageBytesStatus to set.
7018      * @return This builder for chaining.
7019      */
setStorageBytesStatusBytes(com.google.protobuf.ByteString value)7020     public Builder setStorageBytesStatusBytes(com.google.protobuf.ByteString value) {
7021       if (value == null) {
7022         throw new NullPointerException();
7023       }
7024       checkByteStringIsUtf8(value);
7025       storageBytesStatus_ = value;
7026       bitField0_ |= 0x08000000;
7027       onChanged();
7028       return this;
7029     }
7030 
7031     private com.google.protobuf.LazyStringList storageLocations_ =
7032         com.google.protobuf.LazyStringArrayList.EMPTY;
7033 
ensureStorageLocationsIsMutable()7034     private void ensureStorageLocationsIsMutable() {
7035       if (!((bitField0_ & 0x10000000) != 0)) {
7036         storageLocations_ = new com.google.protobuf.LazyStringArrayList(storageLocations_);
7037         bitField0_ |= 0x10000000;
7038       }
7039     }
7040     /**
7041      *
7042      *
7043      * <pre>
7044      * Cloud Storage bucket storage location of the snapshot (regional or multi-regional).
7045      * </pre>
7046      *
7047      * <code>repeated string storage_locations = 328005274;</code>
7048      *
7049      * @return A list containing the storageLocations.
7050      */
getStorageLocationsList()7051     public com.google.protobuf.ProtocolStringList getStorageLocationsList() {
7052       return storageLocations_.getUnmodifiableView();
7053     }
7054     /**
7055      *
7056      *
7057      * <pre>
7058      * Cloud Storage bucket storage location of the snapshot (regional or multi-regional).
7059      * </pre>
7060      *
7061      * <code>repeated string storage_locations = 328005274;</code>
7062      *
7063      * @return The count of storageLocations.
7064      */
getStorageLocationsCount()7065     public int getStorageLocationsCount() {
7066       return storageLocations_.size();
7067     }
7068     /**
7069      *
7070      *
7071      * <pre>
7072      * Cloud Storage bucket storage location of the snapshot (regional or multi-regional).
7073      * </pre>
7074      *
7075      * <code>repeated string storage_locations = 328005274;</code>
7076      *
7077      * @param index The index of the element to return.
7078      * @return The storageLocations at the given index.
7079      */
getStorageLocations(int index)7080     public java.lang.String getStorageLocations(int index) {
7081       return storageLocations_.get(index);
7082     }
7083     /**
7084      *
7085      *
7086      * <pre>
7087      * Cloud Storage bucket storage location of the snapshot (regional or multi-regional).
7088      * </pre>
7089      *
7090      * <code>repeated string storage_locations = 328005274;</code>
7091      *
7092      * @param index The index of the value to return.
7093      * @return The bytes of the storageLocations at the given index.
7094      */
getStorageLocationsBytes(int index)7095     public com.google.protobuf.ByteString getStorageLocationsBytes(int index) {
7096       return storageLocations_.getByteString(index);
7097     }
7098     /**
7099      *
7100      *
7101      * <pre>
7102      * Cloud Storage bucket storage location of the snapshot (regional or multi-regional).
7103      * </pre>
7104      *
7105      * <code>repeated string storage_locations = 328005274;</code>
7106      *
7107      * @param index The index to set the value at.
7108      * @param value The storageLocations to set.
7109      * @return This builder for chaining.
7110      */
setStorageLocations(int index, java.lang.String value)7111     public Builder setStorageLocations(int index, java.lang.String value) {
7112       if (value == null) {
7113         throw new NullPointerException();
7114       }
7115       ensureStorageLocationsIsMutable();
7116       storageLocations_.set(index, value);
7117       onChanged();
7118       return this;
7119     }
7120     /**
7121      *
7122      *
7123      * <pre>
7124      * Cloud Storage bucket storage location of the snapshot (regional or multi-regional).
7125      * </pre>
7126      *
7127      * <code>repeated string storage_locations = 328005274;</code>
7128      *
7129      * @param value The storageLocations to add.
7130      * @return This builder for chaining.
7131      */
addStorageLocations(java.lang.String value)7132     public Builder addStorageLocations(java.lang.String value) {
7133       if (value == null) {
7134         throw new NullPointerException();
7135       }
7136       ensureStorageLocationsIsMutable();
7137       storageLocations_.add(value);
7138       onChanged();
7139       return this;
7140     }
7141     /**
7142      *
7143      *
7144      * <pre>
7145      * Cloud Storage bucket storage location of the snapshot (regional or multi-regional).
7146      * </pre>
7147      *
7148      * <code>repeated string storage_locations = 328005274;</code>
7149      *
7150      * @param values The storageLocations to add.
7151      * @return This builder for chaining.
7152      */
addAllStorageLocations(java.lang.Iterable<java.lang.String> values)7153     public Builder addAllStorageLocations(java.lang.Iterable<java.lang.String> values) {
7154       ensureStorageLocationsIsMutable();
7155       com.google.protobuf.AbstractMessageLite.Builder.addAll(values, storageLocations_);
7156       onChanged();
7157       return this;
7158     }
7159     /**
7160      *
7161      *
7162      * <pre>
7163      * Cloud Storage bucket storage location of the snapshot (regional or multi-regional).
7164      * </pre>
7165      *
7166      * <code>repeated string storage_locations = 328005274;</code>
7167      *
7168      * @return This builder for chaining.
7169      */
clearStorageLocations()7170     public Builder clearStorageLocations() {
7171       storageLocations_ = com.google.protobuf.LazyStringArrayList.EMPTY;
7172       bitField0_ = (bitField0_ & ~0x10000000);
7173       onChanged();
7174       return this;
7175     }
7176     /**
7177      *
7178      *
7179      * <pre>
7180      * Cloud Storage bucket storage location of the snapshot (regional or multi-regional).
7181      * </pre>
7182      *
7183      * <code>repeated string storage_locations = 328005274;</code>
7184      *
7185      * @param value The bytes of the storageLocations to add.
7186      * @return This builder for chaining.
7187      */
addStorageLocationsBytes(com.google.protobuf.ByteString value)7188     public Builder addStorageLocationsBytes(com.google.protobuf.ByteString value) {
7189       if (value == null) {
7190         throw new NullPointerException();
7191       }
7192       checkByteStringIsUtf8(value);
7193       ensureStorageLocationsIsMutable();
7194       storageLocations_.add(value);
7195       onChanged();
7196       return this;
7197     }
7198 
7199     @java.lang.Override
setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)7200     public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) {
7201       return super.setUnknownFields(unknownFields);
7202     }
7203 
7204     @java.lang.Override
mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields)7205     public final Builder mergeUnknownFields(
7206         final com.google.protobuf.UnknownFieldSet unknownFields) {
7207       return super.mergeUnknownFields(unknownFields);
7208     }
7209 
7210     // @@protoc_insertion_point(builder_scope:google.cloud.compute.v1.Snapshot)
7211   }
7212 
7213   // @@protoc_insertion_point(class_scope:google.cloud.compute.v1.Snapshot)
7214   private static final com.google.cloud.compute.v1.Snapshot DEFAULT_INSTANCE;
7215 
7216   static {
7217     DEFAULT_INSTANCE = new com.google.cloud.compute.v1.Snapshot();
7218   }
7219 
getDefaultInstance()7220   public static com.google.cloud.compute.v1.Snapshot getDefaultInstance() {
7221     return DEFAULT_INSTANCE;
7222   }
7223 
7224   private static final com.google.protobuf.Parser<Snapshot> PARSER =
7225       new com.google.protobuf.AbstractParser<Snapshot>() {
7226         @java.lang.Override
7227         public Snapshot parsePartialFrom(
7228             com.google.protobuf.CodedInputStream input,
7229             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
7230             throws com.google.protobuf.InvalidProtocolBufferException {
7231           Builder builder = newBuilder();
7232           try {
7233             builder.mergeFrom(input, extensionRegistry);
7234           } catch (com.google.protobuf.InvalidProtocolBufferException e) {
7235             throw e.setUnfinishedMessage(builder.buildPartial());
7236           } catch (com.google.protobuf.UninitializedMessageException e) {
7237             throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
7238           } catch (java.io.IOException e) {
7239             throw new com.google.protobuf.InvalidProtocolBufferException(e)
7240                 .setUnfinishedMessage(builder.buildPartial());
7241           }
7242           return builder.buildPartial();
7243         }
7244       };
7245 
parser()7246   public static com.google.protobuf.Parser<Snapshot> parser() {
7247     return PARSER;
7248   }
7249 
7250   @java.lang.Override
getParserForType()7251   public com.google.protobuf.Parser<Snapshot> getParserForType() {
7252     return PARSER;
7253   }
7254 
7255   @java.lang.Override
getDefaultInstanceForType()7256   public com.google.cloud.compute.v1.Snapshot getDefaultInstanceForType() {
7257     return DEFAULT_INSTANCE;
7258   }
7259 }
7260