• 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/dataproc/v1/clusters.proto
18 
19 package com.google.cloud.dataproc.v1;
20 
21 /**
22  *
23  *
24  * <pre>
25  * The config settings for Compute Engine resources in
26  * an instance group, such as a master or worker group.
27  * </pre>
28  *
29  * Protobuf type {@code google.cloud.dataproc.v1.InstanceGroupConfig}
30  */
31 public final class InstanceGroupConfig extends com.google.protobuf.GeneratedMessageV3
32     implements
33     // @@protoc_insertion_point(message_implements:google.cloud.dataproc.v1.InstanceGroupConfig)
34     InstanceGroupConfigOrBuilder {
35   private static final long serialVersionUID = 0L;
36   // Use InstanceGroupConfig.newBuilder() to construct.
InstanceGroupConfig(com.google.protobuf.GeneratedMessageV3.Builder<?> builder)37   private InstanceGroupConfig(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
38     super(builder);
39   }
40 
InstanceGroupConfig()41   private InstanceGroupConfig() {
42     instanceNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
43     imageUri_ = "";
44     machineTypeUri_ = "";
45     preemptibility_ = 0;
46     accelerators_ = java.util.Collections.emptyList();
47     minCpuPlatform_ = "";
48   }
49 
50   @java.lang.Override
51   @SuppressWarnings({"unused"})
newInstance(UnusedPrivateParameter unused)52   protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
53     return new InstanceGroupConfig();
54   }
55 
56   @java.lang.Override
getUnknownFields()57   public final com.google.protobuf.UnknownFieldSet getUnknownFields() {
58     return this.unknownFields;
59   }
60 
getDescriptor()61   public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
62     return com.google.cloud.dataproc.v1.ClustersProto
63         .internal_static_google_cloud_dataproc_v1_InstanceGroupConfig_descriptor;
64   }
65 
66   @java.lang.Override
67   protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()68       internalGetFieldAccessorTable() {
69     return com.google.cloud.dataproc.v1.ClustersProto
70         .internal_static_google_cloud_dataproc_v1_InstanceGroupConfig_fieldAccessorTable
71         .ensureFieldAccessorsInitialized(
72             com.google.cloud.dataproc.v1.InstanceGroupConfig.class,
73             com.google.cloud.dataproc.v1.InstanceGroupConfig.Builder.class);
74   }
75 
76   /**
77    *
78    *
79    * <pre>
80    * Controls the use of preemptible instances within the group.
81    * </pre>
82    *
83    * Protobuf enum {@code google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility}
84    */
85   public enum Preemptibility implements com.google.protobuf.ProtocolMessageEnum {
86     /**
87      *
88      *
89      * <pre>
90      * Preemptibility is unspecified, the system will choose the
91      * appropriate setting for each instance group.
92      * </pre>
93      *
94      * <code>PREEMPTIBILITY_UNSPECIFIED = 0;</code>
95      */
96     PREEMPTIBILITY_UNSPECIFIED(0),
97     /**
98      *
99      *
100      * <pre>
101      * Instances are non-preemptible.
102      * This option is allowed for all instance groups and is the only valid
103      * value for Master and Worker instance groups.
104      * </pre>
105      *
106      * <code>NON_PREEMPTIBLE = 1;</code>
107      */
108     NON_PREEMPTIBLE(1),
109     /**
110      *
111      *
112      * <pre>
113      * Instances are [preemptible]
114      * (https://cloud.google.com/compute/docs/instances/preemptible).
115      * This option is allowed only for [secondary worker]
116      * (https://cloud.google.com/dataproc/docs/concepts/compute/secondary-vms)
117      * groups.
118      * </pre>
119      *
120      * <code>PREEMPTIBLE = 2;</code>
121      */
122     PREEMPTIBLE(2),
123     /**
124      *
125      *
126      * <pre>
127      * Instances are [Spot VMs]
128      * (https://cloud.google.com/compute/docs/instances/spot).
129      * This option is allowed only for [secondary worker]
130      * (https://cloud.google.com/dataproc/docs/concepts/compute/secondary-vms)
131      * groups. Spot VMs are the latest version of [preemptible VMs]
132      * (https://cloud.google.com/compute/docs/instances/preemptible), and
133      * provide additional features.
134      * </pre>
135      *
136      * <code>SPOT = 3;</code>
137      */
138     SPOT(3),
139     UNRECOGNIZED(-1),
140     ;
141 
142     /**
143      *
144      *
145      * <pre>
146      * Preemptibility is unspecified, the system will choose the
147      * appropriate setting for each instance group.
148      * </pre>
149      *
150      * <code>PREEMPTIBILITY_UNSPECIFIED = 0;</code>
151      */
152     public static final int PREEMPTIBILITY_UNSPECIFIED_VALUE = 0;
153     /**
154      *
155      *
156      * <pre>
157      * Instances are non-preemptible.
158      * This option is allowed for all instance groups and is the only valid
159      * value for Master and Worker instance groups.
160      * </pre>
161      *
162      * <code>NON_PREEMPTIBLE = 1;</code>
163      */
164     public static final int NON_PREEMPTIBLE_VALUE = 1;
165     /**
166      *
167      *
168      * <pre>
169      * Instances are [preemptible]
170      * (https://cloud.google.com/compute/docs/instances/preemptible).
171      * This option is allowed only for [secondary worker]
172      * (https://cloud.google.com/dataproc/docs/concepts/compute/secondary-vms)
173      * groups.
174      * </pre>
175      *
176      * <code>PREEMPTIBLE = 2;</code>
177      */
178     public static final int PREEMPTIBLE_VALUE = 2;
179     /**
180      *
181      *
182      * <pre>
183      * Instances are [Spot VMs]
184      * (https://cloud.google.com/compute/docs/instances/spot).
185      * This option is allowed only for [secondary worker]
186      * (https://cloud.google.com/dataproc/docs/concepts/compute/secondary-vms)
187      * groups. Spot VMs are the latest version of [preemptible VMs]
188      * (https://cloud.google.com/compute/docs/instances/preemptible), and
189      * provide additional features.
190      * </pre>
191      *
192      * <code>SPOT = 3;</code>
193      */
194     public static final int SPOT_VALUE = 3;
195 
getNumber()196     public final int getNumber() {
197       if (this == UNRECOGNIZED) {
198         throw new java.lang.IllegalArgumentException(
199             "Can't get the number of an unknown enum value.");
200       }
201       return value;
202     }
203 
204     /**
205      * @param value The numeric wire value of the corresponding enum entry.
206      * @return The enum associated with the given numeric wire value.
207      * @deprecated Use {@link #forNumber(int)} instead.
208      */
209     @java.lang.Deprecated
valueOf(int value)210     public static Preemptibility valueOf(int value) {
211       return forNumber(value);
212     }
213 
214     /**
215      * @param value The numeric wire value of the corresponding enum entry.
216      * @return The enum associated with the given numeric wire value.
217      */
forNumber(int value)218     public static Preemptibility forNumber(int value) {
219       switch (value) {
220         case 0:
221           return PREEMPTIBILITY_UNSPECIFIED;
222         case 1:
223           return NON_PREEMPTIBLE;
224         case 2:
225           return PREEMPTIBLE;
226         case 3:
227           return SPOT;
228         default:
229           return null;
230       }
231     }
232 
internalGetValueMap()233     public static com.google.protobuf.Internal.EnumLiteMap<Preemptibility> internalGetValueMap() {
234       return internalValueMap;
235     }
236 
237     private static final com.google.protobuf.Internal.EnumLiteMap<Preemptibility> internalValueMap =
238         new com.google.protobuf.Internal.EnumLiteMap<Preemptibility>() {
239           public Preemptibility findValueByNumber(int number) {
240             return Preemptibility.forNumber(number);
241           }
242         };
243 
getValueDescriptor()244     public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() {
245       if (this == UNRECOGNIZED) {
246         throw new java.lang.IllegalStateException(
247             "Can't get the descriptor of an unrecognized enum value.");
248       }
249       return getDescriptor().getValues().get(ordinal());
250     }
251 
getDescriptorForType()252     public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() {
253       return getDescriptor();
254     }
255 
getDescriptor()256     public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() {
257       return com.google.cloud.dataproc.v1.InstanceGroupConfig.getDescriptor().getEnumTypes().get(0);
258     }
259 
260     private static final Preemptibility[] VALUES = values();
261 
valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc)262     public static Preemptibility valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
263       if (desc.getType() != getDescriptor()) {
264         throw new java.lang.IllegalArgumentException("EnumValueDescriptor is not for this type.");
265       }
266       if (desc.getIndex() == -1) {
267         return UNRECOGNIZED;
268       }
269       return VALUES[desc.getIndex()];
270     }
271 
272     private final int value;
273 
Preemptibility(int value)274     private Preemptibility(int value) {
275       this.value = value;
276     }
277 
278     // @@protoc_insertion_point(enum_scope:google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility)
279   }
280 
281   public static final int NUM_INSTANCES_FIELD_NUMBER = 1;
282   private int numInstances_ = 0;
283   /**
284    *
285    *
286    * <pre>
287    * Optional. The number of VM instances in the instance group.
288    * For [HA
289    * cluster](/dataproc/docs/concepts/configuring-clusters/high-availability)
290    * [master_config](#FIELDS.master_config) groups, **must be set to 3**.
291    * For standard cluster [master_config](#FIELDS.master_config) groups,
292    * **must be set to 1**.
293    * </pre>
294    *
295    * <code>int32 num_instances = 1 [(.google.api.field_behavior) = OPTIONAL];</code>
296    *
297    * @return The numInstances.
298    */
299   @java.lang.Override
getNumInstances()300   public int getNumInstances() {
301     return numInstances_;
302   }
303 
304   public static final int INSTANCE_NAMES_FIELD_NUMBER = 2;
305 
306   @SuppressWarnings("serial")
307   private com.google.protobuf.LazyStringList instanceNames_;
308   /**
309    *
310    *
311    * <pre>
312    * Output only. The list of instance names. Dataproc derives the names
313    * from `cluster_name`, `num_instances`, and the instance group.
314    * </pre>
315    *
316    * <code>repeated string instance_names = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
317    *
318    * @return A list containing the instanceNames.
319    */
getInstanceNamesList()320   public com.google.protobuf.ProtocolStringList getInstanceNamesList() {
321     return instanceNames_;
322   }
323   /**
324    *
325    *
326    * <pre>
327    * Output only. The list of instance names. Dataproc derives the names
328    * from `cluster_name`, `num_instances`, and the instance group.
329    * </pre>
330    *
331    * <code>repeated string instance_names = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
332    *
333    * @return The count of instanceNames.
334    */
getInstanceNamesCount()335   public int getInstanceNamesCount() {
336     return instanceNames_.size();
337   }
338   /**
339    *
340    *
341    * <pre>
342    * Output only. The list of instance names. Dataproc derives the names
343    * from `cluster_name`, `num_instances`, and the instance group.
344    * </pre>
345    *
346    * <code>repeated string instance_names = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
347    *
348    * @param index The index of the element to return.
349    * @return The instanceNames at the given index.
350    */
getInstanceNames(int index)351   public java.lang.String getInstanceNames(int index) {
352     return instanceNames_.get(index);
353   }
354   /**
355    *
356    *
357    * <pre>
358    * Output only. The list of instance names. Dataproc derives the names
359    * from `cluster_name`, `num_instances`, and the instance group.
360    * </pre>
361    *
362    * <code>repeated string instance_names = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
363    *
364    * @param index The index of the value to return.
365    * @return The bytes of the instanceNames at the given index.
366    */
getInstanceNamesBytes(int index)367   public com.google.protobuf.ByteString getInstanceNamesBytes(int index) {
368     return instanceNames_.getByteString(index);
369   }
370 
371   public static final int IMAGE_URI_FIELD_NUMBER = 3;
372 
373   @SuppressWarnings("serial")
374   private volatile java.lang.Object imageUri_ = "";
375   /**
376    *
377    *
378    * <pre>
379    * Optional. The Compute Engine image resource used for cluster instances.
380    * The URI can represent an image or image family.
381    * Image examples:
382    * * `https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/[image-id]`
383    * * `projects/[project_id]/global/images/[image-id]`
384    * * `image-id`
385    * Image family examples. Dataproc will use the most recent
386    * image from the family:
387    * * `https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/family/[custom-image-family-name]`
388    * * `projects/[project_id]/global/images/family/[custom-image-family-name]`
389    * If the URI is unspecified, it will be inferred from
390    * `SoftwareConfig.image_version` or the system default.
391    * </pre>
392    *
393    * <code>string image_uri = 3 [(.google.api.field_behavior) = OPTIONAL];</code>
394    *
395    * @return The imageUri.
396    */
397   @java.lang.Override
getImageUri()398   public java.lang.String getImageUri() {
399     java.lang.Object ref = imageUri_;
400     if (ref instanceof java.lang.String) {
401       return (java.lang.String) ref;
402     } else {
403       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
404       java.lang.String s = bs.toStringUtf8();
405       imageUri_ = s;
406       return s;
407     }
408   }
409   /**
410    *
411    *
412    * <pre>
413    * Optional. The Compute Engine image resource used for cluster instances.
414    * The URI can represent an image or image family.
415    * Image examples:
416    * * `https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/[image-id]`
417    * * `projects/[project_id]/global/images/[image-id]`
418    * * `image-id`
419    * Image family examples. Dataproc will use the most recent
420    * image from the family:
421    * * `https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/family/[custom-image-family-name]`
422    * * `projects/[project_id]/global/images/family/[custom-image-family-name]`
423    * If the URI is unspecified, it will be inferred from
424    * `SoftwareConfig.image_version` or the system default.
425    * </pre>
426    *
427    * <code>string image_uri = 3 [(.google.api.field_behavior) = OPTIONAL];</code>
428    *
429    * @return The bytes for imageUri.
430    */
431   @java.lang.Override
getImageUriBytes()432   public com.google.protobuf.ByteString getImageUriBytes() {
433     java.lang.Object ref = imageUri_;
434     if (ref instanceof java.lang.String) {
435       com.google.protobuf.ByteString b =
436           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
437       imageUri_ = b;
438       return b;
439     } else {
440       return (com.google.protobuf.ByteString) ref;
441     }
442   }
443 
444   public static final int MACHINE_TYPE_URI_FIELD_NUMBER = 4;
445 
446   @SuppressWarnings("serial")
447   private volatile java.lang.Object machineTypeUri_ = "";
448   /**
449    *
450    *
451    * <pre>
452    * Optional. The Compute Engine machine type used for cluster instances.
453    * A full URL, partial URI, or short name are valid. Examples:
454    * * `https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2`
455    * * `projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2`
456    * * `n1-standard-2`
457    * **Auto Zone Exception**: If you are using the Dataproc
458    * [Auto Zone
459    * Placement](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement)
460    * feature, you must use the short name of the machine type
461    * resource, for example, `n1-standard-2`.
462    * </pre>
463    *
464    * <code>string machine_type_uri = 4 [(.google.api.field_behavior) = OPTIONAL];</code>
465    *
466    * @return The machineTypeUri.
467    */
468   @java.lang.Override
getMachineTypeUri()469   public java.lang.String getMachineTypeUri() {
470     java.lang.Object ref = machineTypeUri_;
471     if (ref instanceof java.lang.String) {
472       return (java.lang.String) ref;
473     } else {
474       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
475       java.lang.String s = bs.toStringUtf8();
476       machineTypeUri_ = s;
477       return s;
478     }
479   }
480   /**
481    *
482    *
483    * <pre>
484    * Optional. The Compute Engine machine type used for cluster instances.
485    * A full URL, partial URI, or short name are valid. Examples:
486    * * `https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2`
487    * * `projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2`
488    * * `n1-standard-2`
489    * **Auto Zone Exception**: If you are using the Dataproc
490    * [Auto Zone
491    * Placement](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement)
492    * feature, you must use the short name of the machine type
493    * resource, for example, `n1-standard-2`.
494    * </pre>
495    *
496    * <code>string machine_type_uri = 4 [(.google.api.field_behavior) = OPTIONAL];</code>
497    *
498    * @return The bytes for machineTypeUri.
499    */
500   @java.lang.Override
getMachineTypeUriBytes()501   public com.google.protobuf.ByteString getMachineTypeUriBytes() {
502     java.lang.Object ref = machineTypeUri_;
503     if (ref instanceof java.lang.String) {
504       com.google.protobuf.ByteString b =
505           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
506       machineTypeUri_ = b;
507       return b;
508     } else {
509       return (com.google.protobuf.ByteString) ref;
510     }
511   }
512 
513   public static final int DISK_CONFIG_FIELD_NUMBER = 5;
514   private com.google.cloud.dataproc.v1.DiskConfig diskConfig_;
515   /**
516    *
517    *
518    * <pre>
519    * Optional. Disk option config settings.
520    * </pre>
521    *
522    * <code>
523    * .google.cloud.dataproc.v1.DiskConfig disk_config = 5 [(.google.api.field_behavior) = OPTIONAL];
524    * </code>
525    *
526    * @return Whether the diskConfig field is set.
527    */
528   @java.lang.Override
hasDiskConfig()529   public boolean hasDiskConfig() {
530     return diskConfig_ != null;
531   }
532   /**
533    *
534    *
535    * <pre>
536    * Optional. Disk option config settings.
537    * </pre>
538    *
539    * <code>
540    * .google.cloud.dataproc.v1.DiskConfig disk_config = 5 [(.google.api.field_behavior) = OPTIONAL];
541    * </code>
542    *
543    * @return The diskConfig.
544    */
545   @java.lang.Override
getDiskConfig()546   public com.google.cloud.dataproc.v1.DiskConfig getDiskConfig() {
547     return diskConfig_ == null
548         ? com.google.cloud.dataproc.v1.DiskConfig.getDefaultInstance()
549         : diskConfig_;
550   }
551   /**
552    *
553    *
554    * <pre>
555    * Optional. Disk option config settings.
556    * </pre>
557    *
558    * <code>
559    * .google.cloud.dataproc.v1.DiskConfig disk_config = 5 [(.google.api.field_behavior) = OPTIONAL];
560    * </code>
561    */
562   @java.lang.Override
getDiskConfigOrBuilder()563   public com.google.cloud.dataproc.v1.DiskConfigOrBuilder getDiskConfigOrBuilder() {
564     return diskConfig_ == null
565         ? com.google.cloud.dataproc.v1.DiskConfig.getDefaultInstance()
566         : diskConfig_;
567   }
568 
569   public static final int IS_PREEMPTIBLE_FIELD_NUMBER = 6;
570   private boolean isPreemptible_ = false;
571   /**
572    *
573    *
574    * <pre>
575    * Output only. Specifies that this instance group contains preemptible
576    * instances.
577    * </pre>
578    *
579    * <code>bool is_preemptible = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
580    *
581    * @return The isPreemptible.
582    */
583   @java.lang.Override
getIsPreemptible()584   public boolean getIsPreemptible() {
585     return isPreemptible_;
586   }
587 
588   public static final int PREEMPTIBILITY_FIELD_NUMBER = 10;
589   private int preemptibility_ = 0;
590   /**
591    *
592    *
593    * <pre>
594    * Optional. Specifies the preemptibility of the instance group.
595    * The default value for master and worker groups is
596    * `NON_PREEMPTIBLE`. This default cannot be changed.
597    * The default value for secondary instances is
598    * `PREEMPTIBLE`.
599    * </pre>
600    *
601    * <code>
602    * .google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility preemptibility = 10 [(.google.api.field_behavior) = OPTIONAL];
603    * </code>
604    *
605    * @return The enum numeric value on the wire for preemptibility.
606    */
607   @java.lang.Override
getPreemptibilityValue()608   public int getPreemptibilityValue() {
609     return preemptibility_;
610   }
611   /**
612    *
613    *
614    * <pre>
615    * Optional. Specifies the preemptibility of the instance group.
616    * The default value for master and worker groups is
617    * `NON_PREEMPTIBLE`. This default cannot be changed.
618    * The default value for secondary instances is
619    * `PREEMPTIBLE`.
620    * </pre>
621    *
622    * <code>
623    * .google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility preemptibility = 10 [(.google.api.field_behavior) = OPTIONAL];
624    * </code>
625    *
626    * @return The preemptibility.
627    */
628   @java.lang.Override
getPreemptibility()629   public com.google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility getPreemptibility() {
630     com.google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility result =
631         com.google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility.forNumber(preemptibility_);
632     return result == null
633         ? com.google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility.UNRECOGNIZED
634         : result;
635   }
636 
637   public static final int MANAGED_GROUP_CONFIG_FIELD_NUMBER = 7;
638   private com.google.cloud.dataproc.v1.ManagedGroupConfig managedGroupConfig_;
639   /**
640    *
641    *
642    * <pre>
643    * Output only. The config for Compute Engine Instance Group
644    * Manager that manages this group.
645    * This is only used for preemptible instance groups.
646    * </pre>
647    *
648    * <code>
649    * .google.cloud.dataproc.v1.ManagedGroupConfig managed_group_config = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
650    * </code>
651    *
652    * @return Whether the managedGroupConfig field is set.
653    */
654   @java.lang.Override
hasManagedGroupConfig()655   public boolean hasManagedGroupConfig() {
656     return managedGroupConfig_ != null;
657   }
658   /**
659    *
660    *
661    * <pre>
662    * Output only. The config for Compute Engine Instance Group
663    * Manager that manages this group.
664    * This is only used for preemptible instance groups.
665    * </pre>
666    *
667    * <code>
668    * .google.cloud.dataproc.v1.ManagedGroupConfig managed_group_config = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
669    * </code>
670    *
671    * @return The managedGroupConfig.
672    */
673   @java.lang.Override
getManagedGroupConfig()674   public com.google.cloud.dataproc.v1.ManagedGroupConfig getManagedGroupConfig() {
675     return managedGroupConfig_ == null
676         ? com.google.cloud.dataproc.v1.ManagedGroupConfig.getDefaultInstance()
677         : managedGroupConfig_;
678   }
679   /**
680    *
681    *
682    * <pre>
683    * Output only. The config for Compute Engine Instance Group
684    * Manager that manages this group.
685    * This is only used for preemptible instance groups.
686    * </pre>
687    *
688    * <code>
689    * .google.cloud.dataproc.v1.ManagedGroupConfig managed_group_config = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
690    * </code>
691    */
692   @java.lang.Override
getManagedGroupConfigOrBuilder()693   public com.google.cloud.dataproc.v1.ManagedGroupConfigOrBuilder getManagedGroupConfigOrBuilder() {
694     return managedGroupConfig_ == null
695         ? com.google.cloud.dataproc.v1.ManagedGroupConfig.getDefaultInstance()
696         : managedGroupConfig_;
697   }
698 
699   public static final int ACCELERATORS_FIELD_NUMBER = 8;
700 
701   @SuppressWarnings("serial")
702   private java.util.List<com.google.cloud.dataproc.v1.AcceleratorConfig> accelerators_;
703   /**
704    *
705    *
706    * <pre>
707    * Optional. The Compute Engine accelerator configuration for these
708    * instances.
709    * </pre>
710    *
711    * <code>
712    * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
713    * </code>
714    */
715   @java.lang.Override
getAcceleratorsList()716   public java.util.List<com.google.cloud.dataproc.v1.AcceleratorConfig> getAcceleratorsList() {
717     return accelerators_;
718   }
719   /**
720    *
721    *
722    * <pre>
723    * Optional. The Compute Engine accelerator configuration for these
724    * instances.
725    * </pre>
726    *
727    * <code>
728    * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
729    * </code>
730    */
731   @java.lang.Override
732   public java.util.List<? extends com.google.cloud.dataproc.v1.AcceleratorConfigOrBuilder>
getAcceleratorsOrBuilderList()733       getAcceleratorsOrBuilderList() {
734     return accelerators_;
735   }
736   /**
737    *
738    *
739    * <pre>
740    * Optional. The Compute Engine accelerator configuration for these
741    * instances.
742    * </pre>
743    *
744    * <code>
745    * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
746    * </code>
747    */
748   @java.lang.Override
getAcceleratorsCount()749   public int getAcceleratorsCount() {
750     return accelerators_.size();
751   }
752   /**
753    *
754    *
755    * <pre>
756    * Optional. The Compute Engine accelerator configuration for these
757    * instances.
758    * </pre>
759    *
760    * <code>
761    * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
762    * </code>
763    */
764   @java.lang.Override
getAccelerators(int index)765   public com.google.cloud.dataproc.v1.AcceleratorConfig getAccelerators(int index) {
766     return accelerators_.get(index);
767   }
768   /**
769    *
770    *
771    * <pre>
772    * Optional. The Compute Engine accelerator configuration for these
773    * instances.
774    * </pre>
775    *
776    * <code>
777    * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
778    * </code>
779    */
780   @java.lang.Override
getAcceleratorsOrBuilder( int index)781   public com.google.cloud.dataproc.v1.AcceleratorConfigOrBuilder getAcceleratorsOrBuilder(
782       int index) {
783     return accelerators_.get(index);
784   }
785 
786   public static final int MIN_CPU_PLATFORM_FIELD_NUMBER = 9;
787 
788   @SuppressWarnings("serial")
789   private volatile java.lang.Object minCpuPlatform_ = "";
790   /**
791    *
792    *
793    * <pre>
794    * Optional. Specifies the minimum cpu platform for the Instance Group.
795    * See [Dataproc -&gt; Minimum CPU
796    * Platform](https://cloud.google.com/dataproc/docs/concepts/compute/dataproc-min-cpu).
797    * </pre>
798    *
799    * <code>string min_cpu_platform = 9 [(.google.api.field_behavior) = OPTIONAL];</code>
800    *
801    * @return The minCpuPlatform.
802    */
803   @java.lang.Override
getMinCpuPlatform()804   public java.lang.String getMinCpuPlatform() {
805     java.lang.Object ref = minCpuPlatform_;
806     if (ref instanceof java.lang.String) {
807       return (java.lang.String) ref;
808     } else {
809       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
810       java.lang.String s = bs.toStringUtf8();
811       minCpuPlatform_ = s;
812       return s;
813     }
814   }
815   /**
816    *
817    *
818    * <pre>
819    * Optional. Specifies the minimum cpu platform for the Instance Group.
820    * See [Dataproc -&gt; Minimum CPU
821    * Platform](https://cloud.google.com/dataproc/docs/concepts/compute/dataproc-min-cpu).
822    * </pre>
823    *
824    * <code>string min_cpu_platform = 9 [(.google.api.field_behavior) = OPTIONAL];</code>
825    *
826    * @return The bytes for minCpuPlatform.
827    */
828   @java.lang.Override
getMinCpuPlatformBytes()829   public com.google.protobuf.ByteString getMinCpuPlatformBytes() {
830     java.lang.Object ref = minCpuPlatform_;
831     if (ref instanceof java.lang.String) {
832       com.google.protobuf.ByteString b =
833           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
834       minCpuPlatform_ = b;
835       return b;
836     } else {
837       return (com.google.protobuf.ByteString) ref;
838     }
839   }
840 
841   private byte memoizedIsInitialized = -1;
842 
843   @java.lang.Override
isInitialized()844   public final boolean isInitialized() {
845     byte isInitialized = memoizedIsInitialized;
846     if (isInitialized == 1) return true;
847     if (isInitialized == 0) return false;
848 
849     memoizedIsInitialized = 1;
850     return true;
851   }
852 
853   @java.lang.Override
writeTo(com.google.protobuf.CodedOutputStream output)854   public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
855     if (numInstances_ != 0) {
856       output.writeInt32(1, numInstances_);
857     }
858     for (int i = 0; i < instanceNames_.size(); i++) {
859       com.google.protobuf.GeneratedMessageV3.writeString(output, 2, instanceNames_.getRaw(i));
860     }
861     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(imageUri_)) {
862       com.google.protobuf.GeneratedMessageV3.writeString(output, 3, imageUri_);
863     }
864     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(machineTypeUri_)) {
865       com.google.protobuf.GeneratedMessageV3.writeString(output, 4, machineTypeUri_);
866     }
867     if (diskConfig_ != null) {
868       output.writeMessage(5, getDiskConfig());
869     }
870     if (isPreemptible_ != false) {
871       output.writeBool(6, isPreemptible_);
872     }
873     if (managedGroupConfig_ != null) {
874       output.writeMessage(7, getManagedGroupConfig());
875     }
876     for (int i = 0; i < accelerators_.size(); i++) {
877       output.writeMessage(8, accelerators_.get(i));
878     }
879     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(minCpuPlatform_)) {
880       com.google.protobuf.GeneratedMessageV3.writeString(output, 9, minCpuPlatform_);
881     }
882     if (preemptibility_
883         != com.google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility
884             .PREEMPTIBILITY_UNSPECIFIED
885             .getNumber()) {
886       output.writeEnum(10, preemptibility_);
887     }
888     getUnknownFields().writeTo(output);
889   }
890 
891   @java.lang.Override
getSerializedSize()892   public int getSerializedSize() {
893     int size = memoizedSize;
894     if (size != -1) return size;
895 
896     size = 0;
897     if (numInstances_ != 0) {
898       size += com.google.protobuf.CodedOutputStream.computeInt32Size(1, numInstances_);
899     }
900     {
901       int dataSize = 0;
902       for (int i = 0; i < instanceNames_.size(); i++) {
903         dataSize += computeStringSizeNoTag(instanceNames_.getRaw(i));
904       }
905       size += dataSize;
906       size += 1 * getInstanceNamesList().size();
907     }
908     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(imageUri_)) {
909       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, imageUri_);
910     }
911     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(machineTypeUri_)) {
912       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, machineTypeUri_);
913     }
914     if (diskConfig_ != null) {
915       size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, getDiskConfig());
916     }
917     if (isPreemptible_ != false) {
918       size += com.google.protobuf.CodedOutputStream.computeBoolSize(6, isPreemptible_);
919     }
920     if (managedGroupConfig_ != null) {
921       size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getManagedGroupConfig());
922     }
923     for (int i = 0; i < accelerators_.size(); i++) {
924       size += com.google.protobuf.CodedOutputStream.computeMessageSize(8, accelerators_.get(i));
925     }
926     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(minCpuPlatform_)) {
927       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(9, minCpuPlatform_);
928     }
929     if (preemptibility_
930         != com.google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility
931             .PREEMPTIBILITY_UNSPECIFIED
932             .getNumber()) {
933       size += com.google.protobuf.CodedOutputStream.computeEnumSize(10, preemptibility_);
934     }
935     size += getUnknownFields().getSerializedSize();
936     memoizedSize = size;
937     return size;
938   }
939 
940   @java.lang.Override
equals(final java.lang.Object obj)941   public boolean equals(final java.lang.Object obj) {
942     if (obj == this) {
943       return true;
944     }
945     if (!(obj instanceof com.google.cloud.dataproc.v1.InstanceGroupConfig)) {
946       return super.equals(obj);
947     }
948     com.google.cloud.dataproc.v1.InstanceGroupConfig other =
949         (com.google.cloud.dataproc.v1.InstanceGroupConfig) obj;
950 
951     if (getNumInstances() != other.getNumInstances()) return false;
952     if (!getInstanceNamesList().equals(other.getInstanceNamesList())) return false;
953     if (!getImageUri().equals(other.getImageUri())) return false;
954     if (!getMachineTypeUri().equals(other.getMachineTypeUri())) return false;
955     if (hasDiskConfig() != other.hasDiskConfig()) return false;
956     if (hasDiskConfig()) {
957       if (!getDiskConfig().equals(other.getDiskConfig())) return false;
958     }
959     if (getIsPreemptible() != other.getIsPreemptible()) return false;
960     if (preemptibility_ != other.preemptibility_) return false;
961     if (hasManagedGroupConfig() != other.hasManagedGroupConfig()) return false;
962     if (hasManagedGroupConfig()) {
963       if (!getManagedGroupConfig().equals(other.getManagedGroupConfig())) return false;
964     }
965     if (!getAcceleratorsList().equals(other.getAcceleratorsList())) return false;
966     if (!getMinCpuPlatform().equals(other.getMinCpuPlatform())) return false;
967     if (!getUnknownFields().equals(other.getUnknownFields())) return false;
968     return true;
969   }
970 
971   @java.lang.Override
hashCode()972   public int hashCode() {
973     if (memoizedHashCode != 0) {
974       return memoizedHashCode;
975     }
976     int hash = 41;
977     hash = (19 * hash) + getDescriptor().hashCode();
978     hash = (37 * hash) + NUM_INSTANCES_FIELD_NUMBER;
979     hash = (53 * hash) + getNumInstances();
980     if (getInstanceNamesCount() > 0) {
981       hash = (37 * hash) + INSTANCE_NAMES_FIELD_NUMBER;
982       hash = (53 * hash) + getInstanceNamesList().hashCode();
983     }
984     hash = (37 * hash) + IMAGE_URI_FIELD_NUMBER;
985     hash = (53 * hash) + getImageUri().hashCode();
986     hash = (37 * hash) + MACHINE_TYPE_URI_FIELD_NUMBER;
987     hash = (53 * hash) + getMachineTypeUri().hashCode();
988     if (hasDiskConfig()) {
989       hash = (37 * hash) + DISK_CONFIG_FIELD_NUMBER;
990       hash = (53 * hash) + getDiskConfig().hashCode();
991     }
992     hash = (37 * hash) + IS_PREEMPTIBLE_FIELD_NUMBER;
993     hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getIsPreemptible());
994     hash = (37 * hash) + PREEMPTIBILITY_FIELD_NUMBER;
995     hash = (53 * hash) + preemptibility_;
996     if (hasManagedGroupConfig()) {
997       hash = (37 * hash) + MANAGED_GROUP_CONFIG_FIELD_NUMBER;
998       hash = (53 * hash) + getManagedGroupConfig().hashCode();
999     }
1000     if (getAcceleratorsCount() > 0) {
1001       hash = (37 * hash) + ACCELERATORS_FIELD_NUMBER;
1002       hash = (53 * hash) + getAcceleratorsList().hashCode();
1003     }
1004     hash = (37 * hash) + MIN_CPU_PLATFORM_FIELD_NUMBER;
1005     hash = (53 * hash) + getMinCpuPlatform().hashCode();
1006     hash = (29 * hash) + getUnknownFields().hashCode();
1007     memoizedHashCode = hash;
1008     return hash;
1009   }
1010 
parseFrom(java.nio.ByteBuffer data)1011   public static com.google.cloud.dataproc.v1.InstanceGroupConfig parseFrom(java.nio.ByteBuffer data)
1012       throws com.google.protobuf.InvalidProtocolBufferException {
1013     return PARSER.parseFrom(data);
1014   }
1015 
parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1016   public static com.google.cloud.dataproc.v1.InstanceGroupConfig parseFrom(
1017       java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1018       throws com.google.protobuf.InvalidProtocolBufferException {
1019     return PARSER.parseFrom(data, extensionRegistry);
1020   }
1021 
parseFrom( com.google.protobuf.ByteString data)1022   public static com.google.cloud.dataproc.v1.InstanceGroupConfig parseFrom(
1023       com.google.protobuf.ByteString data)
1024       throws com.google.protobuf.InvalidProtocolBufferException {
1025     return PARSER.parseFrom(data);
1026   }
1027 
parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1028   public static com.google.cloud.dataproc.v1.InstanceGroupConfig parseFrom(
1029       com.google.protobuf.ByteString data,
1030       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1031       throws com.google.protobuf.InvalidProtocolBufferException {
1032     return PARSER.parseFrom(data, extensionRegistry);
1033   }
1034 
parseFrom(byte[] data)1035   public static com.google.cloud.dataproc.v1.InstanceGroupConfig parseFrom(byte[] data)
1036       throws com.google.protobuf.InvalidProtocolBufferException {
1037     return PARSER.parseFrom(data);
1038   }
1039 
parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1040   public static com.google.cloud.dataproc.v1.InstanceGroupConfig parseFrom(
1041       byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1042       throws com.google.protobuf.InvalidProtocolBufferException {
1043     return PARSER.parseFrom(data, extensionRegistry);
1044   }
1045 
parseFrom( java.io.InputStream input)1046   public static com.google.cloud.dataproc.v1.InstanceGroupConfig parseFrom(
1047       java.io.InputStream input) throws java.io.IOException {
1048     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
1049   }
1050 
parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1051   public static com.google.cloud.dataproc.v1.InstanceGroupConfig parseFrom(
1052       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1053       throws java.io.IOException {
1054     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
1055         PARSER, input, extensionRegistry);
1056   }
1057 
parseDelimitedFrom( java.io.InputStream input)1058   public static com.google.cloud.dataproc.v1.InstanceGroupConfig parseDelimitedFrom(
1059       java.io.InputStream input) throws java.io.IOException {
1060     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
1061   }
1062 
parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1063   public static com.google.cloud.dataproc.v1.InstanceGroupConfig parseDelimitedFrom(
1064       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1065       throws java.io.IOException {
1066     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(
1067         PARSER, input, extensionRegistry);
1068   }
1069 
parseFrom( com.google.protobuf.CodedInputStream input)1070   public static com.google.cloud.dataproc.v1.InstanceGroupConfig parseFrom(
1071       com.google.protobuf.CodedInputStream input) throws java.io.IOException {
1072     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
1073   }
1074 
parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1075   public static com.google.cloud.dataproc.v1.InstanceGroupConfig parseFrom(
1076       com.google.protobuf.CodedInputStream input,
1077       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1078       throws java.io.IOException {
1079     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
1080         PARSER, input, extensionRegistry);
1081   }
1082 
1083   @java.lang.Override
newBuilderForType()1084   public Builder newBuilderForType() {
1085     return newBuilder();
1086   }
1087 
newBuilder()1088   public static Builder newBuilder() {
1089     return DEFAULT_INSTANCE.toBuilder();
1090   }
1091 
newBuilder(com.google.cloud.dataproc.v1.InstanceGroupConfig prototype)1092   public static Builder newBuilder(com.google.cloud.dataproc.v1.InstanceGroupConfig prototype) {
1093     return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
1094   }
1095 
1096   @java.lang.Override
toBuilder()1097   public Builder toBuilder() {
1098     return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
1099   }
1100 
1101   @java.lang.Override
newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)1102   protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
1103     Builder builder = new Builder(parent);
1104     return builder;
1105   }
1106   /**
1107    *
1108    *
1109    * <pre>
1110    * The config settings for Compute Engine resources in
1111    * an instance group, such as a master or worker group.
1112    * </pre>
1113    *
1114    * Protobuf type {@code google.cloud.dataproc.v1.InstanceGroupConfig}
1115    */
1116   public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder>
1117       implements
1118       // @@protoc_insertion_point(builder_implements:google.cloud.dataproc.v1.InstanceGroupConfig)
1119       com.google.cloud.dataproc.v1.InstanceGroupConfigOrBuilder {
getDescriptor()1120     public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
1121       return com.google.cloud.dataproc.v1.ClustersProto
1122           .internal_static_google_cloud_dataproc_v1_InstanceGroupConfig_descriptor;
1123     }
1124 
1125     @java.lang.Override
1126     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()1127         internalGetFieldAccessorTable() {
1128       return com.google.cloud.dataproc.v1.ClustersProto
1129           .internal_static_google_cloud_dataproc_v1_InstanceGroupConfig_fieldAccessorTable
1130           .ensureFieldAccessorsInitialized(
1131               com.google.cloud.dataproc.v1.InstanceGroupConfig.class,
1132               com.google.cloud.dataproc.v1.InstanceGroupConfig.Builder.class);
1133     }
1134 
1135     // Construct using com.google.cloud.dataproc.v1.InstanceGroupConfig.newBuilder()
Builder()1136     private Builder() {}
1137 
Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)1138     private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
1139       super(parent);
1140     }
1141 
1142     @java.lang.Override
clear()1143     public Builder clear() {
1144       super.clear();
1145       bitField0_ = 0;
1146       numInstances_ = 0;
1147       instanceNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
1148       bitField0_ = (bitField0_ & ~0x00000002);
1149       imageUri_ = "";
1150       machineTypeUri_ = "";
1151       diskConfig_ = null;
1152       if (diskConfigBuilder_ != null) {
1153         diskConfigBuilder_.dispose();
1154         diskConfigBuilder_ = null;
1155       }
1156       isPreemptible_ = false;
1157       preemptibility_ = 0;
1158       managedGroupConfig_ = null;
1159       if (managedGroupConfigBuilder_ != null) {
1160         managedGroupConfigBuilder_.dispose();
1161         managedGroupConfigBuilder_ = null;
1162       }
1163       if (acceleratorsBuilder_ == null) {
1164         accelerators_ = java.util.Collections.emptyList();
1165       } else {
1166         accelerators_ = null;
1167         acceleratorsBuilder_.clear();
1168       }
1169       bitField0_ = (bitField0_ & ~0x00000100);
1170       minCpuPlatform_ = "";
1171       return this;
1172     }
1173 
1174     @java.lang.Override
getDescriptorForType()1175     public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() {
1176       return com.google.cloud.dataproc.v1.ClustersProto
1177           .internal_static_google_cloud_dataproc_v1_InstanceGroupConfig_descriptor;
1178     }
1179 
1180     @java.lang.Override
getDefaultInstanceForType()1181     public com.google.cloud.dataproc.v1.InstanceGroupConfig getDefaultInstanceForType() {
1182       return com.google.cloud.dataproc.v1.InstanceGroupConfig.getDefaultInstance();
1183     }
1184 
1185     @java.lang.Override
build()1186     public com.google.cloud.dataproc.v1.InstanceGroupConfig build() {
1187       com.google.cloud.dataproc.v1.InstanceGroupConfig result = buildPartial();
1188       if (!result.isInitialized()) {
1189         throw newUninitializedMessageException(result);
1190       }
1191       return result;
1192     }
1193 
1194     @java.lang.Override
buildPartial()1195     public com.google.cloud.dataproc.v1.InstanceGroupConfig buildPartial() {
1196       com.google.cloud.dataproc.v1.InstanceGroupConfig result =
1197           new com.google.cloud.dataproc.v1.InstanceGroupConfig(this);
1198       buildPartialRepeatedFields(result);
1199       if (bitField0_ != 0) {
1200         buildPartial0(result);
1201       }
1202       onBuilt();
1203       return result;
1204     }
1205 
buildPartialRepeatedFields( com.google.cloud.dataproc.v1.InstanceGroupConfig result)1206     private void buildPartialRepeatedFields(
1207         com.google.cloud.dataproc.v1.InstanceGroupConfig result) {
1208       if (((bitField0_ & 0x00000002) != 0)) {
1209         instanceNames_ = instanceNames_.getUnmodifiableView();
1210         bitField0_ = (bitField0_ & ~0x00000002);
1211       }
1212       result.instanceNames_ = instanceNames_;
1213       if (acceleratorsBuilder_ == null) {
1214         if (((bitField0_ & 0x00000100) != 0)) {
1215           accelerators_ = java.util.Collections.unmodifiableList(accelerators_);
1216           bitField0_ = (bitField0_ & ~0x00000100);
1217         }
1218         result.accelerators_ = accelerators_;
1219       } else {
1220         result.accelerators_ = acceleratorsBuilder_.build();
1221       }
1222     }
1223 
buildPartial0(com.google.cloud.dataproc.v1.InstanceGroupConfig result)1224     private void buildPartial0(com.google.cloud.dataproc.v1.InstanceGroupConfig result) {
1225       int from_bitField0_ = bitField0_;
1226       if (((from_bitField0_ & 0x00000001) != 0)) {
1227         result.numInstances_ = numInstances_;
1228       }
1229       if (((from_bitField0_ & 0x00000004) != 0)) {
1230         result.imageUri_ = imageUri_;
1231       }
1232       if (((from_bitField0_ & 0x00000008) != 0)) {
1233         result.machineTypeUri_ = machineTypeUri_;
1234       }
1235       if (((from_bitField0_ & 0x00000010) != 0)) {
1236         result.diskConfig_ = diskConfigBuilder_ == null ? diskConfig_ : diskConfigBuilder_.build();
1237       }
1238       if (((from_bitField0_ & 0x00000020) != 0)) {
1239         result.isPreemptible_ = isPreemptible_;
1240       }
1241       if (((from_bitField0_ & 0x00000040) != 0)) {
1242         result.preemptibility_ = preemptibility_;
1243       }
1244       if (((from_bitField0_ & 0x00000080) != 0)) {
1245         result.managedGroupConfig_ =
1246             managedGroupConfigBuilder_ == null
1247                 ? managedGroupConfig_
1248                 : managedGroupConfigBuilder_.build();
1249       }
1250       if (((from_bitField0_ & 0x00000200) != 0)) {
1251         result.minCpuPlatform_ = minCpuPlatform_;
1252       }
1253     }
1254 
1255     @java.lang.Override
clone()1256     public Builder clone() {
1257       return super.clone();
1258     }
1259 
1260     @java.lang.Override
setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)1261     public Builder setField(
1262         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
1263       return super.setField(field, value);
1264     }
1265 
1266     @java.lang.Override
clearField(com.google.protobuf.Descriptors.FieldDescriptor field)1267     public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) {
1268       return super.clearField(field);
1269     }
1270 
1271     @java.lang.Override
clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)1272     public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) {
1273       return super.clearOneof(oneof);
1274     }
1275 
1276     @java.lang.Override
setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)1277     public Builder setRepeatedField(
1278         com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) {
1279       return super.setRepeatedField(field, index, value);
1280     }
1281 
1282     @java.lang.Override
addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)1283     public Builder addRepeatedField(
1284         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
1285       return super.addRepeatedField(field, value);
1286     }
1287 
1288     @java.lang.Override
mergeFrom(com.google.protobuf.Message other)1289     public Builder mergeFrom(com.google.protobuf.Message other) {
1290       if (other instanceof com.google.cloud.dataproc.v1.InstanceGroupConfig) {
1291         return mergeFrom((com.google.cloud.dataproc.v1.InstanceGroupConfig) other);
1292       } else {
1293         super.mergeFrom(other);
1294         return this;
1295       }
1296     }
1297 
mergeFrom(com.google.cloud.dataproc.v1.InstanceGroupConfig other)1298     public Builder mergeFrom(com.google.cloud.dataproc.v1.InstanceGroupConfig other) {
1299       if (other == com.google.cloud.dataproc.v1.InstanceGroupConfig.getDefaultInstance())
1300         return this;
1301       if (other.getNumInstances() != 0) {
1302         setNumInstances(other.getNumInstances());
1303       }
1304       if (!other.instanceNames_.isEmpty()) {
1305         if (instanceNames_.isEmpty()) {
1306           instanceNames_ = other.instanceNames_;
1307           bitField0_ = (bitField0_ & ~0x00000002);
1308         } else {
1309           ensureInstanceNamesIsMutable();
1310           instanceNames_.addAll(other.instanceNames_);
1311         }
1312         onChanged();
1313       }
1314       if (!other.getImageUri().isEmpty()) {
1315         imageUri_ = other.imageUri_;
1316         bitField0_ |= 0x00000004;
1317         onChanged();
1318       }
1319       if (!other.getMachineTypeUri().isEmpty()) {
1320         machineTypeUri_ = other.machineTypeUri_;
1321         bitField0_ |= 0x00000008;
1322         onChanged();
1323       }
1324       if (other.hasDiskConfig()) {
1325         mergeDiskConfig(other.getDiskConfig());
1326       }
1327       if (other.getIsPreemptible() != false) {
1328         setIsPreemptible(other.getIsPreemptible());
1329       }
1330       if (other.preemptibility_ != 0) {
1331         setPreemptibilityValue(other.getPreemptibilityValue());
1332       }
1333       if (other.hasManagedGroupConfig()) {
1334         mergeManagedGroupConfig(other.getManagedGroupConfig());
1335       }
1336       if (acceleratorsBuilder_ == null) {
1337         if (!other.accelerators_.isEmpty()) {
1338           if (accelerators_.isEmpty()) {
1339             accelerators_ = other.accelerators_;
1340             bitField0_ = (bitField0_ & ~0x00000100);
1341           } else {
1342             ensureAcceleratorsIsMutable();
1343             accelerators_.addAll(other.accelerators_);
1344           }
1345           onChanged();
1346         }
1347       } else {
1348         if (!other.accelerators_.isEmpty()) {
1349           if (acceleratorsBuilder_.isEmpty()) {
1350             acceleratorsBuilder_.dispose();
1351             acceleratorsBuilder_ = null;
1352             accelerators_ = other.accelerators_;
1353             bitField0_ = (bitField0_ & ~0x00000100);
1354             acceleratorsBuilder_ =
1355                 com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders
1356                     ? getAcceleratorsFieldBuilder()
1357                     : null;
1358           } else {
1359             acceleratorsBuilder_.addAllMessages(other.accelerators_);
1360           }
1361         }
1362       }
1363       if (!other.getMinCpuPlatform().isEmpty()) {
1364         minCpuPlatform_ = other.minCpuPlatform_;
1365         bitField0_ |= 0x00000200;
1366         onChanged();
1367       }
1368       this.mergeUnknownFields(other.getUnknownFields());
1369       onChanged();
1370       return this;
1371     }
1372 
1373     @java.lang.Override
isInitialized()1374     public final boolean isInitialized() {
1375       return true;
1376     }
1377 
1378     @java.lang.Override
mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1379     public Builder mergeFrom(
1380         com.google.protobuf.CodedInputStream input,
1381         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1382         throws java.io.IOException {
1383       if (extensionRegistry == null) {
1384         throw new java.lang.NullPointerException();
1385       }
1386       try {
1387         boolean done = false;
1388         while (!done) {
1389           int tag = input.readTag();
1390           switch (tag) {
1391             case 0:
1392               done = true;
1393               break;
1394             case 8:
1395               {
1396                 numInstances_ = input.readInt32();
1397                 bitField0_ |= 0x00000001;
1398                 break;
1399               } // case 8
1400             case 18:
1401               {
1402                 java.lang.String s = input.readStringRequireUtf8();
1403                 ensureInstanceNamesIsMutable();
1404                 instanceNames_.add(s);
1405                 break;
1406               } // case 18
1407             case 26:
1408               {
1409                 imageUri_ = input.readStringRequireUtf8();
1410                 bitField0_ |= 0x00000004;
1411                 break;
1412               } // case 26
1413             case 34:
1414               {
1415                 machineTypeUri_ = input.readStringRequireUtf8();
1416                 bitField0_ |= 0x00000008;
1417                 break;
1418               } // case 34
1419             case 42:
1420               {
1421                 input.readMessage(getDiskConfigFieldBuilder().getBuilder(), extensionRegistry);
1422                 bitField0_ |= 0x00000010;
1423                 break;
1424               } // case 42
1425             case 48:
1426               {
1427                 isPreemptible_ = input.readBool();
1428                 bitField0_ |= 0x00000020;
1429                 break;
1430               } // case 48
1431             case 58:
1432               {
1433                 input.readMessage(
1434                     getManagedGroupConfigFieldBuilder().getBuilder(), extensionRegistry);
1435                 bitField0_ |= 0x00000080;
1436                 break;
1437               } // case 58
1438             case 66:
1439               {
1440                 com.google.cloud.dataproc.v1.AcceleratorConfig m =
1441                     input.readMessage(
1442                         com.google.cloud.dataproc.v1.AcceleratorConfig.parser(), extensionRegistry);
1443                 if (acceleratorsBuilder_ == null) {
1444                   ensureAcceleratorsIsMutable();
1445                   accelerators_.add(m);
1446                 } else {
1447                   acceleratorsBuilder_.addMessage(m);
1448                 }
1449                 break;
1450               } // case 66
1451             case 74:
1452               {
1453                 minCpuPlatform_ = input.readStringRequireUtf8();
1454                 bitField0_ |= 0x00000200;
1455                 break;
1456               } // case 74
1457             case 80:
1458               {
1459                 preemptibility_ = input.readEnum();
1460                 bitField0_ |= 0x00000040;
1461                 break;
1462               } // case 80
1463             default:
1464               {
1465                 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
1466                   done = true; // was an endgroup tag
1467                 }
1468                 break;
1469               } // default:
1470           } // switch (tag)
1471         } // while (!done)
1472       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1473         throw e.unwrapIOException();
1474       } finally {
1475         onChanged();
1476       } // finally
1477       return this;
1478     }
1479 
1480     private int bitField0_;
1481 
1482     private int numInstances_;
1483     /**
1484      *
1485      *
1486      * <pre>
1487      * Optional. The number of VM instances in the instance group.
1488      * For [HA
1489      * cluster](/dataproc/docs/concepts/configuring-clusters/high-availability)
1490      * [master_config](#FIELDS.master_config) groups, **must be set to 3**.
1491      * For standard cluster [master_config](#FIELDS.master_config) groups,
1492      * **must be set to 1**.
1493      * </pre>
1494      *
1495      * <code>int32 num_instances = 1 [(.google.api.field_behavior) = OPTIONAL];</code>
1496      *
1497      * @return The numInstances.
1498      */
1499     @java.lang.Override
getNumInstances()1500     public int getNumInstances() {
1501       return numInstances_;
1502     }
1503     /**
1504      *
1505      *
1506      * <pre>
1507      * Optional. The number of VM instances in the instance group.
1508      * For [HA
1509      * cluster](/dataproc/docs/concepts/configuring-clusters/high-availability)
1510      * [master_config](#FIELDS.master_config) groups, **must be set to 3**.
1511      * For standard cluster [master_config](#FIELDS.master_config) groups,
1512      * **must be set to 1**.
1513      * </pre>
1514      *
1515      * <code>int32 num_instances = 1 [(.google.api.field_behavior) = OPTIONAL];</code>
1516      *
1517      * @param value The numInstances to set.
1518      * @return This builder for chaining.
1519      */
setNumInstances(int value)1520     public Builder setNumInstances(int value) {
1521 
1522       numInstances_ = value;
1523       bitField0_ |= 0x00000001;
1524       onChanged();
1525       return this;
1526     }
1527     /**
1528      *
1529      *
1530      * <pre>
1531      * Optional. The number of VM instances in the instance group.
1532      * For [HA
1533      * cluster](/dataproc/docs/concepts/configuring-clusters/high-availability)
1534      * [master_config](#FIELDS.master_config) groups, **must be set to 3**.
1535      * For standard cluster [master_config](#FIELDS.master_config) groups,
1536      * **must be set to 1**.
1537      * </pre>
1538      *
1539      * <code>int32 num_instances = 1 [(.google.api.field_behavior) = OPTIONAL];</code>
1540      *
1541      * @return This builder for chaining.
1542      */
clearNumInstances()1543     public Builder clearNumInstances() {
1544       bitField0_ = (bitField0_ & ~0x00000001);
1545       numInstances_ = 0;
1546       onChanged();
1547       return this;
1548     }
1549 
1550     private com.google.protobuf.LazyStringList instanceNames_ =
1551         com.google.protobuf.LazyStringArrayList.EMPTY;
1552 
ensureInstanceNamesIsMutable()1553     private void ensureInstanceNamesIsMutable() {
1554       if (!((bitField0_ & 0x00000002) != 0)) {
1555         instanceNames_ = new com.google.protobuf.LazyStringArrayList(instanceNames_);
1556         bitField0_ |= 0x00000002;
1557       }
1558     }
1559     /**
1560      *
1561      *
1562      * <pre>
1563      * Output only. The list of instance names. Dataproc derives the names
1564      * from `cluster_name`, `num_instances`, and the instance group.
1565      * </pre>
1566      *
1567      * <code>repeated string instance_names = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
1568      *
1569      * @return A list containing the instanceNames.
1570      */
getInstanceNamesList()1571     public com.google.protobuf.ProtocolStringList getInstanceNamesList() {
1572       return instanceNames_.getUnmodifiableView();
1573     }
1574     /**
1575      *
1576      *
1577      * <pre>
1578      * Output only. The list of instance names. Dataproc derives the names
1579      * from `cluster_name`, `num_instances`, and the instance group.
1580      * </pre>
1581      *
1582      * <code>repeated string instance_names = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
1583      *
1584      * @return The count of instanceNames.
1585      */
getInstanceNamesCount()1586     public int getInstanceNamesCount() {
1587       return instanceNames_.size();
1588     }
1589     /**
1590      *
1591      *
1592      * <pre>
1593      * Output only. The list of instance names. Dataproc derives the names
1594      * from `cluster_name`, `num_instances`, and the instance group.
1595      * </pre>
1596      *
1597      * <code>repeated string instance_names = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
1598      *
1599      * @param index The index of the element to return.
1600      * @return The instanceNames at the given index.
1601      */
getInstanceNames(int index)1602     public java.lang.String getInstanceNames(int index) {
1603       return instanceNames_.get(index);
1604     }
1605     /**
1606      *
1607      *
1608      * <pre>
1609      * Output only. The list of instance names. Dataproc derives the names
1610      * from `cluster_name`, `num_instances`, and the instance group.
1611      * </pre>
1612      *
1613      * <code>repeated string instance_names = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
1614      *
1615      * @param index The index of the value to return.
1616      * @return The bytes of the instanceNames at the given index.
1617      */
getInstanceNamesBytes(int index)1618     public com.google.protobuf.ByteString getInstanceNamesBytes(int index) {
1619       return instanceNames_.getByteString(index);
1620     }
1621     /**
1622      *
1623      *
1624      * <pre>
1625      * Output only. The list of instance names. Dataproc derives the names
1626      * from `cluster_name`, `num_instances`, and the instance group.
1627      * </pre>
1628      *
1629      * <code>repeated string instance_names = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
1630      *
1631      * @param index The index to set the value at.
1632      * @param value The instanceNames to set.
1633      * @return This builder for chaining.
1634      */
setInstanceNames(int index, java.lang.String value)1635     public Builder setInstanceNames(int index, java.lang.String value) {
1636       if (value == null) {
1637         throw new NullPointerException();
1638       }
1639       ensureInstanceNamesIsMutable();
1640       instanceNames_.set(index, value);
1641       onChanged();
1642       return this;
1643     }
1644     /**
1645      *
1646      *
1647      * <pre>
1648      * Output only. The list of instance names. Dataproc derives the names
1649      * from `cluster_name`, `num_instances`, and the instance group.
1650      * </pre>
1651      *
1652      * <code>repeated string instance_names = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
1653      *
1654      * @param value The instanceNames to add.
1655      * @return This builder for chaining.
1656      */
addInstanceNames(java.lang.String value)1657     public Builder addInstanceNames(java.lang.String value) {
1658       if (value == null) {
1659         throw new NullPointerException();
1660       }
1661       ensureInstanceNamesIsMutable();
1662       instanceNames_.add(value);
1663       onChanged();
1664       return this;
1665     }
1666     /**
1667      *
1668      *
1669      * <pre>
1670      * Output only. The list of instance names. Dataproc derives the names
1671      * from `cluster_name`, `num_instances`, and the instance group.
1672      * </pre>
1673      *
1674      * <code>repeated string instance_names = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
1675      *
1676      * @param values The instanceNames to add.
1677      * @return This builder for chaining.
1678      */
addAllInstanceNames(java.lang.Iterable<java.lang.String> values)1679     public Builder addAllInstanceNames(java.lang.Iterable<java.lang.String> values) {
1680       ensureInstanceNamesIsMutable();
1681       com.google.protobuf.AbstractMessageLite.Builder.addAll(values, instanceNames_);
1682       onChanged();
1683       return this;
1684     }
1685     /**
1686      *
1687      *
1688      * <pre>
1689      * Output only. The list of instance names. Dataproc derives the names
1690      * from `cluster_name`, `num_instances`, and the instance group.
1691      * </pre>
1692      *
1693      * <code>repeated string instance_names = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
1694      *
1695      * @return This builder for chaining.
1696      */
clearInstanceNames()1697     public Builder clearInstanceNames() {
1698       instanceNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
1699       bitField0_ = (bitField0_ & ~0x00000002);
1700       onChanged();
1701       return this;
1702     }
1703     /**
1704      *
1705      *
1706      * <pre>
1707      * Output only. The list of instance names. Dataproc derives the names
1708      * from `cluster_name`, `num_instances`, and the instance group.
1709      * </pre>
1710      *
1711      * <code>repeated string instance_names = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
1712      *
1713      * @param value The bytes of the instanceNames to add.
1714      * @return This builder for chaining.
1715      */
addInstanceNamesBytes(com.google.protobuf.ByteString value)1716     public Builder addInstanceNamesBytes(com.google.protobuf.ByteString value) {
1717       if (value == null) {
1718         throw new NullPointerException();
1719       }
1720       checkByteStringIsUtf8(value);
1721       ensureInstanceNamesIsMutable();
1722       instanceNames_.add(value);
1723       onChanged();
1724       return this;
1725     }
1726 
1727     private java.lang.Object imageUri_ = "";
1728     /**
1729      *
1730      *
1731      * <pre>
1732      * Optional. The Compute Engine image resource used for cluster instances.
1733      * The URI can represent an image or image family.
1734      * Image examples:
1735      * * `https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/[image-id]`
1736      * * `projects/[project_id]/global/images/[image-id]`
1737      * * `image-id`
1738      * Image family examples. Dataproc will use the most recent
1739      * image from the family:
1740      * * `https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/family/[custom-image-family-name]`
1741      * * `projects/[project_id]/global/images/family/[custom-image-family-name]`
1742      * If the URI is unspecified, it will be inferred from
1743      * `SoftwareConfig.image_version` or the system default.
1744      * </pre>
1745      *
1746      * <code>string image_uri = 3 [(.google.api.field_behavior) = OPTIONAL];</code>
1747      *
1748      * @return The imageUri.
1749      */
getImageUri()1750     public java.lang.String getImageUri() {
1751       java.lang.Object ref = imageUri_;
1752       if (!(ref instanceof java.lang.String)) {
1753         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1754         java.lang.String s = bs.toStringUtf8();
1755         imageUri_ = s;
1756         return s;
1757       } else {
1758         return (java.lang.String) ref;
1759       }
1760     }
1761     /**
1762      *
1763      *
1764      * <pre>
1765      * Optional. The Compute Engine image resource used for cluster instances.
1766      * The URI can represent an image or image family.
1767      * Image examples:
1768      * * `https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/[image-id]`
1769      * * `projects/[project_id]/global/images/[image-id]`
1770      * * `image-id`
1771      * Image family examples. Dataproc will use the most recent
1772      * image from the family:
1773      * * `https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/family/[custom-image-family-name]`
1774      * * `projects/[project_id]/global/images/family/[custom-image-family-name]`
1775      * If the URI is unspecified, it will be inferred from
1776      * `SoftwareConfig.image_version` or the system default.
1777      * </pre>
1778      *
1779      * <code>string image_uri = 3 [(.google.api.field_behavior) = OPTIONAL];</code>
1780      *
1781      * @return The bytes for imageUri.
1782      */
getImageUriBytes()1783     public com.google.protobuf.ByteString getImageUriBytes() {
1784       java.lang.Object ref = imageUri_;
1785       if (ref instanceof String) {
1786         com.google.protobuf.ByteString b =
1787             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1788         imageUri_ = b;
1789         return b;
1790       } else {
1791         return (com.google.protobuf.ByteString) ref;
1792       }
1793     }
1794     /**
1795      *
1796      *
1797      * <pre>
1798      * Optional. The Compute Engine image resource used for cluster instances.
1799      * The URI can represent an image or image family.
1800      * Image examples:
1801      * * `https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/[image-id]`
1802      * * `projects/[project_id]/global/images/[image-id]`
1803      * * `image-id`
1804      * Image family examples. Dataproc will use the most recent
1805      * image from the family:
1806      * * `https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/family/[custom-image-family-name]`
1807      * * `projects/[project_id]/global/images/family/[custom-image-family-name]`
1808      * If the URI is unspecified, it will be inferred from
1809      * `SoftwareConfig.image_version` or the system default.
1810      * </pre>
1811      *
1812      * <code>string image_uri = 3 [(.google.api.field_behavior) = OPTIONAL];</code>
1813      *
1814      * @param value The imageUri to set.
1815      * @return This builder for chaining.
1816      */
setImageUri(java.lang.String value)1817     public Builder setImageUri(java.lang.String value) {
1818       if (value == null) {
1819         throw new NullPointerException();
1820       }
1821       imageUri_ = value;
1822       bitField0_ |= 0x00000004;
1823       onChanged();
1824       return this;
1825     }
1826     /**
1827      *
1828      *
1829      * <pre>
1830      * Optional. The Compute Engine image resource used for cluster instances.
1831      * The URI can represent an image or image family.
1832      * Image examples:
1833      * * `https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/[image-id]`
1834      * * `projects/[project_id]/global/images/[image-id]`
1835      * * `image-id`
1836      * Image family examples. Dataproc will use the most recent
1837      * image from the family:
1838      * * `https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/family/[custom-image-family-name]`
1839      * * `projects/[project_id]/global/images/family/[custom-image-family-name]`
1840      * If the URI is unspecified, it will be inferred from
1841      * `SoftwareConfig.image_version` or the system default.
1842      * </pre>
1843      *
1844      * <code>string image_uri = 3 [(.google.api.field_behavior) = OPTIONAL];</code>
1845      *
1846      * @return This builder for chaining.
1847      */
clearImageUri()1848     public Builder clearImageUri() {
1849       imageUri_ = getDefaultInstance().getImageUri();
1850       bitField0_ = (bitField0_ & ~0x00000004);
1851       onChanged();
1852       return this;
1853     }
1854     /**
1855      *
1856      *
1857      * <pre>
1858      * Optional. The Compute Engine image resource used for cluster instances.
1859      * The URI can represent an image or image family.
1860      * Image examples:
1861      * * `https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/[image-id]`
1862      * * `projects/[project_id]/global/images/[image-id]`
1863      * * `image-id`
1864      * Image family examples. Dataproc will use the most recent
1865      * image from the family:
1866      * * `https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/family/[custom-image-family-name]`
1867      * * `projects/[project_id]/global/images/family/[custom-image-family-name]`
1868      * If the URI is unspecified, it will be inferred from
1869      * `SoftwareConfig.image_version` or the system default.
1870      * </pre>
1871      *
1872      * <code>string image_uri = 3 [(.google.api.field_behavior) = OPTIONAL];</code>
1873      *
1874      * @param value The bytes for imageUri to set.
1875      * @return This builder for chaining.
1876      */
setImageUriBytes(com.google.protobuf.ByteString value)1877     public Builder setImageUriBytes(com.google.protobuf.ByteString value) {
1878       if (value == null) {
1879         throw new NullPointerException();
1880       }
1881       checkByteStringIsUtf8(value);
1882       imageUri_ = value;
1883       bitField0_ |= 0x00000004;
1884       onChanged();
1885       return this;
1886     }
1887 
1888     private java.lang.Object machineTypeUri_ = "";
1889     /**
1890      *
1891      *
1892      * <pre>
1893      * Optional. The Compute Engine machine type used for cluster instances.
1894      * A full URL, partial URI, or short name are valid. Examples:
1895      * * `https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2`
1896      * * `projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2`
1897      * * `n1-standard-2`
1898      * **Auto Zone Exception**: If you are using the Dataproc
1899      * [Auto Zone
1900      * Placement](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement)
1901      * feature, you must use the short name of the machine type
1902      * resource, for example, `n1-standard-2`.
1903      * </pre>
1904      *
1905      * <code>string machine_type_uri = 4 [(.google.api.field_behavior) = OPTIONAL];</code>
1906      *
1907      * @return The machineTypeUri.
1908      */
getMachineTypeUri()1909     public java.lang.String getMachineTypeUri() {
1910       java.lang.Object ref = machineTypeUri_;
1911       if (!(ref instanceof java.lang.String)) {
1912         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1913         java.lang.String s = bs.toStringUtf8();
1914         machineTypeUri_ = s;
1915         return s;
1916       } else {
1917         return (java.lang.String) ref;
1918       }
1919     }
1920     /**
1921      *
1922      *
1923      * <pre>
1924      * Optional. The Compute Engine machine type used for cluster instances.
1925      * A full URL, partial URI, or short name are valid. Examples:
1926      * * `https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2`
1927      * * `projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2`
1928      * * `n1-standard-2`
1929      * **Auto Zone Exception**: If you are using the Dataproc
1930      * [Auto Zone
1931      * Placement](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement)
1932      * feature, you must use the short name of the machine type
1933      * resource, for example, `n1-standard-2`.
1934      * </pre>
1935      *
1936      * <code>string machine_type_uri = 4 [(.google.api.field_behavior) = OPTIONAL];</code>
1937      *
1938      * @return The bytes for machineTypeUri.
1939      */
getMachineTypeUriBytes()1940     public com.google.protobuf.ByteString getMachineTypeUriBytes() {
1941       java.lang.Object ref = machineTypeUri_;
1942       if (ref instanceof String) {
1943         com.google.protobuf.ByteString b =
1944             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1945         machineTypeUri_ = b;
1946         return b;
1947       } else {
1948         return (com.google.protobuf.ByteString) ref;
1949       }
1950     }
1951     /**
1952      *
1953      *
1954      * <pre>
1955      * Optional. The Compute Engine machine type used for cluster instances.
1956      * A full URL, partial URI, or short name are valid. Examples:
1957      * * `https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2`
1958      * * `projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2`
1959      * * `n1-standard-2`
1960      * **Auto Zone Exception**: If you are using the Dataproc
1961      * [Auto Zone
1962      * Placement](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement)
1963      * feature, you must use the short name of the machine type
1964      * resource, for example, `n1-standard-2`.
1965      * </pre>
1966      *
1967      * <code>string machine_type_uri = 4 [(.google.api.field_behavior) = OPTIONAL];</code>
1968      *
1969      * @param value The machineTypeUri to set.
1970      * @return This builder for chaining.
1971      */
setMachineTypeUri(java.lang.String value)1972     public Builder setMachineTypeUri(java.lang.String value) {
1973       if (value == null) {
1974         throw new NullPointerException();
1975       }
1976       machineTypeUri_ = value;
1977       bitField0_ |= 0x00000008;
1978       onChanged();
1979       return this;
1980     }
1981     /**
1982      *
1983      *
1984      * <pre>
1985      * Optional. The Compute Engine machine type used for cluster instances.
1986      * A full URL, partial URI, or short name are valid. Examples:
1987      * * `https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2`
1988      * * `projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2`
1989      * * `n1-standard-2`
1990      * **Auto Zone Exception**: If you are using the Dataproc
1991      * [Auto Zone
1992      * Placement](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement)
1993      * feature, you must use the short name of the machine type
1994      * resource, for example, `n1-standard-2`.
1995      * </pre>
1996      *
1997      * <code>string machine_type_uri = 4 [(.google.api.field_behavior) = OPTIONAL];</code>
1998      *
1999      * @return This builder for chaining.
2000      */
clearMachineTypeUri()2001     public Builder clearMachineTypeUri() {
2002       machineTypeUri_ = getDefaultInstance().getMachineTypeUri();
2003       bitField0_ = (bitField0_ & ~0x00000008);
2004       onChanged();
2005       return this;
2006     }
2007     /**
2008      *
2009      *
2010      * <pre>
2011      * Optional. The Compute Engine machine type used for cluster instances.
2012      * A full URL, partial URI, or short name are valid. Examples:
2013      * * `https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2`
2014      * * `projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2`
2015      * * `n1-standard-2`
2016      * **Auto Zone Exception**: If you are using the Dataproc
2017      * [Auto Zone
2018      * Placement](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement)
2019      * feature, you must use the short name of the machine type
2020      * resource, for example, `n1-standard-2`.
2021      * </pre>
2022      *
2023      * <code>string machine_type_uri = 4 [(.google.api.field_behavior) = OPTIONAL];</code>
2024      *
2025      * @param value The bytes for machineTypeUri to set.
2026      * @return This builder for chaining.
2027      */
setMachineTypeUriBytes(com.google.protobuf.ByteString value)2028     public Builder setMachineTypeUriBytes(com.google.protobuf.ByteString value) {
2029       if (value == null) {
2030         throw new NullPointerException();
2031       }
2032       checkByteStringIsUtf8(value);
2033       machineTypeUri_ = value;
2034       bitField0_ |= 0x00000008;
2035       onChanged();
2036       return this;
2037     }
2038 
2039     private com.google.cloud.dataproc.v1.DiskConfig diskConfig_;
2040     private com.google.protobuf.SingleFieldBuilderV3<
2041             com.google.cloud.dataproc.v1.DiskConfig,
2042             com.google.cloud.dataproc.v1.DiskConfig.Builder,
2043             com.google.cloud.dataproc.v1.DiskConfigOrBuilder>
2044         diskConfigBuilder_;
2045     /**
2046      *
2047      *
2048      * <pre>
2049      * Optional. Disk option config settings.
2050      * </pre>
2051      *
2052      * <code>
2053      * .google.cloud.dataproc.v1.DiskConfig disk_config = 5 [(.google.api.field_behavior) = OPTIONAL];
2054      * </code>
2055      *
2056      * @return Whether the diskConfig field is set.
2057      */
hasDiskConfig()2058     public boolean hasDiskConfig() {
2059       return ((bitField0_ & 0x00000010) != 0);
2060     }
2061     /**
2062      *
2063      *
2064      * <pre>
2065      * Optional. Disk option config settings.
2066      * </pre>
2067      *
2068      * <code>
2069      * .google.cloud.dataproc.v1.DiskConfig disk_config = 5 [(.google.api.field_behavior) = OPTIONAL];
2070      * </code>
2071      *
2072      * @return The diskConfig.
2073      */
getDiskConfig()2074     public com.google.cloud.dataproc.v1.DiskConfig getDiskConfig() {
2075       if (diskConfigBuilder_ == null) {
2076         return diskConfig_ == null
2077             ? com.google.cloud.dataproc.v1.DiskConfig.getDefaultInstance()
2078             : diskConfig_;
2079       } else {
2080         return diskConfigBuilder_.getMessage();
2081       }
2082     }
2083     /**
2084      *
2085      *
2086      * <pre>
2087      * Optional. Disk option config settings.
2088      * </pre>
2089      *
2090      * <code>
2091      * .google.cloud.dataproc.v1.DiskConfig disk_config = 5 [(.google.api.field_behavior) = OPTIONAL];
2092      * </code>
2093      */
setDiskConfig(com.google.cloud.dataproc.v1.DiskConfig value)2094     public Builder setDiskConfig(com.google.cloud.dataproc.v1.DiskConfig value) {
2095       if (diskConfigBuilder_ == null) {
2096         if (value == null) {
2097           throw new NullPointerException();
2098         }
2099         diskConfig_ = value;
2100       } else {
2101         diskConfigBuilder_.setMessage(value);
2102       }
2103       bitField0_ |= 0x00000010;
2104       onChanged();
2105       return this;
2106     }
2107     /**
2108      *
2109      *
2110      * <pre>
2111      * Optional. Disk option config settings.
2112      * </pre>
2113      *
2114      * <code>
2115      * .google.cloud.dataproc.v1.DiskConfig disk_config = 5 [(.google.api.field_behavior) = OPTIONAL];
2116      * </code>
2117      */
setDiskConfig(com.google.cloud.dataproc.v1.DiskConfig.Builder builderForValue)2118     public Builder setDiskConfig(com.google.cloud.dataproc.v1.DiskConfig.Builder builderForValue) {
2119       if (diskConfigBuilder_ == null) {
2120         diskConfig_ = builderForValue.build();
2121       } else {
2122         diskConfigBuilder_.setMessage(builderForValue.build());
2123       }
2124       bitField0_ |= 0x00000010;
2125       onChanged();
2126       return this;
2127     }
2128     /**
2129      *
2130      *
2131      * <pre>
2132      * Optional. Disk option config settings.
2133      * </pre>
2134      *
2135      * <code>
2136      * .google.cloud.dataproc.v1.DiskConfig disk_config = 5 [(.google.api.field_behavior) = OPTIONAL];
2137      * </code>
2138      */
mergeDiskConfig(com.google.cloud.dataproc.v1.DiskConfig value)2139     public Builder mergeDiskConfig(com.google.cloud.dataproc.v1.DiskConfig value) {
2140       if (diskConfigBuilder_ == null) {
2141         if (((bitField0_ & 0x00000010) != 0)
2142             && diskConfig_ != null
2143             && diskConfig_ != com.google.cloud.dataproc.v1.DiskConfig.getDefaultInstance()) {
2144           getDiskConfigBuilder().mergeFrom(value);
2145         } else {
2146           diskConfig_ = value;
2147         }
2148       } else {
2149         diskConfigBuilder_.mergeFrom(value);
2150       }
2151       bitField0_ |= 0x00000010;
2152       onChanged();
2153       return this;
2154     }
2155     /**
2156      *
2157      *
2158      * <pre>
2159      * Optional. Disk option config settings.
2160      * </pre>
2161      *
2162      * <code>
2163      * .google.cloud.dataproc.v1.DiskConfig disk_config = 5 [(.google.api.field_behavior) = OPTIONAL];
2164      * </code>
2165      */
clearDiskConfig()2166     public Builder clearDiskConfig() {
2167       bitField0_ = (bitField0_ & ~0x00000010);
2168       diskConfig_ = null;
2169       if (diskConfigBuilder_ != null) {
2170         diskConfigBuilder_.dispose();
2171         diskConfigBuilder_ = null;
2172       }
2173       onChanged();
2174       return this;
2175     }
2176     /**
2177      *
2178      *
2179      * <pre>
2180      * Optional. Disk option config settings.
2181      * </pre>
2182      *
2183      * <code>
2184      * .google.cloud.dataproc.v1.DiskConfig disk_config = 5 [(.google.api.field_behavior) = OPTIONAL];
2185      * </code>
2186      */
getDiskConfigBuilder()2187     public com.google.cloud.dataproc.v1.DiskConfig.Builder getDiskConfigBuilder() {
2188       bitField0_ |= 0x00000010;
2189       onChanged();
2190       return getDiskConfigFieldBuilder().getBuilder();
2191     }
2192     /**
2193      *
2194      *
2195      * <pre>
2196      * Optional. Disk option config settings.
2197      * </pre>
2198      *
2199      * <code>
2200      * .google.cloud.dataproc.v1.DiskConfig disk_config = 5 [(.google.api.field_behavior) = OPTIONAL];
2201      * </code>
2202      */
getDiskConfigOrBuilder()2203     public com.google.cloud.dataproc.v1.DiskConfigOrBuilder getDiskConfigOrBuilder() {
2204       if (diskConfigBuilder_ != null) {
2205         return diskConfigBuilder_.getMessageOrBuilder();
2206       } else {
2207         return diskConfig_ == null
2208             ? com.google.cloud.dataproc.v1.DiskConfig.getDefaultInstance()
2209             : diskConfig_;
2210       }
2211     }
2212     /**
2213      *
2214      *
2215      * <pre>
2216      * Optional. Disk option config settings.
2217      * </pre>
2218      *
2219      * <code>
2220      * .google.cloud.dataproc.v1.DiskConfig disk_config = 5 [(.google.api.field_behavior) = OPTIONAL];
2221      * </code>
2222      */
2223     private com.google.protobuf.SingleFieldBuilderV3<
2224             com.google.cloud.dataproc.v1.DiskConfig,
2225             com.google.cloud.dataproc.v1.DiskConfig.Builder,
2226             com.google.cloud.dataproc.v1.DiskConfigOrBuilder>
getDiskConfigFieldBuilder()2227         getDiskConfigFieldBuilder() {
2228       if (diskConfigBuilder_ == null) {
2229         diskConfigBuilder_ =
2230             new com.google.protobuf.SingleFieldBuilderV3<
2231                 com.google.cloud.dataproc.v1.DiskConfig,
2232                 com.google.cloud.dataproc.v1.DiskConfig.Builder,
2233                 com.google.cloud.dataproc.v1.DiskConfigOrBuilder>(
2234                 getDiskConfig(), getParentForChildren(), isClean());
2235         diskConfig_ = null;
2236       }
2237       return diskConfigBuilder_;
2238     }
2239 
2240     private boolean isPreemptible_;
2241     /**
2242      *
2243      *
2244      * <pre>
2245      * Output only. Specifies that this instance group contains preemptible
2246      * instances.
2247      * </pre>
2248      *
2249      * <code>bool is_preemptible = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
2250      *
2251      * @return The isPreemptible.
2252      */
2253     @java.lang.Override
getIsPreemptible()2254     public boolean getIsPreemptible() {
2255       return isPreemptible_;
2256     }
2257     /**
2258      *
2259      *
2260      * <pre>
2261      * Output only. Specifies that this instance group contains preemptible
2262      * instances.
2263      * </pre>
2264      *
2265      * <code>bool is_preemptible = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
2266      *
2267      * @param value The isPreemptible to set.
2268      * @return This builder for chaining.
2269      */
setIsPreemptible(boolean value)2270     public Builder setIsPreemptible(boolean value) {
2271 
2272       isPreemptible_ = value;
2273       bitField0_ |= 0x00000020;
2274       onChanged();
2275       return this;
2276     }
2277     /**
2278      *
2279      *
2280      * <pre>
2281      * Output only. Specifies that this instance group contains preemptible
2282      * instances.
2283      * </pre>
2284      *
2285      * <code>bool is_preemptible = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
2286      *
2287      * @return This builder for chaining.
2288      */
clearIsPreemptible()2289     public Builder clearIsPreemptible() {
2290       bitField0_ = (bitField0_ & ~0x00000020);
2291       isPreemptible_ = false;
2292       onChanged();
2293       return this;
2294     }
2295 
2296     private int preemptibility_ = 0;
2297     /**
2298      *
2299      *
2300      * <pre>
2301      * Optional. Specifies the preemptibility of the instance group.
2302      * The default value for master and worker groups is
2303      * `NON_PREEMPTIBLE`. This default cannot be changed.
2304      * The default value for secondary instances is
2305      * `PREEMPTIBLE`.
2306      * </pre>
2307      *
2308      * <code>
2309      * .google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility preemptibility = 10 [(.google.api.field_behavior) = OPTIONAL];
2310      * </code>
2311      *
2312      * @return The enum numeric value on the wire for preemptibility.
2313      */
2314     @java.lang.Override
getPreemptibilityValue()2315     public int getPreemptibilityValue() {
2316       return preemptibility_;
2317     }
2318     /**
2319      *
2320      *
2321      * <pre>
2322      * Optional. Specifies the preemptibility of the instance group.
2323      * The default value for master and worker groups is
2324      * `NON_PREEMPTIBLE`. This default cannot be changed.
2325      * The default value for secondary instances is
2326      * `PREEMPTIBLE`.
2327      * </pre>
2328      *
2329      * <code>
2330      * .google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility preemptibility = 10 [(.google.api.field_behavior) = OPTIONAL];
2331      * </code>
2332      *
2333      * @param value The enum numeric value on the wire for preemptibility to set.
2334      * @return This builder for chaining.
2335      */
setPreemptibilityValue(int value)2336     public Builder setPreemptibilityValue(int value) {
2337       preemptibility_ = value;
2338       bitField0_ |= 0x00000040;
2339       onChanged();
2340       return this;
2341     }
2342     /**
2343      *
2344      *
2345      * <pre>
2346      * Optional. Specifies the preemptibility of the instance group.
2347      * The default value for master and worker groups is
2348      * `NON_PREEMPTIBLE`. This default cannot be changed.
2349      * The default value for secondary instances is
2350      * `PREEMPTIBLE`.
2351      * </pre>
2352      *
2353      * <code>
2354      * .google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility preemptibility = 10 [(.google.api.field_behavior) = OPTIONAL];
2355      * </code>
2356      *
2357      * @return The preemptibility.
2358      */
2359     @java.lang.Override
getPreemptibility()2360     public com.google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility getPreemptibility() {
2361       com.google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility result =
2362           com.google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility.forNumber(
2363               preemptibility_);
2364       return result == null
2365           ? com.google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility.UNRECOGNIZED
2366           : result;
2367     }
2368     /**
2369      *
2370      *
2371      * <pre>
2372      * Optional. Specifies the preemptibility of the instance group.
2373      * The default value for master and worker groups is
2374      * `NON_PREEMPTIBLE`. This default cannot be changed.
2375      * The default value for secondary instances is
2376      * `PREEMPTIBLE`.
2377      * </pre>
2378      *
2379      * <code>
2380      * .google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility preemptibility = 10 [(.google.api.field_behavior) = OPTIONAL];
2381      * </code>
2382      *
2383      * @param value The preemptibility to set.
2384      * @return This builder for chaining.
2385      */
setPreemptibility( com.google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility value)2386     public Builder setPreemptibility(
2387         com.google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility value) {
2388       if (value == null) {
2389         throw new NullPointerException();
2390       }
2391       bitField0_ |= 0x00000040;
2392       preemptibility_ = value.getNumber();
2393       onChanged();
2394       return this;
2395     }
2396     /**
2397      *
2398      *
2399      * <pre>
2400      * Optional. Specifies the preemptibility of the instance group.
2401      * The default value for master and worker groups is
2402      * `NON_PREEMPTIBLE`. This default cannot be changed.
2403      * The default value for secondary instances is
2404      * `PREEMPTIBLE`.
2405      * </pre>
2406      *
2407      * <code>
2408      * .google.cloud.dataproc.v1.InstanceGroupConfig.Preemptibility preemptibility = 10 [(.google.api.field_behavior) = OPTIONAL];
2409      * </code>
2410      *
2411      * @return This builder for chaining.
2412      */
clearPreemptibility()2413     public Builder clearPreemptibility() {
2414       bitField0_ = (bitField0_ & ~0x00000040);
2415       preemptibility_ = 0;
2416       onChanged();
2417       return this;
2418     }
2419 
2420     private com.google.cloud.dataproc.v1.ManagedGroupConfig managedGroupConfig_;
2421     private com.google.protobuf.SingleFieldBuilderV3<
2422             com.google.cloud.dataproc.v1.ManagedGroupConfig,
2423             com.google.cloud.dataproc.v1.ManagedGroupConfig.Builder,
2424             com.google.cloud.dataproc.v1.ManagedGroupConfigOrBuilder>
2425         managedGroupConfigBuilder_;
2426     /**
2427      *
2428      *
2429      * <pre>
2430      * Output only. The config for Compute Engine Instance Group
2431      * Manager that manages this group.
2432      * This is only used for preemptible instance groups.
2433      * </pre>
2434      *
2435      * <code>
2436      * .google.cloud.dataproc.v1.ManagedGroupConfig managed_group_config = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
2437      * </code>
2438      *
2439      * @return Whether the managedGroupConfig field is set.
2440      */
hasManagedGroupConfig()2441     public boolean hasManagedGroupConfig() {
2442       return ((bitField0_ & 0x00000080) != 0);
2443     }
2444     /**
2445      *
2446      *
2447      * <pre>
2448      * Output only. The config for Compute Engine Instance Group
2449      * Manager that manages this group.
2450      * This is only used for preemptible instance groups.
2451      * </pre>
2452      *
2453      * <code>
2454      * .google.cloud.dataproc.v1.ManagedGroupConfig managed_group_config = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
2455      * </code>
2456      *
2457      * @return The managedGroupConfig.
2458      */
getManagedGroupConfig()2459     public com.google.cloud.dataproc.v1.ManagedGroupConfig getManagedGroupConfig() {
2460       if (managedGroupConfigBuilder_ == null) {
2461         return managedGroupConfig_ == null
2462             ? com.google.cloud.dataproc.v1.ManagedGroupConfig.getDefaultInstance()
2463             : managedGroupConfig_;
2464       } else {
2465         return managedGroupConfigBuilder_.getMessage();
2466       }
2467     }
2468     /**
2469      *
2470      *
2471      * <pre>
2472      * Output only. The config for Compute Engine Instance Group
2473      * Manager that manages this group.
2474      * This is only used for preemptible instance groups.
2475      * </pre>
2476      *
2477      * <code>
2478      * .google.cloud.dataproc.v1.ManagedGroupConfig managed_group_config = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
2479      * </code>
2480      */
setManagedGroupConfig(com.google.cloud.dataproc.v1.ManagedGroupConfig value)2481     public Builder setManagedGroupConfig(com.google.cloud.dataproc.v1.ManagedGroupConfig value) {
2482       if (managedGroupConfigBuilder_ == null) {
2483         if (value == null) {
2484           throw new NullPointerException();
2485         }
2486         managedGroupConfig_ = value;
2487       } else {
2488         managedGroupConfigBuilder_.setMessage(value);
2489       }
2490       bitField0_ |= 0x00000080;
2491       onChanged();
2492       return this;
2493     }
2494     /**
2495      *
2496      *
2497      * <pre>
2498      * Output only. The config for Compute Engine Instance Group
2499      * Manager that manages this group.
2500      * This is only used for preemptible instance groups.
2501      * </pre>
2502      *
2503      * <code>
2504      * .google.cloud.dataproc.v1.ManagedGroupConfig managed_group_config = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
2505      * </code>
2506      */
setManagedGroupConfig( com.google.cloud.dataproc.v1.ManagedGroupConfig.Builder builderForValue)2507     public Builder setManagedGroupConfig(
2508         com.google.cloud.dataproc.v1.ManagedGroupConfig.Builder builderForValue) {
2509       if (managedGroupConfigBuilder_ == null) {
2510         managedGroupConfig_ = builderForValue.build();
2511       } else {
2512         managedGroupConfigBuilder_.setMessage(builderForValue.build());
2513       }
2514       bitField0_ |= 0x00000080;
2515       onChanged();
2516       return this;
2517     }
2518     /**
2519      *
2520      *
2521      * <pre>
2522      * Output only. The config for Compute Engine Instance Group
2523      * Manager that manages this group.
2524      * This is only used for preemptible instance groups.
2525      * </pre>
2526      *
2527      * <code>
2528      * .google.cloud.dataproc.v1.ManagedGroupConfig managed_group_config = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
2529      * </code>
2530      */
mergeManagedGroupConfig(com.google.cloud.dataproc.v1.ManagedGroupConfig value)2531     public Builder mergeManagedGroupConfig(com.google.cloud.dataproc.v1.ManagedGroupConfig value) {
2532       if (managedGroupConfigBuilder_ == null) {
2533         if (((bitField0_ & 0x00000080) != 0)
2534             && managedGroupConfig_ != null
2535             && managedGroupConfig_
2536                 != com.google.cloud.dataproc.v1.ManagedGroupConfig.getDefaultInstance()) {
2537           getManagedGroupConfigBuilder().mergeFrom(value);
2538         } else {
2539           managedGroupConfig_ = value;
2540         }
2541       } else {
2542         managedGroupConfigBuilder_.mergeFrom(value);
2543       }
2544       bitField0_ |= 0x00000080;
2545       onChanged();
2546       return this;
2547     }
2548     /**
2549      *
2550      *
2551      * <pre>
2552      * Output only. The config for Compute Engine Instance Group
2553      * Manager that manages this group.
2554      * This is only used for preemptible instance groups.
2555      * </pre>
2556      *
2557      * <code>
2558      * .google.cloud.dataproc.v1.ManagedGroupConfig managed_group_config = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
2559      * </code>
2560      */
clearManagedGroupConfig()2561     public Builder clearManagedGroupConfig() {
2562       bitField0_ = (bitField0_ & ~0x00000080);
2563       managedGroupConfig_ = null;
2564       if (managedGroupConfigBuilder_ != null) {
2565         managedGroupConfigBuilder_.dispose();
2566         managedGroupConfigBuilder_ = null;
2567       }
2568       onChanged();
2569       return this;
2570     }
2571     /**
2572      *
2573      *
2574      * <pre>
2575      * Output only. The config for Compute Engine Instance Group
2576      * Manager that manages this group.
2577      * This is only used for preemptible instance groups.
2578      * </pre>
2579      *
2580      * <code>
2581      * .google.cloud.dataproc.v1.ManagedGroupConfig managed_group_config = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
2582      * </code>
2583      */
getManagedGroupConfigBuilder()2584     public com.google.cloud.dataproc.v1.ManagedGroupConfig.Builder getManagedGroupConfigBuilder() {
2585       bitField0_ |= 0x00000080;
2586       onChanged();
2587       return getManagedGroupConfigFieldBuilder().getBuilder();
2588     }
2589     /**
2590      *
2591      *
2592      * <pre>
2593      * Output only. The config for Compute Engine Instance Group
2594      * Manager that manages this group.
2595      * This is only used for preemptible instance groups.
2596      * </pre>
2597      *
2598      * <code>
2599      * .google.cloud.dataproc.v1.ManagedGroupConfig managed_group_config = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
2600      * </code>
2601      */
2602     public com.google.cloud.dataproc.v1.ManagedGroupConfigOrBuilder
getManagedGroupConfigOrBuilder()2603         getManagedGroupConfigOrBuilder() {
2604       if (managedGroupConfigBuilder_ != null) {
2605         return managedGroupConfigBuilder_.getMessageOrBuilder();
2606       } else {
2607         return managedGroupConfig_ == null
2608             ? com.google.cloud.dataproc.v1.ManagedGroupConfig.getDefaultInstance()
2609             : managedGroupConfig_;
2610       }
2611     }
2612     /**
2613      *
2614      *
2615      * <pre>
2616      * Output only. The config for Compute Engine Instance Group
2617      * Manager that manages this group.
2618      * This is only used for preemptible instance groups.
2619      * </pre>
2620      *
2621      * <code>
2622      * .google.cloud.dataproc.v1.ManagedGroupConfig managed_group_config = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
2623      * </code>
2624      */
2625     private com.google.protobuf.SingleFieldBuilderV3<
2626             com.google.cloud.dataproc.v1.ManagedGroupConfig,
2627             com.google.cloud.dataproc.v1.ManagedGroupConfig.Builder,
2628             com.google.cloud.dataproc.v1.ManagedGroupConfigOrBuilder>
getManagedGroupConfigFieldBuilder()2629         getManagedGroupConfigFieldBuilder() {
2630       if (managedGroupConfigBuilder_ == null) {
2631         managedGroupConfigBuilder_ =
2632             new com.google.protobuf.SingleFieldBuilderV3<
2633                 com.google.cloud.dataproc.v1.ManagedGroupConfig,
2634                 com.google.cloud.dataproc.v1.ManagedGroupConfig.Builder,
2635                 com.google.cloud.dataproc.v1.ManagedGroupConfigOrBuilder>(
2636                 getManagedGroupConfig(), getParentForChildren(), isClean());
2637         managedGroupConfig_ = null;
2638       }
2639       return managedGroupConfigBuilder_;
2640     }
2641 
2642     private java.util.List<com.google.cloud.dataproc.v1.AcceleratorConfig> accelerators_ =
2643         java.util.Collections.emptyList();
2644 
ensureAcceleratorsIsMutable()2645     private void ensureAcceleratorsIsMutable() {
2646       if (!((bitField0_ & 0x00000100) != 0)) {
2647         accelerators_ =
2648             new java.util.ArrayList<com.google.cloud.dataproc.v1.AcceleratorConfig>(accelerators_);
2649         bitField0_ |= 0x00000100;
2650       }
2651     }
2652 
2653     private com.google.protobuf.RepeatedFieldBuilderV3<
2654             com.google.cloud.dataproc.v1.AcceleratorConfig,
2655             com.google.cloud.dataproc.v1.AcceleratorConfig.Builder,
2656             com.google.cloud.dataproc.v1.AcceleratorConfigOrBuilder>
2657         acceleratorsBuilder_;
2658 
2659     /**
2660      *
2661      *
2662      * <pre>
2663      * Optional. The Compute Engine accelerator configuration for these
2664      * instances.
2665      * </pre>
2666      *
2667      * <code>
2668      * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
2669      * </code>
2670      */
getAcceleratorsList()2671     public java.util.List<com.google.cloud.dataproc.v1.AcceleratorConfig> getAcceleratorsList() {
2672       if (acceleratorsBuilder_ == null) {
2673         return java.util.Collections.unmodifiableList(accelerators_);
2674       } else {
2675         return acceleratorsBuilder_.getMessageList();
2676       }
2677     }
2678     /**
2679      *
2680      *
2681      * <pre>
2682      * Optional. The Compute Engine accelerator configuration for these
2683      * instances.
2684      * </pre>
2685      *
2686      * <code>
2687      * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
2688      * </code>
2689      */
getAcceleratorsCount()2690     public int getAcceleratorsCount() {
2691       if (acceleratorsBuilder_ == null) {
2692         return accelerators_.size();
2693       } else {
2694         return acceleratorsBuilder_.getCount();
2695       }
2696     }
2697     /**
2698      *
2699      *
2700      * <pre>
2701      * Optional. The Compute Engine accelerator configuration for these
2702      * instances.
2703      * </pre>
2704      *
2705      * <code>
2706      * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
2707      * </code>
2708      */
getAccelerators(int index)2709     public com.google.cloud.dataproc.v1.AcceleratorConfig getAccelerators(int index) {
2710       if (acceleratorsBuilder_ == null) {
2711         return accelerators_.get(index);
2712       } else {
2713         return acceleratorsBuilder_.getMessage(index);
2714       }
2715     }
2716     /**
2717      *
2718      *
2719      * <pre>
2720      * Optional. The Compute Engine accelerator configuration for these
2721      * instances.
2722      * </pre>
2723      *
2724      * <code>
2725      * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
2726      * </code>
2727      */
setAccelerators( int index, com.google.cloud.dataproc.v1.AcceleratorConfig value)2728     public Builder setAccelerators(
2729         int index, com.google.cloud.dataproc.v1.AcceleratorConfig value) {
2730       if (acceleratorsBuilder_ == null) {
2731         if (value == null) {
2732           throw new NullPointerException();
2733         }
2734         ensureAcceleratorsIsMutable();
2735         accelerators_.set(index, value);
2736         onChanged();
2737       } else {
2738         acceleratorsBuilder_.setMessage(index, value);
2739       }
2740       return this;
2741     }
2742     /**
2743      *
2744      *
2745      * <pre>
2746      * Optional. The Compute Engine accelerator configuration for these
2747      * instances.
2748      * </pre>
2749      *
2750      * <code>
2751      * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
2752      * </code>
2753      */
setAccelerators( int index, com.google.cloud.dataproc.v1.AcceleratorConfig.Builder builderForValue)2754     public Builder setAccelerators(
2755         int index, com.google.cloud.dataproc.v1.AcceleratorConfig.Builder builderForValue) {
2756       if (acceleratorsBuilder_ == null) {
2757         ensureAcceleratorsIsMutable();
2758         accelerators_.set(index, builderForValue.build());
2759         onChanged();
2760       } else {
2761         acceleratorsBuilder_.setMessage(index, builderForValue.build());
2762       }
2763       return this;
2764     }
2765     /**
2766      *
2767      *
2768      * <pre>
2769      * Optional. The Compute Engine accelerator configuration for these
2770      * instances.
2771      * </pre>
2772      *
2773      * <code>
2774      * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
2775      * </code>
2776      */
addAccelerators(com.google.cloud.dataproc.v1.AcceleratorConfig value)2777     public Builder addAccelerators(com.google.cloud.dataproc.v1.AcceleratorConfig value) {
2778       if (acceleratorsBuilder_ == null) {
2779         if (value == null) {
2780           throw new NullPointerException();
2781         }
2782         ensureAcceleratorsIsMutable();
2783         accelerators_.add(value);
2784         onChanged();
2785       } else {
2786         acceleratorsBuilder_.addMessage(value);
2787       }
2788       return this;
2789     }
2790     /**
2791      *
2792      *
2793      * <pre>
2794      * Optional. The Compute Engine accelerator configuration for these
2795      * instances.
2796      * </pre>
2797      *
2798      * <code>
2799      * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
2800      * </code>
2801      */
addAccelerators( int index, com.google.cloud.dataproc.v1.AcceleratorConfig value)2802     public Builder addAccelerators(
2803         int index, com.google.cloud.dataproc.v1.AcceleratorConfig value) {
2804       if (acceleratorsBuilder_ == null) {
2805         if (value == null) {
2806           throw new NullPointerException();
2807         }
2808         ensureAcceleratorsIsMutable();
2809         accelerators_.add(index, value);
2810         onChanged();
2811       } else {
2812         acceleratorsBuilder_.addMessage(index, value);
2813       }
2814       return this;
2815     }
2816     /**
2817      *
2818      *
2819      * <pre>
2820      * Optional. The Compute Engine accelerator configuration for these
2821      * instances.
2822      * </pre>
2823      *
2824      * <code>
2825      * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
2826      * </code>
2827      */
addAccelerators( com.google.cloud.dataproc.v1.AcceleratorConfig.Builder builderForValue)2828     public Builder addAccelerators(
2829         com.google.cloud.dataproc.v1.AcceleratorConfig.Builder builderForValue) {
2830       if (acceleratorsBuilder_ == null) {
2831         ensureAcceleratorsIsMutable();
2832         accelerators_.add(builderForValue.build());
2833         onChanged();
2834       } else {
2835         acceleratorsBuilder_.addMessage(builderForValue.build());
2836       }
2837       return this;
2838     }
2839     /**
2840      *
2841      *
2842      * <pre>
2843      * Optional. The Compute Engine accelerator configuration for these
2844      * instances.
2845      * </pre>
2846      *
2847      * <code>
2848      * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
2849      * </code>
2850      */
addAccelerators( int index, com.google.cloud.dataproc.v1.AcceleratorConfig.Builder builderForValue)2851     public Builder addAccelerators(
2852         int index, com.google.cloud.dataproc.v1.AcceleratorConfig.Builder builderForValue) {
2853       if (acceleratorsBuilder_ == null) {
2854         ensureAcceleratorsIsMutable();
2855         accelerators_.add(index, builderForValue.build());
2856         onChanged();
2857       } else {
2858         acceleratorsBuilder_.addMessage(index, builderForValue.build());
2859       }
2860       return this;
2861     }
2862     /**
2863      *
2864      *
2865      * <pre>
2866      * Optional. The Compute Engine accelerator configuration for these
2867      * instances.
2868      * </pre>
2869      *
2870      * <code>
2871      * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
2872      * </code>
2873      */
addAllAccelerators( java.lang.Iterable<? extends com.google.cloud.dataproc.v1.AcceleratorConfig> values)2874     public Builder addAllAccelerators(
2875         java.lang.Iterable<? extends com.google.cloud.dataproc.v1.AcceleratorConfig> values) {
2876       if (acceleratorsBuilder_ == null) {
2877         ensureAcceleratorsIsMutable();
2878         com.google.protobuf.AbstractMessageLite.Builder.addAll(values, accelerators_);
2879         onChanged();
2880       } else {
2881         acceleratorsBuilder_.addAllMessages(values);
2882       }
2883       return this;
2884     }
2885     /**
2886      *
2887      *
2888      * <pre>
2889      * Optional. The Compute Engine accelerator configuration for these
2890      * instances.
2891      * </pre>
2892      *
2893      * <code>
2894      * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
2895      * </code>
2896      */
clearAccelerators()2897     public Builder clearAccelerators() {
2898       if (acceleratorsBuilder_ == null) {
2899         accelerators_ = java.util.Collections.emptyList();
2900         bitField0_ = (bitField0_ & ~0x00000100);
2901         onChanged();
2902       } else {
2903         acceleratorsBuilder_.clear();
2904       }
2905       return this;
2906     }
2907     /**
2908      *
2909      *
2910      * <pre>
2911      * Optional. The Compute Engine accelerator configuration for these
2912      * instances.
2913      * </pre>
2914      *
2915      * <code>
2916      * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
2917      * </code>
2918      */
removeAccelerators(int index)2919     public Builder removeAccelerators(int index) {
2920       if (acceleratorsBuilder_ == null) {
2921         ensureAcceleratorsIsMutable();
2922         accelerators_.remove(index);
2923         onChanged();
2924       } else {
2925         acceleratorsBuilder_.remove(index);
2926       }
2927       return this;
2928     }
2929     /**
2930      *
2931      *
2932      * <pre>
2933      * Optional. The Compute Engine accelerator configuration for these
2934      * instances.
2935      * </pre>
2936      *
2937      * <code>
2938      * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
2939      * </code>
2940      */
getAcceleratorsBuilder( int index)2941     public com.google.cloud.dataproc.v1.AcceleratorConfig.Builder getAcceleratorsBuilder(
2942         int index) {
2943       return getAcceleratorsFieldBuilder().getBuilder(index);
2944     }
2945     /**
2946      *
2947      *
2948      * <pre>
2949      * Optional. The Compute Engine accelerator configuration for these
2950      * instances.
2951      * </pre>
2952      *
2953      * <code>
2954      * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
2955      * </code>
2956      */
getAcceleratorsOrBuilder( int index)2957     public com.google.cloud.dataproc.v1.AcceleratorConfigOrBuilder getAcceleratorsOrBuilder(
2958         int index) {
2959       if (acceleratorsBuilder_ == null) {
2960         return accelerators_.get(index);
2961       } else {
2962         return acceleratorsBuilder_.getMessageOrBuilder(index);
2963       }
2964     }
2965     /**
2966      *
2967      *
2968      * <pre>
2969      * Optional. The Compute Engine accelerator configuration for these
2970      * instances.
2971      * </pre>
2972      *
2973      * <code>
2974      * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
2975      * </code>
2976      */
2977     public java.util.List<? extends com.google.cloud.dataproc.v1.AcceleratorConfigOrBuilder>
getAcceleratorsOrBuilderList()2978         getAcceleratorsOrBuilderList() {
2979       if (acceleratorsBuilder_ != null) {
2980         return acceleratorsBuilder_.getMessageOrBuilderList();
2981       } else {
2982         return java.util.Collections.unmodifiableList(accelerators_);
2983       }
2984     }
2985     /**
2986      *
2987      *
2988      * <pre>
2989      * Optional. The Compute Engine accelerator configuration for these
2990      * instances.
2991      * </pre>
2992      *
2993      * <code>
2994      * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
2995      * </code>
2996      */
addAcceleratorsBuilder()2997     public com.google.cloud.dataproc.v1.AcceleratorConfig.Builder addAcceleratorsBuilder() {
2998       return getAcceleratorsFieldBuilder()
2999           .addBuilder(com.google.cloud.dataproc.v1.AcceleratorConfig.getDefaultInstance());
3000     }
3001     /**
3002      *
3003      *
3004      * <pre>
3005      * Optional. The Compute Engine accelerator configuration for these
3006      * instances.
3007      * </pre>
3008      *
3009      * <code>
3010      * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
3011      * </code>
3012      */
addAcceleratorsBuilder( int index)3013     public com.google.cloud.dataproc.v1.AcceleratorConfig.Builder addAcceleratorsBuilder(
3014         int index) {
3015       return getAcceleratorsFieldBuilder()
3016           .addBuilder(index, com.google.cloud.dataproc.v1.AcceleratorConfig.getDefaultInstance());
3017     }
3018     /**
3019      *
3020      *
3021      * <pre>
3022      * Optional. The Compute Engine accelerator configuration for these
3023      * instances.
3024      * </pre>
3025      *
3026      * <code>
3027      * repeated .google.cloud.dataproc.v1.AcceleratorConfig accelerators = 8 [(.google.api.field_behavior) = OPTIONAL];
3028      * </code>
3029      */
3030     public java.util.List<com.google.cloud.dataproc.v1.AcceleratorConfig.Builder>
getAcceleratorsBuilderList()3031         getAcceleratorsBuilderList() {
3032       return getAcceleratorsFieldBuilder().getBuilderList();
3033     }
3034 
3035     private com.google.protobuf.RepeatedFieldBuilderV3<
3036             com.google.cloud.dataproc.v1.AcceleratorConfig,
3037             com.google.cloud.dataproc.v1.AcceleratorConfig.Builder,
3038             com.google.cloud.dataproc.v1.AcceleratorConfigOrBuilder>
getAcceleratorsFieldBuilder()3039         getAcceleratorsFieldBuilder() {
3040       if (acceleratorsBuilder_ == null) {
3041         acceleratorsBuilder_ =
3042             new com.google.protobuf.RepeatedFieldBuilderV3<
3043                 com.google.cloud.dataproc.v1.AcceleratorConfig,
3044                 com.google.cloud.dataproc.v1.AcceleratorConfig.Builder,
3045                 com.google.cloud.dataproc.v1.AcceleratorConfigOrBuilder>(
3046                 accelerators_, ((bitField0_ & 0x00000100) != 0), getParentForChildren(), isClean());
3047         accelerators_ = null;
3048       }
3049       return acceleratorsBuilder_;
3050     }
3051 
3052     private java.lang.Object minCpuPlatform_ = "";
3053     /**
3054      *
3055      *
3056      * <pre>
3057      * Optional. Specifies the minimum cpu platform for the Instance Group.
3058      * See [Dataproc -&gt; Minimum CPU
3059      * Platform](https://cloud.google.com/dataproc/docs/concepts/compute/dataproc-min-cpu).
3060      * </pre>
3061      *
3062      * <code>string min_cpu_platform = 9 [(.google.api.field_behavior) = OPTIONAL];</code>
3063      *
3064      * @return The minCpuPlatform.
3065      */
getMinCpuPlatform()3066     public java.lang.String getMinCpuPlatform() {
3067       java.lang.Object ref = minCpuPlatform_;
3068       if (!(ref instanceof java.lang.String)) {
3069         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
3070         java.lang.String s = bs.toStringUtf8();
3071         minCpuPlatform_ = s;
3072         return s;
3073       } else {
3074         return (java.lang.String) ref;
3075       }
3076     }
3077     /**
3078      *
3079      *
3080      * <pre>
3081      * Optional. Specifies the minimum cpu platform for the Instance Group.
3082      * See [Dataproc -&gt; Minimum CPU
3083      * Platform](https://cloud.google.com/dataproc/docs/concepts/compute/dataproc-min-cpu).
3084      * </pre>
3085      *
3086      * <code>string min_cpu_platform = 9 [(.google.api.field_behavior) = OPTIONAL];</code>
3087      *
3088      * @return The bytes for minCpuPlatform.
3089      */
getMinCpuPlatformBytes()3090     public com.google.protobuf.ByteString getMinCpuPlatformBytes() {
3091       java.lang.Object ref = minCpuPlatform_;
3092       if (ref instanceof String) {
3093         com.google.protobuf.ByteString b =
3094             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
3095         minCpuPlatform_ = b;
3096         return b;
3097       } else {
3098         return (com.google.protobuf.ByteString) ref;
3099       }
3100     }
3101     /**
3102      *
3103      *
3104      * <pre>
3105      * Optional. Specifies the minimum cpu platform for the Instance Group.
3106      * See [Dataproc -&gt; Minimum CPU
3107      * Platform](https://cloud.google.com/dataproc/docs/concepts/compute/dataproc-min-cpu).
3108      * </pre>
3109      *
3110      * <code>string min_cpu_platform = 9 [(.google.api.field_behavior) = OPTIONAL];</code>
3111      *
3112      * @param value The minCpuPlatform to set.
3113      * @return This builder for chaining.
3114      */
setMinCpuPlatform(java.lang.String value)3115     public Builder setMinCpuPlatform(java.lang.String value) {
3116       if (value == null) {
3117         throw new NullPointerException();
3118       }
3119       minCpuPlatform_ = value;
3120       bitField0_ |= 0x00000200;
3121       onChanged();
3122       return this;
3123     }
3124     /**
3125      *
3126      *
3127      * <pre>
3128      * Optional. Specifies the minimum cpu platform for the Instance Group.
3129      * See [Dataproc -&gt; Minimum CPU
3130      * Platform](https://cloud.google.com/dataproc/docs/concepts/compute/dataproc-min-cpu).
3131      * </pre>
3132      *
3133      * <code>string min_cpu_platform = 9 [(.google.api.field_behavior) = OPTIONAL];</code>
3134      *
3135      * @return This builder for chaining.
3136      */
clearMinCpuPlatform()3137     public Builder clearMinCpuPlatform() {
3138       minCpuPlatform_ = getDefaultInstance().getMinCpuPlatform();
3139       bitField0_ = (bitField0_ & ~0x00000200);
3140       onChanged();
3141       return this;
3142     }
3143     /**
3144      *
3145      *
3146      * <pre>
3147      * Optional. Specifies the minimum cpu platform for the Instance Group.
3148      * See [Dataproc -&gt; Minimum CPU
3149      * Platform](https://cloud.google.com/dataproc/docs/concepts/compute/dataproc-min-cpu).
3150      * </pre>
3151      *
3152      * <code>string min_cpu_platform = 9 [(.google.api.field_behavior) = OPTIONAL];</code>
3153      *
3154      * @param value The bytes for minCpuPlatform to set.
3155      * @return This builder for chaining.
3156      */
setMinCpuPlatformBytes(com.google.protobuf.ByteString value)3157     public Builder setMinCpuPlatformBytes(com.google.protobuf.ByteString value) {
3158       if (value == null) {
3159         throw new NullPointerException();
3160       }
3161       checkByteStringIsUtf8(value);
3162       minCpuPlatform_ = value;
3163       bitField0_ |= 0x00000200;
3164       onChanged();
3165       return this;
3166     }
3167 
3168     @java.lang.Override
setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)3169     public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) {
3170       return super.setUnknownFields(unknownFields);
3171     }
3172 
3173     @java.lang.Override
mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields)3174     public final Builder mergeUnknownFields(
3175         final com.google.protobuf.UnknownFieldSet unknownFields) {
3176       return super.mergeUnknownFields(unknownFields);
3177     }
3178 
3179     // @@protoc_insertion_point(builder_scope:google.cloud.dataproc.v1.InstanceGroupConfig)
3180   }
3181 
3182   // @@protoc_insertion_point(class_scope:google.cloud.dataproc.v1.InstanceGroupConfig)
3183   private static final com.google.cloud.dataproc.v1.InstanceGroupConfig DEFAULT_INSTANCE;
3184 
3185   static {
3186     DEFAULT_INSTANCE = new com.google.cloud.dataproc.v1.InstanceGroupConfig();
3187   }
3188 
getDefaultInstance()3189   public static com.google.cloud.dataproc.v1.InstanceGroupConfig getDefaultInstance() {
3190     return DEFAULT_INSTANCE;
3191   }
3192 
3193   private static final com.google.protobuf.Parser<InstanceGroupConfig> PARSER =
3194       new com.google.protobuf.AbstractParser<InstanceGroupConfig>() {
3195         @java.lang.Override
3196         public InstanceGroupConfig parsePartialFrom(
3197             com.google.protobuf.CodedInputStream input,
3198             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3199             throws com.google.protobuf.InvalidProtocolBufferException {
3200           Builder builder = newBuilder();
3201           try {
3202             builder.mergeFrom(input, extensionRegistry);
3203           } catch (com.google.protobuf.InvalidProtocolBufferException e) {
3204             throw e.setUnfinishedMessage(builder.buildPartial());
3205           } catch (com.google.protobuf.UninitializedMessageException e) {
3206             throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
3207           } catch (java.io.IOException e) {
3208             throw new com.google.protobuf.InvalidProtocolBufferException(e)
3209                 .setUnfinishedMessage(builder.buildPartial());
3210           }
3211           return builder.buildPartial();
3212         }
3213       };
3214 
parser()3215   public static com.google.protobuf.Parser<InstanceGroupConfig> parser() {
3216     return PARSER;
3217   }
3218 
3219   @java.lang.Override
getParserForType()3220   public com.google.protobuf.Parser<InstanceGroupConfig> getParserForType() {
3221     return PARSER;
3222   }
3223 
3224   @java.lang.Override
getDefaultInstanceForType()3225   public com.google.cloud.dataproc.v1.InstanceGroupConfig getDefaultInstanceForType() {
3226     return DEFAULT_INSTANCE;
3227   }
3228 }
3229