• 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  * Specifies the selection and config of software inside the cluster.
26  * </pre>
27  *
28  * Protobuf type {@code google.cloud.dataproc.v1.SoftwareConfig}
29  */
30 public final class SoftwareConfig extends com.google.protobuf.GeneratedMessageV3
31     implements
32     // @@protoc_insertion_point(message_implements:google.cloud.dataproc.v1.SoftwareConfig)
33     SoftwareConfigOrBuilder {
34   private static final long serialVersionUID = 0L;
35   // Use SoftwareConfig.newBuilder() to construct.
SoftwareConfig(com.google.protobuf.GeneratedMessageV3.Builder<?> builder)36   private SoftwareConfig(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
37     super(builder);
38   }
39 
SoftwareConfig()40   private SoftwareConfig() {
41     imageVersion_ = "";
42     optionalComponents_ = java.util.Collections.emptyList();
43   }
44 
45   @java.lang.Override
46   @SuppressWarnings({"unused"})
newInstance(UnusedPrivateParameter unused)47   protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
48     return new SoftwareConfig();
49   }
50 
51   @java.lang.Override
getUnknownFields()52   public final com.google.protobuf.UnknownFieldSet getUnknownFields() {
53     return this.unknownFields;
54   }
55 
getDescriptor()56   public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
57     return com.google.cloud.dataproc.v1.ClustersProto
58         .internal_static_google_cloud_dataproc_v1_SoftwareConfig_descriptor;
59   }
60 
61   @SuppressWarnings({"rawtypes"})
62   @java.lang.Override
internalGetMapField(int number)63   protected com.google.protobuf.MapField internalGetMapField(int number) {
64     switch (number) {
65       case 2:
66         return internalGetProperties();
67       default:
68         throw new RuntimeException("Invalid map field number: " + number);
69     }
70   }
71 
72   @java.lang.Override
73   protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()74       internalGetFieldAccessorTable() {
75     return com.google.cloud.dataproc.v1.ClustersProto
76         .internal_static_google_cloud_dataproc_v1_SoftwareConfig_fieldAccessorTable
77         .ensureFieldAccessorsInitialized(
78             com.google.cloud.dataproc.v1.SoftwareConfig.class,
79             com.google.cloud.dataproc.v1.SoftwareConfig.Builder.class);
80   }
81 
82   public static final int IMAGE_VERSION_FIELD_NUMBER = 1;
83 
84   @SuppressWarnings("serial")
85   private volatile java.lang.Object imageVersion_ = "";
86   /**
87    *
88    *
89    * <pre>
90    * Optional. The version of software inside the cluster. It must be one of the
91    * supported [Dataproc
92    * Versions](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#supported_dataproc_versions),
93    * such as "1.2" (including a subminor version, such as "1.2.29"), or the
94    * ["preview"
95    * version](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#other_versions).
96    * If unspecified, it defaults to the latest Debian version.
97    * </pre>
98    *
99    * <code>string image_version = 1 [(.google.api.field_behavior) = OPTIONAL];</code>
100    *
101    * @return The imageVersion.
102    */
103   @java.lang.Override
getImageVersion()104   public java.lang.String getImageVersion() {
105     java.lang.Object ref = imageVersion_;
106     if (ref instanceof java.lang.String) {
107       return (java.lang.String) ref;
108     } else {
109       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
110       java.lang.String s = bs.toStringUtf8();
111       imageVersion_ = s;
112       return s;
113     }
114   }
115   /**
116    *
117    *
118    * <pre>
119    * Optional. The version of software inside the cluster. It must be one of the
120    * supported [Dataproc
121    * Versions](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#supported_dataproc_versions),
122    * such as "1.2" (including a subminor version, such as "1.2.29"), or the
123    * ["preview"
124    * version](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#other_versions).
125    * If unspecified, it defaults to the latest Debian version.
126    * </pre>
127    *
128    * <code>string image_version = 1 [(.google.api.field_behavior) = OPTIONAL];</code>
129    *
130    * @return The bytes for imageVersion.
131    */
132   @java.lang.Override
getImageVersionBytes()133   public com.google.protobuf.ByteString getImageVersionBytes() {
134     java.lang.Object ref = imageVersion_;
135     if (ref instanceof java.lang.String) {
136       com.google.protobuf.ByteString b =
137           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
138       imageVersion_ = b;
139       return b;
140     } else {
141       return (com.google.protobuf.ByteString) ref;
142     }
143   }
144 
145   public static final int PROPERTIES_FIELD_NUMBER = 2;
146 
147   private static final class PropertiesDefaultEntryHolder {
148     static final com.google.protobuf.MapEntry<java.lang.String, java.lang.String> defaultEntry =
149         com.google.protobuf.MapEntry.<java.lang.String, java.lang.String>newDefaultInstance(
150             com.google.cloud.dataproc.v1.ClustersProto
151                 .internal_static_google_cloud_dataproc_v1_SoftwareConfig_PropertiesEntry_descriptor,
152             com.google.protobuf.WireFormat.FieldType.STRING,
153             "",
154             com.google.protobuf.WireFormat.FieldType.STRING,
155             "");
156   }
157 
158   @SuppressWarnings("serial")
159   private com.google.protobuf.MapField<java.lang.String, java.lang.String> properties_;
160 
internalGetProperties()161   private com.google.protobuf.MapField<java.lang.String, java.lang.String> internalGetProperties() {
162     if (properties_ == null) {
163       return com.google.protobuf.MapField.emptyMapField(PropertiesDefaultEntryHolder.defaultEntry);
164     }
165     return properties_;
166   }
167 
getPropertiesCount()168   public int getPropertiesCount() {
169     return internalGetProperties().getMap().size();
170   }
171   /**
172    *
173    *
174    * <pre>
175    * Optional. The properties to set on daemon config files.
176    * Property keys are specified in `prefix:property` format, for example
177    * `core:hadoop.tmp.dir`. The following are supported prefixes
178    * and their mappings:
179    * * capacity-scheduler: `capacity-scheduler.xml`
180    * * core:   `core-site.xml`
181    * * distcp: `distcp-default.xml`
182    * * hdfs:   `hdfs-site.xml`
183    * * hive:   `hive-site.xml`
184    * * mapred: `mapred-site.xml`
185    * * pig:    `pig.properties`
186    * * spark:  `spark-defaults.conf`
187    * * yarn:   `yarn-site.xml`
188    * For more information, see [Cluster
189    * properties](https://cloud.google.com/dataproc/docs/concepts/cluster-properties).
190    * </pre>
191    *
192    * <code>map&lt;string, string&gt; properties = 2 [(.google.api.field_behavior) = OPTIONAL];
193    * </code>
194    */
195   @java.lang.Override
containsProperties(java.lang.String key)196   public boolean containsProperties(java.lang.String key) {
197     if (key == null) {
198       throw new NullPointerException("map key");
199     }
200     return internalGetProperties().getMap().containsKey(key);
201   }
202   /** Use {@link #getPropertiesMap()} instead. */
203   @java.lang.Override
204   @java.lang.Deprecated
getProperties()205   public java.util.Map<java.lang.String, java.lang.String> getProperties() {
206     return getPropertiesMap();
207   }
208   /**
209    *
210    *
211    * <pre>
212    * Optional. The properties to set on daemon config files.
213    * Property keys are specified in `prefix:property` format, for example
214    * `core:hadoop.tmp.dir`. The following are supported prefixes
215    * and their mappings:
216    * * capacity-scheduler: `capacity-scheduler.xml`
217    * * core:   `core-site.xml`
218    * * distcp: `distcp-default.xml`
219    * * hdfs:   `hdfs-site.xml`
220    * * hive:   `hive-site.xml`
221    * * mapred: `mapred-site.xml`
222    * * pig:    `pig.properties`
223    * * spark:  `spark-defaults.conf`
224    * * yarn:   `yarn-site.xml`
225    * For more information, see [Cluster
226    * properties](https://cloud.google.com/dataproc/docs/concepts/cluster-properties).
227    * </pre>
228    *
229    * <code>map&lt;string, string&gt; properties = 2 [(.google.api.field_behavior) = OPTIONAL];
230    * </code>
231    */
232   @java.lang.Override
getPropertiesMap()233   public java.util.Map<java.lang.String, java.lang.String> getPropertiesMap() {
234     return internalGetProperties().getMap();
235   }
236   /**
237    *
238    *
239    * <pre>
240    * Optional. The properties to set on daemon config files.
241    * Property keys are specified in `prefix:property` format, for example
242    * `core:hadoop.tmp.dir`. The following are supported prefixes
243    * and their mappings:
244    * * capacity-scheduler: `capacity-scheduler.xml`
245    * * core:   `core-site.xml`
246    * * distcp: `distcp-default.xml`
247    * * hdfs:   `hdfs-site.xml`
248    * * hive:   `hive-site.xml`
249    * * mapred: `mapred-site.xml`
250    * * pig:    `pig.properties`
251    * * spark:  `spark-defaults.conf`
252    * * yarn:   `yarn-site.xml`
253    * For more information, see [Cluster
254    * properties](https://cloud.google.com/dataproc/docs/concepts/cluster-properties).
255    * </pre>
256    *
257    * <code>map&lt;string, string&gt; properties = 2 [(.google.api.field_behavior) = OPTIONAL];
258    * </code>
259    */
260   @java.lang.Override
getPropertiesOrDefault( java.lang.String key, java.lang.String defaultValue)261   public /* nullable */ java.lang.String getPropertiesOrDefault(
262       java.lang.String key,
263       /* nullable */
264       java.lang.String defaultValue) {
265     if (key == null) {
266       throw new NullPointerException("map key");
267     }
268     java.util.Map<java.lang.String, java.lang.String> map = internalGetProperties().getMap();
269     return map.containsKey(key) ? map.get(key) : defaultValue;
270   }
271   /**
272    *
273    *
274    * <pre>
275    * Optional. The properties to set on daemon config files.
276    * Property keys are specified in `prefix:property` format, for example
277    * `core:hadoop.tmp.dir`. The following are supported prefixes
278    * and their mappings:
279    * * capacity-scheduler: `capacity-scheduler.xml`
280    * * core:   `core-site.xml`
281    * * distcp: `distcp-default.xml`
282    * * hdfs:   `hdfs-site.xml`
283    * * hive:   `hive-site.xml`
284    * * mapred: `mapred-site.xml`
285    * * pig:    `pig.properties`
286    * * spark:  `spark-defaults.conf`
287    * * yarn:   `yarn-site.xml`
288    * For more information, see [Cluster
289    * properties](https://cloud.google.com/dataproc/docs/concepts/cluster-properties).
290    * </pre>
291    *
292    * <code>map&lt;string, string&gt; properties = 2 [(.google.api.field_behavior) = OPTIONAL];
293    * </code>
294    */
295   @java.lang.Override
getPropertiesOrThrow(java.lang.String key)296   public java.lang.String getPropertiesOrThrow(java.lang.String key) {
297     if (key == null) {
298       throw new NullPointerException("map key");
299     }
300     java.util.Map<java.lang.String, java.lang.String> map = internalGetProperties().getMap();
301     if (!map.containsKey(key)) {
302       throw new java.lang.IllegalArgumentException();
303     }
304     return map.get(key);
305   }
306 
307   public static final int OPTIONAL_COMPONENTS_FIELD_NUMBER = 3;
308 
309   @SuppressWarnings("serial")
310   private java.util.List<java.lang.Integer> optionalComponents_;
311 
312   private static final com.google.protobuf.Internal.ListAdapter.Converter<
313           java.lang.Integer, com.google.cloud.dataproc.v1.Component>
314       optionalComponents_converter_ =
315           new com.google.protobuf.Internal.ListAdapter.Converter<
316               java.lang.Integer, com.google.cloud.dataproc.v1.Component>() {
317             public com.google.cloud.dataproc.v1.Component convert(java.lang.Integer from) {
318               com.google.cloud.dataproc.v1.Component result =
319                   com.google.cloud.dataproc.v1.Component.forNumber(from);
320               return result == null ? com.google.cloud.dataproc.v1.Component.UNRECOGNIZED : result;
321             }
322           };
323   /**
324    *
325    *
326    * <pre>
327    * Optional. The set of components to activate on the cluster.
328    * </pre>
329    *
330    * <code>
331    * repeated .google.cloud.dataproc.v1.Component optional_components = 3 [(.google.api.field_behavior) = OPTIONAL];
332    * </code>
333    *
334    * @return A list containing the optionalComponents.
335    */
336   @java.lang.Override
getOptionalComponentsList()337   public java.util.List<com.google.cloud.dataproc.v1.Component> getOptionalComponentsList() {
338     return new com.google.protobuf.Internal.ListAdapter<
339         java.lang.Integer, com.google.cloud.dataproc.v1.Component>(
340         optionalComponents_, optionalComponents_converter_);
341   }
342   /**
343    *
344    *
345    * <pre>
346    * Optional. The set of components to activate on the cluster.
347    * </pre>
348    *
349    * <code>
350    * repeated .google.cloud.dataproc.v1.Component optional_components = 3 [(.google.api.field_behavior) = OPTIONAL];
351    * </code>
352    *
353    * @return The count of optionalComponents.
354    */
355   @java.lang.Override
getOptionalComponentsCount()356   public int getOptionalComponentsCount() {
357     return optionalComponents_.size();
358   }
359   /**
360    *
361    *
362    * <pre>
363    * Optional. The set of components to activate on the cluster.
364    * </pre>
365    *
366    * <code>
367    * repeated .google.cloud.dataproc.v1.Component optional_components = 3 [(.google.api.field_behavior) = OPTIONAL];
368    * </code>
369    *
370    * @param index The index of the element to return.
371    * @return The optionalComponents at the given index.
372    */
373   @java.lang.Override
getOptionalComponents(int index)374   public com.google.cloud.dataproc.v1.Component getOptionalComponents(int index) {
375     return optionalComponents_converter_.convert(optionalComponents_.get(index));
376   }
377   /**
378    *
379    *
380    * <pre>
381    * Optional. The set of components to activate on the cluster.
382    * </pre>
383    *
384    * <code>
385    * repeated .google.cloud.dataproc.v1.Component optional_components = 3 [(.google.api.field_behavior) = OPTIONAL];
386    * </code>
387    *
388    * @return A list containing the enum numeric values on the wire for optionalComponents.
389    */
390   @java.lang.Override
getOptionalComponentsValueList()391   public java.util.List<java.lang.Integer> getOptionalComponentsValueList() {
392     return optionalComponents_;
393   }
394   /**
395    *
396    *
397    * <pre>
398    * Optional. The set of components to activate on the cluster.
399    * </pre>
400    *
401    * <code>
402    * repeated .google.cloud.dataproc.v1.Component optional_components = 3 [(.google.api.field_behavior) = OPTIONAL];
403    * </code>
404    *
405    * @param index The index of the value to return.
406    * @return The enum numeric value on the wire of optionalComponents at the given index.
407    */
408   @java.lang.Override
getOptionalComponentsValue(int index)409   public int getOptionalComponentsValue(int index) {
410     return optionalComponents_.get(index);
411   }
412 
413   private int optionalComponentsMemoizedSerializedSize;
414 
415   private byte memoizedIsInitialized = -1;
416 
417   @java.lang.Override
isInitialized()418   public final boolean isInitialized() {
419     byte isInitialized = memoizedIsInitialized;
420     if (isInitialized == 1) return true;
421     if (isInitialized == 0) return false;
422 
423     memoizedIsInitialized = 1;
424     return true;
425   }
426 
427   @java.lang.Override
writeTo(com.google.protobuf.CodedOutputStream output)428   public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
429     getSerializedSize();
430     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(imageVersion_)) {
431       com.google.protobuf.GeneratedMessageV3.writeString(output, 1, imageVersion_);
432     }
433     com.google.protobuf.GeneratedMessageV3.serializeStringMapTo(
434         output, internalGetProperties(), PropertiesDefaultEntryHolder.defaultEntry, 2);
435     if (getOptionalComponentsList().size() > 0) {
436       output.writeUInt32NoTag(26);
437       output.writeUInt32NoTag(optionalComponentsMemoizedSerializedSize);
438     }
439     for (int i = 0; i < optionalComponents_.size(); i++) {
440       output.writeEnumNoTag(optionalComponents_.get(i));
441     }
442     getUnknownFields().writeTo(output);
443   }
444 
445   @java.lang.Override
getSerializedSize()446   public int getSerializedSize() {
447     int size = memoizedSize;
448     if (size != -1) return size;
449 
450     size = 0;
451     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(imageVersion_)) {
452       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, imageVersion_);
453     }
454     for (java.util.Map.Entry<java.lang.String, java.lang.String> entry :
455         internalGetProperties().getMap().entrySet()) {
456       com.google.protobuf.MapEntry<java.lang.String, java.lang.String> properties__ =
457           PropertiesDefaultEntryHolder.defaultEntry
458               .newBuilderForType()
459               .setKey(entry.getKey())
460               .setValue(entry.getValue())
461               .build();
462       size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, properties__);
463     }
464     {
465       int dataSize = 0;
466       for (int i = 0; i < optionalComponents_.size(); i++) {
467         dataSize +=
468             com.google.protobuf.CodedOutputStream.computeEnumSizeNoTag(optionalComponents_.get(i));
469       }
470       size += dataSize;
471       if (!getOptionalComponentsList().isEmpty()) {
472         size += 1;
473         size += com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(dataSize);
474       }
475       optionalComponentsMemoizedSerializedSize = dataSize;
476     }
477     size += getUnknownFields().getSerializedSize();
478     memoizedSize = size;
479     return size;
480   }
481 
482   @java.lang.Override
equals(final java.lang.Object obj)483   public boolean equals(final java.lang.Object obj) {
484     if (obj == this) {
485       return true;
486     }
487     if (!(obj instanceof com.google.cloud.dataproc.v1.SoftwareConfig)) {
488       return super.equals(obj);
489     }
490     com.google.cloud.dataproc.v1.SoftwareConfig other =
491         (com.google.cloud.dataproc.v1.SoftwareConfig) obj;
492 
493     if (!getImageVersion().equals(other.getImageVersion())) return false;
494     if (!internalGetProperties().equals(other.internalGetProperties())) return false;
495     if (!optionalComponents_.equals(other.optionalComponents_)) return false;
496     if (!getUnknownFields().equals(other.getUnknownFields())) return false;
497     return true;
498   }
499 
500   @java.lang.Override
hashCode()501   public int hashCode() {
502     if (memoizedHashCode != 0) {
503       return memoizedHashCode;
504     }
505     int hash = 41;
506     hash = (19 * hash) + getDescriptor().hashCode();
507     hash = (37 * hash) + IMAGE_VERSION_FIELD_NUMBER;
508     hash = (53 * hash) + getImageVersion().hashCode();
509     if (!internalGetProperties().getMap().isEmpty()) {
510       hash = (37 * hash) + PROPERTIES_FIELD_NUMBER;
511       hash = (53 * hash) + internalGetProperties().hashCode();
512     }
513     if (getOptionalComponentsCount() > 0) {
514       hash = (37 * hash) + OPTIONAL_COMPONENTS_FIELD_NUMBER;
515       hash = (53 * hash) + optionalComponents_.hashCode();
516     }
517     hash = (29 * hash) + getUnknownFields().hashCode();
518     memoizedHashCode = hash;
519     return hash;
520   }
521 
parseFrom(java.nio.ByteBuffer data)522   public static com.google.cloud.dataproc.v1.SoftwareConfig parseFrom(java.nio.ByteBuffer data)
523       throws com.google.protobuf.InvalidProtocolBufferException {
524     return PARSER.parseFrom(data);
525   }
526 
parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)527   public static com.google.cloud.dataproc.v1.SoftwareConfig parseFrom(
528       java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
529       throws com.google.protobuf.InvalidProtocolBufferException {
530     return PARSER.parseFrom(data, extensionRegistry);
531   }
532 
parseFrom( com.google.protobuf.ByteString data)533   public static com.google.cloud.dataproc.v1.SoftwareConfig parseFrom(
534       com.google.protobuf.ByteString data)
535       throws com.google.protobuf.InvalidProtocolBufferException {
536     return PARSER.parseFrom(data);
537   }
538 
parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)539   public static com.google.cloud.dataproc.v1.SoftwareConfig parseFrom(
540       com.google.protobuf.ByteString data,
541       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
542       throws com.google.protobuf.InvalidProtocolBufferException {
543     return PARSER.parseFrom(data, extensionRegistry);
544   }
545 
parseFrom(byte[] data)546   public static com.google.cloud.dataproc.v1.SoftwareConfig parseFrom(byte[] data)
547       throws com.google.protobuf.InvalidProtocolBufferException {
548     return PARSER.parseFrom(data);
549   }
550 
parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)551   public static com.google.cloud.dataproc.v1.SoftwareConfig parseFrom(
552       byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
553       throws com.google.protobuf.InvalidProtocolBufferException {
554     return PARSER.parseFrom(data, extensionRegistry);
555   }
556 
parseFrom(java.io.InputStream input)557   public static com.google.cloud.dataproc.v1.SoftwareConfig parseFrom(java.io.InputStream input)
558       throws java.io.IOException {
559     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
560   }
561 
parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)562   public static com.google.cloud.dataproc.v1.SoftwareConfig parseFrom(
563       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
564       throws java.io.IOException {
565     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
566         PARSER, input, extensionRegistry);
567   }
568 
parseDelimitedFrom( java.io.InputStream input)569   public static com.google.cloud.dataproc.v1.SoftwareConfig parseDelimitedFrom(
570       java.io.InputStream input) throws java.io.IOException {
571     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
572   }
573 
parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)574   public static com.google.cloud.dataproc.v1.SoftwareConfig parseDelimitedFrom(
575       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
576       throws java.io.IOException {
577     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(
578         PARSER, input, extensionRegistry);
579   }
580 
parseFrom( com.google.protobuf.CodedInputStream input)581   public static com.google.cloud.dataproc.v1.SoftwareConfig parseFrom(
582       com.google.protobuf.CodedInputStream input) throws java.io.IOException {
583     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
584   }
585 
parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)586   public static com.google.cloud.dataproc.v1.SoftwareConfig parseFrom(
587       com.google.protobuf.CodedInputStream input,
588       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
589       throws java.io.IOException {
590     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
591         PARSER, input, extensionRegistry);
592   }
593 
594   @java.lang.Override
newBuilderForType()595   public Builder newBuilderForType() {
596     return newBuilder();
597   }
598 
newBuilder()599   public static Builder newBuilder() {
600     return DEFAULT_INSTANCE.toBuilder();
601   }
602 
newBuilder(com.google.cloud.dataproc.v1.SoftwareConfig prototype)603   public static Builder newBuilder(com.google.cloud.dataproc.v1.SoftwareConfig prototype) {
604     return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
605   }
606 
607   @java.lang.Override
toBuilder()608   public Builder toBuilder() {
609     return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
610   }
611 
612   @java.lang.Override
newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)613   protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
614     Builder builder = new Builder(parent);
615     return builder;
616   }
617   /**
618    *
619    *
620    * <pre>
621    * Specifies the selection and config of software inside the cluster.
622    * </pre>
623    *
624    * Protobuf type {@code google.cloud.dataproc.v1.SoftwareConfig}
625    */
626   public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder>
627       implements
628       // @@protoc_insertion_point(builder_implements:google.cloud.dataproc.v1.SoftwareConfig)
629       com.google.cloud.dataproc.v1.SoftwareConfigOrBuilder {
getDescriptor()630     public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
631       return com.google.cloud.dataproc.v1.ClustersProto
632           .internal_static_google_cloud_dataproc_v1_SoftwareConfig_descriptor;
633     }
634 
635     @SuppressWarnings({"rawtypes"})
internalGetMapField(int number)636     protected com.google.protobuf.MapField internalGetMapField(int number) {
637       switch (number) {
638         case 2:
639           return internalGetProperties();
640         default:
641           throw new RuntimeException("Invalid map field number: " + number);
642       }
643     }
644 
645     @SuppressWarnings({"rawtypes"})
internalGetMutableMapField(int number)646     protected com.google.protobuf.MapField internalGetMutableMapField(int number) {
647       switch (number) {
648         case 2:
649           return internalGetMutableProperties();
650         default:
651           throw new RuntimeException("Invalid map field number: " + number);
652       }
653     }
654 
655     @java.lang.Override
656     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()657         internalGetFieldAccessorTable() {
658       return com.google.cloud.dataproc.v1.ClustersProto
659           .internal_static_google_cloud_dataproc_v1_SoftwareConfig_fieldAccessorTable
660           .ensureFieldAccessorsInitialized(
661               com.google.cloud.dataproc.v1.SoftwareConfig.class,
662               com.google.cloud.dataproc.v1.SoftwareConfig.Builder.class);
663     }
664 
665     // Construct using com.google.cloud.dataproc.v1.SoftwareConfig.newBuilder()
Builder()666     private Builder() {}
667 
Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)668     private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
669       super(parent);
670     }
671 
672     @java.lang.Override
clear()673     public Builder clear() {
674       super.clear();
675       bitField0_ = 0;
676       imageVersion_ = "";
677       internalGetMutableProperties().clear();
678       optionalComponents_ = java.util.Collections.emptyList();
679       bitField0_ = (bitField0_ & ~0x00000004);
680       return this;
681     }
682 
683     @java.lang.Override
getDescriptorForType()684     public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() {
685       return com.google.cloud.dataproc.v1.ClustersProto
686           .internal_static_google_cloud_dataproc_v1_SoftwareConfig_descriptor;
687     }
688 
689     @java.lang.Override
getDefaultInstanceForType()690     public com.google.cloud.dataproc.v1.SoftwareConfig getDefaultInstanceForType() {
691       return com.google.cloud.dataproc.v1.SoftwareConfig.getDefaultInstance();
692     }
693 
694     @java.lang.Override
build()695     public com.google.cloud.dataproc.v1.SoftwareConfig build() {
696       com.google.cloud.dataproc.v1.SoftwareConfig result = buildPartial();
697       if (!result.isInitialized()) {
698         throw newUninitializedMessageException(result);
699       }
700       return result;
701     }
702 
703     @java.lang.Override
buildPartial()704     public com.google.cloud.dataproc.v1.SoftwareConfig buildPartial() {
705       com.google.cloud.dataproc.v1.SoftwareConfig result =
706           new com.google.cloud.dataproc.v1.SoftwareConfig(this);
707       buildPartialRepeatedFields(result);
708       if (bitField0_ != 0) {
709         buildPartial0(result);
710       }
711       onBuilt();
712       return result;
713     }
714 
buildPartialRepeatedFields(com.google.cloud.dataproc.v1.SoftwareConfig result)715     private void buildPartialRepeatedFields(com.google.cloud.dataproc.v1.SoftwareConfig result) {
716       if (((bitField0_ & 0x00000004) != 0)) {
717         optionalComponents_ = java.util.Collections.unmodifiableList(optionalComponents_);
718         bitField0_ = (bitField0_ & ~0x00000004);
719       }
720       result.optionalComponents_ = optionalComponents_;
721     }
722 
buildPartial0(com.google.cloud.dataproc.v1.SoftwareConfig result)723     private void buildPartial0(com.google.cloud.dataproc.v1.SoftwareConfig result) {
724       int from_bitField0_ = bitField0_;
725       if (((from_bitField0_ & 0x00000001) != 0)) {
726         result.imageVersion_ = imageVersion_;
727       }
728       if (((from_bitField0_ & 0x00000002) != 0)) {
729         result.properties_ = internalGetProperties();
730         result.properties_.makeImmutable();
731       }
732     }
733 
734     @java.lang.Override
clone()735     public Builder clone() {
736       return super.clone();
737     }
738 
739     @java.lang.Override
setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)740     public Builder setField(
741         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
742       return super.setField(field, value);
743     }
744 
745     @java.lang.Override
clearField(com.google.protobuf.Descriptors.FieldDescriptor field)746     public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) {
747       return super.clearField(field);
748     }
749 
750     @java.lang.Override
clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)751     public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) {
752       return super.clearOneof(oneof);
753     }
754 
755     @java.lang.Override
setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)756     public Builder setRepeatedField(
757         com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) {
758       return super.setRepeatedField(field, index, value);
759     }
760 
761     @java.lang.Override
addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)762     public Builder addRepeatedField(
763         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
764       return super.addRepeatedField(field, value);
765     }
766 
767     @java.lang.Override
mergeFrom(com.google.protobuf.Message other)768     public Builder mergeFrom(com.google.protobuf.Message other) {
769       if (other instanceof com.google.cloud.dataproc.v1.SoftwareConfig) {
770         return mergeFrom((com.google.cloud.dataproc.v1.SoftwareConfig) other);
771       } else {
772         super.mergeFrom(other);
773         return this;
774       }
775     }
776 
mergeFrom(com.google.cloud.dataproc.v1.SoftwareConfig other)777     public Builder mergeFrom(com.google.cloud.dataproc.v1.SoftwareConfig other) {
778       if (other == com.google.cloud.dataproc.v1.SoftwareConfig.getDefaultInstance()) return this;
779       if (!other.getImageVersion().isEmpty()) {
780         imageVersion_ = other.imageVersion_;
781         bitField0_ |= 0x00000001;
782         onChanged();
783       }
784       internalGetMutableProperties().mergeFrom(other.internalGetProperties());
785       bitField0_ |= 0x00000002;
786       if (!other.optionalComponents_.isEmpty()) {
787         if (optionalComponents_.isEmpty()) {
788           optionalComponents_ = other.optionalComponents_;
789           bitField0_ = (bitField0_ & ~0x00000004);
790         } else {
791           ensureOptionalComponentsIsMutable();
792           optionalComponents_.addAll(other.optionalComponents_);
793         }
794         onChanged();
795       }
796       this.mergeUnknownFields(other.getUnknownFields());
797       onChanged();
798       return this;
799     }
800 
801     @java.lang.Override
isInitialized()802     public final boolean isInitialized() {
803       return true;
804     }
805 
806     @java.lang.Override
mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)807     public Builder mergeFrom(
808         com.google.protobuf.CodedInputStream input,
809         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
810         throws java.io.IOException {
811       if (extensionRegistry == null) {
812         throw new java.lang.NullPointerException();
813       }
814       try {
815         boolean done = false;
816         while (!done) {
817           int tag = input.readTag();
818           switch (tag) {
819             case 0:
820               done = true;
821               break;
822             case 10:
823               {
824                 imageVersion_ = input.readStringRequireUtf8();
825                 bitField0_ |= 0x00000001;
826                 break;
827               } // case 10
828             case 18:
829               {
830                 com.google.protobuf.MapEntry<java.lang.String, java.lang.String> properties__ =
831                     input.readMessage(
832                         PropertiesDefaultEntryHolder.defaultEntry.getParserForType(),
833                         extensionRegistry);
834                 internalGetMutableProperties()
835                     .getMutableMap()
836                     .put(properties__.getKey(), properties__.getValue());
837                 bitField0_ |= 0x00000002;
838                 break;
839               } // case 18
840             case 24:
841               {
842                 int tmpRaw = input.readEnum();
843                 ensureOptionalComponentsIsMutable();
844                 optionalComponents_.add(tmpRaw);
845                 break;
846               } // case 24
847             case 26:
848               {
849                 int length = input.readRawVarint32();
850                 int oldLimit = input.pushLimit(length);
851                 while (input.getBytesUntilLimit() > 0) {
852                   int tmpRaw = input.readEnum();
853                   ensureOptionalComponentsIsMutable();
854                   optionalComponents_.add(tmpRaw);
855                 }
856                 input.popLimit(oldLimit);
857                 break;
858               } // case 26
859             default:
860               {
861                 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
862                   done = true; // was an endgroup tag
863                 }
864                 break;
865               } // default:
866           } // switch (tag)
867         } // while (!done)
868       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
869         throw e.unwrapIOException();
870       } finally {
871         onChanged();
872       } // finally
873       return this;
874     }
875 
876     private int bitField0_;
877 
878     private java.lang.Object imageVersion_ = "";
879     /**
880      *
881      *
882      * <pre>
883      * Optional. The version of software inside the cluster. It must be one of the
884      * supported [Dataproc
885      * Versions](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#supported_dataproc_versions),
886      * such as "1.2" (including a subminor version, such as "1.2.29"), or the
887      * ["preview"
888      * version](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#other_versions).
889      * If unspecified, it defaults to the latest Debian version.
890      * </pre>
891      *
892      * <code>string image_version = 1 [(.google.api.field_behavior) = OPTIONAL];</code>
893      *
894      * @return The imageVersion.
895      */
getImageVersion()896     public java.lang.String getImageVersion() {
897       java.lang.Object ref = imageVersion_;
898       if (!(ref instanceof java.lang.String)) {
899         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
900         java.lang.String s = bs.toStringUtf8();
901         imageVersion_ = s;
902         return s;
903       } else {
904         return (java.lang.String) ref;
905       }
906     }
907     /**
908      *
909      *
910      * <pre>
911      * Optional. The version of software inside the cluster. It must be one of the
912      * supported [Dataproc
913      * Versions](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#supported_dataproc_versions),
914      * such as "1.2" (including a subminor version, such as "1.2.29"), or the
915      * ["preview"
916      * version](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#other_versions).
917      * If unspecified, it defaults to the latest Debian version.
918      * </pre>
919      *
920      * <code>string image_version = 1 [(.google.api.field_behavior) = OPTIONAL];</code>
921      *
922      * @return The bytes for imageVersion.
923      */
getImageVersionBytes()924     public com.google.protobuf.ByteString getImageVersionBytes() {
925       java.lang.Object ref = imageVersion_;
926       if (ref instanceof String) {
927         com.google.protobuf.ByteString b =
928             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
929         imageVersion_ = b;
930         return b;
931       } else {
932         return (com.google.protobuf.ByteString) ref;
933       }
934     }
935     /**
936      *
937      *
938      * <pre>
939      * Optional. The version of software inside the cluster. It must be one of the
940      * supported [Dataproc
941      * Versions](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#supported_dataproc_versions),
942      * such as "1.2" (including a subminor version, such as "1.2.29"), or the
943      * ["preview"
944      * version](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#other_versions).
945      * If unspecified, it defaults to the latest Debian version.
946      * </pre>
947      *
948      * <code>string image_version = 1 [(.google.api.field_behavior) = OPTIONAL];</code>
949      *
950      * @param value The imageVersion to set.
951      * @return This builder for chaining.
952      */
setImageVersion(java.lang.String value)953     public Builder setImageVersion(java.lang.String value) {
954       if (value == null) {
955         throw new NullPointerException();
956       }
957       imageVersion_ = value;
958       bitField0_ |= 0x00000001;
959       onChanged();
960       return this;
961     }
962     /**
963      *
964      *
965      * <pre>
966      * Optional. The version of software inside the cluster. It must be one of the
967      * supported [Dataproc
968      * Versions](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#supported_dataproc_versions),
969      * such as "1.2" (including a subminor version, such as "1.2.29"), or the
970      * ["preview"
971      * version](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#other_versions).
972      * If unspecified, it defaults to the latest Debian version.
973      * </pre>
974      *
975      * <code>string image_version = 1 [(.google.api.field_behavior) = OPTIONAL];</code>
976      *
977      * @return This builder for chaining.
978      */
clearImageVersion()979     public Builder clearImageVersion() {
980       imageVersion_ = getDefaultInstance().getImageVersion();
981       bitField0_ = (bitField0_ & ~0x00000001);
982       onChanged();
983       return this;
984     }
985     /**
986      *
987      *
988      * <pre>
989      * Optional. The version of software inside the cluster. It must be one of the
990      * supported [Dataproc
991      * Versions](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#supported_dataproc_versions),
992      * such as "1.2" (including a subminor version, such as "1.2.29"), or the
993      * ["preview"
994      * version](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#other_versions).
995      * If unspecified, it defaults to the latest Debian version.
996      * </pre>
997      *
998      * <code>string image_version = 1 [(.google.api.field_behavior) = OPTIONAL];</code>
999      *
1000      * @param value The bytes for imageVersion to set.
1001      * @return This builder for chaining.
1002      */
setImageVersionBytes(com.google.protobuf.ByteString value)1003     public Builder setImageVersionBytes(com.google.protobuf.ByteString value) {
1004       if (value == null) {
1005         throw new NullPointerException();
1006       }
1007       checkByteStringIsUtf8(value);
1008       imageVersion_ = value;
1009       bitField0_ |= 0x00000001;
1010       onChanged();
1011       return this;
1012     }
1013 
1014     private com.google.protobuf.MapField<java.lang.String, java.lang.String> properties_;
1015 
1016     private com.google.protobuf.MapField<java.lang.String, java.lang.String>
internalGetProperties()1017         internalGetProperties() {
1018       if (properties_ == null) {
1019         return com.google.protobuf.MapField.emptyMapField(
1020             PropertiesDefaultEntryHolder.defaultEntry);
1021       }
1022       return properties_;
1023     }
1024 
1025     private com.google.protobuf.MapField<java.lang.String, java.lang.String>
internalGetMutableProperties()1026         internalGetMutableProperties() {
1027       if (properties_ == null) {
1028         properties_ =
1029             com.google.protobuf.MapField.newMapField(PropertiesDefaultEntryHolder.defaultEntry);
1030       }
1031       if (!properties_.isMutable()) {
1032         properties_ = properties_.copy();
1033       }
1034       bitField0_ |= 0x00000002;
1035       onChanged();
1036       return properties_;
1037     }
1038 
getPropertiesCount()1039     public int getPropertiesCount() {
1040       return internalGetProperties().getMap().size();
1041     }
1042     /**
1043      *
1044      *
1045      * <pre>
1046      * Optional. The properties to set on daemon config files.
1047      * Property keys are specified in `prefix:property` format, for example
1048      * `core:hadoop.tmp.dir`. The following are supported prefixes
1049      * and their mappings:
1050      * * capacity-scheduler: `capacity-scheduler.xml`
1051      * * core:   `core-site.xml`
1052      * * distcp: `distcp-default.xml`
1053      * * hdfs:   `hdfs-site.xml`
1054      * * hive:   `hive-site.xml`
1055      * * mapred: `mapred-site.xml`
1056      * * pig:    `pig.properties`
1057      * * spark:  `spark-defaults.conf`
1058      * * yarn:   `yarn-site.xml`
1059      * For more information, see [Cluster
1060      * properties](https://cloud.google.com/dataproc/docs/concepts/cluster-properties).
1061      * </pre>
1062      *
1063      * <code>map&lt;string, string&gt; properties = 2 [(.google.api.field_behavior) = OPTIONAL];
1064      * </code>
1065      */
1066     @java.lang.Override
containsProperties(java.lang.String key)1067     public boolean containsProperties(java.lang.String key) {
1068       if (key == null) {
1069         throw new NullPointerException("map key");
1070       }
1071       return internalGetProperties().getMap().containsKey(key);
1072     }
1073     /** Use {@link #getPropertiesMap()} instead. */
1074     @java.lang.Override
1075     @java.lang.Deprecated
getProperties()1076     public java.util.Map<java.lang.String, java.lang.String> getProperties() {
1077       return getPropertiesMap();
1078     }
1079     /**
1080      *
1081      *
1082      * <pre>
1083      * Optional. The properties to set on daemon config files.
1084      * Property keys are specified in `prefix:property` format, for example
1085      * `core:hadoop.tmp.dir`. The following are supported prefixes
1086      * and their mappings:
1087      * * capacity-scheduler: `capacity-scheduler.xml`
1088      * * core:   `core-site.xml`
1089      * * distcp: `distcp-default.xml`
1090      * * hdfs:   `hdfs-site.xml`
1091      * * hive:   `hive-site.xml`
1092      * * mapred: `mapred-site.xml`
1093      * * pig:    `pig.properties`
1094      * * spark:  `spark-defaults.conf`
1095      * * yarn:   `yarn-site.xml`
1096      * For more information, see [Cluster
1097      * properties](https://cloud.google.com/dataproc/docs/concepts/cluster-properties).
1098      * </pre>
1099      *
1100      * <code>map&lt;string, string&gt; properties = 2 [(.google.api.field_behavior) = OPTIONAL];
1101      * </code>
1102      */
1103     @java.lang.Override
getPropertiesMap()1104     public java.util.Map<java.lang.String, java.lang.String> getPropertiesMap() {
1105       return internalGetProperties().getMap();
1106     }
1107     /**
1108      *
1109      *
1110      * <pre>
1111      * Optional. The properties to set on daemon config files.
1112      * Property keys are specified in `prefix:property` format, for example
1113      * `core:hadoop.tmp.dir`. The following are supported prefixes
1114      * and their mappings:
1115      * * capacity-scheduler: `capacity-scheduler.xml`
1116      * * core:   `core-site.xml`
1117      * * distcp: `distcp-default.xml`
1118      * * hdfs:   `hdfs-site.xml`
1119      * * hive:   `hive-site.xml`
1120      * * mapred: `mapred-site.xml`
1121      * * pig:    `pig.properties`
1122      * * spark:  `spark-defaults.conf`
1123      * * yarn:   `yarn-site.xml`
1124      * For more information, see [Cluster
1125      * properties](https://cloud.google.com/dataproc/docs/concepts/cluster-properties).
1126      * </pre>
1127      *
1128      * <code>map&lt;string, string&gt; properties = 2 [(.google.api.field_behavior) = OPTIONAL];
1129      * </code>
1130      */
1131     @java.lang.Override
getPropertiesOrDefault( java.lang.String key, java.lang.String defaultValue)1132     public /* nullable */ java.lang.String getPropertiesOrDefault(
1133         java.lang.String key,
1134         /* nullable */
1135         java.lang.String defaultValue) {
1136       if (key == null) {
1137         throw new NullPointerException("map key");
1138       }
1139       java.util.Map<java.lang.String, java.lang.String> map = internalGetProperties().getMap();
1140       return map.containsKey(key) ? map.get(key) : defaultValue;
1141     }
1142     /**
1143      *
1144      *
1145      * <pre>
1146      * Optional. The properties to set on daemon config files.
1147      * Property keys are specified in `prefix:property` format, for example
1148      * `core:hadoop.tmp.dir`. The following are supported prefixes
1149      * and their mappings:
1150      * * capacity-scheduler: `capacity-scheduler.xml`
1151      * * core:   `core-site.xml`
1152      * * distcp: `distcp-default.xml`
1153      * * hdfs:   `hdfs-site.xml`
1154      * * hive:   `hive-site.xml`
1155      * * mapred: `mapred-site.xml`
1156      * * pig:    `pig.properties`
1157      * * spark:  `spark-defaults.conf`
1158      * * yarn:   `yarn-site.xml`
1159      * For more information, see [Cluster
1160      * properties](https://cloud.google.com/dataproc/docs/concepts/cluster-properties).
1161      * </pre>
1162      *
1163      * <code>map&lt;string, string&gt; properties = 2 [(.google.api.field_behavior) = OPTIONAL];
1164      * </code>
1165      */
1166     @java.lang.Override
getPropertiesOrThrow(java.lang.String key)1167     public java.lang.String getPropertiesOrThrow(java.lang.String key) {
1168       if (key == null) {
1169         throw new NullPointerException("map key");
1170       }
1171       java.util.Map<java.lang.String, java.lang.String> map = internalGetProperties().getMap();
1172       if (!map.containsKey(key)) {
1173         throw new java.lang.IllegalArgumentException();
1174       }
1175       return map.get(key);
1176     }
1177 
clearProperties()1178     public Builder clearProperties() {
1179       bitField0_ = (bitField0_ & ~0x00000002);
1180       internalGetMutableProperties().getMutableMap().clear();
1181       return this;
1182     }
1183     /**
1184      *
1185      *
1186      * <pre>
1187      * Optional. The properties to set on daemon config files.
1188      * Property keys are specified in `prefix:property` format, for example
1189      * `core:hadoop.tmp.dir`. The following are supported prefixes
1190      * and their mappings:
1191      * * capacity-scheduler: `capacity-scheduler.xml`
1192      * * core:   `core-site.xml`
1193      * * distcp: `distcp-default.xml`
1194      * * hdfs:   `hdfs-site.xml`
1195      * * hive:   `hive-site.xml`
1196      * * mapred: `mapred-site.xml`
1197      * * pig:    `pig.properties`
1198      * * spark:  `spark-defaults.conf`
1199      * * yarn:   `yarn-site.xml`
1200      * For more information, see [Cluster
1201      * properties](https://cloud.google.com/dataproc/docs/concepts/cluster-properties).
1202      * </pre>
1203      *
1204      * <code>map&lt;string, string&gt; properties = 2 [(.google.api.field_behavior) = OPTIONAL];
1205      * </code>
1206      */
removeProperties(java.lang.String key)1207     public Builder removeProperties(java.lang.String key) {
1208       if (key == null) {
1209         throw new NullPointerException("map key");
1210       }
1211       internalGetMutableProperties().getMutableMap().remove(key);
1212       return this;
1213     }
1214     /** Use alternate mutation accessors instead. */
1215     @java.lang.Deprecated
getMutableProperties()1216     public java.util.Map<java.lang.String, java.lang.String> getMutableProperties() {
1217       bitField0_ |= 0x00000002;
1218       return internalGetMutableProperties().getMutableMap();
1219     }
1220     /**
1221      *
1222      *
1223      * <pre>
1224      * Optional. The properties to set on daemon config files.
1225      * Property keys are specified in `prefix:property` format, for example
1226      * `core:hadoop.tmp.dir`. The following are supported prefixes
1227      * and their mappings:
1228      * * capacity-scheduler: `capacity-scheduler.xml`
1229      * * core:   `core-site.xml`
1230      * * distcp: `distcp-default.xml`
1231      * * hdfs:   `hdfs-site.xml`
1232      * * hive:   `hive-site.xml`
1233      * * mapred: `mapred-site.xml`
1234      * * pig:    `pig.properties`
1235      * * spark:  `spark-defaults.conf`
1236      * * yarn:   `yarn-site.xml`
1237      * For more information, see [Cluster
1238      * properties](https://cloud.google.com/dataproc/docs/concepts/cluster-properties).
1239      * </pre>
1240      *
1241      * <code>map&lt;string, string&gt; properties = 2 [(.google.api.field_behavior) = OPTIONAL];
1242      * </code>
1243      */
putProperties(java.lang.String key, java.lang.String value)1244     public Builder putProperties(java.lang.String key, java.lang.String value) {
1245       if (key == null) {
1246         throw new NullPointerException("map key");
1247       }
1248       if (value == null) {
1249         throw new NullPointerException("map value");
1250       }
1251       internalGetMutableProperties().getMutableMap().put(key, value);
1252       bitField0_ |= 0x00000002;
1253       return this;
1254     }
1255     /**
1256      *
1257      *
1258      * <pre>
1259      * Optional. The properties to set on daemon config files.
1260      * Property keys are specified in `prefix:property` format, for example
1261      * `core:hadoop.tmp.dir`. The following are supported prefixes
1262      * and their mappings:
1263      * * capacity-scheduler: `capacity-scheduler.xml`
1264      * * core:   `core-site.xml`
1265      * * distcp: `distcp-default.xml`
1266      * * hdfs:   `hdfs-site.xml`
1267      * * hive:   `hive-site.xml`
1268      * * mapred: `mapred-site.xml`
1269      * * pig:    `pig.properties`
1270      * * spark:  `spark-defaults.conf`
1271      * * yarn:   `yarn-site.xml`
1272      * For more information, see [Cluster
1273      * properties](https://cloud.google.com/dataproc/docs/concepts/cluster-properties).
1274      * </pre>
1275      *
1276      * <code>map&lt;string, string&gt; properties = 2 [(.google.api.field_behavior) = OPTIONAL];
1277      * </code>
1278      */
putAllProperties(java.util.Map<java.lang.String, java.lang.String> values)1279     public Builder putAllProperties(java.util.Map<java.lang.String, java.lang.String> values) {
1280       internalGetMutableProperties().getMutableMap().putAll(values);
1281       bitField0_ |= 0x00000002;
1282       return this;
1283     }
1284 
1285     private java.util.List<java.lang.Integer> optionalComponents_ =
1286         java.util.Collections.emptyList();
1287 
ensureOptionalComponentsIsMutable()1288     private void ensureOptionalComponentsIsMutable() {
1289       if (!((bitField0_ & 0x00000004) != 0)) {
1290         optionalComponents_ = new java.util.ArrayList<java.lang.Integer>(optionalComponents_);
1291         bitField0_ |= 0x00000004;
1292       }
1293     }
1294     /**
1295      *
1296      *
1297      * <pre>
1298      * Optional. The set of components to activate on the cluster.
1299      * </pre>
1300      *
1301      * <code>
1302      * repeated .google.cloud.dataproc.v1.Component optional_components = 3 [(.google.api.field_behavior) = OPTIONAL];
1303      * </code>
1304      *
1305      * @return A list containing the optionalComponents.
1306      */
getOptionalComponentsList()1307     public java.util.List<com.google.cloud.dataproc.v1.Component> getOptionalComponentsList() {
1308       return new com.google.protobuf.Internal.ListAdapter<
1309           java.lang.Integer, com.google.cloud.dataproc.v1.Component>(
1310           optionalComponents_, optionalComponents_converter_);
1311     }
1312     /**
1313      *
1314      *
1315      * <pre>
1316      * Optional. The set of components to activate on the cluster.
1317      * </pre>
1318      *
1319      * <code>
1320      * repeated .google.cloud.dataproc.v1.Component optional_components = 3 [(.google.api.field_behavior) = OPTIONAL];
1321      * </code>
1322      *
1323      * @return The count of optionalComponents.
1324      */
getOptionalComponentsCount()1325     public int getOptionalComponentsCount() {
1326       return optionalComponents_.size();
1327     }
1328     /**
1329      *
1330      *
1331      * <pre>
1332      * Optional. The set of components to activate on the cluster.
1333      * </pre>
1334      *
1335      * <code>
1336      * repeated .google.cloud.dataproc.v1.Component optional_components = 3 [(.google.api.field_behavior) = OPTIONAL];
1337      * </code>
1338      *
1339      * @param index The index of the element to return.
1340      * @return The optionalComponents at the given index.
1341      */
getOptionalComponents(int index)1342     public com.google.cloud.dataproc.v1.Component getOptionalComponents(int index) {
1343       return optionalComponents_converter_.convert(optionalComponents_.get(index));
1344     }
1345     /**
1346      *
1347      *
1348      * <pre>
1349      * Optional. The set of components to activate on the cluster.
1350      * </pre>
1351      *
1352      * <code>
1353      * repeated .google.cloud.dataproc.v1.Component optional_components = 3 [(.google.api.field_behavior) = OPTIONAL];
1354      * </code>
1355      *
1356      * @param index The index to set the value at.
1357      * @param value The optionalComponents to set.
1358      * @return This builder for chaining.
1359      */
setOptionalComponents(int index, com.google.cloud.dataproc.v1.Component value)1360     public Builder setOptionalComponents(int index, com.google.cloud.dataproc.v1.Component value) {
1361       if (value == null) {
1362         throw new NullPointerException();
1363       }
1364       ensureOptionalComponentsIsMutable();
1365       optionalComponents_.set(index, value.getNumber());
1366       onChanged();
1367       return this;
1368     }
1369     /**
1370      *
1371      *
1372      * <pre>
1373      * Optional. The set of components to activate on the cluster.
1374      * </pre>
1375      *
1376      * <code>
1377      * repeated .google.cloud.dataproc.v1.Component optional_components = 3 [(.google.api.field_behavior) = OPTIONAL];
1378      * </code>
1379      *
1380      * @param value The optionalComponents to add.
1381      * @return This builder for chaining.
1382      */
addOptionalComponents(com.google.cloud.dataproc.v1.Component value)1383     public Builder addOptionalComponents(com.google.cloud.dataproc.v1.Component value) {
1384       if (value == null) {
1385         throw new NullPointerException();
1386       }
1387       ensureOptionalComponentsIsMutable();
1388       optionalComponents_.add(value.getNumber());
1389       onChanged();
1390       return this;
1391     }
1392     /**
1393      *
1394      *
1395      * <pre>
1396      * Optional. The set of components to activate on the cluster.
1397      * </pre>
1398      *
1399      * <code>
1400      * repeated .google.cloud.dataproc.v1.Component optional_components = 3 [(.google.api.field_behavior) = OPTIONAL];
1401      * </code>
1402      *
1403      * @param values The optionalComponents to add.
1404      * @return This builder for chaining.
1405      */
addAllOptionalComponents( java.lang.Iterable<? extends com.google.cloud.dataproc.v1.Component> values)1406     public Builder addAllOptionalComponents(
1407         java.lang.Iterable<? extends com.google.cloud.dataproc.v1.Component> values) {
1408       ensureOptionalComponentsIsMutable();
1409       for (com.google.cloud.dataproc.v1.Component value : values) {
1410         optionalComponents_.add(value.getNumber());
1411       }
1412       onChanged();
1413       return this;
1414     }
1415     /**
1416      *
1417      *
1418      * <pre>
1419      * Optional. The set of components to activate on the cluster.
1420      * </pre>
1421      *
1422      * <code>
1423      * repeated .google.cloud.dataproc.v1.Component optional_components = 3 [(.google.api.field_behavior) = OPTIONAL];
1424      * </code>
1425      *
1426      * @return This builder for chaining.
1427      */
clearOptionalComponents()1428     public Builder clearOptionalComponents() {
1429       optionalComponents_ = java.util.Collections.emptyList();
1430       bitField0_ = (bitField0_ & ~0x00000004);
1431       onChanged();
1432       return this;
1433     }
1434     /**
1435      *
1436      *
1437      * <pre>
1438      * Optional. The set of components to activate on the cluster.
1439      * </pre>
1440      *
1441      * <code>
1442      * repeated .google.cloud.dataproc.v1.Component optional_components = 3 [(.google.api.field_behavior) = OPTIONAL];
1443      * </code>
1444      *
1445      * @return A list containing the enum numeric values on the wire for optionalComponents.
1446      */
getOptionalComponentsValueList()1447     public java.util.List<java.lang.Integer> getOptionalComponentsValueList() {
1448       return java.util.Collections.unmodifiableList(optionalComponents_);
1449     }
1450     /**
1451      *
1452      *
1453      * <pre>
1454      * Optional. The set of components to activate on the cluster.
1455      * </pre>
1456      *
1457      * <code>
1458      * repeated .google.cloud.dataproc.v1.Component optional_components = 3 [(.google.api.field_behavior) = OPTIONAL];
1459      * </code>
1460      *
1461      * @param index The index of the value to return.
1462      * @return The enum numeric value on the wire of optionalComponents at the given index.
1463      */
getOptionalComponentsValue(int index)1464     public int getOptionalComponentsValue(int index) {
1465       return optionalComponents_.get(index);
1466     }
1467     /**
1468      *
1469      *
1470      * <pre>
1471      * Optional. The set of components to activate on the cluster.
1472      * </pre>
1473      *
1474      * <code>
1475      * repeated .google.cloud.dataproc.v1.Component optional_components = 3 [(.google.api.field_behavior) = OPTIONAL];
1476      * </code>
1477      *
1478      * @param index The index to set the value at.
1479      * @param value The enum numeric value on the wire for optionalComponents to set.
1480      * @return This builder for chaining.
1481      */
setOptionalComponentsValue(int index, int value)1482     public Builder setOptionalComponentsValue(int index, int value) {
1483       ensureOptionalComponentsIsMutable();
1484       optionalComponents_.set(index, value);
1485       onChanged();
1486       return this;
1487     }
1488     /**
1489      *
1490      *
1491      * <pre>
1492      * Optional. The set of components to activate on the cluster.
1493      * </pre>
1494      *
1495      * <code>
1496      * repeated .google.cloud.dataproc.v1.Component optional_components = 3 [(.google.api.field_behavior) = OPTIONAL];
1497      * </code>
1498      *
1499      * @param value The enum numeric value on the wire for optionalComponents to add.
1500      * @return This builder for chaining.
1501      */
addOptionalComponentsValue(int value)1502     public Builder addOptionalComponentsValue(int value) {
1503       ensureOptionalComponentsIsMutable();
1504       optionalComponents_.add(value);
1505       onChanged();
1506       return this;
1507     }
1508     /**
1509      *
1510      *
1511      * <pre>
1512      * Optional. The set of components to activate on the cluster.
1513      * </pre>
1514      *
1515      * <code>
1516      * repeated .google.cloud.dataproc.v1.Component optional_components = 3 [(.google.api.field_behavior) = OPTIONAL];
1517      * </code>
1518      *
1519      * @param values The enum numeric values on the wire for optionalComponents to add.
1520      * @return This builder for chaining.
1521      */
addAllOptionalComponentsValue(java.lang.Iterable<java.lang.Integer> values)1522     public Builder addAllOptionalComponentsValue(java.lang.Iterable<java.lang.Integer> values) {
1523       ensureOptionalComponentsIsMutable();
1524       for (int value : values) {
1525         optionalComponents_.add(value);
1526       }
1527       onChanged();
1528       return this;
1529     }
1530 
1531     @java.lang.Override
setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)1532     public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) {
1533       return super.setUnknownFields(unknownFields);
1534     }
1535 
1536     @java.lang.Override
mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields)1537     public final Builder mergeUnknownFields(
1538         final com.google.protobuf.UnknownFieldSet unknownFields) {
1539       return super.mergeUnknownFields(unknownFields);
1540     }
1541 
1542     // @@protoc_insertion_point(builder_scope:google.cloud.dataproc.v1.SoftwareConfig)
1543   }
1544 
1545   // @@protoc_insertion_point(class_scope:google.cloud.dataproc.v1.SoftwareConfig)
1546   private static final com.google.cloud.dataproc.v1.SoftwareConfig DEFAULT_INSTANCE;
1547 
1548   static {
1549     DEFAULT_INSTANCE = new com.google.cloud.dataproc.v1.SoftwareConfig();
1550   }
1551 
getDefaultInstance()1552   public static com.google.cloud.dataproc.v1.SoftwareConfig getDefaultInstance() {
1553     return DEFAULT_INSTANCE;
1554   }
1555 
1556   private static final com.google.protobuf.Parser<SoftwareConfig> PARSER =
1557       new com.google.protobuf.AbstractParser<SoftwareConfig>() {
1558         @java.lang.Override
1559         public SoftwareConfig parsePartialFrom(
1560             com.google.protobuf.CodedInputStream input,
1561             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1562             throws com.google.protobuf.InvalidProtocolBufferException {
1563           Builder builder = newBuilder();
1564           try {
1565             builder.mergeFrom(input, extensionRegistry);
1566           } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1567             throw e.setUnfinishedMessage(builder.buildPartial());
1568           } catch (com.google.protobuf.UninitializedMessageException e) {
1569             throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
1570           } catch (java.io.IOException e) {
1571             throw new com.google.protobuf.InvalidProtocolBufferException(e)
1572                 .setUnfinishedMessage(builder.buildPartial());
1573           }
1574           return builder.buildPartial();
1575         }
1576       };
1577 
parser()1578   public static com.google.protobuf.Parser<SoftwareConfig> parser() {
1579     return PARSER;
1580   }
1581 
1582   @java.lang.Override
getParserForType()1583   public com.google.protobuf.Parser<SoftwareConfig> getParserForType() {
1584     return PARSER;
1585   }
1586 
1587   @java.lang.Override
getDefaultInstanceForType()1588   public com.google.cloud.dataproc.v1.SoftwareConfig getDefaultInstanceForType() {
1589     return DEFAULT_INSTANCE;
1590   }
1591 }
1592