• 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  * A request to update a cluster.
26  * </pre>
27  *
28  * Protobuf type {@code google.cloud.dataproc.v1.UpdateClusterRequest}
29  */
30 public final class UpdateClusterRequest extends com.google.protobuf.GeneratedMessageV3
31     implements
32     // @@protoc_insertion_point(message_implements:google.cloud.dataproc.v1.UpdateClusterRequest)
33     UpdateClusterRequestOrBuilder {
34   private static final long serialVersionUID = 0L;
35   // Use UpdateClusterRequest.newBuilder() to construct.
UpdateClusterRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder)36   private UpdateClusterRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
37     super(builder);
38   }
39 
UpdateClusterRequest()40   private UpdateClusterRequest() {
41     projectId_ = "";
42     region_ = "";
43     clusterName_ = "";
44     requestId_ = "";
45   }
46 
47   @java.lang.Override
48   @SuppressWarnings({"unused"})
newInstance(UnusedPrivateParameter unused)49   protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
50     return new UpdateClusterRequest();
51   }
52 
53   @java.lang.Override
getUnknownFields()54   public final com.google.protobuf.UnknownFieldSet getUnknownFields() {
55     return this.unknownFields;
56   }
57 
getDescriptor()58   public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
59     return com.google.cloud.dataproc.v1.ClustersProto
60         .internal_static_google_cloud_dataproc_v1_UpdateClusterRequest_descriptor;
61   }
62 
63   @java.lang.Override
64   protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()65       internalGetFieldAccessorTable() {
66     return com.google.cloud.dataproc.v1.ClustersProto
67         .internal_static_google_cloud_dataproc_v1_UpdateClusterRequest_fieldAccessorTable
68         .ensureFieldAccessorsInitialized(
69             com.google.cloud.dataproc.v1.UpdateClusterRequest.class,
70             com.google.cloud.dataproc.v1.UpdateClusterRequest.Builder.class);
71   }
72 
73   public static final int PROJECT_ID_FIELD_NUMBER = 1;
74 
75   @SuppressWarnings("serial")
76   private volatile java.lang.Object projectId_ = "";
77   /**
78    *
79    *
80    * <pre>
81    * Required. The ID of the Google Cloud Platform project the
82    * cluster belongs to.
83    * </pre>
84    *
85    * <code>string project_id = 1 [(.google.api.field_behavior) = REQUIRED];</code>
86    *
87    * @return The projectId.
88    */
89   @java.lang.Override
getProjectId()90   public java.lang.String getProjectId() {
91     java.lang.Object ref = projectId_;
92     if (ref instanceof java.lang.String) {
93       return (java.lang.String) ref;
94     } else {
95       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
96       java.lang.String s = bs.toStringUtf8();
97       projectId_ = s;
98       return s;
99     }
100   }
101   /**
102    *
103    *
104    * <pre>
105    * Required. The ID of the Google Cloud Platform project the
106    * cluster belongs to.
107    * </pre>
108    *
109    * <code>string project_id = 1 [(.google.api.field_behavior) = REQUIRED];</code>
110    *
111    * @return The bytes for projectId.
112    */
113   @java.lang.Override
getProjectIdBytes()114   public com.google.protobuf.ByteString getProjectIdBytes() {
115     java.lang.Object ref = projectId_;
116     if (ref instanceof java.lang.String) {
117       com.google.protobuf.ByteString b =
118           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
119       projectId_ = b;
120       return b;
121     } else {
122       return (com.google.protobuf.ByteString) ref;
123     }
124   }
125 
126   public static final int REGION_FIELD_NUMBER = 5;
127 
128   @SuppressWarnings("serial")
129   private volatile java.lang.Object region_ = "";
130   /**
131    *
132    *
133    * <pre>
134    * Required. The Dataproc region in which to handle the request.
135    * </pre>
136    *
137    * <code>string region = 5 [(.google.api.field_behavior) = REQUIRED];</code>
138    *
139    * @return The region.
140    */
141   @java.lang.Override
getRegion()142   public java.lang.String getRegion() {
143     java.lang.Object ref = region_;
144     if (ref instanceof java.lang.String) {
145       return (java.lang.String) ref;
146     } else {
147       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
148       java.lang.String s = bs.toStringUtf8();
149       region_ = s;
150       return s;
151     }
152   }
153   /**
154    *
155    *
156    * <pre>
157    * Required. The Dataproc region in which to handle the request.
158    * </pre>
159    *
160    * <code>string region = 5 [(.google.api.field_behavior) = REQUIRED];</code>
161    *
162    * @return The bytes for region.
163    */
164   @java.lang.Override
getRegionBytes()165   public com.google.protobuf.ByteString getRegionBytes() {
166     java.lang.Object ref = region_;
167     if (ref instanceof java.lang.String) {
168       com.google.protobuf.ByteString b =
169           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
170       region_ = b;
171       return b;
172     } else {
173       return (com.google.protobuf.ByteString) ref;
174     }
175   }
176 
177   public static final int CLUSTER_NAME_FIELD_NUMBER = 2;
178 
179   @SuppressWarnings("serial")
180   private volatile java.lang.Object clusterName_ = "";
181   /**
182    *
183    *
184    * <pre>
185    * Required. The cluster name.
186    * </pre>
187    *
188    * <code>string cluster_name = 2 [(.google.api.field_behavior) = REQUIRED];</code>
189    *
190    * @return The clusterName.
191    */
192   @java.lang.Override
getClusterName()193   public java.lang.String getClusterName() {
194     java.lang.Object ref = clusterName_;
195     if (ref instanceof java.lang.String) {
196       return (java.lang.String) ref;
197     } else {
198       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
199       java.lang.String s = bs.toStringUtf8();
200       clusterName_ = s;
201       return s;
202     }
203   }
204   /**
205    *
206    *
207    * <pre>
208    * Required. The cluster name.
209    * </pre>
210    *
211    * <code>string cluster_name = 2 [(.google.api.field_behavior) = REQUIRED];</code>
212    *
213    * @return The bytes for clusterName.
214    */
215   @java.lang.Override
getClusterNameBytes()216   public com.google.protobuf.ByteString getClusterNameBytes() {
217     java.lang.Object ref = clusterName_;
218     if (ref instanceof java.lang.String) {
219       com.google.protobuf.ByteString b =
220           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
221       clusterName_ = b;
222       return b;
223     } else {
224       return (com.google.protobuf.ByteString) ref;
225     }
226   }
227 
228   public static final int CLUSTER_FIELD_NUMBER = 3;
229   private com.google.cloud.dataproc.v1.Cluster cluster_;
230   /**
231    *
232    *
233    * <pre>
234    * Required. The changes to the cluster.
235    * </pre>
236    *
237    * <code>.google.cloud.dataproc.v1.Cluster cluster = 3 [(.google.api.field_behavior) = REQUIRED];
238    * </code>
239    *
240    * @return Whether the cluster field is set.
241    */
242   @java.lang.Override
hasCluster()243   public boolean hasCluster() {
244     return cluster_ != null;
245   }
246   /**
247    *
248    *
249    * <pre>
250    * Required. The changes to the cluster.
251    * </pre>
252    *
253    * <code>.google.cloud.dataproc.v1.Cluster cluster = 3 [(.google.api.field_behavior) = REQUIRED];
254    * </code>
255    *
256    * @return The cluster.
257    */
258   @java.lang.Override
getCluster()259   public com.google.cloud.dataproc.v1.Cluster getCluster() {
260     return cluster_ == null ? com.google.cloud.dataproc.v1.Cluster.getDefaultInstance() : cluster_;
261   }
262   /**
263    *
264    *
265    * <pre>
266    * Required. The changes to the cluster.
267    * </pre>
268    *
269    * <code>.google.cloud.dataproc.v1.Cluster cluster = 3 [(.google.api.field_behavior) = REQUIRED];
270    * </code>
271    */
272   @java.lang.Override
getClusterOrBuilder()273   public com.google.cloud.dataproc.v1.ClusterOrBuilder getClusterOrBuilder() {
274     return cluster_ == null ? com.google.cloud.dataproc.v1.Cluster.getDefaultInstance() : cluster_;
275   }
276 
277   public static final int GRACEFUL_DECOMMISSION_TIMEOUT_FIELD_NUMBER = 6;
278   private com.google.protobuf.Duration gracefulDecommissionTimeout_;
279   /**
280    *
281    *
282    * <pre>
283    * Optional. Timeout for graceful YARN decommissioning. Graceful
284    * decommissioning allows removing nodes from the cluster without
285    * interrupting jobs in progress. Timeout specifies how long to wait for jobs
286    * in progress to finish before forcefully removing nodes (and potentially
287    * interrupting jobs). Default timeout is 0 (for forceful decommission), and
288    * the maximum allowed timeout is 1 day. (see JSON representation of
289    * [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)).
290    * Only supported on Dataproc image versions 1.2 and higher.
291    * </pre>
292    *
293    * <code>
294    * .google.protobuf.Duration graceful_decommission_timeout = 6 [(.google.api.field_behavior) = OPTIONAL];
295    * </code>
296    *
297    * @return Whether the gracefulDecommissionTimeout field is set.
298    */
299   @java.lang.Override
hasGracefulDecommissionTimeout()300   public boolean hasGracefulDecommissionTimeout() {
301     return gracefulDecommissionTimeout_ != null;
302   }
303   /**
304    *
305    *
306    * <pre>
307    * Optional. Timeout for graceful YARN decommissioning. Graceful
308    * decommissioning allows removing nodes from the cluster without
309    * interrupting jobs in progress. Timeout specifies how long to wait for jobs
310    * in progress to finish before forcefully removing nodes (and potentially
311    * interrupting jobs). Default timeout is 0 (for forceful decommission), and
312    * the maximum allowed timeout is 1 day. (see JSON representation of
313    * [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)).
314    * Only supported on Dataproc image versions 1.2 and higher.
315    * </pre>
316    *
317    * <code>
318    * .google.protobuf.Duration graceful_decommission_timeout = 6 [(.google.api.field_behavior) = OPTIONAL];
319    * </code>
320    *
321    * @return The gracefulDecommissionTimeout.
322    */
323   @java.lang.Override
getGracefulDecommissionTimeout()324   public com.google.protobuf.Duration getGracefulDecommissionTimeout() {
325     return gracefulDecommissionTimeout_ == null
326         ? com.google.protobuf.Duration.getDefaultInstance()
327         : gracefulDecommissionTimeout_;
328   }
329   /**
330    *
331    *
332    * <pre>
333    * Optional. Timeout for graceful YARN decommissioning. Graceful
334    * decommissioning allows removing nodes from the cluster without
335    * interrupting jobs in progress. Timeout specifies how long to wait for jobs
336    * in progress to finish before forcefully removing nodes (and potentially
337    * interrupting jobs). Default timeout is 0 (for forceful decommission), and
338    * the maximum allowed timeout is 1 day. (see JSON representation of
339    * [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)).
340    * Only supported on Dataproc image versions 1.2 and higher.
341    * </pre>
342    *
343    * <code>
344    * .google.protobuf.Duration graceful_decommission_timeout = 6 [(.google.api.field_behavior) = OPTIONAL];
345    * </code>
346    */
347   @java.lang.Override
getGracefulDecommissionTimeoutOrBuilder()348   public com.google.protobuf.DurationOrBuilder getGracefulDecommissionTimeoutOrBuilder() {
349     return gracefulDecommissionTimeout_ == null
350         ? com.google.protobuf.Duration.getDefaultInstance()
351         : gracefulDecommissionTimeout_;
352   }
353 
354   public static final int UPDATE_MASK_FIELD_NUMBER = 4;
355   private com.google.protobuf.FieldMask updateMask_;
356   /**
357    *
358    *
359    * <pre>
360    * Required. Specifies the path, relative to `Cluster`, of
361    * the field to update. For example, to change the number of workers
362    * in a cluster to 5, the `update_mask` parameter would be
363    * specified as `config.worker_config.num_instances`,
364    * and the `PATCH` request body would specify the new value, as follows:
365    *     {
366    *       "config":{
367    *         "workerConfig":{
368    *           "numInstances":"5"
369    *         }
370    *       }
371    *     }
372    * Similarly, to change the number of preemptible workers in a cluster to 5,
373    * the `update_mask` parameter would be
374    * `config.secondary_worker_config.num_instances`, and the `PATCH` request
375    * body would be set as follows:
376    *     {
377    *       "config":{
378    *         "secondaryWorkerConfig":{
379    *           "numInstances":"5"
380    *         }
381    *       }
382    *     }
383    * &lt;strong&gt;Note:&lt;/strong&gt; Currently, only the following fields can be updated:
384    *  &lt;table&gt;
385    *  &lt;tbody&gt;
386    *  &lt;tr&gt;
387    *  &lt;td&gt;&lt;strong&gt;Mask&lt;/strong&gt;&lt;/td&gt;
388    *  &lt;td&gt;&lt;strong&gt;Purpose&lt;/strong&gt;&lt;/td&gt;
389    *  &lt;/tr&gt;
390    *  &lt;tr&gt;
391    *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;labels&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
392    *  &lt;td&gt;Update labels&lt;/td&gt;
393    *  &lt;/tr&gt;
394    *  &lt;tr&gt;
395    *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
396    *  &lt;td&gt;Resize primary worker group&lt;/td&gt;
397    *  &lt;/tr&gt;
398    *  &lt;tr&gt;
399    *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.secondary_worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
400    *  &lt;td&gt;Resize secondary worker group&lt;/td&gt;
401    *  &lt;/tr&gt;
402    *  &lt;tr&gt;
403    *  &lt;td&gt;config.autoscaling_config.policy_uri&lt;/td&gt;&lt;td&gt;Use, stop using, or
404    *  change autoscaling policies&lt;/td&gt;
405    *  &lt;/tr&gt;
406    *  &lt;/tbody&gt;
407    *  &lt;/table&gt;
408    * </pre>
409    *
410    * <code>.google.protobuf.FieldMask update_mask = 4 [(.google.api.field_behavior) = REQUIRED];
411    * </code>
412    *
413    * @return Whether the updateMask field is set.
414    */
415   @java.lang.Override
hasUpdateMask()416   public boolean hasUpdateMask() {
417     return updateMask_ != null;
418   }
419   /**
420    *
421    *
422    * <pre>
423    * Required. Specifies the path, relative to `Cluster`, of
424    * the field to update. For example, to change the number of workers
425    * in a cluster to 5, the `update_mask` parameter would be
426    * specified as `config.worker_config.num_instances`,
427    * and the `PATCH` request body would specify the new value, as follows:
428    *     {
429    *       "config":{
430    *         "workerConfig":{
431    *           "numInstances":"5"
432    *         }
433    *       }
434    *     }
435    * Similarly, to change the number of preemptible workers in a cluster to 5,
436    * the `update_mask` parameter would be
437    * `config.secondary_worker_config.num_instances`, and the `PATCH` request
438    * body would be set as follows:
439    *     {
440    *       "config":{
441    *         "secondaryWorkerConfig":{
442    *           "numInstances":"5"
443    *         }
444    *       }
445    *     }
446    * &lt;strong&gt;Note:&lt;/strong&gt; Currently, only the following fields can be updated:
447    *  &lt;table&gt;
448    *  &lt;tbody&gt;
449    *  &lt;tr&gt;
450    *  &lt;td&gt;&lt;strong&gt;Mask&lt;/strong&gt;&lt;/td&gt;
451    *  &lt;td&gt;&lt;strong&gt;Purpose&lt;/strong&gt;&lt;/td&gt;
452    *  &lt;/tr&gt;
453    *  &lt;tr&gt;
454    *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;labels&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
455    *  &lt;td&gt;Update labels&lt;/td&gt;
456    *  &lt;/tr&gt;
457    *  &lt;tr&gt;
458    *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
459    *  &lt;td&gt;Resize primary worker group&lt;/td&gt;
460    *  &lt;/tr&gt;
461    *  &lt;tr&gt;
462    *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.secondary_worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
463    *  &lt;td&gt;Resize secondary worker group&lt;/td&gt;
464    *  &lt;/tr&gt;
465    *  &lt;tr&gt;
466    *  &lt;td&gt;config.autoscaling_config.policy_uri&lt;/td&gt;&lt;td&gt;Use, stop using, or
467    *  change autoscaling policies&lt;/td&gt;
468    *  &lt;/tr&gt;
469    *  &lt;/tbody&gt;
470    *  &lt;/table&gt;
471    * </pre>
472    *
473    * <code>.google.protobuf.FieldMask update_mask = 4 [(.google.api.field_behavior) = REQUIRED];
474    * </code>
475    *
476    * @return The updateMask.
477    */
478   @java.lang.Override
getUpdateMask()479   public com.google.protobuf.FieldMask getUpdateMask() {
480     return updateMask_ == null ? com.google.protobuf.FieldMask.getDefaultInstance() : updateMask_;
481   }
482   /**
483    *
484    *
485    * <pre>
486    * Required. Specifies the path, relative to `Cluster`, of
487    * the field to update. For example, to change the number of workers
488    * in a cluster to 5, the `update_mask` parameter would be
489    * specified as `config.worker_config.num_instances`,
490    * and the `PATCH` request body would specify the new value, as follows:
491    *     {
492    *       "config":{
493    *         "workerConfig":{
494    *           "numInstances":"5"
495    *         }
496    *       }
497    *     }
498    * Similarly, to change the number of preemptible workers in a cluster to 5,
499    * the `update_mask` parameter would be
500    * `config.secondary_worker_config.num_instances`, and the `PATCH` request
501    * body would be set as follows:
502    *     {
503    *       "config":{
504    *         "secondaryWorkerConfig":{
505    *           "numInstances":"5"
506    *         }
507    *       }
508    *     }
509    * &lt;strong&gt;Note:&lt;/strong&gt; Currently, only the following fields can be updated:
510    *  &lt;table&gt;
511    *  &lt;tbody&gt;
512    *  &lt;tr&gt;
513    *  &lt;td&gt;&lt;strong&gt;Mask&lt;/strong&gt;&lt;/td&gt;
514    *  &lt;td&gt;&lt;strong&gt;Purpose&lt;/strong&gt;&lt;/td&gt;
515    *  &lt;/tr&gt;
516    *  &lt;tr&gt;
517    *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;labels&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
518    *  &lt;td&gt;Update labels&lt;/td&gt;
519    *  &lt;/tr&gt;
520    *  &lt;tr&gt;
521    *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
522    *  &lt;td&gt;Resize primary worker group&lt;/td&gt;
523    *  &lt;/tr&gt;
524    *  &lt;tr&gt;
525    *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.secondary_worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
526    *  &lt;td&gt;Resize secondary worker group&lt;/td&gt;
527    *  &lt;/tr&gt;
528    *  &lt;tr&gt;
529    *  &lt;td&gt;config.autoscaling_config.policy_uri&lt;/td&gt;&lt;td&gt;Use, stop using, or
530    *  change autoscaling policies&lt;/td&gt;
531    *  &lt;/tr&gt;
532    *  &lt;/tbody&gt;
533    *  &lt;/table&gt;
534    * </pre>
535    *
536    * <code>.google.protobuf.FieldMask update_mask = 4 [(.google.api.field_behavior) = REQUIRED];
537    * </code>
538    */
539   @java.lang.Override
getUpdateMaskOrBuilder()540   public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() {
541     return updateMask_ == null ? com.google.protobuf.FieldMask.getDefaultInstance() : updateMask_;
542   }
543 
544   public static final int REQUEST_ID_FIELD_NUMBER = 7;
545 
546   @SuppressWarnings("serial")
547   private volatile java.lang.Object requestId_ = "";
548   /**
549    *
550    *
551    * <pre>
552    * Optional. A unique ID used to identify the request. If the server
553    * receives two
554    * [UpdateClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.UpdateClusterRequest)s
555    * with the same id, then the second request will be ignored and the
556    * first [google.longrunning.Operation][google.longrunning.Operation] created
557    * and stored in the backend is returned.
558    * It is recommended to always set this value to a
559    * [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
560    * The ID must contain only letters (a-z, A-Z), numbers (0-9),
561    * underscores (_), and hyphens (-). The maximum length is 40 characters.
562    * </pre>
563    *
564    * <code>string request_id = 7 [(.google.api.field_behavior) = OPTIONAL];</code>
565    *
566    * @return The requestId.
567    */
568   @java.lang.Override
getRequestId()569   public java.lang.String getRequestId() {
570     java.lang.Object ref = requestId_;
571     if (ref instanceof java.lang.String) {
572       return (java.lang.String) ref;
573     } else {
574       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
575       java.lang.String s = bs.toStringUtf8();
576       requestId_ = s;
577       return s;
578     }
579   }
580   /**
581    *
582    *
583    * <pre>
584    * Optional. A unique ID used to identify the request. If the server
585    * receives two
586    * [UpdateClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.UpdateClusterRequest)s
587    * with the same id, then the second request will be ignored and the
588    * first [google.longrunning.Operation][google.longrunning.Operation] created
589    * and stored in the backend is returned.
590    * It is recommended to always set this value to a
591    * [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
592    * The ID must contain only letters (a-z, A-Z), numbers (0-9),
593    * underscores (_), and hyphens (-). The maximum length is 40 characters.
594    * </pre>
595    *
596    * <code>string request_id = 7 [(.google.api.field_behavior) = OPTIONAL];</code>
597    *
598    * @return The bytes for requestId.
599    */
600   @java.lang.Override
getRequestIdBytes()601   public com.google.protobuf.ByteString getRequestIdBytes() {
602     java.lang.Object ref = requestId_;
603     if (ref instanceof java.lang.String) {
604       com.google.protobuf.ByteString b =
605           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
606       requestId_ = b;
607       return b;
608     } else {
609       return (com.google.protobuf.ByteString) ref;
610     }
611   }
612 
613   private byte memoizedIsInitialized = -1;
614 
615   @java.lang.Override
isInitialized()616   public final boolean isInitialized() {
617     byte isInitialized = memoizedIsInitialized;
618     if (isInitialized == 1) return true;
619     if (isInitialized == 0) return false;
620 
621     memoizedIsInitialized = 1;
622     return true;
623   }
624 
625   @java.lang.Override
writeTo(com.google.protobuf.CodedOutputStream output)626   public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
627     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
628       com.google.protobuf.GeneratedMessageV3.writeString(output, 1, projectId_);
629     }
630     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(clusterName_)) {
631       com.google.protobuf.GeneratedMessageV3.writeString(output, 2, clusterName_);
632     }
633     if (cluster_ != null) {
634       output.writeMessage(3, getCluster());
635     }
636     if (updateMask_ != null) {
637       output.writeMessage(4, getUpdateMask());
638     }
639     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(region_)) {
640       com.google.protobuf.GeneratedMessageV3.writeString(output, 5, region_);
641     }
642     if (gracefulDecommissionTimeout_ != null) {
643       output.writeMessage(6, getGracefulDecommissionTimeout());
644     }
645     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(requestId_)) {
646       com.google.protobuf.GeneratedMessageV3.writeString(output, 7, requestId_);
647     }
648     getUnknownFields().writeTo(output);
649   }
650 
651   @java.lang.Override
getSerializedSize()652   public int getSerializedSize() {
653     int size = memoizedSize;
654     if (size != -1) return size;
655 
656     size = 0;
657     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(projectId_)) {
658       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, projectId_);
659     }
660     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(clusterName_)) {
661       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, clusterName_);
662     }
663     if (cluster_ != null) {
664       size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, getCluster());
665     }
666     if (updateMask_ != null) {
667       size += com.google.protobuf.CodedOutputStream.computeMessageSize(4, getUpdateMask());
668     }
669     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(region_)) {
670       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, region_);
671     }
672     if (gracefulDecommissionTimeout_ != null) {
673       size +=
674           com.google.protobuf.CodedOutputStream.computeMessageSize(
675               6, getGracefulDecommissionTimeout());
676     }
677     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(requestId_)) {
678       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, requestId_);
679     }
680     size += getUnknownFields().getSerializedSize();
681     memoizedSize = size;
682     return size;
683   }
684 
685   @java.lang.Override
equals(final java.lang.Object obj)686   public boolean equals(final java.lang.Object obj) {
687     if (obj == this) {
688       return true;
689     }
690     if (!(obj instanceof com.google.cloud.dataproc.v1.UpdateClusterRequest)) {
691       return super.equals(obj);
692     }
693     com.google.cloud.dataproc.v1.UpdateClusterRequest other =
694         (com.google.cloud.dataproc.v1.UpdateClusterRequest) obj;
695 
696     if (!getProjectId().equals(other.getProjectId())) return false;
697     if (!getRegion().equals(other.getRegion())) return false;
698     if (!getClusterName().equals(other.getClusterName())) return false;
699     if (hasCluster() != other.hasCluster()) return false;
700     if (hasCluster()) {
701       if (!getCluster().equals(other.getCluster())) return false;
702     }
703     if (hasGracefulDecommissionTimeout() != other.hasGracefulDecommissionTimeout()) return false;
704     if (hasGracefulDecommissionTimeout()) {
705       if (!getGracefulDecommissionTimeout().equals(other.getGracefulDecommissionTimeout()))
706         return false;
707     }
708     if (hasUpdateMask() != other.hasUpdateMask()) return false;
709     if (hasUpdateMask()) {
710       if (!getUpdateMask().equals(other.getUpdateMask())) return false;
711     }
712     if (!getRequestId().equals(other.getRequestId())) return false;
713     if (!getUnknownFields().equals(other.getUnknownFields())) return false;
714     return true;
715   }
716 
717   @java.lang.Override
hashCode()718   public int hashCode() {
719     if (memoizedHashCode != 0) {
720       return memoizedHashCode;
721     }
722     int hash = 41;
723     hash = (19 * hash) + getDescriptor().hashCode();
724     hash = (37 * hash) + PROJECT_ID_FIELD_NUMBER;
725     hash = (53 * hash) + getProjectId().hashCode();
726     hash = (37 * hash) + REGION_FIELD_NUMBER;
727     hash = (53 * hash) + getRegion().hashCode();
728     hash = (37 * hash) + CLUSTER_NAME_FIELD_NUMBER;
729     hash = (53 * hash) + getClusterName().hashCode();
730     if (hasCluster()) {
731       hash = (37 * hash) + CLUSTER_FIELD_NUMBER;
732       hash = (53 * hash) + getCluster().hashCode();
733     }
734     if (hasGracefulDecommissionTimeout()) {
735       hash = (37 * hash) + GRACEFUL_DECOMMISSION_TIMEOUT_FIELD_NUMBER;
736       hash = (53 * hash) + getGracefulDecommissionTimeout().hashCode();
737     }
738     if (hasUpdateMask()) {
739       hash = (37 * hash) + UPDATE_MASK_FIELD_NUMBER;
740       hash = (53 * hash) + getUpdateMask().hashCode();
741     }
742     hash = (37 * hash) + REQUEST_ID_FIELD_NUMBER;
743     hash = (53 * hash) + getRequestId().hashCode();
744     hash = (29 * hash) + getUnknownFields().hashCode();
745     memoizedHashCode = hash;
746     return hash;
747   }
748 
parseFrom( java.nio.ByteBuffer data)749   public static com.google.cloud.dataproc.v1.UpdateClusterRequest parseFrom(
750       java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException {
751     return PARSER.parseFrom(data);
752   }
753 
parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)754   public static com.google.cloud.dataproc.v1.UpdateClusterRequest parseFrom(
755       java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
756       throws com.google.protobuf.InvalidProtocolBufferException {
757     return PARSER.parseFrom(data, extensionRegistry);
758   }
759 
parseFrom( com.google.protobuf.ByteString data)760   public static com.google.cloud.dataproc.v1.UpdateClusterRequest parseFrom(
761       com.google.protobuf.ByteString data)
762       throws com.google.protobuf.InvalidProtocolBufferException {
763     return PARSER.parseFrom(data);
764   }
765 
parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)766   public static com.google.cloud.dataproc.v1.UpdateClusterRequest parseFrom(
767       com.google.protobuf.ByteString data,
768       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
769       throws com.google.protobuf.InvalidProtocolBufferException {
770     return PARSER.parseFrom(data, extensionRegistry);
771   }
772 
parseFrom(byte[] data)773   public static com.google.cloud.dataproc.v1.UpdateClusterRequest parseFrom(byte[] data)
774       throws com.google.protobuf.InvalidProtocolBufferException {
775     return PARSER.parseFrom(data);
776   }
777 
parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)778   public static com.google.cloud.dataproc.v1.UpdateClusterRequest parseFrom(
779       byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
780       throws com.google.protobuf.InvalidProtocolBufferException {
781     return PARSER.parseFrom(data, extensionRegistry);
782   }
783 
parseFrom( java.io.InputStream input)784   public static com.google.cloud.dataproc.v1.UpdateClusterRequest parseFrom(
785       java.io.InputStream input) throws java.io.IOException {
786     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
787   }
788 
parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)789   public static com.google.cloud.dataproc.v1.UpdateClusterRequest parseFrom(
790       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
791       throws java.io.IOException {
792     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
793         PARSER, input, extensionRegistry);
794   }
795 
parseDelimitedFrom( java.io.InputStream input)796   public static com.google.cloud.dataproc.v1.UpdateClusterRequest parseDelimitedFrom(
797       java.io.InputStream input) throws java.io.IOException {
798     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
799   }
800 
parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)801   public static com.google.cloud.dataproc.v1.UpdateClusterRequest parseDelimitedFrom(
802       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
803       throws java.io.IOException {
804     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(
805         PARSER, input, extensionRegistry);
806   }
807 
parseFrom( com.google.protobuf.CodedInputStream input)808   public static com.google.cloud.dataproc.v1.UpdateClusterRequest parseFrom(
809       com.google.protobuf.CodedInputStream input) throws java.io.IOException {
810     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
811   }
812 
parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)813   public static com.google.cloud.dataproc.v1.UpdateClusterRequest parseFrom(
814       com.google.protobuf.CodedInputStream input,
815       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
816       throws java.io.IOException {
817     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
818         PARSER, input, extensionRegistry);
819   }
820 
821   @java.lang.Override
newBuilderForType()822   public Builder newBuilderForType() {
823     return newBuilder();
824   }
825 
newBuilder()826   public static Builder newBuilder() {
827     return DEFAULT_INSTANCE.toBuilder();
828   }
829 
newBuilder(com.google.cloud.dataproc.v1.UpdateClusterRequest prototype)830   public static Builder newBuilder(com.google.cloud.dataproc.v1.UpdateClusterRequest prototype) {
831     return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
832   }
833 
834   @java.lang.Override
toBuilder()835   public Builder toBuilder() {
836     return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
837   }
838 
839   @java.lang.Override
newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)840   protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
841     Builder builder = new Builder(parent);
842     return builder;
843   }
844   /**
845    *
846    *
847    * <pre>
848    * A request to update a cluster.
849    * </pre>
850    *
851    * Protobuf type {@code google.cloud.dataproc.v1.UpdateClusterRequest}
852    */
853   public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder>
854       implements
855       // @@protoc_insertion_point(builder_implements:google.cloud.dataproc.v1.UpdateClusterRequest)
856       com.google.cloud.dataproc.v1.UpdateClusterRequestOrBuilder {
getDescriptor()857     public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
858       return com.google.cloud.dataproc.v1.ClustersProto
859           .internal_static_google_cloud_dataproc_v1_UpdateClusterRequest_descriptor;
860     }
861 
862     @java.lang.Override
863     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()864         internalGetFieldAccessorTable() {
865       return com.google.cloud.dataproc.v1.ClustersProto
866           .internal_static_google_cloud_dataproc_v1_UpdateClusterRequest_fieldAccessorTable
867           .ensureFieldAccessorsInitialized(
868               com.google.cloud.dataproc.v1.UpdateClusterRequest.class,
869               com.google.cloud.dataproc.v1.UpdateClusterRequest.Builder.class);
870     }
871 
872     // Construct using com.google.cloud.dataproc.v1.UpdateClusterRequest.newBuilder()
Builder()873     private Builder() {}
874 
Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)875     private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
876       super(parent);
877     }
878 
879     @java.lang.Override
clear()880     public Builder clear() {
881       super.clear();
882       bitField0_ = 0;
883       projectId_ = "";
884       region_ = "";
885       clusterName_ = "";
886       cluster_ = null;
887       if (clusterBuilder_ != null) {
888         clusterBuilder_.dispose();
889         clusterBuilder_ = null;
890       }
891       gracefulDecommissionTimeout_ = null;
892       if (gracefulDecommissionTimeoutBuilder_ != null) {
893         gracefulDecommissionTimeoutBuilder_.dispose();
894         gracefulDecommissionTimeoutBuilder_ = null;
895       }
896       updateMask_ = null;
897       if (updateMaskBuilder_ != null) {
898         updateMaskBuilder_.dispose();
899         updateMaskBuilder_ = null;
900       }
901       requestId_ = "";
902       return this;
903     }
904 
905     @java.lang.Override
getDescriptorForType()906     public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() {
907       return com.google.cloud.dataproc.v1.ClustersProto
908           .internal_static_google_cloud_dataproc_v1_UpdateClusterRequest_descriptor;
909     }
910 
911     @java.lang.Override
getDefaultInstanceForType()912     public com.google.cloud.dataproc.v1.UpdateClusterRequest getDefaultInstanceForType() {
913       return com.google.cloud.dataproc.v1.UpdateClusterRequest.getDefaultInstance();
914     }
915 
916     @java.lang.Override
build()917     public com.google.cloud.dataproc.v1.UpdateClusterRequest build() {
918       com.google.cloud.dataproc.v1.UpdateClusterRequest result = buildPartial();
919       if (!result.isInitialized()) {
920         throw newUninitializedMessageException(result);
921       }
922       return result;
923     }
924 
925     @java.lang.Override
buildPartial()926     public com.google.cloud.dataproc.v1.UpdateClusterRequest buildPartial() {
927       com.google.cloud.dataproc.v1.UpdateClusterRequest result =
928           new com.google.cloud.dataproc.v1.UpdateClusterRequest(this);
929       if (bitField0_ != 0) {
930         buildPartial0(result);
931       }
932       onBuilt();
933       return result;
934     }
935 
buildPartial0(com.google.cloud.dataproc.v1.UpdateClusterRequest result)936     private void buildPartial0(com.google.cloud.dataproc.v1.UpdateClusterRequest result) {
937       int from_bitField0_ = bitField0_;
938       if (((from_bitField0_ & 0x00000001) != 0)) {
939         result.projectId_ = projectId_;
940       }
941       if (((from_bitField0_ & 0x00000002) != 0)) {
942         result.region_ = region_;
943       }
944       if (((from_bitField0_ & 0x00000004) != 0)) {
945         result.clusterName_ = clusterName_;
946       }
947       if (((from_bitField0_ & 0x00000008) != 0)) {
948         result.cluster_ = clusterBuilder_ == null ? cluster_ : clusterBuilder_.build();
949       }
950       if (((from_bitField0_ & 0x00000010) != 0)) {
951         result.gracefulDecommissionTimeout_ =
952             gracefulDecommissionTimeoutBuilder_ == null
953                 ? gracefulDecommissionTimeout_
954                 : gracefulDecommissionTimeoutBuilder_.build();
955       }
956       if (((from_bitField0_ & 0x00000020) != 0)) {
957         result.updateMask_ = updateMaskBuilder_ == null ? updateMask_ : updateMaskBuilder_.build();
958       }
959       if (((from_bitField0_ & 0x00000040) != 0)) {
960         result.requestId_ = requestId_;
961       }
962     }
963 
964     @java.lang.Override
clone()965     public Builder clone() {
966       return super.clone();
967     }
968 
969     @java.lang.Override
setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)970     public Builder setField(
971         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
972       return super.setField(field, value);
973     }
974 
975     @java.lang.Override
clearField(com.google.protobuf.Descriptors.FieldDescriptor field)976     public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) {
977       return super.clearField(field);
978     }
979 
980     @java.lang.Override
clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)981     public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) {
982       return super.clearOneof(oneof);
983     }
984 
985     @java.lang.Override
setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)986     public Builder setRepeatedField(
987         com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) {
988       return super.setRepeatedField(field, index, value);
989     }
990 
991     @java.lang.Override
addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)992     public Builder addRepeatedField(
993         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
994       return super.addRepeatedField(field, value);
995     }
996 
997     @java.lang.Override
mergeFrom(com.google.protobuf.Message other)998     public Builder mergeFrom(com.google.protobuf.Message other) {
999       if (other instanceof com.google.cloud.dataproc.v1.UpdateClusterRequest) {
1000         return mergeFrom((com.google.cloud.dataproc.v1.UpdateClusterRequest) other);
1001       } else {
1002         super.mergeFrom(other);
1003         return this;
1004       }
1005     }
1006 
mergeFrom(com.google.cloud.dataproc.v1.UpdateClusterRequest other)1007     public Builder mergeFrom(com.google.cloud.dataproc.v1.UpdateClusterRequest other) {
1008       if (other == com.google.cloud.dataproc.v1.UpdateClusterRequest.getDefaultInstance())
1009         return this;
1010       if (!other.getProjectId().isEmpty()) {
1011         projectId_ = other.projectId_;
1012         bitField0_ |= 0x00000001;
1013         onChanged();
1014       }
1015       if (!other.getRegion().isEmpty()) {
1016         region_ = other.region_;
1017         bitField0_ |= 0x00000002;
1018         onChanged();
1019       }
1020       if (!other.getClusterName().isEmpty()) {
1021         clusterName_ = other.clusterName_;
1022         bitField0_ |= 0x00000004;
1023         onChanged();
1024       }
1025       if (other.hasCluster()) {
1026         mergeCluster(other.getCluster());
1027       }
1028       if (other.hasGracefulDecommissionTimeout()) {
1029         mergeGracefulDecommissionTimeout(other.getGracefulDecommissionTimeout());
1030       }
1031       if (other.hasUpdateMask()) {
1032         mergeUpdateMask(other.getUpdateMask());
1033       }
1034       if (!other.getRequestId().isEmpty()) {
1035         requestId_ = other.requestId_;
1036         bitField0_ |= 0x00000040;
1037         onChanged();
1038       }
1039       this.mergeUnknownFields(other.getUnknownFields());
1040       onChanged();
1041       return this;
1042     }
1043 
1044     @java.lang.Override
isInitialized()1045     public final boolean isInitialized() {
1046       return true;
1047     }
1048 
1049     @java.lang.Override
mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1050     public Builder mergeFrom(
1051         com.google.protobuf.CodedInputStream input,
1052         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1053         throws java.io.IOException {
1054       if (extensionRegistry == null) {
1055         throw new java.lang.NullPointerException();
1056       }
1057       try {
1058         boolean done = false;
1059         while (!done) {
1060           int tag = input.readTag();
1061           switch (tag) {
1062             case 0:
1063               done = true;
1064               break;
1065             case 10:
1066               {
1067                 projectId_ = input.readStringRequireUtf8();
1068                 bitField0_ |= 0x00000001;
1069                 break;
1070               } // case 10
1071             case 18:
1072               {
1073                 clusterName_ = input.readStringRequireUtf8();
1074                 bitField0_ |= 0x00000004;
1075                 break;
1076               } // case 18
1077             case 26:
1078               {
1079                 input.readMessage(getClusterFieldBuilder().getBuilder(), extensionRegistry);
1080                 bitField0_ |= 0x00000008;
1081                 break;
1082               } // case 26
1083             case 34:
1084               {
1085                 input.readMessage(getUpdateMaskFieldBuilder().getBuilder(), extensionRegistry);
1086                 bitField0_ |= 0x00000020;
1087                 break;
1088               } // case 34
1089             case 42:
1090               {
1091                 region_ = input.readStringRequireUtf8();
1092                 bitField0_ |= 0x00000002;
1093                 break;
1094               } // case 42
1095             case 50:
1096               {
1097                 input.readMessage(
1098                     getGracefulDecommissionTimeoutFieldBuilder().getBuilder(), extensionRegistry);
1099                 bitField0_ |= 0x00000010;
1100                 break;
1101               } // case 50
1102             case 58:
1103               {
1104                 requestId_ = input.readStringRequireUtf8();
1105                 bitField0_ |= 0x00000040;
1106                 break;
1107               } // case 58
1108             default:
1109               {
1110                 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
1111                   done = true; // was an endgroup tag
1112                 }
1113                 break;
1114               } // default:
1115           } // switch (tag)
1116         } // while (!done)
1117       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1118         throw e.unwrapIOException();
1119       } finally {
1120         onChanged();
1121       } // finally
1122       return this;
1123     }
1124 
1125     private int bitField0_;
1126 
1127     private java.lang.Object projectId_ = "";
1128     /**
1129      *
1130      *
1131      * <pre>
1132      * Required. The ID of the Google Cloud Platform project the
1133      * cluster belongs to.
1134      * </pre>
1135      *
1136      * <code>string project_id = 1 [(.google.api.field_behavior) = REQUIRED];</code>
1137      *
1138      * @return The projectId.
1139      */
getProjectId()1140     public java.lang.String getProjectId() {
1141       java.lang.Object ref = projectId_;
1142       if (!(ref instanceof java.lang.String)) {
1143         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1144         java.lang.String s = bs.toStringUtf8();
1145         projectId_ = s;
1146         return s;
1147       } else {
1148         return (java.lang.String) ref;
1149       }
1150     }
1151     /**
1152      *
1153      *
1154      * <pre>
1155      * Required. The ID of the Google Cloud Platform project the
1156      * cluster belongs to.
1157      * </pre>
1158      *
1159      * <code>string project_id = 1 [(.google.api.field_behavior) = REQUIRED];</code>
1160      *
1161      * @return The bytes for projectId.
1162      */
getProjectIdBytes()1163     public com.google.protobuf.ByteString getProjectIdBytes() {
1164       java.lang.Object ref = projectId_;
1165       if (ref instanceof String) {
1166         com.google.protobuf.ByteString b =
1167             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1168         projectId_ = b;
1169         return b;
1170       } else {
1171         return (com.google.protobuf.ByteString) ref;
1172       }
1173     }
1174     /**
1175      *
1176      *
1177      * <pre>
1178      * Required. The ID of the Google Cloud Platform project the
1179      * cluster belongs to.
1180      * </pre>
1181      *
1182      * <code>string project_id = 1 [(.google.api.field_behavior) = REQUIRED];</code>
1183      *
1184      * @param value The projectId to set.
1185      * @return This builder for chaining.
1186      */
setProjectId(java.lang.String value)1187     public Builder setProjectId(java.lang.String value) {
1188       if (value == null) {
1189         throw new NullPointerException();
1190       }
1191       projectId_ = value;
1192       bitField0_ |= 0x00000001;
1193       onChanged();
1194       return this;
1195     }
1196     /**
1197      *
1198      *
1199      * <pre>
1200      * Required. The ID of the Google Cloud Platform project the
1201      * cluster belongs to.
1202      * </pre>
1203      *
1204      * <code>string project_id = 1 [(.google.api.field_behavior) = REQUIRED];</code>
1205      *
1206      * @return This builder for chaining.
1207      */
clearProjectId()1208     public Builder clearProjectId() {
1209       projectId_ = getDefaultInstance().getProjectId();
1210       bitField0_ = (bitField0_ & ~0x00000001);
1211       onChanged();
1212       return this;
1213     }
1214     /**
1215      *
1216      *
1217      * <pre>
1218      * Required. The ID of the Google Cloud Platform project the
1219      * cluster belongs to.
1220      * </pre>
1221      *
1222      * <code>string project_id = 1 [(.google.api.field_behavior) = REQUIRED];</code>
1223      *
1224      * @param value The bytes for projectId to set.
1225      * @return This builder for chaining.
1226      */
setProjectIdBytes(com.google.protobuf.ByteString value)1227     public Builder setProjectIdBytes(com.google.protobuf.ByteString value) {
1228       if (value == null) {
1229         throw new NullPointerException();
1230       }
1231       checkByteStringIsUtf8(value);
1232       projectId_ = value;
1233       bitField0_ |= 0x00000001;
1234       onChanged();
1235       return this;
1236     }
1237 
1238     private java.lang.Object region_ = "";
1239     /**
1240      *
1241      *
1242      * <pre>
1243      * Required. The Dataproc region in which to handle the request.
1244      * </pre>
1245      *
1246      * <code>string region = 5 [(.google.api.field_behavior) = REQUIRED];</code>
1247      *
1248      * @return The region.
1249      */
getRegion()1250     public java.lang.String getRegion() {
1251       java.lang.Object ref = region_;
1252       if (!(ref instanceof java.lang.String)) {
1253         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1254         java.lang.String s = bs.toStringUtf8();
1255         region_ = s;
1256         return s;
1257       } else {
1258         return (java.lang.String) ref;
1259       }
1260     }
1261     /**
1262      *
1263      *
1264      * <pre>
1265      * Required. The Dataproc region in which to handle the request.
1266      * </pre>
1267      *
1268      * <code>string region = 5 [(.google.api.field_behavior) = REQUIRED];</code>
1269      *
1270      * @return The bytes for region.
1271      */
getRegionBytes()1272     public com.google.protobuf.ByteString getRegionBytes() {
1273       java.lang.Object ref = region_;
1274       if (ref instanceof String) {
1275         com.google.protobuf.ByteString b =
1276             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1277         region_ = b;
1278         return b;
1279       } else {
1280         return (com.google.protobuf.ByteString) ref;
1281       }
1282     }
1283     /**
1284      *
1285      *
1286      * <pre>
1287      * Required. The Dataproc region in which to handle the request.
1288      * </pre>
1289      *
1290      * <code>string region = 5 [(.google.api.field_behavior) = REQUIRED];</code>
1291      *
1292      * @param value The region to set.
1293      * @return This builder for chaining.
1294      */
setRegion(java.lang.String value)1295     public Builder setRegion(java.lang.String value) {
1296       if (value == null) {
1297         throw new NullPointerException();
1298       }
1299       region_ = value;
1300       bitField0_ |= 0x00000002;
1301       onChanged();
1302       return this;
1303     }
1304     /**
1305      *
1306      *
1307      * <pre>
1308      * Required. The Dataproc region in which to handle the request.
1309      * </pre>
1310      *
1311      * <code>string region = 5 [(.google.api.field_behavior) = REQUIRED];</code>
1312      *
1313      * @return This builder for chaining.
1314      */
clearRegion()1315     public Builder clearRegion() {
1316       region_ = getDefaultInstance().getRegion();
1317       bitField0_ = (bitField0_ & ~0x00000002);
1318       onChanged();
1319       return this;
1320     }
1321     /**
1322      *
1323      *
1324      * <pre>
1325      * Required. The Dataproc region in which to handle the request.
1326      * </pre>
1327      *
1328      * <code>string region = 5 [(.google.api.field_behavior) = REQUIRED];</code>
1329      *
1330      * @param value The bytes for region to set.
1331      * @return This builder for chaining.
1332      */
setRegionBytes(com.google.protobuf.ByteString value)1333     public Builder setRegionBytes(com.google.protobuf.ByteString value) {
1334       if (value == null) {
1335         throw new NullPointerException();
1336       }
1337       checkByteStringIsUtf8(value);
1338       region_ = value;
1339       bitField0_ |= 0x00000002;
1340       onChanged();
1341       return this;
1342     }
1343 
1344     private java.lang.Object clusterName_ = "";
1345     /**
1346      *
1347      *
1348      * <pre>
1349      * Required. The cluster name.
1350      * </pre>
1351      *
1352      * <code>string cluster_name = 2 [(.google.api.field_behavior) = REQUIRED];</code>
1353      *
1354      * @return The clusterName.
1355      */
getClusterName()1356     public java.lang.String getClusterName() {
1357       java.lang.Object ref = clusterName_;
1358       if (!(ref instanceof java.lang.String)) {
1359         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1360         java.lang.String s = bs.toStringUtf8();
1361         clusterName_ = s;
1362         return s;
1363       } else {
1364         return (java.lang.String) ref;
1365       }
1366     }
1367     /**
1368      *
1369      *
1370      * <pre>
1371      * Required. The cluster name.
1372      * </pre>
1373      *
1374      * <code>string cluster_name = 2 [(.google.api.field_behavior) = REQUIRED];</code>
1375      *
1376      * @return The bytes for clusterName.
1377      */
getClusterNameBytes()1378     public com.google.protobuf.ByteString getClusterNameBytes() {
1379       java.lang.Object ref = clusterName_;
1380       if (ref instanceof String) {
1381         com.google.protobuf.ByteString b =
1382             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1383         clusterName_ = b;
1384         return b;
1385       } else {
1386         return (com.google.protobuf.ByteString) ref;
1387       }
1388     }
1389     /**
1390      *
1391      *
1392      * <pre>
1393      * Required. The cluster name.
1394      * </pre>
1395      *
1396      * <code>string cluster_name = 2 [(.google.api.field_behavior) = REQUIRED];</code>
1397      *
1398      * @param value The clusterName to set.
1399      * @return This builder for chaining.
1400      */
setClusterName(java.lang.String value)1401     public Builder setClusterName(java.lang.String value) {
1402       if (value == null) {
1403         throw new NullPointerException();
1404       }
1405       clusterName_ = value;
1406       bitField0_ |= 0x00000004;
1407       onChanged();
1408       return this;
1409     }
1410     /**
1411      *
1412      *
1413      * <pre>
1414      * Required. The cluster name.
1415      * </pre>
1416      *
1417      * <code>string cluster_name = 2 [(.google.api.field_behavior) = REQUIRED];</code>
1418      *
1419      * @return This builder for chaining.
1420      */
clearClusterName()1421     public Builder clearClusterName() {
1422       clusterName_ = getDefaultInstance().getClusterName();
1423       bitField0_ = (bitField0_ & ~0x00000004);
1424       onChanged();
1425       return this;
1426     }
1427     /**
1428      *
1429      *
1430      * <pre>
1431      * Required. The cluster name.
1432      * </pre>
1433      *
1434      * <code>string cluster_name = 2 [(.google.api.field_behavior) = REQUIRED];</code>
1435      *
1436      * @param value The bytes for clusterName to set.
1437      * @return This builder for chaining.
1438      */
setClusterNameBytes(com.google.protobuf.ByteString value)1439     public Builder setClusterNameBytes(com.google.protobuf.ByteString value) {
1440       if (value == null) {
1441         throw new NullPointerException();
1442       }
1443       checkByteStringIsUtf8(value);
1444       clusterName_ = value;
1445       bitField0_ |= 0x00000004;
1446       onChanged();
1447       return this;
1448     }
1449 
1450     private com.google.cloud.dataproc.v1.Cluster cluster_;
1451     private com.google.protobuf.SingleFieldBuilderV3<
1452             com.google.cloud.dataproc.v1.Cluster,
1453             com.google.cloud.dataproc.v1.Cluster.Builder,
1454             com.google.cloud.dataproc.v1.ClusterOrBuilder>
1455         clusterBuilder_;
1456     /**
1457      *
1458      *
1459      * <pre>
1460      * Required. The changes to the cluster.
1461      * </pre>
1462      *
1463      * <code>
1464      * .google.cloud.dataproc.v1.Cluster cluster = 3 [(.google.api.field_behavior) = REQUIRED];
1465      * </code>
1466      *
1467      * @return Whether the cluster field is set.
1468      */
hasCluster()1469     public boolean hasCluster() {
1470       return ((bitField0_ & 0x00000008) != 0);
1471     }
1472     /**
1473      *
1474      *
1475      * <pre>
1476      * Required. The changes to the cluster.
1477      * </pre>
1478      *
1479      * <code>
1480      * .google.cloud.dataproc.v1.Cluster cluster = 3 [(.google.api.field_behavior) = REQUIRED];
1481      * </code>
1482      *
1483      * @return The cluster.
1484      */
getCluster()1485     public com.google.cloud.dataproc.v1.Cluster getCluster() {
1486       if (clusterBuilder_ == null) {
1487         return cluster_ == null
1488             ? com.google.cloud.dataproc.v1.Cluster.getDefaultInstance()
1489             : cluster_;
1490       } else {
1491         return clusterBuilder_.getMessage();
1492       }
1493     }
1494     /**
1495      *
1496      *
1497      * <pre>
1498      * Required. The changes to the cluster.
1499      * </pre>
1500      *
1501      * <code>
1502      * .google.cloud.dataproc.v1.Cluster cluster = 3 [(.google.api.field_behavior) = REQUIRED];
1503      * </code>
1504      */
setCluster(com.google.cloud.dataproc.v1.Cluster value)1505     public Builder setCluster(com.google.cloud.dataproc.v1.Cluster value) {
1506       if (clusterBuilder_ == null) {
1507         if (value == null) {
1508           throw new NullPointerException();
1509         }
1510         cluster_ = value;
1511       } else {
1512         clusterBuilder_.setMessage(value);
1513       }
1514       bitField0_ |= 0x00000008;
1515       onChanged();
1516       return this;
1517     }
1518     /**
1519      *
1520      *
1521      * <pre>
1522      * Required. The changes to the cluster.
1523      * </pre>
1524      *
1525      * <code>
1526      * .google.cloud.dataproc.v1.Cluster cluster = 3 [(.google.api.field_behavior) = REQUIRED];
1527      * </code>
1528      */
setCluster(com.google.cloud.dataproc.v1.Cluster.Builder builderForValue)1529     public Builder setCluster(com.google.cloud.dataproc.v1.Cluster.Builder builderForValue) {
1530       if (clusterBuilder_ == null) {
1531         cluster_ = builderForValue.build();
1532       } else {
1533         clusterBuilder_.setMessage(builderForValue.build());
1534       }
1535       bitField0_ |= 0x00000008;
1536       onChanged();
1537       return this;
1538     }
1539     /**
1540      *
1541      *
1542      * <pre>
1543      * Required. The changes to the cluster.
1544      * </pre>
1545      *
1546      * <code>
1547      * .google.cloud.dataproc.v1.Cluster cluster = 3 [(.google.api.field_behavior) = REQUIRED];
1548      * </code>
1549      */
mergeCluster(com.google.cloud.dataproc.v1.Cluster value)1550     public Builder mergeCluster(com.google.cloud.dataproc.v1.Cluster value) {
1551       if (clusterBuilder_ == null) {
1552         if (((bitField0_ & 0x00000008) != 0)
1553             && cluster_ != null
1554             && cluster_ != com.google.cloud.dataproc.v1.Cluster.getDefaultInstance()) {
1555           getClusterBuilder().mergeFrom(value);
1556         } else {
1557           cluster_ = value;
1558         }
1559       } else {
1560         clusterBuilder_.mergeFrom(value);
1561       }
1562       bitField0_ |= 0x00000008;
1563       onChanged();
1564       return this;
1565     }
1566     /**
1567      *
1568      *
1569      * <pre>
1570      * Required. The changes to the cluster.
1571      * </pre>
1572      *
1573      * <code>
1574      * .google.cloud.dataproc.v1.Cluster cluster = 3 [(.google.api.field_behavior) = REQUIRED];
1575      * </code>
1576      */
clearCluster()1577     public Builder clearCluster() {
1578       bitField0_ = (bitField0_ & ~0x00000008);
1579       cluster_ = null;
1580       if (clusterBuilder_ != null) {
1581         clusterBuilder_.dispose();
1582         clusterBuilder_ = null;
1583       }
1584       onChanged();
1585       return this;
1586     }
1587     /**
1588      *
1589      *
1590      * <pre>
1591      * Required. The changes to the cluster.
1592      * </pre>
1593      *
1594      * <code>
1595      * .google.cloud.dataproc.v1.Cluster cluster = 3 [(.google.api.field_behavior) = REQUIRED];
1596      * </code>
1597      */
getClusterBuilder()1598     public com.google.cloud.dataproc.v1.Cluster.Builder getClusterBuilder() {
1599       bitField0_ |= 0x00000008;
1600       onChanged();
1601       return getClusterFieldBuilder().getBuilder();
1602     }
1603     /**
1604      *
1605      *
1606      * <pre>
1607      * Required. The changes to the cluster.
1608      * </pre>
1609      *
1610      * <code>
1611      * .google.cloud.dataproc.v1.Cluster cluster = 3 [(.google.api.field_behavior) = REQUIRED];
1612      * </code>
1613      */
getClusterOrBuilder()1614     public com.google.cloud.dataproc.v1.ClusterOrBuilder getClusterOrBuilder() {
1615       if (clusterBuilder_ != null) {
1616         return clusterBuilder_.getMessageOrBuilder();
1617       } else {
1618         return cluster_ == null
1619             ? com.google.cloud.dataproc.v1.Cluster.getDefaultInstance()
1620             : cluster_;
1621       }
1622     }
1623     /**
1624      *
1625      *
1626      * <pre>
1627      * Required. The changes to the cluster.
1628      * </pre>
1629      *
1630      * <code>
1631      * .google.cloud.dataproc.v1.Cluster cluster = 3 [(.google.api.field_behavior) = REQUIRED];
1632      * </code>
1633      */
1634     private com.google.protobuf.SingleFieldBuilderV3<
1635             com.google.cloud.dataproc.v1.Cluster,
1636             com.google.cloud.dataproc.v1.Cluster.Builder,
1637             com.google.cloud.dataproc.v1.ClusterOrBuilder>
getClusterFieldBuilder()1638         getClusterFieldBuilder() {
1639       if (clusterBuilder_ == null) {
1640         clusterBuilder_ =
1641             new com.google.protobuf.SingleFieldBuilderV3<
1642                 com.google.cloud.dataproc.v1.Cluster,
1643                 com.google.cloud.dataproc.v1.Cluster.Builder,
1644                 com.google.cloud.dataproc.v1.ClusterOrBuilder>(
1645                 getCluster(), getParentForChildren(), isClean());
1646         cluster_ = null;
1647       }
1648       return clusterBuilder_;
1649     }
1650 
1651     private com.google.protobuf.Duration gracefulDecommissionTimeout_;
1652     private com.google.protobuf.SingleFieldBuilderV3<
1653             com.google.protobuf.Duration,
1654             com.google.protobuf.Duration.Builder,
1655             com.google.protobuf.DurationOrBuilder>
1656         gracefulDecommissionTimeoutBuilder_;
1657     /**
1658      *
1659      *
1660      * <pre>
1661      * Optional. Timeout for graceful YARN decommissioning. Graceful
1662      * decommissioning allows removing nodes from the cluster without
1663      * interrupting jobs in progress. Timeout specifies how long to wait for jobs
1664      * in progress to finish before forcefully removing nodes (and potentially
1665      * interrupting jobs). Default timeout is 0 (for forceful decommission), and
1666      * the maximum allowed timeout is 1 day. (see JSON representation of
1667      * [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)).
1668      * Only supported on Dataproc image versions 1.2 and higher.
1669      * </pre>
1670      *
1671      * <code>
1672      * .google.protobuf.Duration graceful_decommission_timeout = 6 [(.google.api.field_behavior) = OPTIONAL];
1673      * </code>
1674      *
1675      * @return Whether the gracefulDecommissionTimeout field is set.
1676      */
hasGracefulDecommissionTimeout()1677     public boolean hasGracefulDecommissionTimeout() {
1678       return ((bitField0_ & 0x00000010) != 0);
1679     }
1680     /**
1681      *
1682      *
1683      * <pre>
1684      * Optional. Timeout for graceful YARN decommissioning. Graceful
1685      * decommissioning allows removing nodes from the cluster without
1686      * interrupting jobs in progress. Timeout specifies how long to wait for jobs
1687      * in progress to finish before forcefully removing nodes (and potentially
1688      * interrupting jobs). Default timeout is 0 (for forceful decommission), and
1689      * the maximum allowed timeout is 1 day. (see JSON representation of
1690      * [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)).
1691      * Only supported on Dataproc image versions 1.2 and higher.
1692      * </pre>
1693      *
1694      * <code>
1695      * .google.protobuf.Duration graceful_decommission_timeout = 6 [(.google.api.field_behavior) = OPTIONAL];
1696      * </code>
1697      *
1698      * @return The gracefulDecommissionTimeout.
1699      */
getGracefulDecommissionTimeout()1700     public com.google.protobuf.Duration getGracefulDecommissionTimeout() {
1701       if (gracefulDecommissionTimeoutBuilder_ == null) {
1702         return gracefulDecommissionTimeout_ == null
1703             ? com.google.protobuf.Duration.getDefaultInstance()
1704             : gracefulDecommissionTimeout_;
1705       } else {
1706         return gracefulDecommissionTimeoutBuilder_.getMessage();
1707       }
1708     }
1709     /**
1710      *
1711      *
1712      * <pre>
1713      * Optional. Timeout for graceful YARN decommissioning. Graceful
1714      * decommissioning allows removing nodes from the cluster without
1715      * interrupting jobs in progress. Timeout specifies how long to wait for jobs
1716      * in progress to finish before forcefully removing nodes (and potentially
1717      * interrupting jobs). Default timeout is 0 (for forceful decommission), and
1718      * the maximum allowed timeout is 1 day. (see JSON representation of
1719      * [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)).
1720      * Only supported on Dataproc image versions 1.2 and higher.
1721      * </pre>
1722      *
1723      * <code>
1724      * .google.protobuf.Duration graceful_decommission_timeout = 6 [(.google.api.field_behavior) = OPTIONAL];
1725      * </code>
1726      */
setGracefulDecommissionTimeout(com.google.protobuf.Duration value)1727     public Builder setGracefulDecommissionTimeout(com.google.protobuf.Duration value) {
1728       if (gracefulDecommissionTimeoutBuilder_ == null) {
1729         if (value == null) {
1730           throw new NullPointerException();
1731         }
1732         gracefulDecommissionTimeout_ = value;
1733       } else {
1734         gracefulDecommissionTimeoutBuilder_.setMessage(value);
1735       }
1736       bitField0_ |= 0x00000010;
1737       onChanged();
1738       return this;
1739     }
1740     /**
1741      *
1742      *
1743      * <pre>
1744      * Optional. Timeout for graceful YARN decommissioning. Graceful
1745      * decommissioning allows removing nodes from the cluster without
1746      * interrupting jobs in progress. Timeout specifies how long to wait for jobs
1747      * in progress to finish before forcefully removing nodes (and potentially
1748      * interrupting jobs). Default timeout is 0 (for forceful decommission), and
1749      * the maximum allowed timeout is 1 day. (see JSON representation of
1750      * [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)).
1751      * Only supported on Dataproc image versions 1.2 and higher.
1752      * </pre>
1753      *
1754      * <code>
1755      * .google.protobuf.Duration graceful_decommission_timeout = 6 [(.google.api.field_behavior) = OPTIONAL];
1756      * </code>
1757      */
setGracefulDecommissionTimeout( com.google.protobuf.Duration.Builder builderForValue)1758     public Builder setGracefulDecommissionTimeout(
1759         com.google.protobuf.Duration.Builder builderForValue) {
1760       if (gracefulDecommissionTimeoutBuilder_ == null) {
1761         gracefulDecommissionTimeout_ = builderForValue.build();
1762       } else {
1763         gracefulDecommissionTimeoutBuilder_.setMessage(builderForValue.build());
1764       }
1765       bitField0_ |= 0x00000010;
1766       onChanged();
1767       return this;
1768     }
1769     /**
1770      *
1771      *
1772      * <pre>
1773      * Optional. Timeout for graceful YARN decommissioning. Graceful
1774      * decommissioning allows removing nodes from the cluster without
1775      * interrupting jobs in progress. Timeout specifies how long to wait for jobs
1776      * in progress to finish before forcefully removing nodes (and potentially
1777      * interrupting jobs). Default timeout is 0 (for forceful decommission), and
1778      * the maximum allowed timeout is 1 day. (see JSON representation of
1779      * [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)).
1780      * Only supported on Dataproc image versions 1.2 and higher.
1781      * </pre>
1782      *
1783      * <code>
1784      * .google.protobuf.Duration graceful_decommission_timeout = 6 [(.google.api.field_behavior) = OPTIONAL];
1785      * </code>
1786      */
mergeGracefulDecommissionTimeout(com.google.protobuf.Duration value)1787     public Builder mergeGracefulDecommissionTimeout(com.google.protobuf.Duration value) {
1788       if (gracefulDecommissionTimeoutBuilder_ == null) {
1789         if (((bitField0_ & 0x00000010) != 0)
1790             && gracefulDecommissionTimeout_ != null
1791             && gracefulDecommissionTimeout_ != com.google.protobuf.Duration.getDefaultInstance()) {
1792           getGracefulDecommissionTimeoutBuilder().mergeFrom(value);
1793         } else {
1794           gracefulDecommissionTimeout_ = value;
1795         }
1796       } else {
1797         gracefulDecommissionTimeoutBuilder_.mergeFrom(value);
1798       }
1799       bitField0_ |= 0x00000010;
1800       onChanged();
1801       return this;
1802     }
1803     /**
1804      *
1805      *
1806      * <pre>
1807      * Optional. Timeout for graceful YARN decommissioning. Graceful
1808      * decommissioning allows removing nodes from the cluster without
1809      * interrupting jobs in progress. Timeout specifies how long to wait for jobs
1810      * in progress to finish before forcefully removing nodes (and potentially
1811      * interrupting jobs). Default timeout is 0 (for forceful decommission), and
1812      * the maximum allowed timeout is 1 day. (see JSON representation of
1813      * [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)).
1814      * Only supported on Dataproc image versions 1.2 and higher.
1815      * </pre>
1816      *
1817      * <code>
1818      * .google.protobuf.Duration graceful_decommission_timeout = 6 [(.google.api.field_behavior) = OPTIONAL];
1819      * </code>
1820      */
clearGracefulDecommissionTimeout()1821     public Builder clearGracefulDecommissionTimeout() {
1822       bitField0_ = (bitField0_ & ~0x00000010);
1823       gracefulDecommissionTimeout_ = null;
1824       if (gracefulDecommissionTimeoutBuilder_ != null) {
1825         gracefulDecommissionTimeoutBuilder_.dispose();
1826         gracefulDecommissionTimeoutBuilder_ = null;
1827       }
1828       onChanged();
1829       return this;
1830     }
1831     /**
1832      *
1833      *
1834      * <pre>
1835      * Optional. Timeout for graceful YARN decommissioning. Graceful
1836      * decommissioning allows removing nodes from the cluster without
1837      * interrupting jobs in progress. Timeout specifies how long to wait for jobs
1838      * in progress to finish before forcefully removing nodes (and potentially
1839      * interrupting jobs). Default timeout is 0 (for forceful decommission), and
1840      * the maximum allowed timeout is 1 day. (see JSON representation of
1841      * [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)).
1842      * Only supported on Dataproc image versions 1.2 and higher.
1843      * </pre>
1844      *
1845      * <code>
1846      * .google.protobuf.Duration graceful_decommission_timeout = 6 [(.google.api.field_behavior) = OPTIONAL];
1847      * </code>
1848      */
getGracefulDecommissionTimeoutBuilder()1849     public com.google.protobuf.Duration.Builder getGracefulDecommissionTimeoutBuilder() {
1850       bitField0_ |= 0x00000010;
1851       onChanged();
1852       return getGracefulDecommissionTimeoutFieldBuilder().getBuilder();
1853     }
1854     /**
1855      *
1856      *
1857      * <pre>
1858      * Optional. Timeout for graceful YARN decommissioning. Graceful
1859      * decommissioning allows removing nodes from the cluster without
1860      * interrupting jobs in progress. Timeout specifies how long to wait for jobs
1861      * in progress to finish before forcefully removing nodes (and potentially
1862      * interrupting jobs). Default timeout is 0 (for forceful decommission), and
1863      * the maximum allowed timeout is 1 day. (see JSON representation of
1864      * [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)).
1865      * Only supported on Dataproc image versions 1.2 and higher.
1866      * </pre>
1867      *
1868      * <code>
1869      * .google.protobuf.Duration graceful_decommission_timeout = 6 [(.google.api.field_behavior) = OPTIONAL];
1870      * </code>
1871      */
getGracefulDecommissionTimeoutOrBuilder()1872     public com.google.protobuf.DurationOrBuilder getGracefulDecommissionTimeoutOrBuilder() {
1873       if (gracefulDecommissionTimeoutBuilder_ != null) {
1874         return gracefulDecommissionTimeoutBuilder_.getMessageOrBuilder();
1875       } else {
1876         return gracefulDecommissionTimeout_ == null
1877             ? com.google.protobuf.Duration.getDefaultInstance()
1878             : gracefulDecommissionTimeout_;
1879       }
1880     }
1881     /**
1882      *
1883      *
1884      * <pre>
1885      * Optional. Timeout for graceful YARN decommissioning. Graceful
1886      * decommissioning allows removing nodes from the cluster without
1887      * interrupting jobs in progress. Timeout specifies how long to wait for jobs
1888      * in progress to finish before forcefully removing nodes (and potentially
1889      * interrupting jobs). Default timeout is 0 (for forceful decommission), and
1890      * the maximum allowed timeout is 1 day. (see JSON representation of
1891      * [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)).
1892      * Only supported on Dataproc image versions 1.2 and higher.
1893      * </pre>
1894      *
1895      * <code>
1896      * .google.protobuf.Duration graceful_decommission_timeout = 6 [(.google.api.field_behavior) = OPTIONAL];
1897      * </code>
1898      */
1899     private com.google.protobuf.SingleFieldBuilderV3<
1900             com.google.protobuf.Duration,
1901             com.google.protobuf.Duration.Builder,
1902             com.google.protobuf.DurationOrBuilder>
getGracefulDecommissionTimeoutFieldBuilder()1903         getGracefulDecommissionTimeoutFieldBuilder() {
1904       if (gracefulDecommissionTimeoutBuilder_ == null) {
1905         gracefulDecommissionTimeoutBuilder_ =
1906             new com.google.protobuf.SingleFieldBuilderV3<
1907                 com.google.protobuf.Duration,
1908                 com.google.protobuf.Duration.Builder,
1909                 com.google.protobuf.DurationOrBuilder>(
1910                 getGracefulDecommissionTimeout(), getParentForChildren(), isClean());
1911         gracefulDecommissionTimeout_ = null;
1912       }
1913       return gracefulDecommissionTimeoutBuilder_;
1914     }
1915 
1916     private com.google.protobuf.FieldMask updateMask_;
1917     private com.google.protobuf.SingleFieldBuilderV3<
1918             com.google.protobuf.FieldMask,
1919             com.google.protobuf.FieldMask.Builder,
1920             com.google.protobuf.FieldMaskOrBuilder>
1921         updateMaskBuilder_;
1922     /**
1923      *
1924      *
1925      * <pre>
1926      * Required. Specifies the path, relative to `Cluster`, of
1927      * the field to update. For example, to change the number of workers
1928      * in a cluster to 5, the `update_mask` parameter would be
1929      * specified as `config.worker_config.num_instances`,
1930      * and the `PATCH` request body would specify the new value, as follows:
1931      *     {
1932      *       "config":{
1933      *         "workerConfig":{
1934      *           "numInstances":"5"
1935      *         }
1936      *       }
1937      *     }
1938      * Similarly, to change the number of preemptible workers in a cluster to 5,
1939      * the `update_mask` parameter would be
1940      * `config.secondary_worker_config.num_instances`, and the `PATCH` request
1941      * body would be set as follows:
1942      *     {
1943      *       "config":{
1944      *         "secondaryWorkerConfig":{
1945      *           "numInstances":"5"
1946      *         }
1947      *       }
1948      *     }
1949      * &lt;strong&gt;Note:&lt;/strong&gt; Currently, only the following fields can be updated:
1950      *  &lt;table&gt;
1951      *  &lt;tbody&gt;
1952      *  &lt;tr&gt;
1953      *  &lt;td&gt;&lt;strong&gt;Mask&lt;/strong&gt;&lt;/td&gt;
1954      *  &lt;td&gt;&lt;strong&gt;Purpose&lt;/strong&gt;&lt;/td&gt;
1955      *  &lt;/tr&gt;
1956      *  &lt;tr&gt;
1957      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;labels&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
1958      *  &lt;td&gt;Update labels&lt;/td&gt;
1959      *  &lt;/tr&gt;
1960      *  &lt;tr&gt;
1961      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
1962      *  &lt;td&gt;Resize primary worker group&lt;/td&gt;
1963      *  &lt;/tr&gt;
1964      *  &lt;tr&gt;
1965      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.secondary_worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
1966      *  &lt;td&gt;Resize secondary worker group&lt;/td&gt;
1967      *  &lt;/tr&gt;
1968      *  &lt;tr&gt;
1969      *  &lt;td&gt;config.autoscaling_config.policy_uri&lt;/td&gt;&lt;td&gt;Use, stop using, or
1970      *  change autoscaling policies&lt;/td&gt;
1971      *  &lt;/tr&gt;
1972      *  &lt;/tbody&gt;
1973      *  &lt;/table&gt;
1974      * </pre>
1975      *
1976      * <code>.google.protobuf.FieldMask update_mask = 4 [(.google.api.field_behavior) = REQUIRED];
1977      * </code>
1978      *
1979      * @return Whether the updateMask field is set.
1980      */
hasUpdateMask()1981     public boolean hasUpdateMask() {
1982       return ((bitField0_ & 0x00000020) != 0);
1983     }
1984     /**
1985      *
1986      *
1987      * <pre>
1988      * Required. Specifies the path, relative to `Cluster`, of
1989      * the field to update. For example, to change the number of workers
1990      * in a cluster to 5, the `update_mask` parameter would be
1991      * specified as `config.worker_config.num_instances`,
1992      * and the `PATCH` request body would specify the new value, as follows:
1993      *     {
1994      *       "config":{
1995      *         "workerConfig":{
1996      *           "numInstances":"5"
1997      *         }
1998      *       }
1999      *     }
2000      * Similarly, to change the number of preemptible workers in a cluster to 5,
2001      * the `update_mask` parameter would be
2002      * `config.secondary_worker_config.num_instances`, and the `PATCH` request
2003      * body would be set as follows:
2004      *     {
2005      *       "config":{
2006      *         "secondaryWorkerConfig":{
2007      *           "numInstances":"5"
2008      *         }
2009      *       }
2010      *     }
2011      * &lt;strong&gt;Note:&lt;/strong&gt; Currently, only the following fields can be updated:
2012      *  &lt;table&gt;
2013      *  &lt;tbody&gt;
2014      *  &lt;tr&gt;
2015      *  &lt;td&gt;&lt;strong&gt;Mask&lt;/strong&gt;&lt;/td&gt;
2016      *  &lt;td&gt;&lt;strong&gt;Purpose&lt;/strong&gt;&lt;/td&gt;
2017      *  &lt;/tr&gt;
2018      *  &lt;tr&gt;
2019      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;labels&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2020      *  &lt;td&gt;Update labels&lt;/td&gt;
2021      *  &lt;/tr&gt;
2022      *  &lt;tr&gt;
2023      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2024      *  &lt;td&gt;Resize primary worker group&lt;/td&gt;
2025      *  &lt;/tr&gt;
2026      *  &lt;tr&gt;
2027      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.secondary_worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2028      *  &lt;td&gt;Resize secondary worker group&lt;/td&gt;
2029      *  &lt;/tr&gt;
2030      *  &lt;tr&gt;
2031      *  &lt;td&gt;config.autoscaling_config.policy_uri&lt;/td&gt;&lt;td&gt;Use, stop using, or
2032      *  change autoscaling policies&lt;/td&gt;
2033      *  &lt;/tr&gt;
2034      *  &lt;/tbody&gt;
2035      *  &lt;/table&gt;
2036      * </pre>
2037      *
2038      * <code>.google.protobuf.FieldMask update_mask = 4 [(.google.api.field_behavior) = REQUIRED];
2039      * </code>
2040      *
2041      * @return The updateMask.
2042      */
getUpdateMask()2043     public com.google.protobuf.FieldMask getUpdateMask() {
2044       if (updateMaskBuilder_ == null) {
2045         return updateMask_ == null
2046             ? com.google.protobuf.FieldMask.getDefaultInstance()
2047             : updateMask_;
2048       } else {
2049         return updateMaskBuilder_.getMessage();
2050       }
2051     }
2052     /**
2053      *
2054      *
2055      * <pre>
2056      * Required. Specifies the path, relative to `Cluster`, of
2057      * the field to update. For example, to change the number of workers
2058      * in a cluster to 5, the `update_mask` parameter would be
2059      * specified as `config.worker_config.num_instances`,
2060      * and the `PATCH` request body would specify the new value, as follows:
2061      *     {
2062      *       "config":{
2063      *         "workerConfig":{
2064      *           "numInstances":"5"
2065      *         }
2066      *       }
2067      *     }
2068      * Similarly, to change the number of preemptible workers in a cluster to 5,
2069      * the `update_mask` parameter would be
2070      * `config.secondary_worker_config.num_instances`, and the `PATCH` request
2071      * body would be set as follows:
2072      *     {
2073      *       "config":{
2074      *         "secondaryWorkerConfig":{
2075      *           "numInstances":"5"
2076      *         }
2077      *       }
2078      *     }
2079      * &lt;strong&gt;Note:&lt;/strong&gt; Currently, only the following fields can be updated:
2080      *  &lt;table&gt;
2081      *  &lt;tbody&gt;
2082      *  &lt;tr&gt;
2083      *  &lt;td&gt;&lt;strong&gt;Mask&lt;/strong&gt;&lt;/td&gt;
2084      *  &lt;td&gt;&lt;strong&gt;Purpose&lt;/strong&gt;&lt;/td&gt;
2085      *  &lt;/tr&gt;
2086      *  &lt;tr&gt;
2087      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;labels&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2088      *  &lt;td&gt;Update labels&lt;/td&gt;
2089      *  &lt;/tr&gt;
2090      *  &lt;tr&gt;
2091      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2092      *  &lt;td&gt;Resize primary worker group&lt;/td&gt;
2093      *  &lt;/tr&gt;
2094      *  &lt;tr&gt;
2095      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.secondary_worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2096      *  &lt;td&gt;Resize secondary worker group&lt;/td&gt;
2097      *  &lt;/tr&gt;
2098      *  &lt;tr&gt;
2099      *  &lt;td&gt;config.autoscaling_config.policy_uri&lt;/td&gt;&lt;td&gt;Use, stop using, or
2100      *  change autoscaling policies&lt;/td&gt;
2101      *  &lt;/tr&gt;
2102      *  &lt;/tbody&gt;
2103      *  &lt;/table&gt;
2104      * </pre>
2105      *
2106      * <code>.google.protobuf.FieldMask update_mask = 4 [(.google.api.field_behavior) = REQUIRED];
2107      * </code>
2108      */
setUpdateMask(com.google.protobuf.FieldMask value)2109     public Builder setUpdateMask(com.google.protobuf.FieldMask value) {
2110       if (updateMaskBuilder_ == null) {
2111         if (value == null) {
2112           throw new NullPointerException();
2113         }
2114         updateMask_ = value;
2115       } else {
2116         updateMaskBuilder_.setMessage(value);
2117       }
2118       bitField0_ |= 0x00000020;
2119       onChanged();
2120       return this;
2121     }
2122     /**
2123      *
2124      *
2125      * <pre>
2126      * Required. Specifies the path, relative to `Cluster`, of
2127      * the field to update. For example, to change the number of workers
2128      * in a cluster to 5, the `update_mask` parameter would be
2129      * specified as `config.worker_config.num_instances`,
2130      * and the `PATCH` request body would specify the new value, as follows:
2131      *     {
2132      *       "config":{
2133      *         "workerConfig":{
2134      *           "numInstances":"5"
2135      *         }
2136      *       }
2137      *     }
2138      * Similarly, to change the number of preemptible workers in a cluster to 5,
2139      * the `update_mask` parameter would be
2140      * `config.secondary_worker_config.num_instances`, and the `PATCH` request
2141      * body would be set as follows:
2142      *     {
2143      *       "config":{
2144      *         "secondaryWorkerConfig":{
2145      *           "numInstances":"5"
2146      *         }
2147      *       }
2148      *     }
2149      * &lt;strong&gt;Note:&lt;/strong&gt; Currently, only the following fields can be updated:
2150      *  &lt;table&gt;
2151      *  &lt;tbody&gt;
2152      *  &lt;tr&gt;
2153      *  &lt;td&gt;&lt;strong&gt;Mask&lt;/strong&gt;&lt;/td&gt;
2154      *  &lt;td&gt;&lt;strong&gt;Purpose&lt;/strong&gt;&lt;/td&gt;
2155      *  &lt;/tr&gt;
2156      *  &lt;tr&gt;
2157      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;labels&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2158      *  &lt;td&gt;Update labels&lt;/td&gt;
2159      *  &lt;/tr&gt;
2160      *  &lt;tr&gt;
2161      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2162      *  &lt;td&gt;Resize primary worker group&lt;/td&gt;
2163      *  &lt;/tr&gt;
2164      *  &lt;tr&gt;
2165      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.secondary_worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2166      *  &lt;td&gt;Resize secondary worker group&lt;/td&gt;
2167      *  &lt;/tr&gt;
2168      *  &lt;tr&gt;
2169      *  &lt;td&gt;config.autoscaling_config.policy_uri&lt;/td&gt;&lt;td&gt;Use, stop using, or
2170      *  change autoscaling policies&lt;/td&gt;
2171      *  &lt;/tr&gt;
2172      *  &lt;/tbody&gt;
2173      *  &lt;/table&gt;
2174      * </pre>
2175      *
2176      * <code>.google.protobuf.FieldMask update_mask = 4 [(.google.api.field_behavior) = REQUIRED];
2177      * </code>
2178      */
setUpdateMask(com.google.protobuf.FieldMask.Builder builderForValue)2179     public Builder setUpdateMask(com.google.protobuf.FieldMask.Builder builderForValue) {
2180       if (updateMaskBuilder_ == null) {
2181         updateMask_ = builderForValue.build();
2182       } else {
2183         updateMaskBuilder_.setMessage(builderForValue.build());
2184       }
2185       bitField0_ |= 0x00000020;
2186       onChanged();
2187       return this;
2188     }
2189     /**
2190      *
2191      *
2192      * <pre>
2193      * Required. Specifies the path, relative to `Cluster`, of
2194      * the field to update. For example, to change the number of workers
2195      * in a cluster to 5, the `update_mask` parameter would be
2196      * specified as `config.worker_config.num_instances`,
2197      * and the `PATCH` request body would specify the new value, as follows:
2198      *     {
2199      *       "config":{
2200      *         "workerConfig":{
2201      *           "numInstances":"5"
2202      *         }
2203      *       }
2204      *     }
2205      * Similarly, to change the number of preemptible workers in a cluster to 5,
2206      * the `update_mask` parameter would be
2207      * `config.secondary_worker_config.num_instances`, and the `PATCH` request
2208      * body would be set as follows:
2209      *     {
2210      *       "config":{
2211      *         "secondaryWorkerConfig":{
2212      *           "numInstances":"5"
2213      *         }
2214      *       }
2215      *     }
2216      * &lt;strong&gt;Note:&lt;/strong&gt; Currently, only the following fields can be updated:
2217      *  &lt;table&gt;
2218      *  &lt;tbody&gt;
2219      *  &lt;tr&gt;
2220      *  &lt;td&gt;&lt;strong&gt;Mask&lt;/strong&gt;&lt;/td&gt;
2221      *  &lt;td&gt;&lt;strong&gt;Purpose&lt;/strong&gt;&lt;/td&gt;
2222      *  &lt;/tr&gt;
2223      *  &lt;tr&gt;
2224      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;labels&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2225      *  &lt;td&gt;Update labels&lt;/td&gt;
2226      *  &lt;/tr&gt;
2227      *  &lt;tr&gt;
2228      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2229      *  &lt;td&gt;Resize primary worker group&lt;/td&gt;
2230      *  &lt;/tr&gt;
2231      *  &lt;tr&gt;
2232      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.secondary_worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2233      *  &lt;td&gt;Resize secondary worker group&lt;/td&gt;
2234      *  &lt;/tr&gt;
2235      *  &lt;tr&gt;
2236      *  &lt;td&gt;config.autoscaling_config.policy_uri&lt;/td&gt;&lt;td&gt;Use, stop using, or
2237      *  change autoscaling policies&lt;/td&gt;
2238      *  &lt;/tr&gt;
2239      *  &lt;/tbody&gt;
2240      *  &lt;/table&gt;
2241      * </pre>
2242      *
2243      * <code>.google.protobuf.FieldMask update_mask = 4 [(.google.api.field_behavior) = REQUIRED];
2244      * </code>
2245      */
mergeUpdateMask(com.google.protobuf.FieldMask value)2246     public Builder mergeUpdateMask(com.google.protobuf.FieldMask value) {
2247       if (updateMaskBuilder_ == null) {
2248         if (((bitField0_ & 0x00000020) != 0)
2249             && updateMask_ != null
2250             && updateMask_ != com.google.protobuf.FieldMask.getDefaultInstance()) {
2251           getUpdateMaskBuilder().mergeFrom(value);
2252         } else {
2253           updateMask_ = value;
2254         }
2255       } else {
2256         updateMaskBuilder_.mergeFrom(value);
2257       }
2258       bitField0_ |= 0x00000020;
2259       onChanged();
2260       return this;
2261     }
2262     /**
2263      *
2264      *
2265      * <pre>
2266      * Required. Specifies the path, relative to `Cluster`, of
2267      * the field to update. For example, to change the number of workers
2268      * in a cluster to 5, the `update_mask` parameter would be
2269      * specified as `config.worker_config.num_instances`,
2270      * and the `PATCH` request body would specify the new value, as follows:
2271      *     {
2272      *       "config":{
2273      *         "workerConfig":{
2274      *           "numInstances":"5"
2275      *         }
2276      *       }
2277      *     }
2278      * Similarly, to change the number of preemptible workers in a cluster to 5,
2279      * the `update_mask` parameter would be
2280      * `config.secondary_worker_config.num_instances`, and the `PATCH` request
2281      * body would be set as follows:
2282      *     {
2283      *       "config":{
2284      *         "secondaryWorkerConfig":{
2285      *           "numInstances":"5"
2286      *         }
2287      *       }
2288      *     }
2289      * &lt;strong&gt;Note:&lt;/strong&gt; Currently, only the following fields can be updated:
2290      *  &lt;table&gt;
2291      *  &lt;tbody&gt;
2292      *  &lt;tr&gt;
2293      *  &lt;td&gt;&lt;strong&gt;Mask&lt;/strong&gt;&lt;/td&gt;
2294      *  &lt;td&gt;&lt;strong&gt;Purpose&lt;/strong&gt;&lt;/td&gt;
2295      *  &lt;/tr&gt;
2296      *  &lt;tr&gt;
2297      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;labels&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2298      *  &lt;td&gt;Update labels&lt;/td&gt;
2299      *  &lt;/tr&gt;
2300      *  &lt;tr&gt;
2301      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2302      *  &lt;td&gt;Resize primary worker group&lt;/td&gt;
2303      *  &lt;/tr&gt;
2304      *  &lt;tr&gt;
2305      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.secondary_worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2306      *  &lt;td&gt;Resize secondary worker group&lt;/td&gt;
2307      *  &lt;/tr&gt;
2308      *  &lt;tr&gt;
2309      *  &lt;td&gt;config.autoscaling_config.policy_uri&lt;/td&gt;&lt;td&gt;Use, stop using, or
2310      *  change autoscaling policies&lt;/td&gt;
2311      *  &lt;/tr&gt;
2312      *  &lt;/tbody&gt;
2313      *  &lt;/table&gt;
2314      * </pre>
2315      *
2316      * <code>.google.protobuf.FieldMask update_mask = 4 [(.google.api.field_behavior) = REQUIRED];
2317      * </code>
2318      */
clearUpdateMask()2319     public Builder clearUpdateMask() {
2320       bitField0_ = (bitField0_ & ~0x00000020);
2321       updateMask_ = null;
2322       if (updateMaskBuilder_ != null) {
2323         updateMaskBuilder_.dispose();
2324         updateMaskBuilder_ = null;
2325       }
2326       onChanged();
2327       return this;
2328     }
2329     /**
2330      *
2331      *
2332      * <pre>
2333      * Required. Specifies the path, relative to `Cluster`, of
2334      * the field to update. For example, to change the number of workers
2335      * in a cluster to 5, the `update_mask` parameter would be
2336      * specified as `config.worker_config.num_instances`,
2337      * and the `PATCH` request body would specify the new value, as follows:
2338      *     {
2339      *       "config":{
2340      *         "workerConfig":{
2341      *           "numInstances":"5"
2342      *         }
2343      *       }
2344      *     }
2345      * Similarly, to change the number of preemptible workers in a cluster to 5,
2346      * the `update_mask` parameter would be
2347      * `config.secondary_worker_config.num_instances`, and the `PATCH` request
2348      * body would be set as follows:
2349      *     {
2350      *       "config":{
2351      *         "secondaryWorkerConfig":{
2352      *           "numInstances":"5"
2353      *         }
2354      *       }
2355      *     }
2356      * &lt;strong&gt;Note:&lt;/strong&gt; Currently, only the following fields can be updated:
2357      *  &lt;table&gt;
2358      *  &lt;tbody&gt;
2359      *  &lt;tr&gt;
2360      *  &lt;td&gt;&lt;strong&gt;Mask&lt;/strong&gt;&lt;/td&gt;
2361      *  &lt;td&gt;&lt;strong&gt;Purpose&lt;/strong&gt;&lt;/td&gt;
2362      *  &lt;/tr&gt;
2363      *  &lt;tr&gt;
2364      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;labels&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2365      *  &lt;td&gt;Update labels&lt;/td&gt;
2366      *  &lt;/tr&gt;
2367      *  &lt;tr&gt;
2368      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2369      *  &lt;td&gt;Resize primary worker group&lt;/td&gt;
2370      *  &lt;/tr&gt;
2371      *  &lt;tr&gt;
2372      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.secondary_worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2373      *  &lt;td&gt;Resize secondary worker group&lt;/td&gt;
2374      *  &lt;/tr&gt;
2375      *  &lt;tr&gt;
2376      *  &lt;td&gt;config.autoscaling_config.policy_uri&lt;/td&gt;&lt;td&gt;Use, stop using, or
2377      *  change autoscaling policies&lt;/td&gt;
2378      *  &lt;/tr&gt;
2379      *  &lt;/tbody&gt;
2380      *  &lt;/table&gt;
2381      * </pre>
2382      *
2383      * <code>.google.protobuf.FieldMask update_mask = 4 [(.google.api.field_behavior) = REQUIRED];
2384      * </code>
2385      */
getUpdateMaskBuilder()2386     public com.google.protobuf.FieldMask.Builder getUpdateMaskBuilder() {
2387       bitField0_ |= 0x00000020;
2388       onChanged();
2389       return getUpdateMaskFieldBuilder().getBuilder();
2390     }
2391     /**
2392      *
2393      *
2394      * <pre>
2395      * Required. Specifies the path, relative to `Cluster`, of
2396      * the field to update. For example, to change the number of workers
2397      * in a cluster to 5, the `update_mask` parameter would be
2398      * specified as `config.worker_config.num_instances`,
2399      * and the `PATCH` request body would specify the new value, as follows:
2400      *     {
2401      *       "config":{
2402      *         "workerConfig":{
2403      *           "numInstances":"5"
2404      *         }
2405      *       }
2406      *     }
2407      * Similarly, to change the number of preemptible workers in a cluster to 5,
2408      * the `update_mask` parameter would be
2409      * `config.secondary_worker_config.num_instances`, and the `PATCH` request
2410      * body would be set as follows:
2411      *     {
2412      *       "config":{
2413      *         "secondaryWorkerConfig":{
2414      *           "numInstances":"5"
2415      *         }
2416      *       }
2417      *     }
2418      * &lt;strong&gt;Note:&lt;/strong&gt; Currently, only the following fields can be updated:
2419      *  &lt;table&gt;
2420      *  &lt;tbody&gt;
2421      *  &lt;tr&gt;
2422      *  &lt;td&gt;&lt;strong&gt;Mask&lt;/strong&gt;&lt;/td&gt;
2423      *  &lt;td&gt;&lt;strong&gt;Purpose&lt;/strong&gt;&lt;/td&gt;
2424      *  &lt;/tr&gt;
2425      *  &lt;tr&gt;
2426      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;labels&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2427      *  &lt;td&gt;Update labels&lt;/td&gt;
2428      *  &lt;/tr&gt;
2429      *  &lt;tr&gt;
2430      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2431      *  &lt;td&gt;Resize primary worker group&lt;/td&gt;
2432      *  &lt;/tr&gt;
2433      *  &lt;tr&gt;
2434      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.secondary_worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2435      *  &lt;td&gt;Resize secondary worker group&lt;/td&gt;
2436      *  &lt;/tr&gt;
2437      *  &lt;tr&gt;
2438      *  &lt;td&gt;config.autoscaling_config.policy_uri&lt;/td&gt;&lt;td&gt;Use, stop using, or
2439      *  change autoscaling policies&lt;/td&gt;
2440      *  &lt;/tr&gt;
2441      *  &lt;/tbody&gt;
2442      *  &lt;/table&gt;
2443      * </pre>
2444      *
2445      * <code>.google.protobuf.FieldMask update_mask = 4 [(.google.api.field_behavior) = REQUIRED];
2446      * </code>
2447      */
getUpdateMaskOrBuilder()2448     public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() {
2449       if (updateMaskBuilder_ != null) {
2450         return updateMaskBuilder_.getMessageOrBuilder();
2451       } else {
2452         return updateMask_ == null
2453             ? com.google.protobuf.FieldMask.getDefaultInstance()
2454             : updateMask_;
2455       }
2456     }
2457     /**
2458      *
2459      *
2460      * <pre>
2461      * Required. Specifies the path, relative to `Cluster`, of
2462      * the field to update. For example, to change the number of workers
2463      * in a cluster to 5, the `update_mask` parameter would be
2464      * specified as `config.worker_config.num_instances`,
2465      * and the `PATCH` request body would specify the new value, as follows:
2466      *     {
2467      *       "config":{
2468      *         "workerConfig":{
2469      *           "numInstances":"5"
2470      *         }
2471      *       }
2472      *     }
2473      * Similarly, to change the number of preemptible workers in a cluster to 5,
2474      * the `update_mask` parameter would be
2475      * `config.secondary_worker_config.num_instances`, and the `PATCH` request
2476      * body would be set as follows:
2477      *     {
2478      *       "config":{
2479      *         "secondaryWorkerConfig":{
2480      *           "numInstances":"5"
2481      *         }
2482      *       }
2483      *     }
2484      * &lt;strong&gt;Note:&lt;/strong&gt; Currently, only the following fields can be updated:
2485      *  &lt;table&gt;
2486      *  &lt;tbody&gt;
2487      *  &lt;tr&gt;
2488      *  &lt;td&gt;&lt;strong&gt;Mask&lt;/strong&gt;&lt;/td&gt;
2489      *  &lt;td&gt;&lt;strong&gt;Purpose&lt;/strong&gt;&lt;/td&gt;
2490      *  &lt;/tr&gt;
2491      *  &lt;tr&gt;
2492      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;labels&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2493      *  &lt;td&gt;Update labels&lt;/td&gt;
2494      *  &lt;/tr&gt;
2495      *  &lt;tr&gt;
2496      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2497      *  &lt;td&gt;Resize primary worker group&lt;/td&gt;
2498      *  &lt;/tr&gt;
2499      *  &lt;tr&gt;
2500      *  &lt;td&gt;&lt;strong&gt;&lt;em&gt;config.secondary_worker_config.num_instances&lt;/em&gt;&lt;/strong&gt;&lt;/td&gt;
2501      *  &lt;td&gt;Resize secondary worker group&lt;/td&gt;
2502      *  &lt;/tr&gt;
2503      *  &lt;tr&gt;
2504      *  &lt;td&gt;config.autoscaling_config.policy_uri&lt;/td&gt;&lt;td&gt;Use, stop using, or
2505      *  change autoscaling policies&lt;/td&gt;
2506      *  &lt;/tr&gt;
2507      *  &lt;/tbody&gt;
2508      *  &lt;/table&gt;
2509      * </pre>
2510      *
2511      * <code>.google.protobuf.FieldMask update_mask = 4 [(.google.api.field_behavior) = REQUIRED];
2512      * </code>
2513      */
2514     private com.google.protobuf.SingleFieldBuilderV3<
2515             com.google.protobuf.FieldMask,
2516             com.google.protobuf.FieldMask.Builder,
2517             com.google.protobuf.FieldMaskOrBuilder>
getUpdateMaskFieldBuilder()2518         getUpdateMaskFieldBuilder() {
2519       if (updateMaskBuilder_ == null) {
2520         updateMaskBuilder_ =
2521             new com.google.protobuf.SingleFieldBuilderV3<
2522                 com.google.protobuf.FieldMask,
2523                 com.google.protobuf.FieldMask.Builder,
2524                 com.google.protobuf.FieldMaskOrBuilder>(
2525                 getUpdateMask(), getParentForChildren(), isClean());
2526         updateMask_ = null;
2527       }
2528       return updateMaskBuilder_;
2529     }
2530 
2531     private java.lang.Object requestId_ = "";
2532     /**
2533      *
2534      *
2535      * <pre>
2536      * Optional. A unique ID used to identify the request. If the server
2537      * receives two
2538      * [UpdateClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.UpdateClusterRequest)s
2539      * with the same id, then the second request will be ignored and the
2540      * first [google.longrunning.Operation][google.longrunning.Operation] created
2541      * and stored in the backend is returned.
2542      * It is recommended to always set this value to a
2543      * [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
2544      * The ID must contain only letters (a-z, A-Z), numbers (0-9),
2545      * underscores (_), and hyphens (-). The maximum length is 40 characters.
2546      * </pre>
2547      *
2548      * <code>string request_id = 7 [(.google.api.field_behavior) = OPTIONAL];</code>
2549      *
2550      * @return The requestId.
2551      */
getRequestId()2552     public java.lang.String getRequestId() {
2553       java.lang.Object ref = requestId_;
2554       if (!(ref instanceof java.lang.String)) {
2555         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
2556         java.lang.String s = bs.toStringUtf8();
2557         requestId_ = s;
2558         return s;
2559       } else {
2560         return (java.lang.String) ref;
2561       }
2562     }
2563     /**
2564      *
2565      *
2566      * <pre>
2567      * Optional. A unique ID used to identify the request. If the server
2568      * receives two
2569      * [UpdateClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.UpdateClusterRequest)s
2570      * with the same id, then the second request will be ignored and the
2571      * first [google.longrunning.Operation][google.longrunning.Operation] created
2572      * and stored in the backend is returned.
2573      * It is recommended to always set this value to a
2574      * [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
2575      * The ID must contain only letters (a-z, A-Z), numbers (0-9),
2576      * underscores (_), and hyphens (-). The maximum length is 40 characters.
2577      * </pre>
2578      *
2579      * <code>string request_id = 7 [(.google.api.field_behavior) = OPTIONAL];</code>
2580      *
2581      * @return The bytes for requestId.
2582      */
getRequestIdBytes()2583     public com.google.protobuf.ByteString getRequestIdBytes() {
2584       java.lang.Object ref = requestId_;
2585       if (ref instanceof String) {
2586         com.google.protobuf.ByteString b =
2587             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
2588         requestId_ = b;
2589         return b;
2590       } else {
2591         return (com.google.protobuf.ByteString) ref;
2592       }
2593     }
2594     /**
2595      *
2596      *
2597      * <pre>
2598      * Optional. A unique ID used to identify the request. If the server
2599      * receives two
2600      * [UpdateClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.UpdateClusterRequest)s
2601      * with the same id, then the second request will be ignored and the
2602      * first [google.longrunning.Operation][google.longrunning.Operation] created
2603      * and stored in the backend is returned.
2604      * It is recommended to always set this value to a
2605      * [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
2606      * The ID must contain only letters (a-z, A-Z), numbers (0-9),
2607      * underscores (_), and hyphens (-). The maximum length is 40 characters.
2608      * </pre>
2609      *
2610      * <code>string request_id = 7 [(.google.api.field_behavior) = OPTIONAL];</code>
2611      *
2612      * @param value The requestId to set.
2613      * @return This builder for chaining.
2614      */
setRequestId(java.lang.String value)2615     public Builder setRequestId(java.lang.String value) {
2616       if (value == null) {
2617         throw new NullPointerException();
2618       }
2619       requestId_ = value;
2620       bitField0_ |= 0x00000040;
2621       onChanged();
2622       return this;
2623     }
2624     /**
2625      *
2626      *
2627      * <pre>
2628      * Optional. A unique ID used to identify the request. If the server
2629      * receives two
2630      * [UpdateClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.UpdateClusterRequest)s
2631      * with the same id, then the second request will be ignored and the
2632      * first [google.longrunning.Operation][google.longrunning.Operation] created
2633      * and stored in the backend is returned.
2634      * It is recommended to always set this value to a
2635      * [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
2636      * The ID must contain only letters (a-z, A-Z), numbers (0-9),
2637      * underscores (_), and hyphens (-). The maximum length is 40 characters.
2638      * </pre>
2639      *
2640      * <code>string request_id = 7 [(.google.api.field_behavior) = OPTIONAL];</code>
2641      *
2642      * @return This builder for chaining.
2643      */
clearRequestId()2644     public Builder clearRequestId() {
2645       requestId_ = getDefaultInstance().getRequestId();
2646       bitField0_ = (bitField0_ & ~0x00000040);
2647       onChanged();
2648       return this;
2649     }
2650     /**
2651      *
2652      *
2653      * <pre>
2654      * Optional. A unique ID used to identify the request. If the server
2655      * receives two
2656      * [UpdateClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.UpdateClusterRequest)s
2657      * with the same id, then the second request will be ignored and the
2658      * first [google.longrunning.Operation][google.longrunning.Operation] created
2659      * and stored in the backend is returned.
2660      * It is recommended to always set this value to a
2661      * [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
2662      * The ID must contain only letters (a-z, A-Z), numbers (0-9),
2663      * underscores (_), and hyphens (-). The maximum length is 40 characters.
2664      * </pre>
2665      *
2666      * <code>string request_id = 7 [(.google.api.field_behavior) = OPTIONAL];</code>
2667      *
2668      * @param value The bytes for requestId to set.
2669      * @return This builder for chaining.
2670      */
setRequestIdBytes(com.google.protobuf.ByteString value)2671     public Builder setRequestIdBytes(com.google.protobuf.ByteString value) {
2672       if (value == null) {
2673         throw new NullPointerException();
2674       }
2675       checkByteStringIsUtf8(value);
2676       requestId_ = value;
2677       bitField0_ |= 0x00000040;
2678       onChanged();
2679       return this;
2680     }
2681 
2682     @java.lang.Override
setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)2683     public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) {
2684       return super.setUnknownFields(unknownFields);
2685     }
2686 
2687     @java.lang.Override
mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields)2688     public final Builder mergeUnknownFields(
2689         final com.google.protobuf.UnknownFieldSet unknownFields) {
2690       return super.mergeUnknownFields(unknownFields);
2691     }
2692 
2693     // @@protoc_insertion_point(builder_scope:google.cloud.dataproc.v1.UpdateClusterRequest)
2694   }
2695 
2696   // @@protoc_insertion_point(class_scope:google.cloud.dataproc.v1.UpdateClusterRequest)
2697   private static final com.google.cloud.dataproc.v1.UpdateClusterRequest DEFAULT_INSTANCE;
2698 
2699   static {
2700     DEFAULT_INSTANCE = new com.google.cloud.dataproc.v1.UpdateClusterRequest();
2701   }
2702 
getDefaultInstance()2703   public static com.google.cloud.dataproc.v1.UpdateClusterRequest getDefaultInstance() {
2704     return DEFAULT_INSTANCE;
2705   }
2706 
2707   private static final com.google.protobuf.Parser<UpdateClusterRequest> PARSER =
2708       new com.google.protobuf.AbstractParser<UpdateClusterRequest>() {
2709         @java.lang.Override
2710         public UpdateClusterRequest parsePartialFrom(
2711             com.google.protobuf.CodedInputStream input,
2712             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2713             throws com.google.protobuf.InvalidProtocolBufferException {
2714           Builder builder = newBuilder();
2715           try {
2716             builder.mergeFrom(input, extensionRegistry);
2717           } catch (com.google.protobuf.InvalidProtocolBufferException e) {
2718             throw e.setUnfinishedMessage(builder.buildPartial());
2719           } catch (com.google.protobuf.UninitializedMessageException e) {
2720             throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
2721           } catch (java.io.IOException e) {
2722             throw new com.google.protobuf.InvalidProtocolBufferException(e)
2723                 .setUnfinishedMessage(builder.buildPartial());
2724           }
2725           return builder.buildPartial();
2726         }
2727       };
2728 
parser()2729   public static com.google.protobuf.Parser<UpdateClusterRequest> parser() {
2730     return PARSER;
2731   }
2732 
2733   @java.lang.Override
getParserForType()2734   public com.google.protobuf.Parser<UpdateClusterRequest> getParserForType() {
2735     return PARSER;
2736   }
2737 
2738   @java.lang.Override
getDefaultInstanceForType()2739   public com.google.cloud.dataproc.v1.UpdateClusterRequest getDefaultInstanceForType() {
2740     return DEFAULT_INSTANCE;
2741   }
2742 }
2743