• 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/aiplatform/v1/training_pipeline.proto
18 
19 package com.google.cloud.aiplatform.v1;
20 
21 /**
22  *
23  *
24  * <pre>
25  * The TrainingPipeline orchestrates tasks associated with training a Model. It
26  * always executes the training task, and optionally may also
27  * export data from Vertex AI's Dataset which becomes the training input,
28  * [upload][google.cloud.aiplatform.v1.ModelService.UploadModel] the Model to
29  * Vertex AI, and evaluate the Model.
30  * </pre>
31  *
32  * Protobuf type {@code google.cloud.aiplatform.v1.TrainingPipeline}
33  */
34 public final class TrainingPipeline extends com.google.protobuf.GeneratedMessageV3
35     implements
36     // @@protoc_insertion_point(message_implements:google.cloud.aiplatform.v1.TrainingPipeline)
37     TrainingPipelineOrBuilder {
38   private static final long serialVersionUID = 0L;
39   // Use TrainingPipeline.newBuilder() to construct.
TrainingPipeline(com.google.protobuf.GeneratedMessageV3.Builder<?> builder)40   private TrainingPipeline(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
41     super(builder);
42   }
43 
TrainingPipeline()44   private TrainingPipeline() {
45     name_ = "";
46     displayName_ = "";
47     trainingTaskDefinition_ = "";
48     modelId_ = "";
49     parentModel_ = "";
50     state_ = 0;
51   }
52 
53   @java.lang.Override
54   @SuppressWarnings({"unused"})
newInstance(UnusedPrivateParameter unused)55   protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
56     return new TrainingPipeline();
57   }
58 
59   @java.lang.Override
getUnknownFields()60   public final com.google.protobuf.UnknownFieldSet getUnknownFields() {
61     return this.unknownFields;
62   }
63 
getDescriptor()64   public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
65     return com.google.cloud.aiplatform.v1.TrainingPipelineProto
66         .internal_static_google_cloud_aiplatform_v1_TrainingPipeline_descriptor;
67   }
68 
69   @SuppressWarnings({"rawtypes"})
70   @java.lang.Override
internalGetMapField(int number)71   protected com.google.protobuf.MapField internalGetMapField(int number) {
72     switch (number) {
73       case 15:
74         return internalGetLabels();
75       default:
76         throw new RuntimeException("Invalid map field number: " + number);
77     }
78   }
79 
80   @java.lang.Override
81   protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()82       internalGetFieldAccessorTable() {
83     return com.google.cloud.aiplatform.v1.TrainingPipelineProto
84         .internal_static_google_cloud_aiplatform_v1_TrainingPipeline_fieldAccessorTable
85         .ensureFieldAccessorsInitialized(
86             com.google.cloud.aiplatform.v1.TrainingPipeline.class,
87             com.google.cloud.aiplatform.v1.TrainingPipeline.Builder.class);
88   }
89 
90   public static final int NAME_FIELD_NUMBER = 1;
91 
92   @SuppressWarnings("serial")
93   private volatile java.lang.Object name_ = "";
94   /**
95    *
96    *
97    * <pre>
98    * Output only. Resource name of the TrainingPipeline.
99    * </pre>
100    *
101    * <code>string name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
102    *
103    * @return The name.
104    */
105   @java.lang.Override
getName()106   public java.lang.String getName() {
107     java.lang.Object ref = name_;
108     if (ref instanceof java.lang.String) {
109       return (java.lang.String) ref;
110     } else {
111       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
112       java.lang.String s = bs.toStringUtf8();
113       name_ = s;
114       return s;
115     }
116   }
117   /**
118    *
119    *
120    * <pre>
121    * Output only. Resource name of the TrainingPipeline.
122    * </pre>
123    *
124    * <code>string name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
125    *
126    * @return The bytes for name.
127    */
128   @java.lang.Override
getNameBytes()129   public com.google.protobuf.ByteString getNameBytes() {
130     java.lang.Object ref = name_;
131     if (ref instanceof java.lang.String) {
132       com.google.protobuf.ByteString b =
133           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
134       name_ = b;
135       return b;
136     } else {
137       return (com.google.protobuf.ByteString) ref;
138     }
139   }
140 
141   public static final int DISPLAY_NAME_FIELD_NUMBER = 2;
142 
143   @SuppressWarnings("serial")
144   private volatile java.lang.Object displayName_ = "";
145   /**
146    *
147    *
148    * <pre>
149    * Required. The user-defined name of this TrainingPipeline.
150    * </pre>
151    *
152    * <code>string display_name = 2 [(.google.api.field_behavior) = REQUIRED];</code>
153    *
154    * @return The displayName.
155    */
156   @java.lang.Override
getDisplayName()157   public java.lang.String getDisplayName() {
158     java.lang.Object ref = displayName_;
159     if (ref instanceof java.lang.String) {
160       return (java.lang.String) ref;
161     } else {
162       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
163       java.lang.String s = bs.toStringUtf8();
164       displayName_ = s;
165       return s;
166     }
167   }
168   /**
169    *
170    *
171    * <pre>
172    * Required. The user-defined name of this TrainingPipeline.
173    * </pre>
174    *
175    * <code>string display_name = 2 [(.google.api.field_behavior) = REQUIRED];</code>
176    *
177    * @return The bytes for displayName.
178    */
179   @java.lang.Override
getDisplayNameBytes()180   public com.google.protobuf.ByteString getDisplayNameBytes() {
181     java.lang.Object ref = displayName_;
182     if (ref instanceof java.lang.String) {
183       com.google.protobuf.ByteString b =
184           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
185       displayName_ = b;
186       return b;
187     } else {
188       return (com.google.protobuf.ByteString) ref;
189     }
190   }
191 
192   public static final int INPUT_DATA_CONFIG_FIELD_NUMBER = 3;
193   private com.google.cloud.aiplatform.v1.InputDataConfig inputDataConfig_;
194   /**
195    *
196    *
197    * <pre>
198    * Specifies Vertex AI owned input data that may be used for training the
199    * Model. The TrainingPipeline's
200    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
201    * should make clear whether this config is used and if there are any special
202    * requirements on how it should be filled. If nothing about this config is
203    * mentioned in the
204    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
205    * then it should be assumed that the TrainingPipeline does not depend on this
206    * configuration.
207    * </pre>
208    *
209    * <code>.google.cloud.aiplatform.v1.InputDataConfig input_data_config = 3;</code>
210    *
211    * @return Whether the inputDataConfig field is set.
212    */
213   @java.lang.Override
hasInputDataConfig()214   public boolean hasInputDataConfig() {
215     return inputDataConfig_ != null;
216   }
217   /**
218    *
219    *
220    * <pre>
221    * Specifies Vertex AI owned input data that may be used for training the
222    * Model. The TrainingPipeline's
223    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
224    * should make clear whether this config is used and if there are any special
225    * requirements on how it should be filled. If nothing about this config is
226    * mentioned in the
227    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
228    * then it should be assumed that the TrainingPipeline does not depend on this
229    * configuration.
230    * </pre>
231    *
232    * <code>.google.cloud.aiplatform.v1.InputDataConfig input_data_config = 3;</code>
233    *
234    * @return The inputDataConfig.
235    */
236   @java.lang.Override
getInputDataConfig()237   public com.google.cloud.aiplatform.v1.InputDataConfig getInputDataConfig() {
238     return inputDataConfig_ == null
239         ? com.google.cloud.aiplatform.v1.InputDataConfig.getDefaultInstance()
240         : inputDataConfig_;
241   }
242   /**
243    *
244    *
245    * <pre>
246    * Specifies Vertex AI owned input data that may be used for training the
247    * Model. The TrainingPipeline's
248    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
249    * should make clear whether this config is used and if there are any special
250    * requirements on how it should be filled. If nothing about this config is
251    * mentioned in the
252    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
253    * then it should be assumed that the TrainingPipeline does not depend on this
254    * configuration.
255    * </pre>
256    *
257    * <code>.google.cloud.aiplatform.v1.InputDataConfig input_data_config = 3;</code>
258    */
259   @java.lang.Override
getInputDataConfigOrBuilder()260   public com.google.cloud.aiplatform.v1.InputDataConfigOrBuilder getInputDataConfigOrBuilder() {
261     return inputDataConfig_ == null
262         ? com.google.cloud.aiplatform.v1.InputDataConfig.getDefaultInstance()
263         : inputDataConfig_;
264   }
265 
266   public static final int TRAINING_TASK_DEFINITION_FIELD_NUMBER = 4;
267 
268   @SuppressWarnings("serial")
269   private volatile java.lang.Object trainingTaskDefinition_ = "";
270   /**
271    *
272    *
273    * <pre>
274    * Required. A Google Cloud Storage path to the YAML file that defines the
275    * training task which is responsible for producing the model artifact, and
276    * may also include additional auxiliary work. The definition files that can
277    * be used here are found in
278    * gs://google-cloud-aiplatform/schema/trainingjob/definition/.
279    * Note: The URI given on output will be immutable and probably different,
280    * including the URI scheme, than the one given on input. The output URI will
281    * point to a location where the user only has a read access.
282    * </pre>
283    *
284    * <code>string training_task_definition = 4 [(.google.api.field_behavior) = REQUIRED];</code>
285    *
286    * @return The trainingTaskDefinition.
287    */
288   @java.lang.Override
getTrainingTaskDefinition()289   public java.lang.String getTrainingTaskDefinition() {
290     java.lang.Object ref = trainingTaskDefinition_;
291     if (ref instanceof java.lang.String) {
292       return (java.lang.String) ref;
293     } else {
294       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
295       java.lang.String s = bs.toStringUtf8();
296       trainingTaskDefinition_ = s;
297       return s;
298     }
299   }
300   /**
301    *
302    *
303    * <pre>
304    * Required. A Google Cloud Storage path to the YAML file that defines the
305    * training task which is responsible for producing the model artifact, and
306    * may also include additional auxiliary work. The definition files that can
307    * be used here are found in
308    * gs://google-cloud-aiplatform/schema/trainingjob/definition/.
309    * Note: The URI given on output will be immutable and probably different,
310    * including the URI scheme, than the one given on input. The output URI will
311    * point to a location where the user only has a read access.
312    * </pre>
313    *
314    * <code>string training_task_definition = 4 [(.google.api.field_behavior) = REQUIRED];</code>
315    *
316    * @return The bytes for trainingTaskDefinition.
317    */
318   @java.lang.Override
getTrainingTaskDefinitionBytes()319   public com.google.protobuf.ByteString getTrainingTaskDefinitionBytes() {
320     java.lang.Object ref = trainingTaskDefinition_;
321     if (ref instanceof java.lang.String) {
322       com.google.protobuf.ByteString b =
323           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
324       trainingTaskDefinition_ = b;
325       return b;
326     } else {
327       return (com.google.protobuf.ByteString) ref;
328     }
329   }
330 
331   public static final int TRAINING_TASK_INPUTS_FIELD_NUMBER = 5;
332   private com.google.protobuf.Value trainingTaskInputs_;
333   /**
334    *
335    *
336    * <pre>
337    * Required. The training task's parameter(s), as specified in the
338    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
339    * `inputs`.
340    * </pre>
341    *
342    * <code>
343    * .google.protobuf.Value training_task_inputs = 5 [(.google.api.field_behavior) = REQUIRED];
344    * </code>
345    *
346    * @return Whether the trainingTaskInputs field is set.
347    */
348   @java.lang.Override
hasTrainingTaskInputs()349   public boolean hasTrainingTaskInputs() {
350     return trainingTaskInputs_ != null;
351   }
352   /**
353    *
354    *
355    * <pre>
356    * Required. The training task's parameter(s), as specified in the
357    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
358    * `inputs`.
359    * </pre>
360    *
361    * <code>
362    * .google.protobuf.Value training_task_inputs = 5 [(.google.api.field_behavior) = REQUIRED];
363    * </code>
364    *
365    * @return The trainingTaskInputs.
366    */
367   @java.lang.Override
getTrainingTaskInputs()368   public com.google.protobuf.Value getTrainingTaskInputs() {
369     return trainingTaskInputs_ == null
370         ? com.google.protobuf.Value.getDefaultInstance()
371         : trainingTaskInputs_;
372   }
373   /**
374    *
375    *
376    * <pre>
377    * Required. The training task's parameter(s), as specified in the
378    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
379    * `inputs`.
380    * </pre>
381    *
382    * <code>
383    * .google.protobuf.Value training_task_inputs = 5 [(.google.api.field_behavior) = REQUIRED];
384    * </code>
385    */
386   @java.lang.Override
getTrainingTaskInputsOrBuilder()387   public com.google.protobuf.ValueOrBuilder getTrainingTaskInputsOrBuilder() {
388     return trainingTaskInputs_ == null
389         ? com.google.protobuf.Value.getDefaultInstance()
390         : trainingTaskInputs_;
391   }
392 
393   public static final int TRAINING_TASK_METADATA_FIELD_NUMBER = 6;
394   private com.google.protobuf.Value trainingTaskMetadata_;
395   /**
396    *
397    *
398    * <pre>
399    * Output only. The metadata information as specified in the
400    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
401    * `metadata`. This metadata is an auxiliary runtime and final information
402    * about the training task. While the pipeline is running this information is
403    * populated only at a best effort basis. Only present if the
404    * pipeline's
405    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
406    * contains `metadata` object.
407    * </pre>
408    *
409    * <code>
410    * .google.protobuf.Value training_task_metadata = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
411    * </code>
412    *
413    * @return Whether the trainingTaskMetadata field is set.
414    */
415   @java.lang.Override
hasTrainingTaskMetadata()416   public boolean hasTrainingTaskMetadata() {
417     return trainingTaskMetadata_ != null;
418   }
419   /**
420    *
421    *
422    * <pre>
423    * Output only. The metadata information as specified in the
424    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
425    * `metadata`. This metadata is an auxiliary runtime and final information
426    * about the training task. While the pipeline is running this information is
427    * populated only at a best effort basis. Only present if the
428    * pipeline's
429    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
430    * contains `metadata` object.
431    * </pre>
432    *
433    * <code>
434    * .google.protobuf.Value training_task_metadata = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
435    * </code>
436    *
437    * @return The trainingTaskMetadata.
438    */
439   @java.lang.Override
getTrainingTaskMetadata()440   public com.google.protobuf.Value getTrainingTaskMetadata() {
441     return trainingTaskMetadata_ == null
442         ? com.google.protobuf.Value.getDefaultInstance()
443         : trainingTaskMetadata_;
444   }
445   /**
446    *
447    *
448    * <pre>
449    * Output only. The metadata information as specified in the
450    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
451    * `metadata`. This metadata is an auxiliary runtime and final information
452    * about the training task. While the pipeline is running this information is
453    * populated only at a best effort basis. Only present if the
454    * pipeline's
455    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
456    * contains `metadata` object.
457    * </pre>
458    *
459    * <code>
460    * .google.protobuf.Value training_task_metadata = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
461    * </code>
462    */
463   @java.lang.Override
getTrainingTaskMetadataOrBuilder()464   public com.google.protobuf.ValueOrBuilder getTrainingTaskMetadataOrBuilder() {
465     return trainingTaskMetadata_ == null
466         ? com.google.protobuf.Value.getDefaultInstance()
467         : trainingTaskMetadata_;
468   }
469 
470   public static final int MODEL_TO_UPLOAD_FIELD_NUMBER = 7;
471   private com.google.cloud.aiplatform.v1.Model modelToUpload_;
472   /**
473    *
474    *
475    * <pre>
476    * Describes the Model that may be uploaded (via
477    * [ModelService.UploadModel][google.cloud.aiplatform.v1.ModelService.UploadModel])
478    * by this TrainingPipeline. The TrainingPipeline's
479    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
480    * should make clear whether this Model description should be populated, and
481    * if there are any special requirements regarding how it should be filled. If
482    * nothing is mentioned in the
483    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
484    * then it should be assumed that this field should not be filled and the
485    * training task either uploads the Model without a need of this information,
486    * or that training task does not support uploading a Model as part of the
487    * pipeline. When the Pipeline's state becomes `PIPELINE_STATE_SUCCEEDED` and
488    * the trained Model had been uploaded into Vertex AI, then the
489    * model_to_upload's resource [name][google.cloud.aiplatform.v1.Model.name] is
490    * populated. The Model is always uploaded into the Project and Location in
491    * which this pipeline is.
492    * </pre>
493    *
494    * <code>.google.cloud.aiplatform.v1.Model model_to_upload = 7;</code>
495    *
496    * @return Whether the modelToUpload field is set.
497    */
498   @java.lang.Override
hasModelToUpload()499   public boolean hasModelToUpload() {
500     return modelToUpload_ != null;
501   }
502   /**
503    *
504    *
505    * <pre>
506    * Describes the Model that may be uploaded (via
507    * [ModelService.UploadModel][google.cloud.aiplatform.v1.ModelService.UploadModel])
508    * by this TrainingPipeline. The TrainingPipeline's
509    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
510    * should make clear whether this Model description should be populated, and
511    * if there are any special requirements regarding how it should be filled. If
512    * nothing is mentioned in the
513    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
514    * then it should be assumed that this field should not be filled and the
515    * training task either uploads the Model without a need of this information,
516    * or that training task does not support uploading a Model as part of the
517    * pipeline. When the Pipeline's state becomes `PIPELINE_STATE_SUCCEEDED` and
518    * the trained Model had been uploaded into Vertex AI, then the
519    * model_to_upload's resource [name][google.cloud.aiplatform.v1.Model.name] is
520    * populated. The Model is always uploaded into the Project and Location in
521    * which this pipeline is.
522    * </pre>
523    *
524    * <code>.google.cloud.aiplatform.v1.Model model_to_upload = 7;</code>
525    *
526    * @return The modelToUpload.
527    */
528   @java.lang.Override
getModelToUpload()529   public com.google.cloud.aiplatform.v1.Model getModelToUpload() {
530     return modelToUpload_ == null
531         ? com.google.cloud.aiplatform.v1.Model.getDefaultInstance()
532         : modelToUpload_;
533   }
534   /**
535    *
536    *
537    * <pre>
538    * Describes the Model that may be uploaded (via
539    * [ModelService.UploadModel][google.cloud.aiplatform.v1.ModelService.UploadModel])
540    * by this TrainingPipeline. The TrainingPipeline's
541    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
542    * should make clear whether this Model description should be populated, and
543    * if there are any special requirements regarding how it should be filled. If
544    * nothing is mentioned in the
545    * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
546    * then it should be assumed that this field should not be filled and the
547    * training task either uploads the Model without a need of this information,
548    * or that training task does not support uploading a Model as part of the
549    * pipeline. When the Pipeline's state becomes `PIPELINE_STATE_SUCCEEDED` and
550    * the trained Model had been uploaded into Vertex AI, then the
551    * model_to_upload's resource [name][google.cloud.aiplatform.v1.Model.name] is
552    * populated. The Model is always uploaded into the Project and Location in
553    * which this pipeline is.
554    * </pre>
555    *
556    * <code>.google.cloud.aiplatform.v1.Model model_to_upload = 7;</code>
557    */
558   @java.lang.Override
getModelToUploadOrBuilder()559   public com.google.cloud.aiplatform.v1.ModelOrBuilder getModelToUploadOrBuilder() {
560     return modelToUpload_ == null
561         ? com.google.cloud.aiplatform.v1.Model.getDefaultInstance()
562         : modelToUpload_;
563   }
564 
565   public static final int MODEL_ID_FIELD_NUMBER = 22;
566 
567   @SuppressWarnings("serial")
568   private volatile java.lang.Object modelId_ = "";
569   /**
570    *
571    *
572    * <pre>
573    * Optional. The ID to use for the uploaded Model, which will become the final
574    * component of the model resource name.
575    * This value may be up to 63 characters, and valid characters are
576    * `[a-z0-9_-]`. The first character cannot be a number or hyphen.
577    * </pre>
578    *
579    * <code>string model_id = 22 [(.google.api.field_behavior) = OPTIONAL];</code>
580    *
581    * @return The modelId.
582    */
583   @java.lang.Override
getModelId()584   public java.lang.String getModelId() {
585     java.lang.Object ref = modelId_;
586     if (ref instanceof java.lang.String) {
587       return (java.lang.String) ref;
588     } else {
589       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
590       java.lang.String s = bs.toStringUtf8();
591       modelId_ = s;
592       return s;
593     }
594   }
595   /**
596    *
597    *
598    * <pre>
599    * Optional. The ID to use for the uploaded Model, which will become the final
600    * component of the model resource name.
601    * This value may be up to 63 characters, and valid characters are
602    * `[a-z0-9_-]`. The first character cannot be a number or hyphen.
603    * </pre>
604    *
605    * <code>string model_id = 22 [(.google.api.field_behavior) = OPTIONAL];</code>
606    *
607    * @return The bytes for modelId.
608    */
609   @java.lang.Override
getModelIdBytes()610   public com.google.protobuf.ByteString getModelIdBytes() {
611     java.lang.Object ref = modelId_;
612     if (ref instanceof java.lang.String) {
613       com.google.protobuf.ByteString b =
614           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
615       modelId_ = b;
616       return b;
617     } else {
618       return (com.google.protobuf.ByteString) ref;
619     }
620   }
621 
622   public static final int PARENT_MODEL_FIELD_NUMBER = 21;
623 
624   @SuppressWarnings("serial")
625   private volatile java.lang.Object parentModel_ = "";
626   /**
627    *
628    *
629    * <pre>
630    * Optional. When specify this field, the `model_to_upload` will not be
631    * uploaded as a new model, instead, it will become a new version of this
632    * `parent_model`.
633    * </pre>
634    *
635    * <code>string parent_model = 21 [(.google.api.field_behavior) = OPTIONAL];</code>
636    *
637    * @return The parentModel.
638    */
639   @java.lang.Override
getParentModel()640   public java.lang.String getParentModel() {
641     java.lang.Object ref = parentModel_;
642     if (ref instanceof java.lang.String) {
643       return (java.lang.String) ref;
644     } else {
645       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
646       java.lang.String s = bs.toStringUtf8();
647       parentModel_ = s;
648       return s;
649     }
650   }
651   /**
652    *
653    *
654    * <pre>
655    * Optional. When specify this field, the `model_to_upload` will not be
656    * uploaded as a new model, instead, it will become a new version of this
657    * `parent_model`.
658    * </pre>
659    *
660    * <code>string parent_model = 21 [(.google.api.field_behavior) = OPTIONAL];</code>
661    *
662    * @return The bytes for parentModel.
663    */
664   @java.lang.Override
getParentModelBytes()665   public com.google.protobuf.ByteString getParentModelBytes() {
666     java.lang.Object ref = parentModel_;
667     if (ref instanceof java.lang.String) {
668       com.google.protobuf.ByteString b =
669           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
670       parentModel_ = b;
671       return b;
672     } else {
673       return (com.google.protobuf.ByteString) ref;
674     }
675   }
676 
677   public static final int STATE_FIELD_NUMBER = 9;
678   private int state_ = 0;
679   /**
680    *
681    *
682    * <pre>
683    * Output only. The detailed state of the pipeline.
684    * </pre>
685    *
686    * <code>
687    * .google.cloud.aiplatform.v1.PipelineState state = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];
688    * </code>
689    *
690    * @return The enum numeric value on the wire for state.
691    */
692   @java.lang.Override
getStateValue()693   public int getStateValue() {
694     return state_;
695   }
696   /**
697    *
698    *
699    * <pre>
700    * Output only. The detailed state of the pipeline.
701    * </pre>
702    *
703    * <code>
704    * .google.cloud.aiplatform.v1.PipelineState state = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];
705    * </code>
706    *
707    * @return The state.
708    */
709   @java.lang.Override
getState()710   public com.google.cloud.aiplatform.v1.PipelineState getState() {
711     com.google.cloud.aiplatform.v1.PipelineState result =
712         com.google.cloud.aiplatform.v1.PipelineState.forNumber(state_);
713     return result == null ? com.google.cloud.aiplatform.v1.PipelineState.UNRECOGNIZED : result;
714   }
715 
716   public static final int ERROR_FIELD_NUMBER = 10;
717   private com.google.rpc.Status error_;
718   /**
719    *
720    *
721    * <pre>
722    * Output only. Only populated when the pipeline's state is
723    * `PIPELINE_STATE_FAILED` or `PIPELINE_STATE_CANCELLED`.
724    * </pre>
725    *
726    * <code>.google.rpc.Status error = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
727    *
728    * @return Whether the error field is set.
729    */
730   @java.lang.Override
hasError()731   public boolean hasError() {
732     return error_ != null;
733   }
734   /**
735    *
736    *
737    * <pre>
738    * Output only. Only populated when the pipeline's state is
739    * `PIPELINE_STATE_FAILED` or `PIPELINE_STATE_CANCELLED`.
740    * </pre>
741    *
742    * <code>.google.rpc.Status error = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
743    *
744    * @return The error.
745    */
746   @java.lang.Override
getError()747   public com.google.rpc.Status getError() {
748     return error_ == null ? com.google.rpc.Status.getDefaultInstance() : error_;
749   }
750   /**
751    *
752    *
753    * <pre>
754    * Output only. Only populated when the pipeline's state is
755    * `PIPELINE_STATE_FAILED` or `PIPELINE_STATE_CANCELLED`.
756    * </pre>
757    *
758    * <code>.google.rpc.Status error = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
759    */
760   @java.lang.Override
getErrorOrBuilder()761   public com.google.rpc.StatusOrBuilder getErrorOrBuilder() {
762     return error_ == null ? com.google.rpc.Status.getDefaultInstance() : error_;
763   }
764 
765   public static final int CREATE_TIME_FIELD_NUMBER = 11;
766   private com.google.protobuf.Timestamp createTime_;
767   /**
768    *
769    *
770    * <pre>
771    * Output only. Time when the TrainingPipeline was created.
772    * </pre>
773    *
774    * <code>.google.protobuf.Timestamp create_time = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
775    * </code>
776    *
777    * @return Whether the createTime field is set.
778    */
779   @java.lang.Override
hasCreateTime()780   public boolean hasCreateTime() {
781     return createTime_ != null;
782   }
783   /**
784    *
785    *
786    * <pre>
787    * Output only. Time when the TrainingPipeline was created.
788    * </pre>
789    *
790    * <code>.google.protobuf.Timestamp create_time = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
791    * </code>
792    *
793    * @return The createTime.
794    */
795   @java.lang.Override
getCreateTime()796   public com.google.protobuf.Timestamp getCreateTime() {
797     return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_;
798   }
799   /**
800    *
801    *
802    * <pre>
803    * Output only. Time when the TrainingPipeline was created.
804    * </pre>
805    *
806    * <code>.google.protobuf.Timestamp create_time = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
807    * </code>
808    */
809   @java.lang.Override
getCreateTimeOrBuilder()810   public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() {
811     return createTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : createTime_;
812   }
813 
814   public static final int START_TIME_FIELD_NUMBER = 12;
815   private com.google.protobuf.Timestamp startTime_;
816   /**
817    *
818    *
819    * <pre>
820    * Output only. Time when the TrainingPipeline for the first time entered the
821    * `PIPELINE_STATE_RUNNING` state.
822    * </pre>
823    *
824    * <code>.google.protobuf.Timestamp start_time = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];
825    * </code>
826    *
827    * @return Whether the startTime field is set.
828    */
829   @java.lang.Override
hasStartTime()830   public boolean hasStartTime() {
831     return startTime_ != null;
832   }
833   /**
834    *
835    *
836    * <pre>
837    * Output only. Time when the TrainingPipeline for the first time entered the
838    * `PIPELINE_STATE_RUNNING` state.
839    * </pre>
840    *
841    * <code>.google.protobuf.Timestamp start_time = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];
842    * </code>
843    *
844    * @return The startTime.
845    */
846   @java.lang.Override
getStartTime()847   public com.google.protobuf.Timestamp getStartTime() {
848     return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_;
849   }
850   /**
851    *
852    *
853    * <pre>
854    * Output only. Time when the TrainingPipeline for the first time entered the
855    * `PIPELINE_STATE_RUNNING` state.
856    * </pre>
857    *
858    * <code>.google.protobuf.Timestamp start_time = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];
859    * </code>
860    */
861   @java.lang.Override
getStartTimeOrBuilder()862   public com.google.protobuf.TimestampOrBuilder getStartTimeOrBuilder() {
863     return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_;
864   }
865 
866   public static final int END_TIME_FIELD_NUMBER = 13;
867   private com.google.protobuf.Timestamp endTime_;
868   /**
869    *
870    *
871    * <pre>
872    * Output only. Time when the TrainingPipeline entered any of the following
873    * states: `PIPELINE_STATE_SUCCEEDED`, `PIPELINE_STATE_FAILED`,
874    * `PIPELINE_STATE_CANCELLED`.
875    * </pre>
876    *
877    * <code>.google.protobuf.Timestamp end_time = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
878    * </code>
879    *
880    * @return Whether the endTime field is set.
881    */
882   @java.lang.Override
hasEndTime()883   public boolean hasEndTime() {
884     return endTime_ != null;
885   }
886   /**
887    *
888    *
889    * <pre>
890    * Output only. Time when the TrainingPipeline entered any of the following
891    * states: `PIPELINE_STATE_SUCCEEDED`, `PIPELINE_STATE_FAILED`,
892    * `PIPELINE_STATE_CANCELLED`.
893    * </pre>
894    *
895    * <code>.google.protobuf.Timestamp end_time = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
896    * </code>
897    *
898    * @return The endTime.
899    */
900   @java.lang.Override
getEndTime()901   public com.google.protobuf.Timestamp getEndTime() {
902     return endTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : endTime_;
903   }
904   /**
905    *
906    *
907    * <pre>
908    * Output only. Time when the TrainingPipeline entered any of the following
909    * states: `PIPELINE_STATE_SUCCEEDED`, `PIPELINE_STATE_FAILED`,
910    * `PIPELINE_STATE_CANCELLED`.
911    * </pre>
912    *
913    * <code>.google.protobuf.Timestamp end_time = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
914    * </code>
915    */
916   @java.lang.Override
getEndTimeOrBuilder()917   public com.google.protobuf.TimestampOrBuilder getEndTimeOrBuilder() {
918     return endTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : endTime_;
919   }
920 
921   public static final int UPDATE_TIME_FIELD_NUMBER = 14;
922   private com.google.protobuf.Timestamp updateTime_;
923   /**
924    *
925    *
926    * <pre>
927    * Output only. Time when the TrainingPipeline was most recently updated.
928    * </pre>
929    *
930    * <code>.google.protobuf.Timestamp update_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY];
931    * </code>
932    *
933    * @return Whether the updateTime field is set.
934    */
935   @java.lang.Override
hasUpdateTime()936   public boolean hasUpdateTime() {
937     return updateTime_ != null;
938   }
939   /**
940    *
941    *
942    * <pre>
943    * Output only. Time when the TrainingPipeline was most recently updated.
944    * </pre>
945    *
946    * <code>.google.protobuf.Timestamp update_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY];
947    * </code>
948    *
949    * @return The updateTime.
950    */
951   @java.lang.Override
getUpdateTime()952   public com.google.protobuf.Timestamp getUpdateTime() {
953     return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_;
954   }
955   /**
956    *
957    *
958    * <pre>
959    * Output only. Time when the TrainingPipeline was most recently updated.
960    * </pre>
961    *
962    * <code>.google.protobuf.Timestamp update_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY];
963    * </code>
964    */
965   @java.lang.Override
getUpdateTimeOrBuilder()966   public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() {
967     return updateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : updateTime_;
968   }
969 
970   public static final int LABELS_FIELD_NUMBER = 15;
971 
972   private static final class LabelsDefaultEntryHolder {
973     static final com.google.protobuf.MapEntry<java.lang.String, java.lang.String> defaultEntry =
974         com.google.protobuf.MapEntry.<java.lang.String, java.lang.String>newDefaultInstance(
975             com.google.cloud.aiplatform.v1.TrainingPipelineProto
976                 .internal_static_google_cloud_aiplatform_v1_TrainingPipeline_LabelsEntry_descriptor,
977             com.google.protobuf.WireFormat.FieldType.STRING,
978             "",
979             com.google.protobuf.WireFormat.FieldType.STRING,
980             "");
981   }
982 
983   @SuppressWarnings("serial")
984   private com.google.protobuf.MapField<java.lang.String, java.lang.String> labels_;
985 
internalGetLabels()986   private com.google.protobuf.MapField<java.lang.String, java.lang.String> internalGetLabels() {
987     if (labels_ == null) {
988       return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry);
989     }
990     return labels_;
991   }
992 
getLabelsCount()993   public int getLabelsCount() {
994     return internalGetLabels().getMap().size();
995   }
996   /**
997    *
998    *
999    * <pre>
1000    * The labels with user-defined metadata to organize TrainingPipelines.
1001    * Label keys and values can be no longer than 64 characters
1002    * (Unicode codepoints), can only contain lowercase letters, numeric
1003    * characters, underscores and dashes. International characters are allowed.
1004    * See https://goo.gl/xmQnxf for more information and examples of labels.
1005    * </pre>
1006    *
1007    * <code>map&lt;string, string&gt; labels = 15;</code>
1008    */
1009   @java.lang.Override
containsLabels(java.lang.String key)1010   public boolean containsLabels(java.lang.String key) {
1011     if (key == null) {
1012       throw new NullPointerException("map key");
1013     }
1014     return internalGetLabels().getMap().containsKey(key);
1015   }
1016   /** Use {@link #getLabelsMap()} instead. */
1017   @java.lang.Override
1018   @java.lang.Deprecated
getLabels()1019   public java.util.Map<java.lang.String, java.lang.String> getLabels() {
1020     return getLabelsMap();
1021   }
1022   /**
1023    *
1024    *
1025    * <pre>
1026    * The labels with user-defined metadata to organize TrainingPipelines.
1027    * Label keys and values can be no longer than 64 characters
1028    * (Unicode codepoints), can only contain lowercase letters, numeric
1029    * characters, underscores and dashes. International characters are allowed.
1030    * See https://goo.gl/xmQnxf for more information and examples of labels.
1031    * </pre>
1032    *
1033    * <code>map&lt;string, string&gt; labels = 15;</code>
1034    */
1035   @java.lang.Override
getLabelsMap()1036   public java.util.Map<java.lang.String, java.lang.String> getLabelsMap() {
1037     return internalGetLabels().getMap();
1038   }
1039   /**
1040    *
1041    *
1042    * <pre>
1043    * The labels with user-defined metadata to organize TrainingPipelines.
1044    * Label keys and values can be no longer than 64 characters
1045    * (Unicode codepoints), can only contain lowercase letters, numeric
1046    * characters, underscores and dashes. International characters are allowed.
1047    * See https://goo.gl/xmQnxf for more information and examples of labels.
1048    * </pre>
1049    *
1050    * <code>map&lt;string, string&gt; labels = 15;</code>
1051    */
1052   @java.lang.Override
getLabelsOrDefault( java.lang.String key, java.lang.String defaultValue)1053   public /* nullable */ java.lang.String getLabelsOrDefault(
1054       java.lang.String key,
1055       /* nullable */
1056       java.lang.String defaultValue) {
1057     if (key == null) {
1058       throw new NullPointerException("map key");
1059     }
1060     java.util.Map<java.lang.String, java.lang.String> map = internalGetLabels().getMap();
1061     return map.containsKey(key) ? map.get(key) : defaultValue;
1062   }
1063   /**
1064    *
1065    *
1066    * <pre>
1067    * The labels with user-defined metadata to organize TrainingPipelines.
1068    * Label keys and values can be no longer than 64 characters
1069    * (Unicode codepoints), can only contain lowercase letters, numeric
1070    * characters, underscores and dashes. International characters are allowed.
1071    * See https://goo.gl/xmQnxf for more information and examples of labels.
1072    * </pre>
1073    *
1074    * <code>map&lt;string, string&gt; labels = 15;</code>
1075    */
1076   @java.lang.Override
getLabelsOrThrow(java.lang.String key)1077   public java.lang.String getLabelsOrThrow(java.lang.String key) {
1078     if (key == null) {
1079       throw new NullPointerException("map key");
1080     }
1081     java.util.Map<java.lang.String, java.lang.String> map = internalGetLabels().getMap();
1082     if (!map.containsKey(key)) {
1083       throw new java.lang.IllegalArgumentException();
1084     }
1085     return map.get(key);
1086   }
1087 
1088   public static final int ENCRYPTION_SPEC_FIELD_NUMBER = 18;
1089   private com.google.cloud.aiplatform.v1.EncryptionSpec encryptionSpec_;
1090   /**
1091    *
1092    *
1093    * <pre>
1094    * Customer-managed encryption key spec for a TrainingPipeline. If set, this
1095    * TrainingPipeline will be secured by this key.
1096    * Note: Model trained by this TrainingPipeline is also secured by this key if
1097    * [model_to_upload][google.cloud.aiplatform.v1.TrainingPipeline.encryption_spec]
1098    * is not set separately.
1099    * </pre>
1100    *
1101    * <code>.google.cloud.aiplatform.v1.EncryptionSpec encryption_spec = 18;</code>
1102    *
1103    * @return Whether the encryptionSpec field is set.
1104    */
1105   @java.lang.Override
hasEncryptionSpec()1106   public boolean hasEncryptionSpec() {
1107     return encryptionSpec_ != null;
1108   }
1109   /**
1110    *
1111    *
1112    * <pre>
1113    * Customer-managed encryption key spec for a TrainingPipeline. If set, this
1114    * TrainingPipeline will be secured by this key.
1115    * Note: Model trained by this TrainingPipeline is also secured by this key if
1116    * [model_to_upload][google.cloud.aiplatform.v1.TrainingPipeline.encryption_spec]
1117    * is not set separately.
1118    * </pre>
1119    *
1120    * <code>.google.cloud.aiplatform.v1.EncryptionSpec encryption_spec = 18;</code>
1121    *
1122    * @return The encryptionSpec.
1123    */
1124   @java.lang.Override
getEncryptionSpec()1125   public com.google.cloud.aiplatform.v1.EncryptionSpec getEncryptionSpec() {
1126     return encryptionSpec_ == null
1127         ? com.google.cloud.aiplatform.v1.EncryptionSpec.getDefaultInstance()
1128         : encryptionSpec_;
1129   }
1130   /**
1131    *
1132    *
1133    * <pre>
1134    * Customer-managed encryption key spec for a TrainingPipeline. If set, this
1135    * TrainingPipeline will be secured by this key.
1136    * Note: Model trained by this TrainingPipeline is also secured by this key if
1137    * [model_to_upload][google.cloud.aiplatform.v1.TrainingPipeline.encryption_spec]
1138    * is not set separately.
1139    * </pre>
1140    *
1141    * <code>.google.cloud.aiplatform.v1.EncryptionSpec encryption_spec = 18;</code>
1142    */
1143   @java.lang.Override
getEncryptionSpecOrBuilder()1144   public com.google.cloud.aiplatform.v1.EncryptionSpecOrBuilder getEncryptionSpecOrBuilder() {
1145     return encryptionSpec_ == null
1146         ? com.google.cloud.aiplatform.v1.EncryptionSpec.getDefaultInstance()
1147         : encryptionSpec_;
1148   }
1149 
1150   private byte memoizedIsInitialized = -1;
1151 
1152   @java.lang.Override
isInitialized()1153   public final boolean isInitialized() {
1154     byte isInitialized = memoizedIsInitialized;
1155     if (isInitialized == 1) return true;
1156     if (isInitialized == 0) return false;
1157 
1158     memoizedIsInitialized = 1;
1159     return true;
1160   }
1161 
1162   @java.lang.Override
writeTo(com.google.protobuf.CodedOutputStream output)1163   public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
1164     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
1165       com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
1166     }
1167     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(displayName_)) {
1168       com.google.protobuf.GeneratedMessageV3.writeString(output, 2, displayName_);
1169     }
1170     if (inputDataConfig_ != null) {
1171       output.writeMessage(3, getInputDataConfig());
1172     }
1173     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(trainingTaskDefinition_)) {
1174       com.google.protobuf.GeneratedMessageV3.writeString(output, 4, trainingTaskDefinition_);
1175     }
1176     if (trainingTaskInputs_ != null) {
1177       output.writeMessage(5, getTrainingTaskInputs());
1178     }
1179     if (trainingTaskMetadata_ != null) {
1180       output.writeMessage(6, getTrainingTaskMetadata());
1181     }
1182     if (modelToUpload_ != null) {
1183       output.writeMessage(7, getModelToUpload());
1184     }
1185     if (state_
1186         != com.google.cloud.aiplatform.v1.PipelineState.PIPELINE_STATE_UNSPECIFIED.getNumber()) {
1187       output.writeEnum(9, state_);
1188     }
1189     if (error_ != null) {
1190       output.writeMessage(10, getError());
1191     }
1192     if (createTime_ != null) {
1193       output.writeMessage(11, getCreateTime());
1194     }
1195     if (startTime_ != null) {
1196       output.writeMessage(12, getStartTime());
1197     }
1198     if (endTime_ != null) {
1199       output.writeMessage(13, getEndTime());
1200     }
1201     if (updateTime_ != null) {
1202       output.writeMessage(14, getUpdateTime());
1203     }
1204     com.google.protobuf.GeneratedMessageV3.serializeStringMapTo(
1205         output, internalGetLabels(), LabelsDefaultEntryHolder.defaultEntry, 15);
1206     if (encryptionSpec_ != null) {
1207       output.writeMessage(18, getEncryptionSpec());
1208     }
1209     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parentModel_)) {
1210       com.google.protobuf.GeneratedMessageV3.writeString(output, 21, parentModel_);
1211     }
1212     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(modelId_)) {
1213       com.google.protobuf.GeneratedMessageV3.writeString(output, 22, modelId_);
1214     }
1215     getUnknownFields().writeTo(output);
1216   }
1217 
1218   @java.lang.Override
getSerializedSize()1219   public int getSerializedSize() {
1220     int size = memoizedSize;
1221     if (size != -1) return size;
1222 
1223     size = 0;
1224     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
1225       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
1226     }
1227     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(displayName_)) {
1228       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, displayName_);
1229     }
1230     if (inputDataConfig_ != null) {
1231       size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, getInputDataConfig());
1232     }
1233     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(trainingTaskDefinition_)) {
1234       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, trainingTaskDefinition_);
1235     }
1236     if (trainingTaskInputs_ != null) {
1237       size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, getTrainingTaskInputs());
1238     }
1239     if (trainingTaskMetadata_ != null) {
1240       size +=
1241           com.google.protobuf.CodedOutputStream.computeMessageSize(6, getTrainingTaskMetadata());
1242     }
1243     if (modelToUpload_ != null) {
1244       size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getModelToUpload());
1245     }
1246     if (state_
1247         != com.google.cloud.aiplatform.v1.PipelineState.PIPELINE_STATE_UNSPECIFIED.getNumber()) {
1248       size += com.google.protobuf.CodedOutputStream.computeEnumSize(9, state_);
1249     }
1250     if (error_ != null) {
1251       size += com.google.protobuf.CodedOutputStream.computeMessageSize(10, getError());
1252     }
1253     if (createTime_ != null) {
1254       size += com.google.protobuf.CodedOutputStream.computeMessageSize(11, getCreateTime());
1255     }
1256     if (startTime_ != null) {
1257       size += com.google.protobuf.CodedOutputStream.computeMessageSize(12, getStartTime());
1258     }
1259     if (endTime_ != null) {
1260       size += com.google.protobuf.CodedOutputStream.computeMessageSize(13, getEndTime());
1261     }
1262     if (updateTime_ != null) {
1263       size += com.google.protobuf.CodedOutputStream.computeMessageSize(14, getUpdateTime());
1264     }
1265     for (java.util.Map.Entry<java.lang.String, java.lang.String> entry :
1266         internalGetLabels().getMap().entrySet()) {
1267       com.google.protobuf.MapEntry<java.lang.String, java.lang.String> labels__ =
1268           LabelsDefaultEntryHolder.defaultEntry
1269               .newBuilderForType()
1270               .setKey(entry.getKey())
1271               .setValue(entry.getValue())
1272               .build();
1273       size += com.google.protobuf.CodedOutputStream.computeMessageSize(15, labels__);
1274     }
1275     if (encryptionSpec_ != null) {
1276       size += com.google.protobuf.CodedOutputStream.computeMessageSize(18, getEncryptionSpec());
1277     }
1278     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(parentModel_)) {
1279       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(21, parentModel_);
1280     }
1281     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(modelId_)) {
1282       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(22, modelId_);
1283     }
1284     size += getUnknownFields().getSerializedSize();
1285     memoizedSize = size;
1286     return size;
1287   }
1288 
1289   @java.lang.Override
equals(final java.lang.Object obj)1290   public boolean equals(final java.lang.Object obj) {
1291     if (obj == this) {
1292       return true;
1293     }
1294     if (!(obj instanceof com.google.cloud.aiplatform.v1.TrainingPipeline)) {
1295       return super.equals(obj);
1296     }
1297     com.google.cloud.aiplatform.v1.TrainingPipeline other =
1298         (com.google.cloud.aiplatform.v1.TrainingPipeline) obj;
1299 
1300     if (!getName().equals(other.getName())) return false;
1301     if (!getDisplayName().equals(other.getDisplayName())) return false;
1302     if (hasInputDataConfig() != other.hasInputDataConfig()) return false;
1303     if (hasInputDataConfig()) {
1304       if (!getInputDataConfig().equals(other.getInputDataConfig())) return false;
1305     }
1306     if (!getTrainingTaskDefinition().equals(other.getTrainingTaskDefinition())) return false;
1307     if (hasTrainingTaskInputs() != other.hasTrainingTaskInputs()) return false;
1308     if (hasTrainingTaskInputs()) {
1309       if (!getTrainingTaskInputs().equals(other.getTrainingTaskInputs())) return false;
1310     }
1311     if (hasTrainingTaskMetadata() != other.hasTrainingTaskMetadata()) return false;
1312     if (hasTrainingTaskMetadata()) {
1313       if (!getTrainingTaskMetadata().equals(other.getTrainingTaskMetadata())) return false;
1314     }
1315     if (hasModelToUpload() != other.hasModelToUpload()) return false;
1316     if (hasModelToUpload()) {
1317       if (!getModelToUpload().equals(other.getModelToUpload())) return false;
1318     }
1319     if (!getModelId().equals(other.getModelId())) return false;
1320     if (!getParentModel().equals(other.getParentModel())) return false;
1321     if (state_ != other.state_) return false;
1322     if (hasError() != other.hasError()) return false;
1323     if (hasError()) {
1324       if (!getError().equals(other.getError())) return false;
1325     }
1326     if (hasCreateTime() != other.hasCreateTime()) return false;
1327     if (hasCreateTime()) {
1328       if (!getCreateTime().equals(other.getCreateTime())) return false;
1329     }
1330     if (hasStartTime() != other.hasStartTime()) return false;
1331     if (hasStartTime()) {
1332       if (!getStartTime().equals(other.getStartTime())) return false;
1333     }
1334     if (hasEndTime() != other.hasEndTime()) return false;
1335     if (hasEndTime()) {
1336       if (!getEndTime().equals(other.getEndTime())) return false;
1337     }
1338     if (hasUpdateTime() != other.hasUpdateTime()) return false;
1339     if (hasUpdateTime()) {
1340       if (!getUpdateTime().equals(other.getUpdateTime())) return false;
1341     }
1342     if (!internalGetLabels().equals(other.internalGetLabels())) return false;
1343     if (hasEncryptionSpec() != other.hasEncryptionSpec()) return false;
1344     if (hasEncryptionSpec()) {
1345       if (!getEncryptionSpec().equals(other.getEncryptionSpec())) return false;
1346     }
1347     if (!getUnknownFields().equals(other.getUnknownFields())) return false;
1348     return true;
1349   }
1350 
1351   @java.lang.Override
hashCode()1352   public int hashCode() {
1353     if (memoizedHashCode != 0) {
1354       return memoizedHashCode;
1355     }
1356     int hash = 41;
1357     hash = (19 * hash) + getDescriptor().hashCode();
1358     hash = (37 * hash) + NAME_FIELD_NUMBER;
1359     hash = (53 * hash) + getName().hashCode();
1360     hash = (37 * hash) + DISPLAY_NAME_FIELD_NUMBER;
1361     hash = (53 * hash) + getDisplayName().hashCode();
1362     if (hasInputDataConfig()) {
1363       hash = (37 * hash) + INPUT_DATA_CONFIG_FIELD_NUMBER;
1364       hash = (53 * hash) + getInputDataConfig().hashCode();
1365     }
1366     hash = (37 * hash) + TRAINING_TASK_DEFINITION_FIELD_NUMBER;
1367     hash = (53 * hash) + getTrainingTaskDefinition().hashCode();
1368     if (hasTrainingTaskInputs()) {
1369       hash = (37 * hash) + TRAINING_TASK_INPUTS_FIELD_NUMBER;
1370       hash = (53 * hash) + getTrainingTaskInputs().hashCode();
1371     }
1372     if (hasTrainingTaskMetadata()) {
1373       hash = (37 * hash) + TRAINING_TASK_METADATA_FIELD_NUMBER;
1374       hash = (53 * hash) + getTrainingTaskMetadata().hashCode();
1375     }
1376     if (hasModelToUpload()) {
1377       hash = (37 * hash) + MODEL_TO_UPLOAD_FIELD_NUMBER;
1378       hash = (53 * hash) + getModelToUpload().hashCode();
1379     }
1380     hash = (37 * hash) + MODEL_ID_FIELD_NUMBER;
1381     hash = (53 * hash) + getModelId().hashCode();
1382     hash = (37 * hash) + PARENT_MODEL_FIELD_NUMBER;
1383     hash = (53 * hash) + getParentModel().hashCode();
1384     hash = (37 * hash) + STATE_FIELD_NUMBER;
1385     hash = (53 * hash) + state_;
1386     if (hasError()) {
1387       hash = (37 * hash) + ERROR_FIELD_NUMBER;
1388       hash = (53 * hash) + getError().hashCode();
1389     }
1390     if (hasCreateTime()) {
1391       hash = (37 * hash) + CREATE_TIME_FIELD_NUMBER;
1392       hash = (53 * hash) + getCreateTime().hashCode();
1393     }
1394     if (hasStartTime()) {
1395       hash = (37 * hash) + START_TIME_FIELD_NUMBER;
1396       hash = (53 * hash) + getStartTime().hashCode();
1397     }
1398     if (hasEndTime()) {
1399       hash = (37 * hash) + END_TIME_FIELD_NUMBER;
1400       hash = (53 * hash) + getEndTime().hashCode();
1401     }
1402     if (hasUpdateTime()) {
1403       hash = (37 * hash) + UPDATE_TIME_FIELD_NUMBER;
1404       hash = (53 * hash) + getUpdateTime().hashCode();
1405     }
1406     if (!internalGetLabels().getMap().isEmpty()) {
1407       hash = (37 * hash) + LABELS_FIELD_NUMBER;
1408       hash = (53 * hash) + internalGetLabels().hashCode();
1409     }
1410     if (hasEncryptionSpec()) {
1411       hash = (37 * hash) + ENCRYPTION_SPEC_FIELD_NUMBER;
1412       hash = (53 * hash) + getEncryptionSpec().hashCode();
1413     }
1414     hash = (29 * hash) + getUnknownFields().hashCode();
1415     memoizedHashCode = hash;
1416     return hash;
1417   }
1418 
parseFrom(java.nio.ByteBuffer data)1419   public static com.google.cloud.aiplatform.v1.TrainingPipeline parseFrom(java.nio.ByteBuffer data)
1420       throws com.google.protobuf.InvalidProtocolBufferException {
1421     return PARSER.parseFrom(data);
1422   }
1423 
parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1424   public static com.google.cloud.aiplatform.v1.TrainingPipeline parseFrom(
1425       java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1426       throws com.google.protobuf.InvalidProtocolBufferException {
1427     return PARSER.parseFrom(data, extensionRegistry);
1428   }
1429 
parseFrom( com.google.protobuf.ByteString data)1430   public static com.google.cloud.aiplatform.v1.TrainingPipeline parseFrom(
1431       com.google.protobuf.ByteString data)
1432       throws com.google.protobuf.InvalidProtocolBufferException {
1433     return PARSER.parseFrom(data);
1434   }
1435 
parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1436   public static com.google.cloud.aiplatform.v1.TrainingPipeline parseFrom(
1437       com.google.protobuf.ByteString data,
1438       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1439       throws com.google.protobuf.InvalidProtocolBufferException {
1440     return PARSER.parseFrom(data, extensionRegistry);
1441   }
1442 
parseFrom(byte[] data)1443   public static com.google.cloud.aiplatform.v1.TrainingPipeline parseFrom(byte[] data)
1444       throws com.google.protobuf.InvalidProtocolBufferException {
1445     return PARSER.parseFrom(data);
1446   }
1447 
parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1448   public static com.google.cloud.aiplatform.v1.TrainingPipeline parseFrom(
1449       byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1450       throws com.google.protobuf.InvalidProtocolBufferException {
1451     return PARSER.parseFrom(data, extensionRegistry);
1452   }
1453 
parseFrom(java.io.InputStream input)1454   public static com.google.cloud.aiplatform.v1.TrainingPipeline parseFrom(java.io.InputStream input)
1455       throws java.io.IOException {
1456     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
1457   }
1458 
parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1459   public static com.google.cloud.aiplatform.v1.TrainingPipeline parseFrom(
1460       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1461       throws java.io.IOException {
1462     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
1463         PARSER, input, extensionRegistry);
1464   }
1465 
parseDelimitedFrom( java.io.InputStream input)1466   public static com.google.cloud.aiplatform.v1.TrainingPipeline parseDelimitedFrom(
1467       java.io.InputStream input) throws java.io.IOException {
1468     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
1469   }
1470 
parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1471   public static com.google.cloud.aiplatform.v1.TrainingPipeline parseDelimitedFrom(
1472       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1473       throws java.io.IOException {
1474     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(
1475         PARSER, input, extensionRegistry);
1476   }
1477 
parseFrom( com.google.protobuf.CodedInputStream input)1478   public static com.google.cloud.aiplatform.v1.TrainingPipeline parseFrom(
1479       com.google.protobuf.CodedInputStream input) throws java.io.IOException {
1480     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
1481   }
1482 
parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1483   public static com.google.cloud.aiplatform.v1.TrainingPipeline parseFrom(
1484       com.google.protobuf.CodedInputStream input,
1485       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1486       throws java.io.IOException {
1487     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
1488         PARSER, input, extensionRegistry);
1489   }
1490 
1491   @java.lang.Override
newBuilderForType()1492   public Builder newBuilderForType() {
1493     return newBuilder();
1494   }
1495 
newBuilder()1496   public static Builder newBuilder() {
1497     return DEFAULT_INSTANCE.toBuilder();
1498   }
1499 
newBuilder(com.google.cloud.aiplatform.v1.TrainingPipeline prototype)1500   public static Builder newBuilder(com.google.cloud.aiplatform.v1.TrainingPipeline prototype) {
1501     return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
1502   }
1503 
1504   @java.lang.Override
toBuilder()1505   public Builder toBuilder() {
1506     return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
1507   }
1508 
1509   @java.lang.Override
newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)1510   protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
1511     Builder builder = new Builder(parent);
1512     return builder;
1513   }
1514   /**
1515    *
1516    *
1517    * <pre>
1518    * The TrainingPipeline orchestrates tasks associated with training a Model. It
1519    * always executes the training task, and optionally may also
1520    * export data from Vertex AI's Dataset which becomes the training input,
1521    * [upload][google.cloud.aiplatform.v1.ModelService.UploadModel] the Model to
1522    * Vertex AI, and evaluate the Model.
1523    * </pre>
1524    *
1525    * Protobuf type {@code google.cloud.aiplatform.v1.TrainingPipeline}
1526    */
1527   public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder>
1528       implements
1529       // @@protoc_insertion_point(builder_implements:google.cloud.aiplatform.v1.TrainingPipeline)
1530       com.google.cloud.aiplatform.v1.TrainingPipelineOrBuilder {
getDescriptor()1531     public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
1532       return com.google.cloud.aiplatform.v1.TrainingPipelineProto
1533           .internal_static_google_cloud_aiplatform_v1_TrainingPipeline_descriptor;
1534     }
1535 
1536     @SuppressWarnings({"rawtypes"})
internalGetMapField(int number)1537     protected com.google.protobuf.MapField internalGetMapField(int number) {
1538       switch (number) {
1539         case 15:
1540           return internalGetLabels();
1541         default:
1542           throw new RuntimeException("Invalid map field number: " + number);
1543       }
1544     }
1545 
1546     @SuppressWarnings({"rawtypes"})
internalGetMutableMapField(int number)1547     protected com.google.protobuf.MapField internalGetMutableMapField(int number) {
1548       switch (number) {
1549         case 15:
1550           return internalGetMutableLabels();
1551         default:
1552           throw new RuntimeException("Invalid map field number: " + number);
1553       }
1554     }
1555 
1556     @java.lang.Override
1557     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()1558         internalGetFieldAccessorTable() {
1559       return com.google.cloud.aiplatform.v1.TrainingPipelineProto
1560           .internal_static_google_cloud_aiplatform_v1_TrainingPipeline_fieldAccessorTable
1561           .ensureFieldAccessorsInitialized(
1562               com.google.cloud.aiplatform.v1.TrainingPipeline.class,
1563               com.google.cloud.aiplatform.v1.TrainingPipeline.Builder.class);
1564     }
1565 
1566     // Construct using com.google.cloud.aiplatform.v1.TrainingPipeline.newBuilder()
Builder()1567     private Builder() {}
1568 
Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)1569     private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
1570       super(parent);
1571     }
1572 
1573     @java.lang.Override
clear()1574     public Builder clear() {
1575       super.clear();
1576       bitField0_ = 0;
1577       name_ = "";
1578       displayName_ = "";
1579       inputDataConfig_ = null;
1580       if (inputDataConfigBuilder_ != null) {
1581         inputDataConfigBuilder_.dispose();
1582         inputDataConfigBuilder_ = null;
1583       }
1584       trainingTaskDefinition_ = "";
1585       trainingTaskInputs_ = null;
1586       if (trainingTaskInputsBuilder_ != null) {
1587         trainingTaskInputsBuilder_.dispose();
1588         trainingTaskInputsBuilder_ = null;
1589       }
1590       trainingTaskMetadata_ = null;
1591       if (trainingTaskMetadataBuilder_ != null) {
1592         trainingTaskMetadataBuilder_.dispose();
1593         trainingTaskMetadataBuilder_ = null;
1594       }
1595       modelToUpload_ = null;
1596       if (modelToUploadBuilder_ != null) {
1597         modelToUploadBuilder_.dispose();
1598         modelToUploadBuilder_ = null;
1599       }
1600       modelId_ = "";
1601       parentModel_ = "";
1602       state_ = 0;
1603       error_ = null;
1604       if (errorBuilder_ != null) {
1605         errorBuilder_.dispose();
1606         errorBuilder_ = null;
1607       }
1608       createTime_ = null;
1609       if (createTimeBuilder_ != null) {
1610         createTimeBuilder_.dispose();
1611         createTimeBuilder_ = null;
1612       }
1613       startTime_ = null;
1614       if (startTimeBuilder_ != null) {
1615         startTimeBuilder_.dispose();
1616         startTimeBuilder_ = null;
1617       }
1618       endTime_ = null;
1619       if (endTimeBuilder_ != null) {
1620         endTimeBuilder_.dispose();
1621         endTimeBuilder_ = null;
1622       }
1623       updateTime_ = null;
1624       if (updateTimeBuilder_ != null) {
1625         updateTimeBuilder_.dispose();
1626         updateTimeBuilder_ = null;
1627       }
1628       internalGetMutableLabels().clear();
1629       encryptionSpec_ = null;
1630       if (encryptionSpecBuilder_ != null) {
1631         encryptionSpecBuilder_.dispose();
1632         encryptionSpecBuilder_ = null;
1633       }
1634       return this;
1635     }
1636 
1637     @java.lang.Override
getDescriptorForType()1638     public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() {
1639       return com.google.cloud.aiplatform.v1.TrainingPipelineProto
1640           .internal_static_google_cloud_aiplatform_v1_TrainingPipeline_descriptor;
1641     }
1642 
1643     @java.lang.Override
getDefaultInstanceForType()1644     public com.google.cloud.aiplatform.v1.TrainingPipeline getDefaultInstanceForType() {
1645       return com.google.cloud.aiplatform.v1.TrainingPipeline.getDefaultInstance();
1646     }
1647 
1648     @java.lang.Override
build()1649     public com.google.cloud.aiplatform.v1.TrainingPipeline build() {
1650       com.google.cloud.aiplatform.v1.TrainingPipeline result = buildPartial();
1651       if (!result.isInitialized()) {
1652         throw newUninitializedMessageException(result);
1653       }
1654       return result;
1655     }
1656 
1657     @java.lang.Override
buildPartial()1658     public com.google.cloud.aiplatform.v1.TrainingPipeline buildPartial() {
1659       com.google.cloud.aiplatform.v1.TrainingPipeline result =
1660           new com.google.cloud.aiplatform.v1.TrainingPipeline(this);
1661       if (bitField0_ != 0) {
1662         buildPartial0(result);
1663       }
1664       onBuilt();
1665       return result;
1666     }
1667 
buildPartial0(com.google.cloud.aiplatform.v1.TrainingPipeline result)1668     private void buildPartial0(com.google.cloud.aiplatform.v1.TrainingPipeline result) {
1669       int from_bitField0_ = bitField0_;
1670       if (((from_bitField0_ & 0x00000001) != 0)) {
1671         result.name_ = name_;
1672       }
1673       if (((from_bitField0_ & 0x00000002) != 0)) {
1674         result.displayName_ = displayName_;
1675       }
1676       if (((from_bitField0_ & 0x00000004) != 0)) {
1677         result.inputDataConfig_ =
1678             inputDataConfigBuilder_ == null ? inputDataConfig_ : inputDataConfigBuilder_.build();
1679       }
1680       if (((from_bitField0_ & 0x00000008) != 0)) {
1681         result.trainingTaskDefinition_ = trainingTaskDefinition_;
1682       }
1683       if (((from_bitField0_ & 0x00000010) != 0)) {
1684         result.trainingTaskInputs_ =
1685             trainingTaskInputsBuilder_ == null
1686                 ? trainingTaskInputs_
1687                 : trainingTaskInputsBuilder_.build();
1688       }
1689       if (((from_bitField0_ & 0x00000020) != 0)) {
1690         result.trainingTaskMetadata_ =
1691             trainingTaskMetadataBuilder_ == null
1692                 ? trainingTaskMetadata_
1693                 : trainingTaskMetadataBuilder_.build();
1694       }
1695       if (((from_bitField0_ & 0x00000040) != 0)) {
1696         result.modelToUpload_ =
1697             modelToUploadBuilder_ == null ? modelToUpload_ : modelToUploadBuilder_.build();
1698       }
1699       if (((from_bitField0_ & 0x00000080) != 0)) {
1700         result.modelId_ = modelId_;
1701       }
1702       if (((from_bitField0_ & 0x00000100) != 0)) {
1703         result.parentModel_ = parentModel_;
1704       }
1705       if (((from_bitField0_ & 0x00000200) != 0)) {
1706         result.state_ = state_;
1707       }
1708       if (((from_bitField0_ & 0x00000400) != 0)) {
1709         result.error_ = errorBuilder_ == null ? error_ : errorBuilder_.build();
1710       }
1711       if (((from_bitField0_ & 0x00000800) != 0)) {
1712         result.createTime_ = createTimeBuilder_ == null ? createTime_ : createTimeBuilder_.build();
1713       }
1714       if (((from_bitField0_ & 0x00001000) != 0)) {
1715         result.startTime_ = startTimeBuilder_ == null ? startTime_ : startTimeBuilder_.build();
1716       }
1717       if (((from_bitField0_ & 0x00002000) != 0)) {
1718         result.endTime_ = endTimeBuilder_ == null ? endTime_ : endTimeBuilder_.build();
1719       }
1720       if (((from_bitField0_ & 0x00004000) != 0)) {
1721         result.updateTime_ = updateTimeBuilder_ == null ? updateTime_ : updateTimeBuilder_.build();
1722       }
1723       if (((from_bitField0_ & 0x00008000) != 0)) {
1724         result.labels_ = internalGetLabels();
1725         result.labels_.makeImmutable();
1726       }
1727       if (((from_bitField0_ & 0x00010000) != 0)) {
1728         result.encryptionSpec_ =
1729             encryptionSpecBuilder_ == null ? encryptionSpec_ : encryptionSpecBuilder_.build();
1730       }
1731     }
1732 
1733     @java.lang.Override
clone()1734     public Builder clone() {
1735       return super.clone();
1736     }
1737 
1738     @java.lang.Override
setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)1739     public Builder setField(
1740         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
1741       return super.setField(field, value);
1742     }
1743 
1744     @java.lang.Override
clearField(com.google.protobuf.Descriptors.FieldDescriptor field)1745     public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) {
1746       return super.clearField(field);
1747     }
1748 
1749     @java.lang.Override
clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)1750     public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) {
1751       return super.clearOneof(oneof);
1752     }
1753 
1754     @java.lang.Override
setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)1755     public Builder setRepeatedField(
1756         com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) {
1757       return super.setRepeatedField(field, index, value);
1758     }
1759 
1760     @java.lang.Override
addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)1761     public Builder addRepeatedField(
1762         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
1763       return super.addRepeatedField(field, value);
1764     }
1765 
1766     @java.lang.Override
mergeFrom(com.google.protobuf.Message other)1767     public Builder mergeFrom(com.google.protobuf.Message other) {
1768       if (other instanceof com.google.cloud.aiplatform.v1.TrainingPipeline) {
1769         return mergeFrom((com.google.cloud.aiplatform.v1.TrainingPipeline) other);
1770       } else {
1771         super.mergeFrom(other);
1772         return this;
1773       }
1774     }
1775 
mergeFrom(com.google.cloud.aiplatform.v1.TrainingPipeline other)1776     public Builder mergeFrom(com.google.cloud.aiplatform.v1.TrainingPipeline other) {
1777       if (other == com.google.cloud.aiplatform.v1.TrainingPipeline.getDefaultInstance())
1778         return this;
1779       if (!other.getName().isEmpty()) {
1780         name_ = other.name_;
1781         bitField0_ |= 0x00000001;
1782         onChanged();
1783       }
1784       if (!other.getDisplayName().isEmpty()) {
1785         displayName_ = other.displayName_;
1786         bitField0_ |= 0x00000002;
1787         onChanged();
1788       }
1789       if (other.hasInputDataConfig()) {
1790         mergeInputDataConfig(other.getInputDataConfig());
1791       }
1792       if (!other.getTrainingTaskDefinition().isEmpty()) {
1793         trainingTaskDefinition_ = other.trainingTaskDefinition_;
1794         bitField0_ |= 0x00000008;
1795         onChanged();
1796       }
1797       if (other.hasTrainingTaskInputs()) {
1798         mergeTrainingTaskInputs(other.getTrainingTaskInputs());
1799       }
1800       if (other.hasTrainingTaskMetadata()) {
1801         mergeTrainingTaskMetadata(other.getTrainingTaskMetadata());
1802       }
1803       if (other.hasModelToUpload()) {
1804         mergeModelToUpload(other.getModelToUpload());
1805       }
1806       if (!other.getModelId().isEmpty()) {
1807         modelId_ = other.modelId_;
1808         bitField0_ |= 0x00000080;
1809         onChanged();
1810       }
1811       if (!other.getParentModel().isEmpty()) {
1812         parentModel_ = other.parentModel_;
1813         bitField0_ |= 0x00000100;
1814         onChanged();
1815       }
1816       if (other.state_ != 0) {
1817         setStateValue(other.getStateValue());
1818       }
1819       if (other.hasError()) {
1820         mergeError(other.getError());
1821       }
1822       if (other.hasCreateTime()) {
1823         mergeCreateTime(other.getCreateTime());
1824       }
1825       if (other.hasStartTime()) {
1826         mergeStartTime(other.getStartTime());
1827       }
1828       if (other.hasEndTime()) {
1829         mergeEndTime(other.getEndTime());
1830       }
1831       if (other.hasUpdateTime()) {
1832         mergeUpdateTime(other.getUpdateTime());
1833       }
1834       internalGetMutableLabels().mergeFrom(other.internalGetLabels());
1835       bitField0_ |= 0x00008000;
1836       if (other.hasEncryptionSpec()) {
1837         mergeEncryptionSpec(other.getEncryptionSpec());
1838       }
1839       this.mergeUnknownFields(other.getUnknownFields());
1840       onChanged();
1841       return this;
1842     }
1843 
1844     @java.lang.Override
isInitialized()1845     public final boolean isInitialized() {
1846       return true;
1847     }
1848 
1849     @java.lang.Override
mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1850     public Builder mergeFrom(
1851         com.google.protobuf.CodedInputStream input,
1852         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1853         throws java.io.IOException {
1854       if (extensionRegistry == null) {
1855         throw new java.lang.NullPointerException();
1856       }
1857       try {
1858         boolean done = false;
1859         while (!done) {
1860           int tag = input.readTag();
1861           switch (tag) {
1862             case 0:
1863               done = true;
1864               break;
1865             case 10:
1866               {
1867                 name_ = input.readStringRequireUtf8();
1868                 bitField0_ |= 0x00000001;
1869                 break;
1870               } // case 10
1871             case 18:
1872               {
1873                 displayName_ = input.readStringRequireUtf8();
1874                 bitField0_ |= 0x00000002;
1875                 break;
1876               } // case 18
1877             case 26:
1878               {
1879                 input.readMessage(getInputDataConfigFieldBuilder().getBuilder(), extensionRegistry);
1880                 bitField0_ |= 0x00000004;
1881                 break;
1882               } // case 26
1883             case 34:
1884               {
1885                 trainingTaskDefinition_ = input.readStringRequireUtf8();
1886                 bitField0_ |= 0x00000008;
1887                 break;
1888               } // case 34
1889             case 42:
1890               {
1891                 input.readMessage(
1892                     getTrainingTaskInputsFieldBuilder().getBuilder(), extensionRegistry);
1893                 bitField0_ |= 0x00000010;
1894                 break;
1895               } // case 42
1896             case 50:
1897               {
1898                 input.readMessage(
1899                     getTrainingTaskMetadataFieldBuilder().getBuilder(), extensionRegistry);
1900                 bitField0_ |= 0x00000020;
1901                 break;
1902               } // case 50
1903             case 58:
1904               {
1905                 input.readMessage(getModelToUploadFieldBuilder().getBuilder(), extensionRegistry);
1906                 bitField0_ |= 0x00000040;
1907                 break;
1908               } // case 58
1909             case 72:
1910               {
1911                 state_ = input.readEnum();
1912                 bitField0_ |= 0x00000200;
1913                 break;
1914               } // case 72
1915             case 82:
1916               {
1917                 input.readMessage(getErrorFieldBuilder().getBuilder(), extensionRegistry);
1918                 bitField0_ |= 0x00000400;
1919                 break;
1920               } // case 82
1921             case 90:
1922               {
1923                 input.readMessage(getCreateTimeFieldBuilder().getBuilder(), extensionRegistry);
1924                 bitField0_ |= 0x00000800;
1925                 break;
1926               } // case 90
1927             case 98:
1928               {
1929                 input.readMessage(getStartTimeFieldBuilder().getBuilder(), extensionRegistry);
1930                 bitField0_ |= 0x00001000;
1931                 break;
1932               } // case 98
1933             case 106:
1934               {
1935                 input.readMessage(getEndTimeFieldBuilder().getBuilder(), extensionRegistry);
1936                 bitField0_ |= 0x00002000;
1937                 break;
1938               } // case 106
1939             case 114:
1940               {
1941                 input.readMessage(getUpdateTimeFieldBuilder().getBuilder(), extensionRegistry);
1942                 bitField0_ |= 0x00004000;
1943                 break;
1944               } // case 114
1945             case 122:
1946               {
1947                 com.google.protobuf.MapEntry<java.lang.String, java.lang.String> labels__ =
1948                     input.readMessage(
1949                         LabelsDefaultEntryHolder.defaultEntry.getParserForType(),
1950                         extensionRegistry);
1951                 internalGetMutableLabels()
1952                     .getMutableMap()
1953                     .put(labels__.getKey(), labels__.getValue());
1954                 bitField0_ |= 0x00008000;
1955                 break;
1956               } // case 122
1957             case 146:
1958               {
1959                 input.readMessage(getEncryptionSpecFieldBuilder().getBuilder(), extensionRegistry);
1960                 bitField0_ |= 0x00010000;
1961                 break;
1962               } // case 146
1963             case 170:
1964               {
1965                 parentModel_ = input.readStringRequireUtf8();
1966                 bitField0_ |= 0x00000100;
1967                 break;
1968               } // case 170
1969             case 178:
1970               {
1971                 modelId_ = input.readStringRequireUtf8();
1972                 bitField0_ |= 0x00000080;
1973                 break;
1974               } // case 178
1975             default:
1976               {
1977                 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
1978                   done = true; // was an endgroup tag
1979                 }
1980                 break;
1981               } // default:
1982           } // switch (tag)
1983         } // while (!done)
1984       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1985         throw e.unwrapIOException();
1986       } finally {
1987         onChanged();
1988       } // finally
1989       return this;
1990     }
1991 
1992     private int bitField0_;
1993 
1994     private java.lang.Object name_ = "";
1995     /**
1996      *
1997      *
1998      * <pre>
1999      * Output only. Resource name of the TrainingPipeline.
2000      * </pre>
2001      *
2002      * <code>string name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
2003      *
2004      * @return The name.
2005      */
getName()2006     public java.lang.String getName() {
2007       java.lang.Object ref = name_;
2008       if (!(ref instanceof java.lang.String)) {
2009         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
2010         java.lang.String s = bs.toStringUtf8();
2011         name_ = s;
2012         return s;
2013       } else {
2014         return (java.lang.String) ref;
2015       }
2016     }
2017     /**
2018      *
2019      *
2020      * <pre>
2021      * Output only. Resource name of the TrainingPipeline.
2022      * </pre>
2023      *
2024      * <code>string name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
2025      *
2026      * @return The bytes for name.
2027      */
getNameBytes()2028     public com.google.protobuf.ByteString getNameBytes() {
2029       java.lang.Object ref = name_;
2030       if (ref instanceof String) {
2031         com.google.protobuf.ByteString b =
2032             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
2033         name_ = b;
2034         return b;
2035       } else {
2036         return (com.google.protobuf.ByteString) ref;
2037       }
2038     }
2039     /**
2040      *
2041      *
2042      * <pre>
2043      * Output only. Resource name of the TrainingPipeline.
2044      * </pre>
2045      *
2046      * <code>string name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
2047      *
2048      * @param value The name to set.
2049      * @return This builder for chaining.
2050      */
setName(java.lang.String value)2051     public Builder setName(java.lang.String value) {
2052       if (value == null) {
2053         throw new NullPointerException();
2054       }
2055       name_ = value;
2056       bitField0_ |= 0x00000001;
2057       onChanged();
2058       return this;
2059     }
2060     /**
2061      *
2062      *
2063      * <pre>
2064      * Output only. Resource name of the TrainingPipeline.
2065      * </pre>
2066      *
2067      * <code>string name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
2068      *
2069      * @return This builder for chaining.
2070      */
clearName()2071     public Builder clearName() {
2072       name_ = getDefaultInstance().getName();
2073       bitField0_ = (bitField0_ & ~0x00000001);
2074       onChanged();
2075       return this;
2076     }
2077     /**
2078      *
2079      *
2080      * <pre>
2081      * Output only. Resource name of the TrainingPipeline.
2082      * </pre>
2083      *
2084      * <code>string name = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
2085      *
2086      * @param value The bytes for name to set.
2087      * @return This builder for chaining.
2088      */
setNameBytes(com.google.protobuf.ByteString value)2089     public Builder setNameBytes(com.google.protobuf.ByteString value) {
2090       if (value == null) {
2091         throw new NullPointerException();
2092       }
2093       checkByteStringIsUtf8(value);
2094       name_ = value;
2095       bitField0_ |= 0x00000001;
2096       onChanged();
2097       return this;
2098     }
2099 
2100     private java.lang.Object displayName_ = "";
2101     /**
2102      *
2103      *
2104      * <pre>
2105      * Required. The user-defined name of this TrainingPipeline.
2106      * </pre>
2107      *
2108      * <code>string display_name = 2 [(.google.api.field_behavior) = REQUIRED];</code>
2109      *
2110      * @return The displayName.
2111      */
getDisplayName()2112     public java.lang.String getDisplayName() {
2113       java.lang.Object ref = displayName_;
2114       if (!(ref instanceof java.lang.String)) {
2115         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
2116         java.lang.String s = bs.toStringUtf8();
2117         displayName_ = s;
2118         return s;
2119       } else {
2120         return (java.lang.String) ref;
2121       }
2122     }
2123     /**
2124      *
2125      *
2126      * <pre>
2127      * Required. The user-defined name of this TrainingPipeline.
2128      * </pre>
2129      *
2130      * <code>string display_name = 2 [(.google.api.field_behavior) = REQUIRED];</code>
2131      *
2132      * @return The bytes for displayName.
2133      */
getDisplayNameBytes()2134     public com.google.protobuf.ByteString getDisplayNameBytes() {
2135       java.lang.Object ref = displayName_;
2136       if (ref instanceof String) {
2137         com.google.protobuf.ByteString b =
2138             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
2139         displayName_ = b;
2140         return b;
2141       } else {
2142         return (com.google.protobuf.ByteString) ref;
2143       }
2144     }
2145     /**
2146      *
2147      *
2148      * <pre>
2149      * Required. The user-defined name of this TrainingPipeline.
2150      * </pre>
2151      *
2152      * <code>string display_name = 2 [(.google.api.field_behavior) = REQUIRED];</code>
2153      *
2154      * @param value The displayName to set.
2155      * @return This builder for chaining.
2156      */
setDisplayName(java.lang.String value)2157     public Builder setDisplayName(java.lang.String value) {
2158       if (value == null) {
2159         throw new NullPointerException();
2160       }
2161       displayName_ = value;
2162       bitField0_ |= 0x00000002;
2163       onChanged();
2164       return this;
2165     }
2166     /**
2167      *
2168      *
2169      * <pre>
2170      * Required. The user-defined name of this TrainingPipeline.
2171      * </pre>
2172      *
2173      * <code>string display_name = 2 [(.google.api.field_behavior) = REQUIRED];</code>
2174      *
2175      * @return This builder for chaining.
2176      */
clearDisplayName()2177     public Builder clearDisplayName() {
2178       displayName_ = getDefaultInstance().getDisplayName();
2179       bitField0_ = (bitField0_ & ~0x00000002);
2180       onChanged();
2181       return this;
2182     }
2183     /**
2184      *
2185      *
2186      * <pre>
2187      * Required. The user-defined name of this TrainingPipeline.
2188      * </pre>
2189      *
2190      * <code>string display_name = 2 [(.google.api.field_behavior) = REQUIRED];</code>
2191      *
2192      * @param value The bytes for displayName to set.
2193      * @return This builder for chaining.
2194      */
setDisplayNameBytes(com.google.protobuf.ByteString value)2195     public Builder setDisplayNameBytes(com.google.protobuf.ByteString value) {
2196       if (value == null) {
2197         throw new NullPointerException();
2198       }
2199       checkByteStringIsUtf8(value);
2200       displayName_ = value;
2201       bitField0_ |= 0x00000002;
2202       onChanged();
2203       return this;
2204     }
2205 
2206     private com.google.cloud.aiplatform.v1.InputDataConfig inputDataConfig_;
2207     private com.google.protobuf.SingleFieldBuilderV3<
2208             com.google.cloud.aiplatform.v1.InputDataConfig,
2209             com.google.cloud.aiplatform.v1.InputDataConfig.Builder,
2210             com.google.cloud.aiplatform.v1.InputDataConfigOrBuilder>
2211         inputDataConfigBuilder_;
2212     /**
2213      *
2214      *
2215      * <pre>
2216      * Specifies Vertex AI owned input data that may be used for training the
2217      * Model. The TrainingPipeline's
2218      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
2219      * should make clear whether this config is used and if there are any special
2220      * requirements on how it should be filled. If nothing about this config is
2221      * mentioned in the
2222      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
2223      * then it should be assumed that the TrainingPipeline does not depend on this
2224      * configuration.
2225      * </pre>
2226      *
2227      * <code>.google.cloud.aiplatform.v1.InputDataConfig input_data_config = 3;</code>
2228      *
2229      * @return Whether the inputDataConfig field is set.
2230      */
hasInputDataConfig()2231     public boolean hasInputDataConfig() {
2232       return ((bitField0_ & 0x00000004) != 0);
2233     }
2234     /**
2235      *
2236      *
2237      * <pre>
2238      * Specifies Vertex AI owned input data that may be used for training the
2239      * Model. The TrainingPipeline's
2240      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
2241      * should make clear whether this config is used and if there are any special
2242      * requirements on how it should be filled. If nothing about this config is
2243      * mentioned in the
2244      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
2245      * then it should be assumed that the TrainingPipeline does not depend on this
2246      * configuration.
2247      * </pre>
2248      *
2249      * <code>.google.cloud.aiplatform.v1.InputDataConfig input_data_config = 3;</code>
2250      *
2251      * @return The inputDataConfig.
2252      */
getInputDataConfig()2253     public com.google.cloud.aiplatform.v1.InputDataConfig getInputDataConfig() {
2254       if (inputDataConfigBuilder_ == null) {
2255         return inputDataConfig_ == null
2256             ? com.google.cloud.aiplatform.v1.InputDataConfig.getDefaultInstance()
2257             : inputDataConfig_;
2258       } else {
2259         return inputDataConfigBuilder_.getMessage();
2260       }
2261     }
2262     /**
2263      *
2264      *
2265      * <pre>
2266      * Specifies Vertex AI owned input data that may be used for training the
2267      * Model. The TrainingPipeline's
2268      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
2269      * should make clear whether this config is used and if there are any special
2270      * requirements on how it should be filled. If nothing about this config is
2271      * mentioned in the
2272      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
2273      * then it should be assumed that the TrainingPipeline does not depend on this
2274      * configuration.
2275      * </pre>
2276      *
2277      * <code>.google.cloud.aiplatform.v1.InputDataConfig input_data_config = 3;</code>
2278      */
setInputDataConfig(com.google.cloud.aiplatform.v1.InputDataConfig value)2279     public Builder setInputDataConfig(com.google.cloud.aiplatform.v1.InputDataConfig value) {
2280       if (inputDataConfigBuilder_ == null) {
2281         if (value == null) {
2282           throw new NullPointerException();
2283         }
2284         inputDataConfig_ = value;
2285       } else {
2286         inputDataConfigBuilder_.setMessage(value);
2287       }
2288       bitField0_ |= 0x00000004;
2289       onChanged();
2290       return this;
2291     }
2292     /**
2293      *
2294      *
2295      * <pre>
2296      * Specifies Vertex AI owned input data that may be used for training the
2297      * Model. The TrainingPipeline's
2298      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
2299      * should make clear whether this config is used and if there are any special
2300      * requirements on how it should be filled. If nothing about this config is
2301      * mentioned in the
2302      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
2303      * then it should be assumed that the TrainingPipeline does not depend on this
2304      * configuration.
2305      * </pre>
2306      *
2307      * <code>.google.cloud.aiplatform.v1.InputDataConfig input_data_config = 3;</code>
2308      */
setInputDataConfig( com.google.cloud.aiplatform.v1.InputDataConfig.Builder builderForValue)2309     public Builder setInputDataConfig(
2310         com.google.cloud.aiplatform.v1.InputDataConfig.Builder builderForValue) {
2311       if (inputDataConfigBuilder_ == null) {
2312         inputDataConfig_ = builderForValue.build();
2313       } else {
2314         inputDataConfigBuilder_.setMessage(builderForValue.build());
2315       }
2316       bitField0_ |= 0x00000004;
2317       onChanged();
2318       return this;
2319     }
2320     /**
2321      *
2322      *
2323      * <pre>
2324      * Specifies Vertex AI owned input data that may be used for training the
2325      * Model. The TrainingPipeline's
2326      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
2327      * should make clear whether this config is used and if there are any special
2328      * requirements on how it should be filled. If nothing about this config is
2329      * mentioned in the
2330      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
2331      * then it should be assumed that the TrainingPipeline does not depend on this
2332      * configuration.
2333      * </pre>
2334      *
2335      * <code>.google.cloud.aiplatform.v1.InputDataConfig input_data_config = 3;</code>
2336      */
mergeInputDataConfig(com.google.cloud.aiplatform.v1.InputDataConfig value)2337     public Builder mergeInputDataConfig(com.google.cloud.aiplatform.v1.InputDataConfig value) {
2338       if (inputDataConfigBuilder_ == null) {
2339         if (((bitField0_ & 0x00000004) != 0)
2340             && inputDataConfig_ != null
2341             && inputDataConfig_
2342                 != com.google.cloud.aiplatform.v1.InputDataConfig.getDefaultInstance()) {
2343           getInputDataConfigBuilder().mergeFrom(value);
2344         } else {
2345           inputDataConfig_ = value;
2346         }
2347       } else {
2348         inputDataConfigBuilder_.mergeFrom(value);
2349       }
2350       bitField0_ |= 0x00000004;
2351       onChanged();
2352       return this;
2353     }
2354     /**
2355      *
2356      *
2357      * <pre>
2358      * Specifies Vertex AI owned input data that may be used for training the
2359      * Model. The TrainingPipeline's
2360      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
2361      * should make clear whether this config is used and if there are any special
2362      * requirements on how it should be filled. If nothing about this config is
2363      * mentioned in the
2364      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
2365      * then it should be assumed that the TrainingPipeline does not depend on this
2366      * configuration.
2367      * </pre>
2368      *
2369      * <code>.google.cloud.aiplatform.v1.InputDataConfig input_data_config = 3;</code>
2370      */
clearInputDataConfig()2371     public Builder clearInputDataConfig() {
2372       bitField0_ = (bitField0_ & ~0x00000004);
2373       inputDataConfig_ = null;
2374       if (inputDataConfigBuilder_ != null) {
2375         inputDataConfigBuilder_.dispose();
2376         inputDataConfigBuilder_ = null;
2377       }
2378       onChanged();
2379       return this;
2380     }
2381     /**
2382      *
2383      *
2384      * <pre>
2385      * Specifies Vertex AI owned input data that may be used for training the
2386      * Model. The TrainingPipeline's
2387      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
2388      * should make clear whether this config is used and if there are any special
2389      * requirements on how it should be filled. If nothing about this config is
2390      * mentioned in the
2391      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
2392      * then it should be assumed that the TrainingPipeline does not depend on this
2393      * configuration.
2394      * </pre>
2395      *
2396      * <code>.google.cloud.aiplatform.v1.InputDataConfig input_data_config = 3;</code>
2397      */
getInputDataConfigBuilder()2398     public com.google.cloud.aiplatform.v1.InputDataConfig.Builder getInputDataConfigBuilder() {
2399       bitField0_ |= 0x00000004;
2400       onChanged();
2401       return getInputDataConfigFieldBuilder().getBuilder();
2402     }
2403     /**
2404      *
2405      *
2406      * <pre>
2407      * Specifies Vertex AI owned input data that may be used for training the
2408      * Model. The TrainingPipeline's
2409      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
2410      * should make clear whether this config is used and if there are any special
2411      * requirements on how it should be filled. If nothing about this config is
2412      * mentioned in the
2413      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
2414      * then it should be assumed that the TrainingPipeline does not depend on this
2415      * configuration.
2416      * </pre>
2417      *
2418      * <code>.google.cloud.aiplatform.v1.InputDataConfig input_data_config = 3;</code>
2419      */
getInputDataConfigOrBuilder()2420     public com.google.cloud.aiplatform.v1.InputDataConfigOrBuilder getInputDataConfigOrBuilder() {
2421       if (inputDataConfigBuilder_ != null) {
2422         return inputDataConfigBuilder_.getMessageOrBuilder();
2423       } else {
2424         return inputDataConfig_ == null
2425             ? com.google.cloud.aiplatform.v1.InputDataConfig.getDefaultInstance()
2426             : inputDataConfig_;
2427       }
2428     }
2429     /**
2430      *
2431      *
2432      * <pre>
2433      * Specifies Vertex AI owned input data that may be used for training the
2434      * Model. The TrainingPipeline's
2435      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
2436      * should make clear whether this config is used and if there are any special
2437      * requirements on how it should be filled. If nothing about this config is
2438      * mentioned in the
2439      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
2440      * then it should be assumed that the TrainingPipeline does not depend on this
2441      * configuration.
2442      * </pre>
2443      *
2444      * <code>.google.cloud.aiplatform.v1.InputDataConfig input_data_config = 3;</code>
2445      */
2446     private com.google.protobuf.SingleFieldBuilderV3<
2447             com.google.cloud.aiplatform.v1.InputDataConfig,
2448             com.google.cloud.aiplatform.v1.InputDataConfig.Builder,
2449             com.google.cloud.aiplatform.v1.InputDataConfigOrBuilder>
getInputDataConfigFieldBuilder()2450         getInputDataConfigFieldBuilder() {
2451       if (inputDataConfigBuilder_ == null) {
2452         inputDataConfigBuilder_ =
2453             new com.google.protobuf.SingleFieldBuilderV3<
2454                 com.google.cloud.aiplatform.v1.InputDataConfig,
2455                 com.google.cloud.aiplatform.v1.InputDataConfig.Builder,
2456                 com.google.cloud.aiplatform.v1.InputDataConfigOrBuilder>(
2457                 getInputDataConfig(), getParentForChildren(), isClean());
2458         inputDataConfig_ = null;
2459       }
2460       return inputDataConfigBuilder_;
2461     }
2462 
2463     private java.lang.Object trainingTaskDefinition_ = "";
2464     /**
2465      *
2466      *
2467      * <pre>
2468      * Required. A Google Cloud Storage path to the YAML file that defines the
2469      * training task which is responsible for producing the model artifact, and
2470      * may also include additional auxiliary work. The definition files that can
2471      * be used here are found in
2472      * gs://google-cloud-aiplatform/schema/trainingjob/definition/.
2473      * Note: The URI given on output will be immutable and probably different,
2474      * including the URI scheme, than the one given on input. The output URI will
2475      * point to a location where the user only has a read access.
2476      * </pre>
2477      *
2478      * <code>string training_task_definition = 4 [(.google.api.field_behavior) = REQUIRED];</code>
2479      *
2480      * @return The trainingTaskDefinition.
2481      */
getTrainingTaskDefinition()2482     public java.lang.String getTrainingTaskDefinition() {
2483       java.lang.Object ref = trainingTaskDefinition_;
2484       if (!(ref instanceof java.lang.String)) {
2485         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
2486         java.lang.String s = bs.toStringUtf8();
2487         trainingTaskDefinition_ = s;
2488         return s;
2489       } else {
2490         return (java.lang.String) ref;
2491       }
2492     }
2493     /**
2494      *
2495      *
2496      * <pre>
2497      * Required. A Google Cloud Storage path to the YAML file that defines the
2498      * training task which is responsible for producing the model artifact, and
2499      * may also include additional auxiliary work. The definition files that can
2500      * be used here are found in
2501      * gs://google-cloud-aiplatform/schema/trainingjob/definition/.
2502      * Note: The URI given on output will be immutable and probably different,
2503      * including the URI scheme, than the one given on input. The output URI will
2504      * point to a location where the user only has a read access.
2505      * </pre>
2506      *
2507      * <code>string training_task_definition = 4 [(.google.api.field_behavior) = REQUIRED];</code>
2508      *
2509      * @return The bytes for trainingTaskDefinition.
2510      */
getTrainingTaskDefinitionBytes()2511     public com.google.protobuf.ByteString getTrainingTaskDefinitionBytes() {
2512       java.lang.Object ref = trainingTaskDefinition_;
2513       if (ref instanceof String) {
2514         com.google.protobuf.ByteString b =
2515             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
2516         trainingTaskDefinition_ = b;
2517         return b;
2518       } else {
2519         return (com.google.protobuf.ByteString) ref;
2520       }
2521     }
2522     /**
2523      *
2524      *
2525      * <pre>
2526      * Required. A Google Cloud Storage path to the YAML file that defines the
2527      * training task which is responsible for producing the model artifact, and
2528      * may also include additional auxiliary work. The definition files that can
2529      * be used here are found in
2530      * gs://google-cloud-aiplatform/schema/trainingjob/definition/.
2531      * Note: The URI given on output will be immutable and probably different,
2532      * including the URI scheme, than the one given on input. The output URI will
2533      * point to a location where the user only has a read access.
2534      * </pre>
2535      *
2536      * <code>string training_task_definition = 4 [(.google.api.field_behavior) = REQUIRED];</code>
2537      *
2538      * @param value The trainingTaskDefinition to set.
2539      * @return This builder for chaining.
2540      */
setTrainingTaskDefinition(java.lang.String value)2541     public Builder setTrainingTaskDefinition(java.lang.String value) {
2542       if (value == null) {
2543         throw new NullPointerException();
2544       }
2545       trainingTaskDefinition_ = value;
2546       bitField0_ |= 0x00000008;
2547       onChanged();
2548       return this;
2549     }
2550     /**
2551      *
2552      *
2553      * <pre>
2554      * Required. A Google Cloud Storage path to the YAML file that defines the
2555      * training task which is responsible for producing the model artifact, and
2556      * may also include additional auxiliary work. The definition files that can
2557      * be used here are found in
2558      * gs://google-cloud-aiplatform/schema/trainingjob/definition/.
2559      * Note: The URI given on output will be immutable and probably different,
2560      * including the URI scheme, than the one given on input. The output URI will
2561      * point to a location where the user only has a read access.
2562      * </pre>
2563      *
2564      * <code>string training_task_definition = 4 [(.google.api.field_behavior) = REQUIRED];</code>
2565      *
2566      * @return This builder for chaining.
2567      */
clearTrainingTaskDefinition()2568     public Builder clearTrainingTaskDefinition() {
2569       trainingTaskDefinition_ = getDefaultInstance().getTrainingTaskDefinition();
2570       bitField0_ = (bitField0_ & ~0x00000008);
2571       onChanged();
2572       return this;
2573     }
2574     /**
2575      *
2576      *
2577      * <pre>
2578      * Required. A Google Cloud Storage path to the YAML file that defines the
2579      * training task which is responsible for producing the model artifact, and
2580      * may also include additional auxiliary work. The definition files that can
2581      * be used here are found in
2582      * gs://google-cloud-aiplatform/schema/trainingjob/definition/.
2583      * Note: The URI given on output will be immutable and probably different,
2584      * including the URI scheme, than the one given on input. The output URI will
2585      * point to a location where the user only has a read access.
2586      * </pre>
2587      *
2588      * <code>string training_task_definition = 4 [(.google.api.field_behavior) = REQUIRED];</code>
2589      *
2590      * @param value The bytes for trainingTaskDefinition to set.
2591      * @return This builder for chaining.
2592      */
setTrainingTaskDefinitionBytes(com.google.protobuf.ByteString value)2593     public Builder setTrainingTaskDefinitionBytes(com.google.protobuf.ByteString value) {
2594       if (value == null) {
2595         throw new NullPointerException();
2596       }
2597       checkByteStringIsUtf8(value);
2598       trainingTaskDefinition_ = value;
2599       bitField0_ |= 0x00000008;
2600       onChanged();
2601       return this;
2602     }
2603 
2604     private com.google.protobuf.Value trainingTaskInputs_;
2605     private com.google.protobuf.SingleFieldBuilderV3<
2606             com.google.protobuf.Value,
2607             com.google.protobuf.Value.Builder,
2608             com.google.protobuf.ValueOrBuilder>
2609         trainingTaskInputsBuilder_;
2610     /**
2611      *
2612      *
2613      * <pre>
2614      * Required. The training task's parameter(s), as specified in the
2615      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
2616      * `inputs`.
2617      * </pre>
2618      *
2619      * <code>
2620      * .google.protobuf.Value training_task_inputs = 5 [(.google.api.field_behavior) = REQUIRED];
2621      * </code>
2622      *
2623      * @return Whether the trainingTaskInputs field is set.
2624      */
hasTrainingTaskInputs()2625     public boolean hasTrainingTaskInputs() {
2626       return ((bitField0_ & 0x00000010) != 0);
2627     }
2628     /**
2629      *
2630      *
2631      * <pre>
2632      * Required. The training task's parameter(s), as specified in the
2633      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
2634      * `inputs`.
2635      * </pre>
2636      *
2637      * <code>
2638      * .google.protobuf.Value training_task_inputs = 5 [(.google.api.field_behavior) = REQUIRED];
2639      * </code>
2640      *
2641      * @return The trainingTaskInputs.
2642      */
getTrainingTaskInputs()2643     public com.google.protobuf.Value getTrainingTaskInputs() {
2644       if (trainingTaskInputsBuilder_ == null) {
2645         return trainingTaskInputs_ == null
2646             ? com.google.protobuf.Value.getDefaultInstance()
2647             : trainingTaskInputs_;
2648       } else {
2649         return trainingTaskInputsBuilder_.getMessage();
2650       }
2651     }
2652     /**
2653      *
2654      *
2655      * <pre>
2656      * Required. The training task's parameter(s), as specified in the
2657      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
2658      * `inputs`.
2659      * </pre>
2660      *
2661      * <code>
2662      * .google.protobuf.Value training_task_inputs = 5 [(.google.api.field_behavior) = REQUIRED];
2663      * </code>
2664      */
setTrainingTaskInputs(com.google.protobuf.Value value)2665     public Builder setTrainingTaskInputs(com.google.protobuf.Value value) {
2666       if (trainingTaskInputsBuilder_ == null) {
2667         if (value == null) {
2668           throw new NullPointerException();
2669         }
2670         trainingTaskInputs_ = value;
2671       } else {
2672         trainingTaskInputsBuilder_.setMessage(value);
2673       }
2674       bitField0_ |= 0x00000010;
2675       onChanged();
2676       return this;
2677     }
2678     /**
2679      *
2680      *
2681      * <pre>
2682      * Required. The training task's parameter(s), as specified in the
2683      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
2684      * `inputs`.
2685      * </pre>
2686      *
2687      * <code>
2688      * .google.protobuf.Value training_task_inputs = 5 [(.google.api.field_behavior) = REQUIRED];
2689      * </code>
2690      */
setTrainingTaskInputs(com.google.protobuf.Value.Builder builderForValue)2691     public Builder setTrainingTaskInputs(com.google.protobuf.Value.Builder builderForValue) {
2692       if (trainingTaskInputsBuilder_ == null) {
2693         trainingTaskInputs_ = builderForValue.build();
2694       } else {
2695         trainingTaskInputsBuilder_.setMessage(builderForValue.build());
2696       }
2697       bitField0_ |= 0x00000010;
2698       onChanged();
2699       return this;
2700     }
2701     /**
2702      *
2703      *
2704      * <pre>
2705      * Required. The training task's parameter(s), as specified in the
2706      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
2707      * `inputs`.
2708      * </pre>
2709      *
2710      * <code>
2711      * .google.protobuf.Value training_task_inputs = 5 [(.google.api.field_behavior) = REQUIRED];
2712      * </code>
2713      */
mergeTrainingTaskInputs(com.google.protobuf.Value value)2714     public Builder mergeTrainingTaskInputs(com.google.protobuf.Value value) {
2715       if (trainingTaskInputsBuilder_ == null) {
2716         if (((bitField0_ & 0x00000010) != 0)
2717             && trainingTaskInputs_ != null
2718             && trainingTaskInputs_ != com.google.protobuf.Value.getDefaultInstance()) {
2719           getTrainingTaskInputsBuilder().mergeFrom(value);
2720         } else {
2721           trainingTaskInputs_ = value;
2722         }
2723       } else {
2724         trainingTaskInputsBuilder_.mergeFrom(value);
2725       }
2726       bitField0_ |= 0x00000010;
2727       onChanged();
2728       return this;
2729     }
2730     /**
2731      *
2732      *
2733      * <pre>
2734      * Required. The training task's parameter(s), as specified in the
2735      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
2736      * `inputs`.
2737      * </pre>
2738      *
2739      * <code>
2740      * .google.protobuf.Value training_task_inputs = 5 [(.google.api.field_behavior) = REQUIRED];
2741      * </code>
2742      */
clearTrainingTaskInputs()2743     public Builder clearTrainingTaskInputs() {
2744       bitField0_ = (bitField0_ & ~0x00000010);
2745       trainingTaskInputs_ = null;
2746       if (trainingTaskInputsBuilder_ != null) {
2747         trainingTaskInputsBuilder_.dispose();
2748         trainingTaskInputsBuilder_ = null;
2749       }
2750       onChanged();
2751       return this;
2752     }
2753     /**
2754      *
2755      *
2756      * <pre>
2757      * Required. The training task's parameter(s), as specified in the
2758      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
2759      * `inputs`.
2760      * </pre>
2761      *
2762      * <code>
2763      * .google.protobuf.Value training_task_inputs = 5 [(.google.api.field_behavior) = REQUIRED];
2764      * </code>
2765      */
getTrainingTaskInputsBuilder()2766     public com.google.protobuf.Value.Builder getTrainingTaskInputsBuilder() {
2767       bitField0_ |= 0x00000010;
2768       onChanged();
2769       return getTrainingTaskInputsFieldBuilder().getBuilder();
2770     }
2771     /**
2772      *
2773      *
2774      * <pre>
2775      * Required. The training task's parameter(s), as specified in the
2776      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
2777      * `inputs`.
2778      * </pre>
2779      *
2780      * <code>
2781      * .google.protobuf.Value training_task_inputs = 5 [(.google.api.field_behavior) = REQUIRED];
2782      * </code>
2783      */
getTrainingTaskInputsOrBuilder()2784     public com.google.protobuf.ValueOrBuilder getTrainingTaskInputsOrBuilder() {
2785       if (trainingTaskInputsBuilder_ != null) {
2786         return trainingTaskInputsBuilder_.getMessageOrBuilder();
2787       } else {
2788         return trainingTaskInputs_ == null
2789             ? com.google.protobuf.Value.getDefaultInstance()
2790             : trainingTaskInputs_;
2791       }
2792     }
2793     /**
2794      *
2795      *
2796      * <pre>
2797      * Required. The training task's parameter(s), as specified in the
2798      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
2799      * `inputs`.
2800      * </pre>
2801      *
2802      * <code>
2803      * .google.protobuf.Value training_task_inputs = 5 [(.google.api.field_behavior) = REQUIRED];
2804      * </code>
2805      */
2806     private com.google.protobuf.SingleFieldBuilderV3<
2807             com.google.protobuf.Value,
2808             com.google.protobuf.Value.Builder,
2809             com.google.protobuf.ValueOrBuilder>
getTrainingTaskInputsFieldBuilder()2810         getTrainingTaskInputsFieldBuilder() {
2811       if (trainingTaskInputsBuilder_ == null) {
2812         trainingTaskInputsBuilder_ =
2813             new com.google.protobuf.SingleFieldBuilderV3<
2814                 com.google.protobuf.Value,
2815                 com.google.protobuf.Value.Builder,
2816                 com.google.protobuf.ValueOrBuilder>(
2817                 getTrainingTaskInputs(), getParentForChildren(), isClean());
2818         trainingTaskInputs_ = null;
2819       }
2820       return trainingTaskInputsBuilder_;
2821     }
2822 
2823     private com.google.protobuf.Value trainingTaskMetadata_;
2824     private com.google.protobuf.SingleFieldBuilderV3<
2825             com.google.protobuf.Value,
2826             com.google.protobuf.Value.Builder,
2827             com.google.protobuf.ValueOrBuilder>
2828         trainingTaskMetadataBuilder_;
2829     /**
2830      *
2831      *
2832      * <pre>
2833      * Output only. The metadata information as specified in the
2834      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
2835      * `metadata`. This metadata is an auxiliary runtime and final information
2836      * about the training task. While the pipeline is running this information is
2837      * populated only at a best effort basis. Only present if the
2838      * pipeline's
2839      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
2840      * contains `metadata` object.
2841      * </pre>
2842      *
2843      * <code>
2844      * .google.protobuf.Value training_task_metadata = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
2845      * </code>
2846      *
2847      * @return Whether the trainingTaskMetadata field is set.
2848      */
hasTrainingTaskMetadata()2849     public boolean hasTrainingTaskMetadata() {
2850       return ((bitField0_ & 0x00000020) != 0);
2851     }
2852     /**
2853      *
2854      *
2855      * <pre>
2856      * Output only. The metadata information as specified in the
2857      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
2858      * `metadata`. This metadata is an auxiliary runtime and final information
2859      * about the training task. While the pipeline is running this information is
2860      * populated only at a best effort basis. Only present if the
2861      * pipeline's
2862      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
2863      * contains `metadata` object.
2864      * </pre>
2865      *
2866      * <code>
2867      * .google.protobuf.Value training_task_metadata = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
2868      * </code>
2869      *
2870      * @return The trainingTaskMetadata.
2871      */
getTrainingTaskMetadata()2872     public com.google.protobuf.Value getTrainingTaskMetadata() {
2873       if (trainingTaskMetadataBuilder_ == null) {
2874         return trainingTaskMetadata_ == null
2875             ? com.google.protobuf.Value.getDefaultInstance()
2876             : trainingTaskMetadata_;
2877       } else {
2878         return trainingTaskMetadataBuilder_.getMessage();
2879       }
2880     }
2881     /**
2882      *
2883      *
2884      * <pre>
2885      * Output only. The metadata information as specified in the
2886      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
2887      * `metadata`. This metadata is an auxiliary runtime and final information
2888      * about the training task. While the pipeline is running this information is
2889      * populated only at a best effort basis. Only present if the
2890      * pipeline's
2891      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
2892      * contains `metadata` object.
2893      * </pre>
2894      *
2895      * <code>
2896      * .google.protobuf.Value training_task_metadata = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
2897      * </code>
2898      */
setTrainingTaskMetadata(com.google.protobuf.Value value)2899     public Builder setTrainingTaskMetadata(com.google.protobuf.Value value) {
2900       if (trainingTaskMetadataBuilder_ == null) {
2901         if (value == null) {
2902           throw new NullPointerException();
2903         }
2904         trainingTaskMetadata_ = value;
2905       } else {
2906         trainingTaskMetadataBuilder_.setMessage(value);
2907       }
2908       bitField0_ |= 0x00000020;
2909       onChanged();
2910       return this;
2911     }
2912     /**
2913      *
2914      *
2915      * <pre>
2916      * Output only. The metadata information as specified in the
2917      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
2918      * `metadata`. This metadata is an auxiliary runtime and final information
2919      * about the training task. While the pipeline is running this information is
2920      * populated only at a best effort basis. Only present if the
2921      * pipeline's
2922      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
2923      * contains `metadata` object.
2924      * </pre>
2925      *
2926      * <code>
2927      * .google.protobuf.Value training_task_metadata = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
2928      * </code>
2929      */
setTrainingTaskMetadata(com.google.protobuf.Value.Builder builderForValue)2930     public Builder setTrainingTaskMetadata(com.google.protobuf.Value.Builder builderForValue) {
2931       if (trainingTaskMetadataBuilder_ == null) {
2932         trainingTaskMetadata_ = builderForValue.build();
2933       } else {
2934         trainingTaskMetadataBuilder_.setMessage(builderForValue.build());
2935       }
2936       bitField0_ |= 0x00000020;
2937       onChanged();
2938       return this;
2939     }
2940     /**
2941      *
2942      *
2943      * <pre>
2944      * Output only. The metadata information as specified in the
2945      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
2946      * `metadata`. This metadata is an auxiliary runtime and final information
2947      * about the training task. While the pipeline is running this information is
2948      * populated only at a best effort basis. Only present if the
2949      * pipeline's
2950      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
2951      * contains `metadata` object.
2952      * </pre>
2953      *
2954      * <code>
2955      * .google.protobuf.Value training_task_metadata = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
2956      * </code>
2957      */
mergeTrainingTaskMetadata(com.google.protobuf.Value value)2958     public Builder mergeTrainingTaskMetadata(com.google.protobuf.Value value) {
2959       if (trainingTaskMetadataBuilder_ == null) {
2960         if (((bitField0_ & 0x00000020) != 0)
2961             && trainingTaskMetadata_ != null
2962             && trainingTaskMetadata_ != com.google.protobuf.Value.getDefaultInstance()) {
2963           getTrainingTaskMetadataBuilder().mergeFrom(value);
2964         } else {
2965           trainingTaskMetadata_ = value;
2966         }
2967       } else {
2968         trainingTaskMetadataBuilder_.mergeFrom(value);
2969       }
2970       bitField0_ |= 0x00000020;
2971       onChanged();
2972       return this;
2973     }
2974     /**
2975      *
2976      *
2977      * <pre>
2978      * Output only. The metadata information as specified in the
2979      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
2980      * `metadata`. This metadata is an auxiliary runtime and final information
2981      * about the training task. While the pipeline is running this information is
2982      * populated only at a best effort basis. Only present if the
2983      * pipeline's
2984      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
2985      * contains `metadata` object.
2986      * </pre>
2987      *
2988      * <code>
2989      * .google.protobuf.Value training_task_metadata = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
2990      * </code>
2991      */
clearTrainingTaskMetadata()2992     public Builder clearTrainingTaskMetadata() {
2993       bitField0_ = (bitField0_ & ~0x00000020);
2994       trainingTaskMetadata_ = null;
2995       if (trainingTaskMetadataBuilder_ != null) {
2996         trainingTaskMetadataBuilder_.dispose();
2997         trainingTaskMetadataBuilder_ = null;
2998       }
2999       onChanged();
3000       return this;
3001     }
3002     /**
3003      *
3004      *
3005      * <pre>
3006      * Output only. The metadata information as specified in the
3007      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
3008      * `metadata`. This metadata is an auxiliary runtime and final information
3009      * about the training task. While the pipeline is running this information is
3010      * populated only at a best effort basis. Only present if the
3011      * pipeline's
3012      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
3013      * contains `metadata` object.
3014      * </pre>
3015      *
3016      * <code>
3017      * .google.protobuf.Value training_task_metadata = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
3018      * </code>
3019      */
getTrainingTaskMetadataBuilder()3020     public com.google.protobuf.Value.Builder getTrainingTaskMetadataBuilder() {
3021       bitField0_ |= 0x00000020;
3022       onChanged();
3023       return getTrainingTaskMetadataFieldBuilder().getBuilder();
3024     }
3025     /**
3026      *
3027      *
3028      * <pre>
3029      * Output only. The metadata information as specified in the
3030      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
3031      * `metadata`. This metadata is an auxiliary runtime and final information
3032      * about the training task. While the pipeline is running this information is
3033      * populated only at a best effort basis. Only present if the
3034      * pipeline's
3035      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
3036      * contains `metadata` object.
3037      * </pre>
3038      *
3039      * <code>
3040      * .google.protobuf.Value training_task_metadata = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
3041      * </code>
3042      */
getTrainingTaskMetadataOrBuilder()3043     public com.google.protobuf.ValueOrBuilder getTrainingTaskMetadataOrBuilder() {
3044       if (trainingTaskMetadataBuilder_ != null) {
3045         return trainingTaskMetadataBuilder_.getMessageOrBuilder();
3046       } else {
3047         return trainingTaskMetadata_ == null
3048             ? com.google.protobuf.Value.getDefaultInstance()
3049             : trainingTaskMetadata_;
3050       }
3051     }
3052     /**
3053      *
3054      *
3055      * <pre>
3056      * Output only. The metadata information as specified in the
3057      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]'s
3058      * `metadata`. This metadata is an auxiliary runtime and final information
3059      * about the training task. While the pipeline is running this information is
3060      * populated only at a best effort basis. Only present if the
3061      * pipeline's
3062      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
3063      * contains `metadata` object.
3064      * </pre>
3065      *
3066      * <code>
3067      * .google.protobuf.Value training_task_metadata = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
3068      * </code>
3069      */
3070     private com.google.protobuf.SingleFieldBuilderV3<
3071             com.google.protobuf.Value,
3072             com.google.protobuf.Value.Builder,
3073             com.google.protobuf.ValueOrBuilder>
getTrainingTaskMetadataFieldBuilder()3074         getTrainingTaskMetadataFieldBuilder() {
3075       if (trainingTaskMetadataBuilder_ == null) {
3076         trainingTaskMetadataBuilder_ =
3077             new com.google.protobuf.SingleFieldBuilderV3<
3078                 com.google.protobuf.Value,
3079                 com.google.protobuf.Value.Builder,
3080                 com.google.protobuf.ValueOrBuilder>(
3081                 getTrainingTaskMetadata(), getParentForChildren(), isClean());
3082         trainingTaskMetadata_ = null;
3083       }
3084       return trainingTaskMetadataBuilder_;
3085     }
3086 
3087     private com.google.cloud.aiplatform.v1.Model modelToUpload_;
3088     private com.google.protobuf.SingleFieldBuilderV3<
3089             com.google.cloud.aiplatform.v1.Model,
3090             com.google.cloud.aiplatform.v1.Model.Builder,
3091             com.google.cloud.aiplatform.v1.ModelOrBuilder>
3092         modelToUploadBuilder_;
3093     /**
3094      *
3095      *
3096      * <pre>
3097      * Describes the Model that may be uploaded (via
3098      * [ModelService.UploadModel][google.cloud.aiplatform.v1.ModelService.UploadModel])
3099      * by this TrainingPipeline. The TrainingPipeline's
3100      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
3101      * should make clear whether this Model description should be populated, and
3102      * if there are any special requirements regarding how it should be filled. If
3103      * nothing is mentioned in the
3104      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
3105      * then it should be assumed that this field should not be filled and the
3106      * training task either uploads the Model without a need of this information,
3107      * or that training task does not support uploading a Model as part of the
3108      * pipeline. When the Pipeline's state becomes `PIPELINE_STATE_SUCCEEDED` and
3109      * the trained Model had been uploaded into Vertex AI, then the
3110      * model_to_upload's resource [name][google.cloud.aiplatform.v1.Model.name] is
3111      * populated. The Model is always uploaded into the Project and Location in
3112      * which this pipeline is.
3113      * </pre>
3114      *
3115      * <code>.google.cloud.aiplatform.v1.Model model_to_upload = 7;</code>
3116      *
3117      * @return Whether the modelToUpload field is set.
3118      */
hasModelToUpload()3119     public boolean hasModelToUpload() {
3120       return ((bitField0_ & 0x00000040) != 0);
3121     }
3122     /**
3123      *
3124      *
3125      * <pre>
3126      * Describes the Model that may be uploaded (via
3127      * [ModelService.UploadModel][google.cloud.aiplatform.v1.ModelService.UploadModel])
3128      * by this TrainingPipeline. The TrainingPipeline's
3129      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
3130      * should make clear whether this Model description should be populated, and
3131      * if there are any special requirements regarding how it should be filled. If
3132      * nothing is mentioned in the
3133      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
3134      * then it should be assumed that this field should not be filled and the
3135      * training task either uploads the Model without a need of this information,
3136      * or that training task does not support uploading a Model as part of the
3137      * pipeline. When the Pipeline's state becomes `PIPELINE_STATE_SUCCEEDED` and
3138      * the trained Model had been uploaded into Vertex AI, then the
3139      * model_to_upload's resource [name][google.cloud.aiplatform.v1.Model.name] is
3140      * populated. The Model is always uploaded into the Project and Location in
3141      * which this pipeline is.
3142      * </pre>
3143      *
3144      * <code>.google.cloud.aiplatform.v1.Model model_to_upload = 7;</code>
3145      *
3146      * @return The modelToUpload.
3147      */
getModelToUpload()3148     public com.google.cloud.aiplatform.v1.Model getModelToUpload() {
3149       if (modelToUploadBuilder_ == null) {
3150         return modelToUpload_ == null
3151             ? com.google.cloud.aiplatform.v1.Model.getDefaultInstance()
3152             : modelToUpload_;
3153       } else {
3154         return modelToUploadBuilder_.getMessage();
3155       }
3156     }
3157     /**
3158      *
3159      *
3160      * <pre>
3161      * Describes the Model that may be uploaded (via
3162      * [ModelService.UploadModel][google.cloud.aiplatform.v1.ModelService.UploadModel])
3163      * by this TrainingPipeline. The TrainingPipeline's
3164      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
3165      * should make clear whether this Model description should be populated, and
3166      * if there are any special requirements regarding how it should be filled. If
3167      * nothing is mentioned in the
3168      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
3169      * then it should be assumed that this field should not be filled and the
3170      * training task either uploads the Model without a need of this information,
3171      * or that training task does not support uploading a Model as part of the
3172      * pipeline. When the Pipeline's state becomes `PIPELINE_STATE_SUCCEEDED` and
3173      * the trained Model had been uploaded into Vertex AI, then the
3174      * model_to_upload's resource [name][google.cloud.aiplatform.v1.Model.name] is
3175      * populated. The Model is always uploaded into the Project and Location in
3176      * which this pipeline is.
3177      * </pre>
3178      *
3179      * <code>.google.cloud.aiplatform.v1.Model model_to_upload = 7;</code>
3180      */
setModelToUpload(com.google.cloud.aiplatform.v1.Model value)3181     public Builder setModelToUpload(com.google.cloud.aiplatform.v1.Model value) {
3182       if (modelToUploadBuilder_ == null) {
3183         if (value == null) {
3184           throw new NullPointerException();
3185         }
3186         modelToUpload_ = value;
3187       } else {
3188         modelToUploadBuilder_.setMessage(value);
3189       }
3190       bitField0_ |= 0x00000040;
3191       onChanged();
3192       return this;
3193     }
3194     /**
3195      *
3196      *
3197      * <pre>
3198      * Describes the Model that may be uploaded (via
3199      * [ModelService.UploadModel][google.cloud.aiplatform.v1.ModelService.UploadModel])
3200      * by this TrainingPipeline. The TrainingPipeline's
3201      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
3202      * should make clear whether this Model description should be populated, and
3203      * if there are any special requirements regarding how it should be filled. If
3204      * nothing is mentioned in the
3205      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
3206      * then it should be assumed that this field should not be filled and the
3207      * training task either uploads the Model without a need of this information,
3208      * or that training task does not support uploading a Model as part of the
3209      * pipeline. When the Pipeline's state becomes `PIPELINE_STATE_SUCCEEDED` and
3210      * the trained Model had been uploaded into Vertex AI, then the
3211      * model_to_upload's resource [name][google.cloud.aiplatform.v1.Model.name] is
3212      * populated. The Model is always uploaded into the Project and Location in
3213      * which this pipeline is.
3214      * </pre>
3215      *
3216      * <code>.google.cloud.aiplatform.v1.Model model_to_upload = 7;</code>
3217      */
setModelToUpload(com.google.cloud.aiplatform.v1.Model.Builder builderForValue)3218     public Builder setModelToUpload(com.google.cloud.aiplatform.v1.Model.Builder builderForValue) {
3219       if (modelToUploadBuilder_ == null) {
3220         modelToUpload_ = builderForValue.build();
3221       } else {
3222         modelToUploadBuilder_.setMessage(builderForValue.build());
3223       }
3224       bitField0_ |= 0x00000040;
3225       onChanged();
3226       return this;
3227     }
3228     /**
3229      *
3230      *
3231      * <pre>
3232      * Describes the Model that may be uploaded (via
3233      * [ModelService.UploadModel][google.cloud.aiplatform.v1.ModelService.UploadModel])
3234      * by this TrainingPipeline. The TrainingPipeline's
3235      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
3236      * should make clear whether this Model description should be populated, and
3237      * if there are any special requirements regarding how it should be filled. If
3238      * nothing is mentioned in the
3239      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
3240      * then it should be assumed that this field should not be filled and the
3241      * training task either uploads the Model without a need of this information,
3242      * or that training task does not support uploading a Model as part of the
3243      * pipeline. When the Pipeline's state becomes `PIPELINE_STATE_SUCCEEDED` and
3244      * the trained Model had been uploaded into Vertex AI, then the
3245      * model_to_upload's resource [name][google.cloud.aiplatform.v1.Model.name] is
3246      * populated. The Model is always uploaded into the Project and Location in
3247      * which this pipeline is.
3248      * </pre>
3249      *
3250      * <code>.google.cloud.aiplatform.v1.Model model_to_upload = 7;</code>
3251      */
mergeModelToUpload(com.google.cloud.aiplatform.v1.Model value)3252     public Builder mergeModelToUpload(com.google.cloud.aiplatform.v1.Model value) {
3253       if (modelToUploadBuilder_ == null) {
3254         if (((bitField0_ & 0x00000040) != 0)
3255             && modelToUpload_ != null
3256             && modelToUpload_ != com.google.cloud.aiplatform.v1.Model.getDefaultInstance()) {
3257           getModelToUploadBuilder().mergeFrom(value);
3258         } else {
3259           modelToUpload_ = value;
3260         }
3261       } else {
3262         modelToUploadBuilder_.mergeFrom(value);
3263       }
3264       bitField0_ |= 0x00000040;
3265       onChanged();
3266       return this;
3267     }
3268     /**
3269      *
3270      *
3271      * <pre>
3272      * Describes the Model that may be uploaded (via
3273      * [ModelService.UploadModel][google.cloud.aiplatform.v1.ModelService.UploadModel])
3274      * by this TrainingPipeline. The TrainingPipeline's
3275      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
3276      * should make clear whether this Model description should be populated, and
3277      * if there are any special requirements regarding how it should be filled. If
3278      * nothing is mentioned in the
3279      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
3280      * then it should be assumed that this field should not be filled and the
3281      * training task either uploads the Model without a need of this information,
3282      * or that training task does not support uploading a Model as part of the
3283      * pipeline. When the Pipeline's state becomes `PIPELINE_STATE_SUCCEEDED` and
3284      * the trained Model had been uploaded into Vertex AI, then the
3285      * model_to_upload's resource [name][google.cloud.aiplatform.v1.Model.name] is
3286      * populated. The Model is always uploaded into the Project and Location in
3287      * which this pipeline is.
3288      * </pre>
3289      *
3290      * <code>.google.cloud.aiplatform.v1.Model model_to_upload = 7;</code>
3291      */
clearModelToUpload()3292     public Builder clearModelToUpload() {
3293       bitField0_ = (bitField0_ & ~0x00000040);
3294       modelToUpload_ = null;
3295       if (modelToUploadBuilder_ != null) {
3296         modelToUploadBuilder_.dispose();
3297         modelToUploadBuilder_ = null;
3298       }
3299       onChanged();
3300       return this;
3301     }
3302     /**
3303      *
3304      *
3305      * <pre>
3306      * Describes the Model that may be uploaded (via
3307      * [ModelService.UploadModel][google.cloud.aiplatform.v1.ModelService.UploadModel])
3308      * by this TrainingPipeline. The TrainingPipeline's
3309      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
3310      * should make clear whether this Model description should be populated, and
3311      * if there are any special requirements regarding how it should be filled. If
3312      * nothing is mentioned in the
3313      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
3314      * then it should be assumed that this field should not be filled and the
3315      * training task either uploads the Model without a need of this information,
3316      * or that training task does not support uploading a Model as part of the
3317      * pipeline. When the Pipeline's state becomes `PIPELINE_STATE_SUCCEEDED` and
3318      * the trained Model had been uploaded into Vertex AI, then the
3319      * model_to_upload's resource [name][google.cloud.aiplatform.v1.Model.name] is
3320      * populated. The Model is always uploaded into the Project and Location in
3321      * which this pipeline is.
3322      * </pre>
3323      *
3324      * <code>.google.cloud.aiplatform.v1.Model model_to_upload = 7;</code>
3325      */
getModelToUploadBuilder()3326     public com.google.cloud.aiplatform.v1.Model.Builder getModelToUploadBuilder() {
3327       bitField0_ |= 0x00000040;
3328       onChanged();
3329       return getModelToUploadFieldBuilder().getBuilder();
3330     }
3331     /**
3332      *
3333      *
3334      * <pre>
3335      * Describes the Model that may be uploaded (via
3336      * [ModelService.UploadModel][google.cloud.aiplatform.v1.ModelService.UploadModel])
3337      * by this TrainingPipeline. The TrainingPipeline's
3338      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
3339      * should make clear whether this Model description should be populated, and
3340      * if there are any special requirements regarding how it should be filled. If
3341      * nothing is mentioned in the
3342      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
3343      * then it should be assumed that this field should not be filled and the
3344      * training task either uploads the Model without a need of this information,
3345      * or that training task does not support uploading a Model as part of the
3346      * pipeline. When the Pipeline's state becomes `PIPELINE_STATE_SUCCEEDED` and
3347      * the trained Model had been uploaded into Vertex AI, then the
3348      * model_to_upload's resource [name][google.cloud.aiplatform.v1.Model.name] is
3349      * populated. The Model is always uploaded into the Project and Location in
3350      * which this pipeline is.
3351      * </pre>
3352      *
3353      * <code>.google.cloud.aiplatform.v1.Model model_to_upload = 7;</code>
3354      */
getModelToUploadOrBuilder()3355     public com.google.cloud.aiplatform.v1.ModelOrBuilder getModelToUploadOrBuilder() {
3356       if (modelToUploadBuilder_ != null) {
3357         return modelToUploadBuilder_.getMessageOrBuilder();
3358       } else {
3359         return modelToUpload_ == null
3360             ? com.google.cloud.aiplatform.v1.Model.getDefaultInstance()
3361             : modelToUpload_;
3362       }
3363     }
3364     /**
3365      *
3366      *
3367      * <pre>
3368      * Describes the Model that may be uploaded (via
3369      * [ModelService.UploadModel][google.cloud.aiplatform.v1.ModelService.UploadModel])
3370      * by this TrainingPipeline. The TrainingPipeline's
3371      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition]
3372      * should make clear whether this Model description should be populated, and
3373      * if there are any special requirements regarding how it should be filled. If
3374      * nothing is mentioned in the
3375      * [training_task_definition][google.cloud.aiplatform.v1.TrainingPipeline.training_task_definition],
3376      * then it should be assumed that this field should not be filled and the
3377      * training task either uploads the Model without a need of this information,
3378      * or that training task does not support uploading a Model as part of the
3379      * pipeline. When the Pipeline's state becomes `PIPELINE_STATE_SUCCEEDED` and
3380      * the trained Model had been uploaded into Vertex AI, then the
3381      * model_to_upload's resource [name][google.cloud.aiplatform.v1.Model.name] is
3382      * populated. The Model is always uploaded into the Project and Location in
3383      * which this pipeline is.
3384      * </pre>
3385      *
3386      * <code>.google.cloud.aiplatform.v1.Model model_to_upload = 7;</code>
3387      */
3388     private com.google.protobuf.SingleFieldBuilderV3<
3389             com.google.cloud.aiplatform.v1.Model,
3390             com.google.cloud.aiplatform.v1.Model.Builder,
3391             com.google.cloud.aiplatform.v1.ModelOrBuilder>
getModelToUploadFieldBuilder()3392         getModelToUploadFieldBuilder() {
3393       if (modelToUploadBuilder_ == null) {
3394         modelToUploadBuilder_ =
3395             new com.google.protobuf.SingleFieldBuilderV3<
3396                 com.google.cloud.aiplatform.v1.Model,
3397                 com.google.cloud.aiplatform.v1.Model.Builder,
3398                 com.google.cloud.aiplatform.v1.ModelOrBuilder>(
3399                 getModelToUpload(), getParentForChildren(), isClean());
3400         modelToUpload_ = null;
3401       }
3402       return modelToUploadBuilder_;
3403     }
3404 
3405     private java.lang.Object modelId_ = "";
3406     /**
3407      *
3408      *
3409      * <pre>
3410      * Optional. The ID to use for the uploaded Model, which will become the final
3411      * component of the model resource name.
3412      * This value may be up to 63 characters, and valid characters are
3413      * `[a-z0-9_-]`. The first character cannot be a number or hyphen.
3414      * </pre>
3415      *
3416      * <code>string model_id = 22 [(.google.api.field_behavior) = OPTIONAL];</code>
3417      *
3418      * @return The modelId.
3419      */
getModelId()3420     public java.lang.String getModelId() {
3421       java.lang.Object ref = modelId_;
3422       if (!(ref instanceof java.lang.String)) {
3423         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
3424         java.lang.String s = bs.toStringUtf8();
3425         modelId_ = s;
3426         return s;
3427       } else {
3428         return (java.lang.String) ref;
3429       }
3430     }
3431     /**
3432      *
3433      *
3434      * <pre>
3435      * Optional. The ID to use for the uploaded Model, which will become the final
3436      * component of the model resource name.
3437      * This value may be up to 63 characters, and valid characters are
3438      * `[a-z0-9_-]`. The first character cannot be a number or hyphen.
3439      * </pre>
3440      *
3441      * <code>string model_id = 22 [(.google.api.field_behavior) = OPTIONAL];</code>
3442      *
3443      * @return The bytes for modelId.
3444      */
getModelIdBytes()3445     public com.google.protobuf.ByteString getModelIdBytes() {
3446       java.lang.Object ref = modelId_;
3447       if (ref instanceof String) {
3448         com.google.protobuf.ByteString b =
3449             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
3450         modelId_ = b;
3451         return b;
3452       } else {
3453         return (com.google.protobuf.ByteString) ref;
3454       }
3455     }
3456     /**
3457      *
3458      *
3459      * <pre>
3460      * Optional. The ID to use for the uploaded Model, which will become the final
3461      * component of the model resource name.
3462      * This value may be up to 63 characters, and valid characters are
3463      * `[a-z0-9_-]`. The first character cannot be a number or hyphen.
3464      * </pre>
3465      *
3466      * <code>string model_id = 22 [(.google.api.field_behavior) = OPTIONAL];</code>
3467      *
3468      * @param value The modelId to set.
3469      * @return This builder for chaining.
3470      */
setModelId(java.lang.String value)3471     public Builder setModelId(java.lang.String value) {
3472       if (value == null) {
3473         throw new NullPointerException();
3474       }
3475       modelId_ = value;
3476       bitField0_ |= 0x00000080;
3477       onChanged();
3478       return this;
3479     }
3480     /**
3481      *
3482      *
3483      * <pre>
3484      * Optional. The ID to use for the uploaded Model, which will become the final
3485      * component of the model resource name.
3486      * This value may be up to 63 characters, and valid characters are
3487      * `[a-z0-9_-]`. The first character cannot be a number or hyphen.
3488      * </pre>
3489      *
3490      * <code>string model_id = 22 [(.google.api.field_behavior) = OPTIONAL];</code>
3491      *
3492      * @return This builder for chaining.
3493      */
clearModelId()3494     public Builder clearModelId() {
3495       modelId_ = getDefaultInstance().getModelId();
3496       bitField0_ = (bitField0_ & ~0x00000080);
3497       onChanged();
3498       return this;
3499     }
3500     /**
3501      *
3502      *
3503      * <pre>
3504      * Optional. The ID to use for the uploaded Model, which will become the final
3505      * component of the model resource name.
3506      * This value may be up to 63 characters, and valid characters are
3507      * `[a-z0-9_-]`. The first character cannot be a number or hyphen.
3508      * </pre>
3509      *
3510      * <code>string model_id = 22 [(.google.api.field_behavior) = OPTIONAL];</code>
3511      *
3512      * @param value The bytes for modelId to set.
3513      * @return This builder for chaining.
3514      */
setModelIdBytes(com.google.protobuf.ByteString value)3515     public Builder setModelIdBytes(com.google.protobuf.ByteString value) {
3516       if (value == null) {
3517         throw new NullPointerException();
3518       }
3519       checkByteStringIsUtf8(value);
3520       modelId_ = value;
3521       bitField0_ |= 0x00000080;
3522       onChanged();
3523       return this;
3524     }
3525 
3526     private java.lang.Object parentModel_ = "";
3527     /**
3528      *
3529      *
3530      * <pre>
3531      * Optional. When specify this field, the `model_to_upload` will not be
3532      * uploaded as a new model, instead, it will become a new version of this
3533      * `parent_model`.
3534      * </pre>
3535      *
3536      * <code>string parent_model = 21 [(.google.api.field_behavior) = OPTIONAL];</code>
3537      *
3538      * @return The parentModel.
3539      */
getParentModel()3540     public java.lang.String getParentModel() {
3541       java.lang.Object ref = parentModel_;
3542       if (!(ref instanceof java.lang.String)) {
3543         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
3544         java.lang.String s = bs.toStringUtf8();
3545         parentModel_ = s;
3546         return s;
3547       } else {
3548         return (java.lang.String) ref;
3549       }
3550     }
3551     /**
3552      *
3553      *
3554      * <pre>
3555      * Optional. When specify this field, the `model_to_upload` will not be
3556      * uploaded as a new model, instead, it will become a new version of this
3557      * `parent_model`.
3558      * </pre>
3559      *
3560      * <code>string parent_model = 21 [(.google.api.field_behavior) = OPTIONAL];</code>
3561      *
3562      * @return The bytes for parentModel.
3563      */
getParentModelBytes()3564     public com.google.protobuf.ByteString getParentModelBytes() {
3565       java.lang.Object ref = parentModel_;
3566       if (ref instanceof String) {
3567         com.google.protobuf.ByteString b =
3568             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
3569         parentModel_ = b;
3570         return b;
3571       } else {
3572         return (com.google.protobuf.ByteString) ref;
3573       }
3574     }
3575     /**
3576      *
3577      *
3578      * <pre>
3579      * Optional. When specify this field, the `model_to_upload` will not be
3580      * uploaded as a new model, instead, it will become a new version of this
3581      * `parent_model`.
3582      * </pre>
3583      *
3584      * <code>string parent_model = 21 [(.google.api.field_behavior) = OPTIONAL];</code>
3585      *
3586      * @param value The parentModel to set.
3587      * @return This builder for chaining.
3588      */
setParentModel(java.lang.String value)3589     public Builder setParentModel(java.lang.String value) {
3590       if (value == null) {
3591         throw new NullPointerException();
3592       }
3593       parentModel_ = value;
3594       bitField0_ |= 0x00000100;
3595       onChanged();
3596       return this;
3597     }
3598     /**
3599      *
3600      *
3601      * <pre>
3602      * Optional. When specify this field, the `model_to_upload` will not be
3603      * uploaded as a new model, instead, it will become a new version of this
3604      * `parent_model`.
3605      * </pre>
3606      *
3607      * <code>string parent_model = 21 [(.google.api.field_behavior) = OPTIONAL];</code>
3608      *
3609      * @return This builder for chaining.
3610      */
clearParentModel()3611     public Builder clearParentModel() {
3612       parentModel_ = getDefaultInstance().getParentModel();
3613       bitField0_ = (bitField0_ & ~0x00000100);
3614       onChanged();
3615       return this;
3616     }
3617     /**
3618      *
3619      *
3620      * <pre>
3621      * Optional. When specify this field, the `model_to_upload` will not be
3622      * uploaded as a new model, instead, it will become a new version of this
3623      * `parent_model`.
3624      * </pre>
3625      *
3626      * <code>string parent_model = 21 [(.google.api.field_behavior) = OPTIONAL];</code>
3627      *
3628      * @param value The bytes for parentModel to set.
3629      * @return This builder for chaining.
3630      */
setParentModelBytes(com.google.protobuf.ByteString value)3631     public Builder setParentModelBytes(com.google.protobuf.ByteString value) {
3632       if (value == null) {
3633         throw new NullPointerException();
3634       }
3635       checkByteStringIsUtf8(value);
3636       parentModel_ = value;
3637       bitField0_ |= 0x00000100;
3638       onChanged();
3639       return this;
3640     }
3641 
3642     private int state_ = 0;
3643     /**
3644      *
3645      *
3646      * <pre>
3647      * Output only. The detailed state of the pipeline.
3648      * </pre>
3649      *
3650      * <code>
3651      * .google.cloud.aiplatform.v1.PipelineState state = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];
3652      * </code>
3653      *
3654      * @return The enum numeric value on the wire for state.
3655      */
3656     @java.lang.Override
getStateValue()3657     public int getStateValue() {
3658       return state_;
3659     }
3660     /**
3661      *
3662      *
3663      * <pre>
3664      * Output only. The detailed state of the pipeline.
3665      * </pre>
3666      *
3667      * <code>
3668      * .google.cloud.aiplatform.v1.PipelineState state = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];
3669      * </code>
3670      *
3671      * @param value The enum numeric value on the wire for state to set.
3672      * @return This builder for chaining.
3673      */
setStateValue(int value)3674     public Builder setStateValue(int value) {
3675       state_ = value;
3676       bitField0_ |= 0x00000200;
3677       onChanged();
3678       return this;
3679     }
3680     /**
3681      *
3682      *
3683      * <pre>
3684      * Output only. The detailed state of the pipeline.
3685      * </pre>
3686      *
3687      * <code>
3688      * .google.cloud.aiplatform.v1.PipelineState state = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];
3689      * </code>
3690      *
3691      * @return The state.
3692      */
3693     @java.lang.Override
getState()3694     public com.google.cloud.aiplatform.v1.PipelineState getState() {
3695       com.google.cloud.aiplatform.v1.PipelineState result =
3696           com.google.cloud.aiplatform.v1.PipelineState.forNumber(state_);
3697       return result == null ? com.google.cloud.aiplatform.v1.PipelineState.UNRECOGNIZED : result;
3698     }
3699     /**
3700      *
3701      *
3702      * <pre>
3703      * Output only. The detailed state of the pipeline.
3704      * </pre>
3705      *
3706      * <code>
3707      * .google.cloud.aiplatform.v1.PipelineState state = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];
3708      * </code>
3709      *
3710      * @param value The state to set.
3711      * @return This builder for chaining.
3712      */
setState(com.google.cloud.aiplatform.v1.PipelineState value)3713     public Builder setState(com.google.cloud.aiplatform.v1.PipelineState value) {
3714       if (value == null) {
3715         throw new NullPointerException();
3716       }
3717       bitField0_ |= 0x00000200;
3718       state_ = value.getNumber();
3719       onChanged();
3720       return this;
3721     }
3722     /**
3723      *
3724      *
3725      * <pre>
3726      * Output only. The detailed state of the pipeline.
3727      * </pre>
3728      *
3729      * <code>
3730      * .google.cloud.aiplatform.v1.PipelineState state = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];
3731      * </code>
3732      *
3733      * @return This builder for chaining.
3734      */
clearState()3735     public Builder clearState() {
3736       bitField0_ = (bitField0_ & ~0x00000200);
3737       state_ = 0;
3738       onChanged();
3739       return this;
3740     }
3741 
3742     private com.google.rpc.Status error_;
3743     private com.google.protobuf.SingleFieldBuilderV3<
3744             com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder>
3745         errorBuilder_;
3746     /**
3747      *
3748      *
3749      * <pre>
3750      * Output only. Only populated when the pipeline's state is
3751      * `PIPELINE_STATE_FAILED` or `PIPELINE_STATE_CANCELLED`.
3752      * </pre>
3753      *
3754      * <code>.google.rpc.Status error = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
3755      *
3756      * @return Whether the error field is set.
3757      */
hasError()3758     public boolean hasError() {
3759       return ((bitField0_ & 0x00000400) != 0);
3760     }
3761     /**
3762      *
3763      *
3764      * <pre>
3765      * Output only. Only populated when the pipeline's state is
3766      * `PIPELINE_STATE_FAILED` or `PIPELINE_STATE_CANCELLED`.
3767      * </pre>
3768      *
3769      * <code>.google.rpc.Status error = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
3770      *
3771      * @return The error.
3772      */
getError()3773     public com.google.rpc.Status getError() {
3774       if (errorBuilder_ == null) {
3775         return error_ == null ? com.google.rpc.Status.getDefaultInstance() : error_;
3776       } else {
3777         return errorBuilder_.getMessage();
3778       }
3779     }
3780     /**
3781      *
3782      *
3783      * <pre>
3784      * Output only. Only populated when the pipeline's state is
3785      * `PIPELINE_STATE_FAILED` or `PIPELINE_STATE_CANCELLED`.
3786      * </pre>
3787      *
3788      * <code>.google.rpc.Status error = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
3789      */
setError(com.google.rpc.Status value)3790     public Builder setError(com.google.rpc.Status value) {
3791       if (errorBuilder_ == null) {
3792         if (value == null) {
3793           throw new NullPointerException();
3794         }
3795         error_ = value;
3796       } else {
3797         errorBuilder_.setMessage(value);
3798       }
3799       bitField0_ |= 0x00000400;
3800       onChanged();
3801       return this;
3802     }
3803     /**
3804      *
3805      *
3806      * <pre>
3807      * Output only. Only populated when the pipeline's state is
3808      * `PIPELINE_STATE_FAILED` or `PIPELINE_STATE_CANCELLED`.
3809      * </pre>
3810      *
3811      * <code>.google.rpc.Status error = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
3812      */
setError(com.google.rpc.Status.Builder builderForValue)3813     public Builder setError(com.google.rpc.Status.Builder builderForValue) {
3814       if (errorBuilder_ == null) {
3815         error_ = builderForValue.build();
3816       } else {
3817         errorBuilder_.setMessage(builderForValue.build());
3818       }
3819       bitField0_ |= 0x00000400;
3820       onChanged();
3821       return this;
3822     }
3823     /**
3824      *
3825      *
3826      * <pre>
3827      * Output only. Only populated when the pipeline's state is
3828      * `PIPELINE_STATE_FAILED` or `PIPELINE_STATE_CANCELLED`.
3829      * </pre>
3830      *
3831      * <code>.google.rpc.Status error = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
3832      */
mergeError(com.google.rpc.Status value)3833     public Builder mergeError(com.google.rpc.Status value) {
3834       if (errorBuilder_ == null) {
3835         if (((bitField0_ & 0x00000400) != 0)
3836             && error_ != null
3837             && error_ != com.google.rpc.Status.getDefaultInstance()) {
3838           getErrorBuilder().mergeFrom(value);
3839         } else {
3840           error_ = value;
3841         }
3842       } else {
3843         errorBuilder_.mergeFrom(value);
3844       }
3845       bitField0_ |= 0x00000400;
3846       onChanged();
3847       return this;
3848     }
3849     /**
3850      *
3851      *
3852      * <pre>
3853      * Output only. Only populated when the pipeline's state is
3854      * `PIPELINE_STATE_FAILED` or `PIPELINE_STATE_CANCELLED`.
3855      * </pre>
3856      *
3857      * <code>.google.rpc.Status error = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
3858      */
clearError()3859     public Builder clearError() {
3860       bitField0_ = (bitField0_ & ~0x00000400);
3861       error_ = null;
3862       if (errorBuilder_ != null) {
3863         errorBuilder_.dispose();
3864         errorBuilder_ = null;
3865       }
3866       onChanged();
3867       return this;
3868     }
3869     /**
3870      *
3871      *
3872      * <pre>
3873      * Output only. Only populated when the pipeline's state is
3874      * `PIPELINE_STATE_FAILED` or `PIPELINE_STATE_CANCELLED`.
3875      * </pre>
3876      *
3877      * <code>.google.rpc.Status error = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
3878      */
getErrorBuilder()3879     public com.google.rpc.Status.Builder getErrorBuilder() {
3880       bitField0_ |= 0x00000400;
3881       onChanged();
3882       return getErrorFieldBuilder().getBuilder();
3883     }
3884     /**
3885      *
3886      *
3887      * <pre>
3888      * Output only. Only populated when the pipeline's state is
3889      * `PIPELINE_STATE_FAILED` or `PIPELINE_STATE_CANCELLED`.
3890      * </pre>
3891      *
3892      * <code>.google.rpc.Status error = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
3893      */
getErrorOrBuilder()3894     public com.google.rpc.StatusOrBuilder getErrorOrBuilder() {
3895       if (errorBuilder_ != null) {
3896         return errorBuilder_.getMessageOrBuilder();
3897       } else {
3898         return error_ == null ? com.google.rpc.Status.getDefaultInstance() : error_;
3899       }
3900     }
3901     /**
3902      *
3903      *
3904      * <pre>
3905      * Output only. Only populated when the pipeline's state is
3906      * `PIPELINE_STATE_FAILED` or `PIPELINE_STATE_CANCELLED`.
3907      * </pre>
3908      *
3909      * <code>.google.rpc.Status error = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
3910      */
3911     private com.google.protobuf.SingleFieldBuilderV3<
3912             com.google.rpc.Status, com.google.rpc.Status.Builder, com.google.rpc.StatusOrBuilder>
getErrorFieldBuilder()3913         getErrorFieldBuilder() {
3914       if (errorBuilder_ == null) {
3915         errorBuilder_ =
3916             new com.google.protobuf.SingleFieldBuilderV3<
3917                 com.google.rpc.Status,
3918                 com.google.rpc.Status.Builder,
3919                 com.google.rpc.StatusOrBuilder>(getError(), getParentForChildren(), isClean());
3920         error_ = null;
3921       }
3922       return errorBuilder_;
3923     }
3924 
3925     private com.google.protobuf.Timestamp createTime_;
3926     private com.google.protobuf.SingleFieldBuilderV3<
3927             com.google.protobuf.Timestamp,
3928             com.google.protobuf.Timestamp.Builder,
3929             com.google.protobuf.TimestampOrBuilder>
3930         createTimeBuilder_;
3931     /**
3932      *
3933      *
3934      * <pre>
3935      * Output only. Time when the TrainingPipeline was created.
3936      * </pre>
3937      *
3938      * <code>
3939      * .google.protobuf.Timestamp create_time = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
3940      * </code>
3941      *
3942      * @return Whether the createTime field is set.
3943      */
hasCreateTime()3944     public boolean hasCreateTime() {
3945       return ((bitField0_ & 0x00000800) != 0);
3946     }
3947     /**
3948      *
3949      *
3950      * <pre>
3951      * Output only. Time when the TrainingPipeline was created.
3952      * </pre>
3953      *
3954      * <code>
3955      * .google.protobuf.Timestamp create_time = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
3956      * </code>
3957      *
3958      * @return The createTime.
3959      */
getCreateTime()3960     public com.google.protobuf.Timestamp getCreateTime() {
3961       if (createTimeBuilder_ == null) {
3962         return createTime_ == null
3963             ? com.google.protobuf.Timestamp.getDefaultInstance()
3964             : createTime_;
3965       } else {
3966         return createTimeBuilder_.getMessage();
3967       }
3968     }
3969     /**
3970      *
3971      *
3972      * <pre>
3973      * Output only. Time when the TrainingPipeline was created.
3974      * </pre>
3975      *
3976      * <code>
3977      * .google.protobuf.Timestamp create_time = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
3978      * </code>
3979      */
setCreateTime(com.google.protobuf.Timestamp value)3980     public Builder setCreateTime(com.google.protobuf.Timestamp value) {
3981       if (createTimeBuilder_ == null) {
3982         if (value == null) {
3983           throw new NullPointerException();
3984         }
3985         createTime_ = value;
3986       } else {
3987         createTimeBuilder_.setMessage(value);
3988       }
3989       bitField0_ |= 0x00000800;
3990       onChanged();
3991       return this;
3992     }
3993     /**
3994      *
3995      *
3996      * <pre>
3997      * Output only. Time when the TrainingPipeline was created.
3998      * </pre>
3999      *
4000      * <code>
4001      * .google.protobuf.Timestamp create_time = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
4002      * </code>
4003      */
setCreateTime(com.google.protobuf.Timestamp.Builder builderForValue)4004     public Builder setCreateTime(com.google.protobuf.Timestamp.Builder builderForValue) {
4005       if (createTimeBuilder_ == null) {
4006         createTime_ = builderForValue.build();
4007       } else {
4008         createTimeBuilder_.setMessage(builderForValue.build());
4009       }
4010       bitField0_ |= 0x00000800;
4011       onChanged();
4012       return this;
4013     }
4014     /**
4015      *
4016      *
4017      * <pre>
4018      * Output only. Time when the TrainingPipeline was created.
4019      * </pre>
4020      *
4021      * <code>
4022      * .google.protobuf.Timestamp create_time = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
4023      * </code>
4024      */
mergeCreateTime(com.google.protobuf.Timestamp value)4025     public Builder mergeCreateTime(com.google.protobuf.Timestamp value) {
4026       if (createTimeBuilder_ == null) {
4027         if (((bitField0_ & 0x00000800) != 0)
4028             && createTime_ != null
4029             && createTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) {
4030           getCreateTimeBuilder().mergeFrom(value);
4031         } else {
4032           createTime_ = value;
4033         }
4034       } else {
4035         createTimeBuilder_.mergeFrom(value);
4036       }
4037       bitField0_ |= 0x00000800;
4038       onChanged();
4039       return this;
4040     }
4041     /**
4042      *
4043      *
4044      * <pre>
4045      * Output only. Time when the TrainingPipeline was created.
4046      * </pre>
4047      *
4048      * <code>
4049      * .google.protobuf.Timestamp create_time = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
4050      * </code>
4051      */
clearCreateTime()4052     public Builder clearCreateTime() {
4053       bitField0_ = (bitField0_ & ~0x00000800);
4054       createTime_ = null;
4055       if (createTimeBuilder_ != null) {
4056         createTimeBuilder_.dispose();
4057         createTimeBuilder_ = null;
4058       }
4059       onChanged();
4060       return this;
4061     }
4062     /**
4063      *
4064      *
4065      * <pre>
4066      * Output only. Time when the TrainingPipeline was created.
4067      * </pre>
4068      *
4069      * <code>
4070      * .google.protobuf.Timestamp create_time = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
4071      * </code>
4072      */
getCreateTimeBuilder()4073     public com.google.protobuf.Timestamp.Builder getCreateTimeBuilder() {
4074       bitField0_ |= 0x00000800;
4075       onChanged();
4076       return getCreateTimeFieldBuilder().getBuilder();
4077     }
4078     /**
4079      *
4080      *
4081      * <pre>
4082      * Output only. Time when the TrainingPipeline was created.
4083      * </pre>
4084      *
4085      * <code>
4086      * .google.protobuf.Timestamp create_time = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
4087      * </code>
4088      */
getCreateTimeOrBuilder()4089     public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() {
4090       if (createTimeBuilder_ != null) {
4091         return createTimeBuilder_.getMessageOrBuilder();
4092       } else {
4093         return createTime_ == null
4094             ? com.google.protobuf.Timestamp.getDefaultInstance()
4095             : createTime_;
4096       }
4097     }
4098     /**
4099      *
4100      *
4101      * <pre>
4102      * Output only. Time when the TrainingPipeline was created.
4103      * </pre>
4104      *
4105      * <code>
4106      * .google.protobuf.Timestamp create_time = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
4107      * </code>
4108      */
4109     private com.google.protobuf.SingleFieldBuilderV3<
4110             com.google.protobuf.Timestamp,
4111             com.google.protobuf.Timestamp.Builder,
4112             com.google.protobuf.TimestampOrBuilder>
getCreateTimeFieldBuilder()4113         getCreateTimeFieldBuilder() {
4114       if (createTimeBuilder_ == null) {
4115         createTimeBuilder_ =
4116             new com.google.protobuf.SingleFieldBuilderV3<
4117                 com.google.protobuf.Timestamp,
4118                 com.google.protobuf.Timestamp.Builder,
4119                 com.google.protobuf.TimestampOrBuilder>(
4120                 getCreateTime(), getParentForChildren(), isClean());
4121         createTime_ = null;
4122       }
4123       return createTimeBuilder_;
4124     }
4125 
4126     private com.google.protobuf.Timestamp startTime_;
4127     private com.google.protobuf.SingleFieldBuilderV3<
4128             com.google.protobuf.Timestamp,
4129             com.google.protobuf.Timestamp.Builder,
4130             com.google.protobuf.TimestampOrBuilder>
4131         startTimeBuilder_;
4132     /**
4133      *
4134      *
4135      * <pre>
4136      * Output only. Time when the TrainingPipeline for the first time entered the
4137      * `PIPELINE_STATE_RUNNING` state.
4138      * </pre>
4139      *
4140      * <code>
4141      * .google.protobuf.Timestamp start_time = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];
4142      * </code>
4143      *
4144      * @return Whether the startTime field is set.
4145      */
hasStartTime()4146     public boolean hasStartTime() {
4147       return ((bitField0_ & 0x00001000) != 0);
4148     }
4149     /**
4150      *
4151      *
4152      * <pre>
4153      * Output only. Time when the TrainingPipeline for the first time entered the
4154      * `PIPELINE_STATE_RUNNING` state.
4155      * </pre>
4156      *
4157      * <code>
4158      * .google.protobuf.Timestamp start_time = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];
4159      * </code>
4160      *
4161      * @return The startTime.
4162      */
getStartTime()4163     public com.google.protobuf.Timestamp getStartTime() {
4164       if (startTimeBuilder_ == null) {
4165         return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_;
4166       } else {
4167         return startTimeBuilder_.getMessage();
4168       }
4169     }
4170     /**
4171      *
4172      *
4173      * <pre>
4174      * Output only. Time when the TrainingPipeline for the first time entered the
4175      * `PIPELINE_STATE_RUNNING` state.
4176      * </pre>
4177      *
4178      * <code>
4179      * .google.protobuf.Timestamp start_time = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];
4180      * </code>
4181      */
setStartTime(com.google.protobuf.Timestamp value)4182     public Builder setStartTime(com.google.protobuf.Timestamp value) {
4183       if (startTimeBuilder_ == null) {
4184         if (value == null) {
4185           throw new NullPointerException();
4186         }
4187         startTime_ = value;
4188       } else {
4189         startTimeBuilder_.setMessage(value);
4190       }
4191       bitField0_ |= 0x00001000;
4192       onChanged();
4193       return this;
4194     }
4195     /**
4196      *
4197      *
4198      * <pre>
4199      * Output only. Time when the TrainingPipeline for the first time entered the
4200      * `PIPELINE_STATE_RUNNING` state.
4201      * </pre>
4202      *
4203      * <code>
4204      * .google.protobuf.Timestamp start_time = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];
4205      * </code>
4206      */
setStartTime(com.google.protobuf.Timestamp.Builder builderForValue)4207     public Builder setStartTime(com.google.protobuf.Timestamp.Builder builderForValue) {
4208       if (startTimeBuilder_ == null) {
4209         startTime_ = builderForValue.build();
4210       } else {
4211         startTimeBuilder_.setMessage(builderForValue.build());
4212       }
4213       bitField0_ |= 0x00001000;
4214       onChanged();
4215       return this;
4216     }
4217     /**
4218      *
4219      *
4220      * <pre>
4221      * Output only. Time when the TrainingPipeline for the first time entered the
4222      * `PIPELINE_STATE_RUNNING` state.
4223      * </pre>
4224      *
4225      * <code>
4226      * .google.protobuf.Timestamp start_time = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];
4227      * </code>
4228      */
mergeStartTime(com.google.protobuf.Timestamp value)4229     public Builder mergeStartTime(com.google.protobuf.Timestamp value) {
4230       if (startTimeBuilder_ == null) {
4231         if (((bitField0_ & 0x00001000) != 0)
4232             && startTime_ != null
4233             && startTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) {
4234           getStartTimeBuilder().mergeFrom(value);
4235         } else {
4236           startTime_ = value;
4237         }
4238       } else {
4239         startTimeBuilder_.mergeFrom(value);
4240       }
4241       bitField0_ |= 0x00001000;
4242       onChanged();
4243       return this;
4244     }
4245     /**
4246      *
4247      *
4248      * <pre>
4249      * Output only. Time when the TrainingPipeline for the first time entered the
4250      * `PIPELINE_STATE_RUNNING` state.
4251      * </pre>
4252      *
4253      * <code>
4254      * .google.protobuf.Timestamp start_time = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];
4255      * </code>
4256      */
clearStartTime()4257     public Builder clearStartTime() {
4258       bitField0_ = (bitField0_ & ~0x00001000);
4259       startTime_ = null;
4260       if (startTimeBuilder_ != null) {
4261         startTimeBuilder_.dispose();
4262         startTimeBuilder_ = null;
4263       }
4264       onChanged();
4265       return this;
4266     }
4267     /**
4268      *
4269      *
4270      * <pre>
4271      * Output only. Time when the TrainingPipeline for the first time entered the
4272      * `PIPELINE_STATE_RUNNING` state.
4273      * </pre>
4274      *
4275      * <code>
4276      * .google.protobuf.Timestamp start_time = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];
4277      * </code>
4278      */
getStartTimeBuilder()4279     public com.google.protobuf.Timestamp.Builder getStartTimeBuilder() {
4280       bitField0_ |= 0x00001000;
4281       onChanged();
4282       return getStartTimeFieldBuilder().getBuilder();
4283     }
4284     /**
4285      *
4286      *
4287      * <pre>
4288      * Output only. Time when the TrainingPipeline for the first time entered the
4289      * `PIPELINE_STATE_RUNNING` state.
4290      * </pre>
4291      *
4292      * <code>
4293      * .google.protobuf.Timestamp start_time = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];
4294      * </code>
4295      */
getStartTimeOrBuilder()4296     public com.google.protobuf.TimestampOrBuilder getStartTimeOrBuilder() {
4297       if (startTimeBuilder_ != null) {
4298         return startTimeBuilder_.getMessageOrBuilder();
4299       } else {
4300         return startTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : startTime_;
4301       }
4302     }
4303     /**
4304      *
4305      *
4306      * <pre>
4307      * Output only. Time when the TrainingPipeline for the first time entered the
4308      * `PIPELINE_STATE_RUNNING` state.
4309      * </pre>
4310      *
4311      * <code>
4312      * .google.protobuf.Timestamp start_time = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];
4313      * </code>
4314      */
4315     private com.google.protobuf.SingleFieldBuilderV3<
4316             com.google.protobuf.Timestamp,
4317             com.google.protobuf.Timestamp.Builder,
4318             com.google.protobuf.TimestampOrBuilder>
getStartTimeFieldBuilder()4319         getStartTimeFieldBuilder() {
4320       if (startTimeBuilder_ == null) {
4321         startTimeBuilder_ =
4322             new com.google.protobuf.SingleFieldBuilderV3<
4323                 com.google.protobuf.Timestamp,
4324                 com.google.protobuf.Timestamp.Builder,
4325                 com.google.protobuf.TimestampOrBuilder>(
4326                 getStartTime(), getParentForChildren(), isClean());
4327         startTime_ = null;
4328       }
4329       return startTimeBuilder_;
4330     }
4331 
4332     private com.google.protobuf.Timestamp endTime_;
4333     private com.google.protobuf.SingleFieldBuilderV3<
4334             com.google.protobuf.Timestamp,
4335             com.google.protobuf.Timestamp.Builder,
4336             com.google.protobuf.TimestampOrBuilder>
4337         endTimeBuilder_;
4338     /**
4339      *
4340      *
4341      * <pre>
4342      * Output only. Time when the TrainingPipeline entered any of the following
4343      * states: `PIPELINE_STATE_SUCCEEDED`, `PIPELINE_STATE_FAILED`,
4344      * `PIPELINE_STATE_CANCELLED`.
4345      * </pre>
4346      *
4347      * <code>.google.protobuf.Timestamp end_time = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
4348      * </code>
4349      *
4350      * @return Whether the endTime field is set.
4351      */
hasEndTime()4352     public boolean hasEndTime() {
4353       return ((bitField0_ & 0x00002000) != 0);
4354     }
4355     /**
4356      *
4357      *
4358      * <pre>
4359      * Output only. Time when the TrainingPipeline entered any of the following
4360      * states: `PIPELINE_STATE_SUCCEEDED`, `PIPELINE_STATE_FAILED`,
4361      * `PIPELINE_STATE_CANCELLED`.
4362      * </pre>
4363      *
4364      * <code>.google.protobuf.Timestamp end_time = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
4365      * </code>
4366      *
4367      * @return The endTime.
4368      */
getEndTime()4369     public com.google.protobuf.Timestamp getEndTime() {
4370       if (endTimeBuilder_ == null) {
4371         return endTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : endTime_;
4372       } else {
4373         return endTimeBuilder_.getMessage();
4374       }
4375     }
4376     /**
4377      *
4378      *
4379      * <pre>
4380      * Output only. Time when the TrainingPipeline entered any of the following
4381      * states: `PIPELINE_STATE_SUCCEEDED`, `PIPELINE_STATE_FAILED`,
4382      * `PIPELINE_STATE_CANCELLED`.
4383      * </pre>
4384      *
4385      * <code>.google.protobuf.Timestamp end_time = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
4386      * </code>
4387      */
setEndTime(com.google.protobuf.Timestamp value)4388     public Builder setEndTime(com.google.protobuf.Timestamp value) {
4389       if (endTimeBuilder_ == null) {
4390         if (value == null) {
4391           throw new NullPointerException();
4392         }
4393         endTime_ = value;
4394       } else {
4395         endTimeBuilder_.setMessage(value);
4396       }
4397       bitField0_ |= 0x00002000;
4398       onChanged();
4399       return this;
4400     }
4401     /**
4402      *
4403      *
4404      * <pre>
4405      * Output only. Time when the TrainingPipeline entered any of the following
4406      * states: `PIPELINE_STATE_SUCCEEDED`, `PIPELINE_STATE_FAILED`,
4407      * `PIPELINE_STATE_CANCELLED`.
4408      * </pre>
4409      *
4410      * <code>.google.protobuf.Timestamp end_time = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
4411      * </code>
4412      */
setEndTime(com.google.protobuf.Timestamp.Builder builderForValue)4413     public Builder setEndTime(com.google.protobuf.Timestamp.Builder builderForValue) {
4414       if (endTimeBuilder_ == null) {
4415         endTime_ = builderForValue.build();
4416       } else {
4417         endTimeBuilder_.setMessage(builderForValue.build());
4418       }
4419       bitField0_ |= 0x00002000;
4420       onChanged();
4421       return this;
4422     }
4423     /**
4424      *
4425      *
4426      * <pre>
4427      * Output only. Time when the TrainingPipeline entered any of the following
4428      * states: `PIPELINE_STATE_SUCCEEDED`, `PIPELINE_STATE_FAILED`,
4429      * `PIPELINE_STATE_CANCELLED`.
4430      * </pre>
4431      *
4432      * <code>.google.protobuf.Timestamp end_time = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
4433      * </code>
4434      */
mergeEndTime(com.google.protobuf.Timestamp value)4435     public Builder mergeEndTime(com.google.protobuf.Timestamp value) {
4436       if (endTimeBuilder_ == null) {
4437         if (((bitField0_ & 0x00002000) != 0)
4438             && endTime_ != null
4439             && endTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) {
4440           getEndTimeBuilder().mergeFrom(value);
4441         } else {
4442           endTime_ = value;
4443         }
4444       } else {
4445         endTimeBuilder_.mergeFrom(value);
4446       }
4447       bitField0_ |= 0x00002000;
4448       onChanged();
4449       return this;
4450     }
4451     /**
4452      *
4453      *
4454      * <pre>
4455      * Output only. Time when the TrainingPipeline entered any of the following
4456      * states: `PIPELINE_STATE_SUCCEEDED`, `PIPELINE_STATE_FAILED`,
4457      * `PIPELINE_STATE_CANCELLED`.
4458      * </pre>
4459      *
4460      * <code>.google.protobuf.Timestamp end_time = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
4461      * </code>
4462      */
clearEndTime()4463     public Builder clearEndTime() {
4464       bitField0_ = (bitField0_ & ~0x00002000);
4465       endTime_ = null;
4466       if (endTimeBuilder_ != null) {
4467         endTimeBuilder_.dispose();
4468         endTimeBuilder_ = null;
4469       }
4470       onChanged();
4471       return this;
4472     }
4473     /**
4474      *
4475      *
4476      * <pre>
4477      * Output only. Time when the TrainingPipeline entered any of the following
4478      * states: `PIPELINE_STATE_SUCCEEDED`, `PIPELINE_STATE_FAILED`,
4479      * `PIPELINE_STATE_CANCELLED`.
4480      * </pre>
4481      *
4482      * <code>.google.protobuf.Timestamp end_time = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
4483      * </code>
4484      */
getEndTimeBuilder()4485     public com.google.protobuf.Timestamp.Builder getEndTimeBuilder() {
4486       bitField0_ |= 0x00002000;
4487       onChanged();
4488       return getEndTimeFieldBuilder().getBuilder();
4489     }
4490     /**
4491      *
4492      *
4493      * <pre>
4494      * Output only. Time when the TrainingPipeline entered any of the following
4495      * states: `PIPELINE_STATE_SUCCEEDED`, `PIPELINE_STATE_FAILED`,
4496      * `PIPELINE_STATE_CANCELLED`.
4497      * </pre>
4498      *
4499      * <code>.google.protobuf.Timestamp end_time = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
4500      * </code>
4501      */
getEndTimeOrBuilder()4502     public com.google.protobuf.TimestampOrBuilder getEndTimeOrBuilder() {
4503       if (endTimeBuilder_ != null) {
4504         return endTimeBuilder_.getMessageOrBuilder();
4505       } else {
4506         return endTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : endTime_;
4507       }
4508     }
4509     /**
4510      *
4511      *
4512      * <pre>
4513      * Output only. Time when the TrainingPipeline entered any of the following
4514      * states: `PIPELINE_STATE_SUCCEEDED`, `PIPELINE_STATE_FAILED`,
4515      * `PIPELINE_STATE_CANCELLED`.
4516      * </pre>
4517      *
4518      * <code>.google.protobuf.Timestamp end_time = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
4519      * </code>
4520      */
4521     private com.google.protobuf.SingleFieldBuilderV3<
4522             com.google.protobuf.Timestamp,
4523             com.google.protobuf.Timestamp.Builder,
4524             com.google.protobuf.TimestampOrBuilder>
getEndTimeFieldBuilder()4525         getEndTimeFieldBuilder() {
4526       if (endTimeBuilder_ == null) {
4527         endTimeBuilder_ =
4528             new com.google.protobuf.SingleFieldBuilderV3<
4529                 com.google.protobuf.Timestamp,
4530                 com.google.protobuf.Timestamp.Builder,
4531                 com.google.protobuf.TimestampOrBuilder>(
4532                 getEndTime(), getParentForChildren(), isClean());
4533         endTime_ = null;
4534       }
4535       return endTimeBuilder_;
4536     }
4537 
4538     private com.google.protobuf.Timestamp updateTime_;
4539     private com.google.protobuf.SingleFieldBuilderV3<
4540             com.google.protobuf.Timestamp,
4541             com.google.protobuf.Timestamp.Builder,
4542             com.google.protobuf.TimestampOrBuilder>
4543         updateTimeBuilder_;
4544     /**
4545      *
4546      *
4547      * <pre>
4548      * Output only. Time when the TrainingPipeline was most recently updated.
4549      * </pre>
4550      *
4551      * <code>
4552      * .google.protobuf.Timestamp update_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY];
4553      * </code>
4554      *
4555      * @return Whether the updateTime field is set.
4556      */
hasUpdateTime()4557     public boolean hasUpdateTime() {
4558       return ((bitField0_ & 0x00004000) != 0);
4559     }
4560     /**
4561      *
4562      *
4563      * <pre>
4564      * Output only. Time when the TrainingPipeline was most recently updated.
4565      * </pre>
4566      *
4567      * <code>
4568      * .google.protobuf.Timestamp update_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY];
4569      * </code>
4570      *
4571      * @return The updateTime.
4572      */
getUpdateTime()4573     public com.google.protobuf.Timestamp getUpdateTime() {
4574       if (updateTimeBuilder_ == null) {
4575         return updateTime_ == null
4576             ? com.google.protobuf.Timestamp.getDefaultInstance()
4577             : updateTime_;
4578       } else {
4579         return updateTimeBuilder_.getMessage();
4580       }
4581     }
4582     /**
4583      *
4584      *
4585      * <pre>
4586      * Output only. Time when the TrainingPipeline was most recently updated.
4587      * </pre>
4588      *
4589      * <code>
4590      * .google.protobuf.Timestamp update_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY];
4591      * </code>
4592      */
setUpdateTime(com.google.protobuf.Timestamp value)4593     public Builder setUpdateTime(com.google.protobuf.Timestamp value) {
4594       if (updateTimeBuilder_ == null) {
4595         if (value == null) {
4596           throw new NullPointerException();
4597         }
4598         updateTime_ = value;
4599       } else {
4600         updateTimeBuilder_.setMessage(value);
4601       }
4602       bitField0_ |= 0x00004000;
4603       onChanged();
4604       return this;
4605     }
4606     /**
4607      *
4608      *
4609      * <pre>
4610      * Output only. Time when the TrainingPipeline was most recently updated.
4611      * </pre>
4612      *
4613      * <code>
4614      * .google.protobuf.Timestamp update_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY];
4615      * </code>
4616      */
setUpdateTime(com.google.protobuf.Timestamp.Builder builderForValue)4617     public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForValue) {
4618       if (updateTimeBuilder_ == null) {
4619         updateTime_ = builderForValue.build();
4620       } else {
4621         updateTimeBuilder_.setMessage(builderForValue.build());
4622       }
4623       bitField0_ |= 0x00004000;
4624       onChanged();
4625       return this;
4626     }
4627     /**
4628      *
4629      *
4630      * <pre>
4631      * Output only. Time when the TrainingPipeline was most recently updated.
4632      * </pre>
4633      *
4634      * <code>
4635      * .google.protobuf.Timestamp update_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY];
4636      * </code>
4637      */
mergeUpdateTime(com.google.protobuf.Timestamp value)4638     public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) {
4639       if (updateTimeBuilder_ == null) {
4640         if (((bitField0_ & 0x00004000) != 0)
4641             && updateTime_ != null
4642             && updateTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) {
4643           getUpdateTimeBuilder().mergeFrom(value);
4644         } else {
4645           updateTime_ = value;
4646         }
4647       } else {
4648         updateTimeBuilder_.mergeFrom(value);
4649       }
4650       bitField0_ |= 0x00004000;
4651       onChanged();
4652       return this;
4653     }
4654     /**
4655      *
4656      *
4657      * <pre>
4658      * Output only. Time when the TrainingPipeline was most recently updated.
4659      * </pre>
4660      *
4661      * <code>
4662      * .google.protobuf.Timestamp update_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY];
4663      * </code>
4664      */
clearUpdateTime()4665     public Builder clearUpdateTime() {
4666       bitField0_ = (bitField0_ & ~0x00004000);
4667       updateTime_ = null;
4668       if (updateTimeBuilder_ != null) {
4669         updateTimeBuilder_.dispose();
4670         updateTimeBuilder_ = null;
4671       }
4672       onChanged();
4673       return this;
4674     }
4675     /**
4676      *
4677      *
4678      * <pre>
4679      * Output only. Time when the TrainingPipeline was most recently updated.
4680      * </pre>
4681      *
4682      * <code>
4683      * .google.protobuf.Timestamp update_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY];
4684      * </code>
4685      */
getUpdateTimeBuilder()4686     public com.google.protobuf.Timestamp.Builder getUpdateTimeBuilder() {
4687       bitField0_ |= 0x00004000;
4688       onChanged();
4689       return getUpdateTimeFieldBuilder().getBuilder();
4690     }
4691     /**
4692      *
4693      *
4694      * <pre>
4695      * Output only. Time when the TrainingPipeline was most recently updated.
4696      * </pre>
4697      *
4698      * <code>
4699      * .google.protobuf.Timestamp update_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY];
4700      * </code>
4701      */
getUpdateTimeOrBuilder()4702     public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() {
4703       if (updateTimeBuilder_ != null) {
4704         return updateTimeBuilder_.getMessageOrBuilder();
4705       } else {
4706         return updateTime_ == null
4707             ? com.google.protobuf.Timestamp.getDefaultInstance()
4708             : updateTime_;
4709       }
4710     }
4711     /**
4712      *
4713      *
4714      * <pre>
4715      * Output only. Time when the TrainingPipeline was most recently updated.
4716      * </pre>
4717      *
4718      * <code>
4719      * .google.protobuf.Timestamp update_time = 14 [(.google.api.field_behavior) = OUTPUT_ONLY];
4720      * </code>
4721      */
4722     private com.google.protobuf.SingleFieldBuilderV3<
4723             com.google.protobuf.Timestamp,
4724             com.google.protobuf.Timestamp.Builder,
4725             com.google.protobuf.TimestampOrBuilder>
getUpdateTimeFieldBuilder()4726         getUpdateTimeFieldBuilder() {
4727       if (updateTimeBuilder_ == null) {
4728         updateTimeBuilder_ =
4729             new com.google.protobuf.SingleFieldBuilderV3<
4730                 com.google.protobuf.Timestamp,
4731                 com.google.protobuf.Timestamp.Builder,
4732                 com.google.protobuf.TimestampOrBuilder>(
4733                 getUpdateTime(), getParentForChildren(), isClean());
4734         updateTime_ = null;
4735       }
4736       return updateTimeBuilder_;
4737     }
4738 
4739     private com.google.protobuf.MapField<java.lang.String, java.lang.String> labels_;
4740 
internalGetLabels()4741     private com.google.protobuf.MapField<java.lang.String, java.lang.String> internalGetLabels() {
4742       if (labels_ == null) {
4743         return com.google.protobuf.MapField.emptyMapField(LabelsDefaultEntryHolder.defaultEntry);
4744       }
4745       return labels_;
4746     }
4747 
4748     private com.google.protobuf.MapField<java.lang.String, java.lang.String>
internalGetMutableLabels()4749         internalGetMutableLabels() {
4750       if (labels_ == null) {
4751         labels_ = com.google.protobuf.MapField.newMapField(LabelsDefaultEntryHolder.defaultEntry);
4752       }
4753       if (!labels_.isMutable()) {
4754         labels_ = labels_.copy();
4755       }
4756       bitField0_ |= 0x00008000;
4757       onChanged();
4758       return labels_;
4759     }
4760 
getLabelsCount()4761     public int getLabelsCount() {
4762       return internalGetLabels().getMap().size();
4763     }
4764     /**
4765      *
4766      *
4767      * <pre>
4768      * The labels with user-defined metadata to organize TrainingPipelines.
4769      * Label keys and values can be no longer than 64 characters
4770      * (Unicode codepoints), can only contain lowercase letters, numeric
4771      * characters, underscores and dashes. International characters are allowed.
4772      * See https://goo.gl/xmQnxf for more information and examples of labels.
4773      * </pre>
4774      *
4775      * <code>map&lt;string, string&gt; labels = 15;</code>
4776      */
4777     @java.lang.Override
containsLabels(java.lang.String key)4778     public boolean containsLabels(java.lang.String key) {
4779       if (key == null) {
4780         throw new NullPointerException("map key");
4781       }
4782       return internalGetLabels().getMap().containsKey(key);
4783     }
4784     /** Use {@link #getLabelsMap()} instead. */
4785     @java.lang.Override
4786     @java.lang.Deprecated
getLabels()4787     public java.util.Map<java.lang.String, java.lang.String> getLabels() {
4788       return getLabelsMap();
4789     }
4790     /**
4791      *
4792      *
4793      * <pre>
4794      * The labels with user-defined metadata to organize TrainingPipelines.
4795      * Label keys and values can be no longer than 64 characters
4796      * (Unicode codepoints), can only contain lowercase letters, numeric
4797      * characters, underscores and dashes. International characters are allowed.
4798      * See https://goo.gl/xmQnxf for more information and examples of labels.
4799      * </pre>
4800      *
4801      * <code>map&lt;string, string&gt; labels = 15;</code>
4802      */
4803     @java.lang.Override
getLabelsMap()4804     public java.util.Map<java.lang.String, java.lang.String> getLabelsMap() {
4805       return internalGetLabels().getMap();
4806     }
4807     /**
4808      *
4809      *
4810      * <pre>
4811      * The labels with user-defined metadata to organize TrainingPipelines.
4812      * Label keys and values can be no longer than 64 characters
4813      * (Unicode codepoints), can only contain lowercase letters, numeric
4814      * characters, underscores and dashes. International characters are allowed.
4815      * See https://goo.gl/xmQnxf for more information and examples of labels.
4816      * </pre>
4817      *
4818      * <code>map&lt;string, string&gt; labels = 15;</code>
4819      */
4820     @java.lang.Override
getLabelsOrDefault( java.lang.String key, java.lang.String defaultValue)4821     public /* nullable */ java.lang.String getLabelsOrDefault(
4822         java.lang.String key,
4823         /* nullable */
4824         java.lang.String defaultValue) {
4825       if (key == null) {
4826         throw new NullPointerException("map key");
4827       }
4828       java.util.Map<java.lang.String, java.lang.String> map = internalGetLabels().getMap();
4829       return map.containsKey(key) ? map.get(key) : defaultValue;
4830     }
4831     /**
4832      *
4833      *
4834      * <pre>
4835      * The labels with user-defined metadata to organize TrainingPipelines.
4836      * Label keys and values can be no longer than 64 characters
4837      * (Unicode codepoints), can only contain lowercase letters, numeric
4838      * characters, underscores and dashes. International characters are allowed.
4839      * See https://goo.gl/xmQnxf for more information and examples of labels.
4840      * </pre>
4841      *
4842      * <code>map&lt;string, string&gt; labels = 15;</code>
4843      */
4844     @java.lang.Override
getLabelsOrThrow(java.lang.String key)4845     public java.lang.String getLabelsOrThrow(java.lang.String key) {
4846       if (key == null) {
4847         throw new NullPointerException("map key");
4848       }
4849       java.util.Map<java.lang.String, java.lang.String> map = internalGetLabels().getMap();
4850       if (!map.containsKey(key)) {
4851         throw new java.lang.IllegalArgumentException();
4852       }
4853       return map.get(key);
4854     }
4855 
clearLabels()4856     public Builder clearLabels() {
4857       bitField0_ = (bitField0_ & ~0x00008000);
4858       internalGetMutableLabels().getMutableMap().clear();
4859       return this;
4860     }
4861     /**
4862      *
4863      *
4864      * <pre>
4865      * The labels with user-defined metadata to organize TrainingPipelines.
4866      * Label keys and values can be no longer than 64 characters
4867      * (Unicode codepoints), can only contain lowercase letters, numeric
4868      * characters, underscores and dashes. International characters are allowed.
4869      * See https://goo.gl/xmQnxf for more information and examples of labels.
4870      * </pre>
4871      *
4872      * <code>map&lt;string, string&gt; labels = 15;</code>
4873      */
removeLabels(java.lang.String key)4874     public Builder removeLabels(java.lang.String key) {
4875       if (key == null) {
4876         throw new NullPointerException("map key");
4877       }
4878       internalGetMutableLabels().getMutableMap().remove(key);
4879       return this;
4880     }
4881     /** Use alternate mutation accessors instead. */
4882     @java.lang.Deprecated
getMutableLabels()4883     public java.util.Map<java.lang.String, java.lang.String> getMutableLabels() {
4884       bitField0_ |= 0x00008000;
4885       return internalGetMutableLabels().getMutableMap();
4886     }
4887     /**
4888      *
4889      *
4890      * <pre>
4891      * The labels with user-defined metadata to organize TrainingPipelines.
4892      * Label keys and values can be no longer than 64 characters
4893      * (Unicode codepoints), can only contain lowercase letters, numeric
4894      * characters, underscores and dashes. International characters are allowed.
4895      * See https://goo.gl/xmQnxf for more information and examples of labels.
4896      * </pre>
4897      *
4898      * <code>map&lt;string, string&gt; labels = 15;</code>
4899      */
putLabels(java.lang.String key, java.lang.String value)4900     public Builder putLabels(java.lang.String key, java.lang.String value) {
4901       if (key == null) {
4902         throw new NullPointerException("map key");
4903       }
4904       if (value == null) {
4905         throw new NullPointerException("map value");
4906       }
4907       internalGetMutableLabels().getMutableMap().put(key, value);
4908       bitField0_ |= 0x00008000;
4909       return this;
4910     }
4911     /**
4912      *
4913      *
4914      * <pre>
4915      * The labels with user-defined metadata to organize TrainingPipelines.
4916      * Label keys and values can be no longer than 64 characters
4917      * (Unicode codepoints), can only contain lowercase letters, numeric
4918      * characters, underscores and dashes. International characters are allowed.
4919      * See https://goo.gl/xmQnxf for more information and examples of labels.
4920      * </pre>
4921      *
4922      * <code>map&lt;string, string&gt; labels = 15;</code>
4923      */
putAllLabels(java.util.Map<java.lang.String, java.lang.String> values)4924     public Builder putAllLabels(java.util.Map<java.lang.String, java.lang.String> values) {
4925       internalGetMutableLabels().getMutableMap().putAll(values);
4926       bitField0_ |= 0x00008000;
4927       return this;
4928     }
4929 
4930     private com.google.cloud.aiplatform.v1.EncryptionSpec encryptionSpec_;
4931     private com.google.protobuf.SingleFieldBuilderV3<
4932             com.google.cloud.aiplatform.v1.EncryptionSpec,
4933             com.google.cloud.aiplatform.v1.EncryptionSpec.Builder,
4934             com.google.cloud.aiplatform.v1.EncryptionSpecOrBuilder>
4935         encryptionSpecBuilder_;
4936     /**
4937      *
4938      *
4939      * <pre>
4940      * Customer-managed encryption key spec for a TrainingPipeline. If set, this
4941      * TrainingPipeline will be secured by this key.
4942      * Note: Model trained by this TrainingPipeline is also secured by this key if
4943      * [model_to_upload][google.cloud.aiplatform.v1.TrainingPipeline.encryption_spec]
4944      * is not set separately.
4945      * </pre>
4946      *
4947      * <code>.google.cloud.aiplatform.v1.EncryptionSpec encryption_spec = 18;</code>
4948      *
4949      * @return Whether the encryptionSpec field is set.
4950      */
hasEncryptionSpec()4951     public boolean hasEncryptionSpec() {
4952       return ((bitField0_ & 0x00010000) != 0);
4953     }
4954     /**
4955      *
4956      *
4957      * <pre>
4958      * Customer-managed encryption key spec for a TrainingPipeline. If set, this
4959      * TrainingPipeline will be secured by this key.
4960      * Note: Model trained by this TrainingPipeline is also secured by this key if
4961      * [model_to_upload][google.cloud.aiplatform.v1.TrainingPipeline.encryption_spec]
4962      * is not set separately.
4963      * </pre>
4964      *
4965      * <code>.google.cloud.aiplatform.v1.EncryptionSpec encryption_spec = 18;</code>
4966      *
4967      * @return The encryptionSpec.
4968      */
getEncryptionSpec()4969     public com.google.cloud.aiplatform.v1.EncryptionSpec getEncryptionSpec() {
4970       if (encryptionSpecBuilder_ == null) {
4971         return encryptionSpec_ == null
4972             ? com.google.cloud.aiplatform.v1.EncryptionSpec.getDefaultInstance()
4973             : encryptionSpec_;
4974       } else {
4975         return encryptionSpecBuilder_.getMessage();
4976       }
4977     }
4978     /**
4979      *
4980      *
4981      * <pre>
4982      * Customer-managed encryption key spec for a TrainingPipeline. If set, this
4983      * TrainingPipeline will be secured by this key.
4984      * Note: Model trained by this TrainingPipeline is also secured by this key if
4985      * [model_to_upload][google.cloud.aiplatform.v1.TrainingPipeline.encryption_spec]
4986      * is not set separately.
4987      * </pre>
4988      *
4989      * <code>.google.cloud.aiplatform.v1.EncryptionSpec encryption_spec = 18;</code>
4990      */
setEncryptionSpec(com.google.cloud.aiplatform.v1.EncryptionSpec value)4991     public Builder setEncryptionSpec(com.google.cloud.aiplatform.v1.EncryptionSpec value) {
4992       if (encryptionSpecBuilder_ == null) {
4993         if (value == null) {
4994           throw new NullPointerException();
4995         }
4996         encryptionSpec_ = value;
4997       } else {
4998         encryptionSpecBuilder_.setMessage(value);
4999       }
5000       bitField0_ |= 0x00010000;
5001       onChanged();
5002       return this;
5003     }
5004     /**
5005      *
5006      *
5007      * <pre>
5008      * Customer-managed encryption key spec for a TrainingPipeline. If set, this
5009      * TrainingPipeline will be secured by this key.
5010      * Note: Model trained by this TrainingPipeline is also secured by this key if
5011      * [model_to_upload][google.cloud.aiplatform.v1.TrainingPipeline.encryption_spec]
5012      * is not set separately.
5013      * </pre>
5014      *
5015      * <code>.google.cloud.aiplatform.v1.EncryptionSpec encryption_spec = 18;</code>
5016      */
setEncryptionSpec( com.google.cloud.aiplatform.v1.EncryptionSpec.Builder builderForValue)5017     public Builder setEncryptionSpec(
5018         com.google.cloud.aiplatform.v1.EncryptionSpec.Builder builderForValue) {
5019       if (encryptionSpecBuilder_ == null) {
5020         encryptionSpec_ = builderForValue.build();
5021       } else {
5022         encryptionSpecBuilder_.setMessage(builderForValue.build());
5023       }
5024       bitField0_ |= 0x00010000;
5025       onChanged();
5026       return this;
5027     }
5028     /**
5029      *
5030      *
5031      * <pre>
5032      * Customer-managed encryption key spec for a TrainingPipeline. If set, this
5033      * TrainingPipeline will be secured by this key.
5034      * Note: Model trained by this TrainingPipeline is also secured by this key if
5035      * [model_to_upload][google.cloud.aiplatform.v1.TrainingPipeline.encryption_spec]
5036      * is not set separately.
5037      * </pre>
5038      *
5039      * <code>.google.cloud.aiplatform.v1.EncryptionSpec encryption_spec = 18;</code>
5040      */
mergeEncryptionSpec(com.google.cloud.aiplatform.v1.EncryptionSpec value)5041     public Builder mergeEncryptionSpec(com.google.cloud.aiplatform.v1.EncryptionSpec value) {
5042       if (encryptionSpecBuilder_ == null) {
5043         if (((bitField0_ & 0x00010000) != 0)
5044             && encryptionSpec_ != null
5045             && encryptionSpec_
5046                 != com.google.cloud.aiplatform.v1.EncryptionSpec.getDefaultInstance()) {
5047           getEncryptionSpecBuilder().mergeFrom(value);
5048         } else {
5049           encryptionSpec_ = value;
5050         }
5051       } else {
5052         encryptionSpecBuilder_.mergeFrom(value);
5053       }
5054       bitField0_ |= 0x00010000;
5055       onChanged();
5056       return this;
5057     }
5058     /**
5059      *
5060      *
5061      * <pre>
5062      * Customer-managed encryption key spec for a TrainingPipeline. If set, this
5063      * TrainingPipeline will be secured by this key.
5064      * Note: Model trained by this TrainingPipeline is also secured by this key if
5065      * [model_to_upload][google.cloud.aiplatform.v1.TrainingPipeline.encryption_spec]
5066      * is not set separately.
5067      * </pre>
5068      *
5069      * <code>.google.cloud.aiplatform.v1.EncryptionSpec encryption_spec = 18;</code>
5070      */
clearEncryptionSpec()5071     public Builder clearEncryptionSpec() {
5072       bitField0_ = (bitField0_ & ~0x00010000);
5073       encryptionSpec_ = null;
5074       if (encryptionSpecBuilder_ != null) {
5075         encryptionSpecBuilder_.dispose();
5076         encryptionSpecBuilder_ = null;
5077       }
5078       onChanged();
5079       return this;
5080     }
5081     /**
5082      *
5083      *
5084      * <pre>
5085      * Customer-managed encryption key spec for a TrainingPipeline. If set, this
5086      * TrainingPipeline will be secured by this key.
5087      * Note: Model trained by this TrainingPipeline is also secured by this key if
5088      * [model_to_upload][google.cloud.aiplatform.v1.TrainingPipeline.encryption_spec]
5089      * is not set separately.
5090      * </pre>
5091      *
5092      * <code>.google.cloud.aiplatform.v1.EncryptionSpec encryption_spec = 18;</code>
5093      */
getEncryptionSpecBuilder()5094     public com.google.cloud.aiplatform.v1.EncryptionSpec.Builder getEncryptionSpecBuilder() {
5095       bitField0_ |= 0x00010000;
5096       onChanged();
5097       return getEncryptionSpecFieldBuilder().getBuilder();
5098     }
5099     /**
5100      *
5101      *
5102      * <pre>
5103      * Customer-managed encryption key spec for a TrainingPipeline. If set, this
5104      * TrainingPipeline will be secured by this key.
5105      * Note: Model trained by this TrainingPipeline is also secured by this key if
5106      * [model_to_upload][google.cloud.aiplatform.v1.TrainingPipeline.encryption_spec]
5107      * is not set separately.
5108      * </pre>
5109      *
5110      * <code>.google.cloud.aiplatform.v1.EncryptionSpec encryption_spec = 18;</code>
5111      */
getEncryptionSpecOrBuilder()5112     public com.google.cloud.aiplatform.v1.EncryptionSpecOrBuilder getEncryptionSpecOrBuilder() {
5113       if (encryptionSpecBuilder_ != null) {
5114         return encryptionSpecBuilder_.getMessageOrBuilder();
5115       } else {
5116         return encryptionSpec_ == null
5117             ? com.google.cloud.aiplatform.v1.EncryptionSpec.getDefaultInstance()
5118             : encryptionSpec_;
5119       }
5120     }
5121     /**
5122      *
5123      *
5124      * <pre>
5125      * Customer-managed encryption key spec for a TrainingPipeline. If set, this
5126      * TrainingPipeline will be secured by this key.
5127      * Note: Model trained by this TrainingPipeline is also secured by this key if
5128      * [model_to_upload][google.cloud.aiplatform.v1.TrainingPipeline.encryption_spec]
5129      * is not set separately.
5130      * </pre>
5131      *
5132      * <code>.google.cloud.aiplatform.v1.EncryptionSpec encryption_spec = 18;</code>
5133      */
5134     private com.google.protobuf.SingleFieldBuilderV3<
5135             com.google.cloud.aiplatform.v1.EncryptionSpec,
5136             com.google.cloud.aiplatform.v1.EncryptionSpec.Builder,
5137             com.google.cloud.aiplatform.v1.EncryptionSpecOrBuilder>
getEncryptionSpecFieldBuilder()5138         getEncryptionSpecFieldBuilder() {
5139       if (encryptionSpecBuilder_ == null) {
5140         encryptionSpecBuilder_ =
5141             new com.google.protobuf.SingleFieldBuilderV3<
5142                 com.google.cloud.aiplatform.v1.EncryptionSpec,
5143                 com.google.cloud.aiplatform.v1.EncryptionSpec.Builder,
5144                 com.google.cloud.aiplatform.v1.EncryptionSpecOrBuilder>(
5145                 getEncryptionSpec(), getParentForChildren(), isClean());
5146         encryptionSpec_ = null;
5147       }
5148       return encryptionSpecBuilder_;
5149     }
5150 
5151     @java.lang.Override
setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)5152     public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) {
5153       return super.setUnknownFields(unknownFields);
5154     }
5155 
5156     @java.lang.Override
mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields)5157     public final Builder mergeUnknownFields(
5158         final com.google.protobuf.UnknownFieldSet unknownFields) {
5159       return super.mergeUnknownFields(unknownFields);
5160     }
5161 
5162     // @@protoc_insertion_point(builder_scope:google.cloud.aiplatform.v1.TrainingPipeline)
5163   }
5164 
5165   // @@protoc_insertion_point(class_scope:google.cloud.aiplatform.v1.TrainingPipeline)
5166   private static final com.google.cloud.aiplatform.v1.TrainingPipeline DEFAULT_INSTANCE;
5167 
5168   static {
5169     DEFAULT_INSTANCE = new com.google.cloud.aiplatform.v1.TrainingPipeline();
5170   }
5171 
getDefaultInstance()5172   public static com.google.cloud.aiplatform.v1.TrainingPipeline getDefaultInstance() {
5173     return DEFAULT_INSTANCE;
5174   }
5175 
5176   private static final com.google.protobuf.Parser<TrainingPipeline> PARSER =
5177       new com.google.protobuf.AbstractParser<TrainingPipeline>() {
5178         @java.lang.Override
5179         public TrainingPipeline parsePartialFrom(
5180             com.google.protobuf.CodedInputStream input,
5181             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
5182             throws com.google.protobuf.InvalidProtocolBufferException {
5183           Builder builder = newBuilder();
5184           try {
5185             builder.mergeFrom(input, extensionRegistry);
5186           } catch (com.google.protobuf.InvalidProtocolBufferException e) {
5187             throw e.setUnfinishedMessage(builder.buildPartial());
5188           } catch (com.google.protobuf.UninitializedMessageException e) {
5189             throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
5190           } catch (java.io.IOException e) {
5191             throw new com.google.protobuf.InvalidProtocolBufferException(e)
5192                 .setUnfinishedMessage(builder.buildPartial());
5193           }
5194           return builder.buildPartial();
5195         }
5196       };
5197 
parser()5198   public static com.google.protobuf.Parser<TrainingPipeline> parser() {
5199     return PARSER;
5200   }
5201 
5202   @java.lang.Override
getParserForType()5203   public com.google.protobuf.Parser<TrainingPipeline> getParserForType() {
5204     return PARSER;
5205   }
5206 
5207   @java.lang.Override
getDefaultInstanceForType()5208   public com.google.cloud.aiplatform.v1.TrainingPipeline getDefaultInstanceForType() {
5209     return DEFAULT_INSTANCE;
5210   }
5211 }
5212