• 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/retail/v2/import_config.proto
18 
19 package com.google.cloud.retail.v2;
20 
21 /**
22  *
23  *
24  * <pre>
25  * Google Cloud Storage location for input content.
26  * </pre>
27  *
28  * Protobuf type {@code google.cloud.retail.v2.GcsSource}
29  */
30 public final class GcsSource extends com.google.protobuf.GeneratedMessageV3
31     implements
32     // @@protoc_insertion_point(message_implements:google.cloud.retail.v2.GcsSource)
33     GcsSourceOrBuilder {
34   private static final long serialVersionUID = 0L;
35   // Use GcsSource.newBuilder() to construct.
GcsSource(com.google.protobuf.GeneratedMessageV3.Builder<?> builder)36   private GcsSource(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
37     super(builder);
38   }
39 
GcsSource()40   private GcsSource() {
41     inputUris_ = com.google.protobuf.LazyStringArrayList.EMPTY;
42     dataSchema_ = "";
43   }
44 
45   @java.lang.Override
46   @SuppressWarnings({"unused"})
newInstance(UnusedPrivateParameter unused)47   protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
48     return new GcsSource();
49   }
50 
51   @java.lang.Override
getUnknownFields()52   public final com.google.protobuf.UnknownFieldSet getUnknownFields() {
53     return this.unknownFields;
54   }
55 
getDescriptor()56   public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
57     return com.google.cloud.retail.v2.ImportConfigProto
58         .internal_static_google_cloud_retail_v2_GcsSource_descriptor;
59   }
60 
61   @java.lang.Override
62   protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()63       internalGetFieldAccessorTable() {
64     return com.google.cloud.retail.v2.ImportConfigProto
65         .internal_static_google_cloud_retail_v2_GcsSource_fieldAccessorTable
66         .ensureFieldAccessorsInitialized(
67             com.google.cloud.retail.v2.GcsSource.class,
68             com.google.cloud.retail.v2.GcsSource.Builder.class);
69   }
70 
71   public static final int INPUT_URIS_FIELD_NUMBER = 1;
72 
73   @SuppressWarnings("serial")
74   private com.google.protobuf.LazyStringList inputUris_;
75   /**
76    *
77    *
78    * <pre>
79    * Required. Google Cloud Storage URIs to input files. URI can be up to
80    * 2000 characters long. URIs can match the full object path (for example,
81    * `gs://bucket/directory/object.json`) or a pattern matching one or more
82    * files, such as `gs://bucket/directory/&#42;.json`. A request can
83    * contain at most 100 files, and each file can be up to 2 GB. See
84    * [Importing product
85    * information](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog)
86    * for the expected file format and setup instructions.
87    * </pre>
88    *
89    * <code>repeated string input_uris = 1 [(.google.api.field_behavior) = REQUIRED];</code>
90    *
91    * @return A list containing the inputUris.
92    */
getInputUrisList()93   public com.google.protobuf.ProtocolStringList getInputUrisList() {
94     return inputUris_;
95   }
96   /**
97    *
98    *
99    * <pre>
100    * Required. Google Cloud Storage URIs to input files. URI can be up to
101    * 2000 characters long. URIs can match the full object path (for example,
102    * `gs://bucket/directory/object.json`) or a pattern matching one or more
103    * files, such as `gs://bucket/directory/&#42;.json`. A request can
104    * contain at most 100 files, and each file can be up to 2 GB. See
105    * [Importing product
106    * information](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog)
107    * for the expected file format and setup instructions.
108    * </pre>
109    *
110    * <code>repeated string input_uris = 1 [(.google.api.field_behavior) = REQUIRED];</code>
111    *
112    * @return The count of inputUris.
113    */
getInputUrisCount()114   public int getInputUrisCount() {
115     return inputUris_.size();
116   }
117   /**
118    *
119    *
120    * <pre>
121    * Required. Google Cloud Storage URIs to input files. URI can be up to
122    * 2000 characters long. URIs can match the full object path (for example,
123    * `gs://bucket/directory/object.json`) or a pattern matching one or more
124    * files, such as `gs://bucket/directory/&#42;.json`. A request can
125    * contain at most 100 files, and each file can be up to 2 GB. See
126    * [Importing product
127    * information](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog)
128    * for the expected file format and setup instructions.
129    * </pre>
130    *
131    * <code>repeated string input_uris = 1 [(.google.api.field_behavior) = REQUIRED];</code>
132    *
133    * @param index The index of the element to return.
134    * @return The inputUris at the given index.
135    */
getInputUris(int index)136   public java.lang.String getInputUris(int index) {
137     return inputUris_.get(index);
138   }
139   /**
140    *
141    *
142    * <pre>
143    * Required. Google Cloud Storage URIs to input files. URI can be up to
144    * 2000 characters long. URIs can match the full object path (for example,
145    * `gs://bucket/directory/object.json`) or a pattern matching one or more
146    * files, such as `gs://bucket/directory/&#42;.json`. A request can
147    * contain at most 100 files, and each file can be up to 2 GB. See
148    * [Importing product
149    * information](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog)
150    * for the expected file format and setup instructions.
151    * </pre>
152    *
153    * <code>repeated string input_uris = 1 [(.google.api.field_behavior) = REQUIRED];</code>
154    *
155    * @param index The index of the value to return.
156    * @return The bytes of the inputUris at the given index.
157    */
getInputUrisBytes(int index)158   public com.google.protobuf.ByteString getInputUrisBytes(int index) {
159     return inputUris_.getByteString(index);
160   }
161 
162   public static final int DATA_SCHEMA_FIELD_NUMBER = 2;
163 
164   @SuppressWarnings("serial")
165   private volatile java.lang.Object dataSchema_ = "";
166   /**
167    *
168    *
169    * <pre>
170    * The schema to use when parsing the data from the source.
171    * Supported values for product imports:
172    * * `product` (default): One JSON [Product][google.cloud.retail.v2.Product]
173    * per line. Each product must
174    *   have a valid [Product.id][google.cloud.retail.v2.Product.id].
175    * * `product_merchant_center`: See [Importing catalog data from Merchant
176    *   Center](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog#mc).
177    * Supported values for user events imports:
178    * * `user_event` (default): One JSON
179    * [UserEvent][google.cloud.retail.v2.UserEvent] per line.
180    * * `user_event_ga360`: Using
181    *   https://support.google.com/analytics/answer/3437719.
182    * Supported values for control imports:
183    * * `control` (default): One JSON [Control][google.cloud.retail.v2.Control]
184    * per line.
185    * Supported values for catalog attribute imports:
186    * * `catalog_attribute` (default): One CSV
187    * [CatalogAttribute][google.cloud.retail.v2.CatalogAttribute] per line.
188    * </pre>
189    *
190    * <code>string data_schema = 2;</code>
191    *
192    * @return The dataSchema.
193    */
194   @java.lang.Override
getDataSchema()195   public java.lang.String getDataSchema() {
196     java.lang.Object ref = dataSchema_;
197     if (ref instanceof java.lang.String) {
198       return (java.lang.String) ref;
199     } else {
200       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
201       java.lang.String s = bs.toStringUtf8();
202       dataSchema_ = s;
203       return s;
204     }
205   }
206   /**
207    *
208    *
209    * <pre>
210    * The schema to use when parsing the data from the source.
211    * Supported values for product imports:
212    * * `product` (default): One JSON [Product][google.cloud.retail.v2.Product]
213    * per line. Each product must
214    *   have a valid [Product.id][google.cloud.retail.v2.Product.id].
215    * * `product_merchant_center`: See [Importing catalog data from Merchant
216    *   Center](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog#mc).
217    * Supported values for user events imports:
218    * * `user_event` (default): One JSON
219    * [UserEvent][google.cloud.retail.v2.UserEvent] per line.
220    * * `user_event_ga360`: Using
221    *   https://support.google.com/analytics/answer/3437719.
222    * Supported values for control imports:
223    * * `control` (default): One JSON [Control][google.cloud.retail.v2.Control]
224    * per line.
225    * Supported values for catalog attribute imports:
226    * * `catalog_attribute` (default): One CSV
227    * [CatalogAttribute][google.cloud.retail.v2.CatalogAttribute] per line.
228    * </pre>
229    *
230    * <code>string data_schema = 2;</code>
231    *
232    * @return The bytes for dataSchema.
233    */
234   @java.lang.Override
getDataSchemaBytes()235   public com.google.protobuf.ByteString getDataSchemaBytes() {
236     java.lang.Object ref = dataSchema_;
237     if (ref instanceof java.lang.String) {
238       com.google.protobuf.ByteString b =
239           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
240       dataSchema_ = b;
241       return b;
242     } else {
243       return (com.google.protobuf.ByteString) ref;
244     }
245   }
246 
247   private byte memoizedIsInitialized = -1;
248 
249   @java.lang.Override
isInitialized()250   public final boolean isInitialized() {
251     byte isInitialized = memoizedIsInitialized;
252     if (isInitialized == 1) return true;
253     if (isInitialized == 0) return false;
254 
255     memoizedIsInitialized = 1;
256     return true;
257   }
258 
259   @java.lang.Override
writeTo(com.google.protobuf.CodedOutputStream output)260   public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
261     for (int i = 0; i < inputUris_.size(); i++) {
262       com.google.protobuf.GeneratedMessageV3.writeString(output, 1, inputUris_.getRaw(i));
263     }
264     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dataSchema_)) {
265       com.google.protobuf.GeneratedMessageV3.writeString(output, 2, dataSchema_);
266     }
267     getUnknownFields().writeTo(output);
268   }
269 
270   @java.lang.Override
getSerializedSize()271   public int getSerializedSize() {
272     int size = memoizedSize;
273     if (size != -1) return size;
274 
275     size = 0;
276     {
277       int dataSize = 0;
278       for (int i = 0; i < inputUris_.size(); i++) {
279         dataSize += computeStringSizeNoTag(inputUris_.getRaw(i));
280       }
281       size += dataSize;
282       size += 1 * getInputUrisList().size();
283     }
284     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(dataSchema_)) {
285       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, dataSchema_);
286     }
287     size += getUnknownFields().getSerializedSize();
288     memoizedSize = size;
289     return size;
290   }
291 
292   @java.lang.Override
equals(final java.lang.Object obj)293   public boolean equals(final java.lang.Object obj) {
294     if (obj == this) {
295       return true;
296     }
297     if (!(obj instanceof com.google.cloud.retail.v2.GcsSource)) {
298       return super.equals(obj);
299     }
300     com.google.cloud.retail.v2.GcsSource other = (com.google.cloud.retail.v2.GcsSource) obj;
301 
302     if (!getInputUrisList().equals(other.getInputUrisList())) return false;
303     if (!getDataSchema().equals(other.getDataSchema())) return false;
304     if (!getUnknownFields().equals(other.getUnknownFields())) return false;
305     return true;
306   }
307 
308   @java.lang.Override
hashCode()309   public int hashCode() {
310     if (memoizedHashCode != 0) {
311       return memoizedHashCode;
312     }
313     int hash = 41;
314     hash = (19 * hash) + getDescriptor().hashCode();
315     if (getInputUrisCount() > 0) {
316       hash = (37 * hash) + INPUT_URIS_FIELD_NUMBER;
317       hash = (53 * hash) + getInputUrisList().hashCode();
318     }
319     hash = (37 * hash) + DATA_SCHEMA_FIELD_NUMBER;
320     hash = (53 * hash) + getDataSchema().hashCode();
321     hash = (29 * hash) + getUnknownFields().hashCode();
322     memoizedHashCode = hash;
323     return hash;
324   }
325 
parseFrom(java.nio.ByteBuffer data)326   public static com.google.cloud.retail.v2.GcsSource parseFrom(java.nio.ByteBuffer data)
327       throws com.google.protobuf.InvalidProtocolBufferException {
328     return PARSER.parseFrom(data);
329   }
330 
parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)331   public static com.google.cloud.retail.v2.GcsSource parseFrom(
332       java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
333       throws com.google.protobuf.InvalidProtocolBufferException {
334     return PARSER.parseFrom(data, extensionRegistry);
335   }
336 
parseFrom(com.google.protobuf.ByteString data)337   public static com.google.cloud.retail.v2.GcsSource parseFrom(com.google.protobuf.ByteString data)
338       throws com.google.protobuf.InvalidProtocolBufferException {
339     return PARSER.parseFrom(data);
340   }
341 
parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)342   public static com.google.cloud.retail.v2.GcsSource parseFrom(
343       com.google.protobuf.ByteString data,
344       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
345       throws com.google.protobuf.InvalidProtocolBufferException {
346     return PARSER.parseFrom(data, extensionRegistry);
347   }
348 
parseFrom(byte[] data)349   public static com.google.cloud.retail.v2.GcsSource parseFrom(byte[] data)
350       throws com.google.protobuf.InvalidProtocolBufferException {
351     return PARSER.parseFrom(data);
352   }
353 
parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)354   public static com.google.cloud.retail.v2.GcsSource parseFrom(
355       byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
356       throws com.google.protobuf.InvalidProtocolBufferException {
357     return PARSER.parseFrom(data, extensionRegistry);
358   }
359 
parseFrom(java.io.InputStream input)360   public static com.google.cloud.retail.v2.GcsSource parseFrom(java.io.InputStream input)
361       throws java.io.IOException {
362     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
363   }
364 
parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)365   public static com.google.cloud.retail.v2.GcsSource parseFrom(
366       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
367       throws java.io.IOException {
368     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
369         PARSER, input, extensionRegistry);
370   }
371 
parseDelimitedFrom(java.io.InputStream input)372   public static com.google.cloud.retail.v2.GcsSource parseDelimitedFrom(java.io.InputStream input)
373       throws java.io.IOException {
374     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
375   }
376 
parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)377   public static com.google.cloud.retail.v2.GcsSource parseDelimitedFrom(
378       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
379       throws java.io.IOException {
380     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(
381         PARSER, input, extensionRegistry);
382   }
383 
parseFrom( com.google.protobuf.CodedInputStream input)384   public static com.google.cloud.retail.v2.GcsSource parseFrom(
385       com.google.protobuf.CodedInputStream input) throws java.io.IOException {
386     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
387   }
388 
parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)389   public static com.google.cloud.retail.v2.GcsSource parseFrom(
390       com.google.protobuf.CodedInputStream input,
391       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
392       throws java.io.IOException {
393     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
394         PARSER, input, extensionRegistry);
395   }
396 
397   @java.lang.Override
newBuilderForType()398   public Builder newBuilderForType() {
399     return newBuilder();
400   }
401 
newBuilder()402   public static Builder newBuilder() {
403     return DEFAULT_INSTANCE.toBuilder();
404   }
405 
newBuilder(com.google.cloud.retail.v2.GcsSource prototype)406   public static Builder newBuilder(com.google.cloud.retail.v2.GcsSource prototype) {
407     return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
408   }
409 
410   @java.lang.Override
toBuilder()411   public Builder toBuilder() {
412     return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
413   }
414 
415   @java.lang.Override
newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)416   protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
417     Builder builder = new Builder(parent);
418     return builder;
419   }
420   /**
421    *
422    *
423    * <pre>
424    * Google Cloud Storage location for input content.
425    * </pre>
426    *
427    * Protobuf type {@code google.cloud.retail.v2.GcsSource}
428    */
429   public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder>
430       implements
431       // @@protoc_insertion_point(builder_implements:google.cloud.retail.v2.GcsSource)
432       com.google.cloud.retail.v2.GcsSourceOrBuilder {
getDescriptor()433     public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
434       return com.google.cloud.retail.v2.ImportConfigProto
435           .internal_static_google_cloud_retail_v2_GcsSource_descriptor;
436     }
437 
438     @java.lang.Override
439     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()440         internalGetFieldAccessorTable() {
441       return com.google.cloud.retail.v2.ImportConfigProto
442           .internal_static_google_cloud_retail_v2_GcsSource_fieldAccessorTable
443           .ensureFieldAccessorsInitialized(
444               com.google.cloud.retail.v2.GcsSource.class,
445               com.google.cloud.retail.v2.GcsSource.Builder.class);
446     }
447 
448     // Construct using com.google.cloud.retail.v2.GcsSource.newBuilder()
Builder()449     private Builder() {}
450 
Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)451     private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
452       super(parent);
453     }
454 
455     @java.lang.Override
clear()456     public Builder clear() {
457       super.clear();
458       bitField0_ = 0;
459       inputUris_ = com.google.protobuf.LazyStringArrayList.EMPTY;
460       bitField0_ = (bitField0_ & ~0x00000001);
461       dataSchema_ = "";
462       return this;
463     }
464 
465     @java.lang.Override
getDescriptorForType()466     public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() {
467       return com.google.cloud.retail.v2.ImportConfigProto
468           .internal_static_google_cloud_retail_v2_GcsSource_descriptor;
469     }
470 
471     @java.lang.Override
getDefaultInstanceForType()472     public com.google.cloud.retail.v2.GcsSource getDefaultInstanceForType() {
473       return com.google.cloud.retail.v2.GcsSource.getDefaultInstance();
474     }
475 
476     @java.lang.Override
build()477     public com.google.cloud.retail.v2.GcsSource build() {
478       com.google.cloud.retail.v2.GcsSource result = buildPartial();
479       if (!result.isInitialized()) {
480         throw newUninitializedMessageException(result);
481       }
482       return result;
483     }
484 
485     @java.lang.Override
buildPartial()486     public com.google.cloud.retail.v2.GcsSource buildPartial() {
487       com.google.cloud.retail.v2.GcsSource result = new com.google.cloud.retail.v2.GcsSource(this);
488       buildPartialRepeatedFields(result);
489       if (bitField0_ != 0) {
490         buildPartial0(result);
491       }
492       onBuilt();
493       return result;
494     }
495 
buildPartialRepeatedFields(com.google.cloud.retail.v2.GcsSource result)496     private void buildPartialRepeatedFields(com.google.cloud.retail.v2.GcsSource result) {
497       if (((bitField0_ & 0x00000001) != 0)) {
498         inputUris_ = inputUris_.getUnmodifiableView();
499         bitField0_ = (bitField0_ & ~0x00000001);
500       }
501       result.inputUris_ = inputUris_;
502     }
503 
buildPartial0(com.google.cloud.retail.v2.GcsSource result)504     private void buildPartial0(com.google.cloud.retail.v2.GcsSource result) {
505       int from_bitField0_ = bitField0_;
506       if (((from_bitField0_ & 0x00000002) != 0)) {
507         result.dataSchema_ = dataSchema_;
508       }
509     }
510 
511     @java.lang.Override
clone()512     public Builder clone() {
513       return super.clone();
514     }
515 
516     @java.lang.Override
setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)517     public Builder setField(
518         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
519       return super.setField(field, value);
520     }
521 
522     @java.lang.Override
clearField(com.google.protobuf.Descriptors.FieldDescriptor field)523     public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) {
524       return super.clearField(field);
525     }
526 
527     @java.lang.Override
clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)528     public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) {
529       return super.clearOneof(oneof);
530     }
531 
532     @java.lang.Override
setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)533     public Builder setRepeatedField(
534         com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) {
535       return super.setRepeatedField(field, index, value);
536     }
537 
538     @java.lang.Override
addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)539     public Builder addRepeatedField(
540         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
541       return super.addRepeatedField(field, value);
542     }
543 
544     @java.lang.Override
mergeFrom(com.google.protobuf.Message other)545     public Builder mergeFrom(com.google.protobuf.Message other) {
546       if (other instanceof com.google.cloud.retail.v2.GcsSource) {
547         return mergeFrom((com.google.cloud.retail.v2.GcsSource) other);
548       } else {
549         super.mergeFrom(other);
550         return this;
551       }
552     }
553 
mergeFrom(com.google.cloud.retail.v2.GcsSource other)554     public Builder mergeFrom(com.google.cloud.retail.v2.GcsSource other) {
555       if (other == com.google.cloud.retail.v2.GcsSource.getDefaultInstance()) return this;
556       if (!other.inputUris_.isEmpty()) {
557         if (inputUris_.isEmpty()) {
558           inputUris_ = other.inputUris_;
559           bitField0_ = (bitField0_ & ~0x00000001);
560         } else {
561           ensureInputUrisIsMutable();
562           inputUris_.addAll(other.inputUris_);
563         }
564         onChanged();
565       }
566       if (!other.getDataSchema().isEmpty()) {
567         dataSchema_ = other.dataSchema_;
568         bitField0_ |= 0x00000002;
569         onChanged();
570       }
571       this.mergeUnknownFields(other.getUnknownFields());
572       onChanged();
573       return this;
574     }
575 
576     @java.lang.Override
isInitialized()577     public final boolean isInitialized() {
578       return true;
579     }
580 
581     @java.lang.Override
mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)582     public Builder mergeFrom(
583         com.google.protobuf.CodedInputStream input,
584         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
585         throws java.io.IOException {
586       if (extensionRegistry == null) {
587         throw new java.lang.NullPointerException();
588       }
589       try {
590         boolean done = false;
591         while (!done) {
592           int tag = input.readTag();
593           switch (tag) {
594             case 0:
595               done = true;
596               break;
597             case 10:
598               {
599                 java.lang.String s = input.readStringRequireUtf8();
600                 ensureInputUrisIsMutable();
601                 inputUris_.add(s);
602                 break;
603               } // case 10
604             case 18:
605               {
606                 dataSchema_ = input.readStringRequireUtf8();
607                 bitField0_ |= 0x00000002;
608                 break;
609               } // case 18
610             default:
611               {
612                 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
613                   done = true; // was an endgroup tag
614                 }
615                 break;
616               } // default:
617           } // switch (tag)
618         } // while (!done)
619       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
620         throw e.unwrapIOException();
621       } finally {
622         onChanged();
623       } // finally
624       return this;
625     }
626 
627     private int bitField0_;
628 
629     private com.google.protobuf.LazyStringList inputUris_ =
630         com.google.protobuf.LazyStringArrayList.EMPTY;
631 
ensureInputUrisIsMutable()632     private void ensureInputUrisIsMutable() {
633       if (!((bitField0_ & 0x00000001) != 0)) {
634         inputUris_ = new com.google.protobuf.LazyStringArrayList(inputUris_);
635         bitField0_ |= 0x00000001;
636       }
637     }
638     /**
639      *
640      *
641      * <pre>
642      * Required. Google Cloud Storage URIs to input files. URI can be up to
643      * 2000 characters long. URIs can match the full object path (for example,
644      * `gs://bucket/directory/object.json`) or a pattern matching one or more
645      * files, such as `gs://bucket/directory/&#42;.json`. A request can
646      * contain at most 100 files, and each file can be up to 2 GB. See
647      * [Importing product
648      * information](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog)
649      * for the expected file format and setup instructions.
650      * </pre>
651      *
652      * <code>repeated string input_uris = 1 [(.google.api.field_behavior) = REQUIRED];</code>
653      *
654      * @return A list containing the inputUris.
655      */
getInputUrisList()656     public com.google.protobuf.ProtocolStringList getInputUrisList() {
657       return inputUris_.getUnmodifiableView();
658     }
659     /**
660      *
661      *
662      * <pre>
663      * Required. Google Cloud Storage URIs to input files. URI can be up to
664      * 2000 characters long. URIs can match the full object path (for example,
665      * `gs://bucket/directory/object.json`) or a pattern matching one or more
666      * files, such as `gs://bucket/directory/&#42;.json`. A request can
667      * contain at most 100 files, and each file can be up to 2 GB. See
668      * [Importing product
669      * information](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog)
670      * for the expected file format and setup instructions.
671      * </pre>
672      *
673      * <code>repeated string input_uris = 1 [(.google.api.field_behavior) = REQUIRED];</code>
674      *
675      * @return The count of inputUris.
676      */
getInputUrisCount()677     public int getInputUrisCount() {
678       return inputUris_.size();
679     }
680     /**
681      *
682      *
683      * <pre>
684      * Required. Google Cloud Storage URIs to input files. URI can be up to
685      * 2000 characters long. URIs can match the full object path (for example,
686      * `gs://bucket/directory/object.json`) or a pattern matching one or more
687      * files, such as `gs://bucket/directory/&#42;.json`. A request can
688      * contain at most 100 files, and each file can be up to 2 GB. See
689      * [Importing product
690      * information](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog)
691      * for the expected file format and setup instructions.
692      * </pre>
693      *
694      * <code>repeated string input_uris = 1 [(.google.api.field_behavior) = REQUIRED];</code>
695      *
696      * @param index The index of the element to return.
697      * @return The inputUris at the given index.
698      */
getInputUris(int index)699     public java.lang.String getInputUris(int index) {
700       return inputUris_.get(index);
701     }
702     /**
703      *
704      *
705      * <pre>
706      * Required. Google Cloud Storage URIs to input files. URI can be up to
707      * 2000 characters long. URIs can match the full object path (for example,
708      * `gs://bucket/directory/object.json`) or a pattern matching one or more
709      * files, such as `gs://bucket/directory/&#42;.json`. A request can
710      * contain at most 100 files, and each file can be up to 2 GB. See
711      * [Importing product
712      * information](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog)
713      * for the expected file format and setup instructions.
714      * </pre>
715      *
716      * <code>repeated string input_uris = 1 [(.google.api.field_behavior) = REQUIRED];</code>
717      *
718      * @param index The index of the value to return.
719      * @return The bytes of the inputUris at the given index.
720      */
getInputUrisBytes(int index)721     public com.google.protobuf.ByteString getInputUrisBytes(int index) {
722       return inputUris_.getByteString(index);
723     }
724     /**
725      *
726      *
727      * <pre>
728      * Required. Google Cloud Storage URIs to input files. URI can be up to
729      * 2000 characters long. URIs can match the full object path (for example,
730      * `gs://bucket/directory/object.json`) or a pattern matching one or more
731      * files, such as `gs://bucket/directory/&#42;.json`. A request can
732      * contain at most 100 files, and each file can be up to 2 GB. See
733      * [Importing product
734      * information](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog)
735      * for the expected file format and setup instructions.
736      * </pre>
737      *
738      * <code>repeated string input_uris = 1 [(.google.api.field_behavior) = REQUIRED];</code>
739      *
740      * @param index The index to set the value at.
741      * @param value The inputUris to set.
742      * @return This builder for chaining.
743      */
setInputUris(int index, java.lang.String value)744     public Builder setInputUris(int index, java.lang.String value) {
745       if (value == null) {
746         throw new NullPointerException();
747       }
748       ensureInputUrisIsMutable();
749       inputUris_.set(index, value);
750       onChanged();
751       return this;
752     }
753     /**
754      *
755      *
756      * <pre>
757      * Required. Google Cloud Storage URIs to input files. URI can be up to
758      * 2000 characters long. URIs can match the full object path (for example,
759      * `gs://bucket/directory/object.json`) or a pattern matching one or more
760      * files, such as `gs://bucket/directory/&#42;.json`. A request can
761      * contain at most 100 files, and each file can be up to 2 GB. See
762      * [Importing product
763      * information](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog)
764      * for the expected file format and setup instructions.
765      * </pre>
766      *
767      * <code>repeated string input_uris = 1 [(.google.api.field_behavior) = REQUIRED];</code>
768      *
769      * @param value The inputUris to add.
770      * @return This builder for chaining.
771      */
addInputUris(java.lang.String value)772     public Builder addInputUris(java.lang.String value) {
773       if (value == null) {
774         throw new NullPointerException();
775       }
776       ensureInputUrisIsMutable();
777       inputUris_.add(value);
778       onChanged();
779       return this;
780     }
781     /**
782      *
783      *
784      * <pre>
785      * Required. Google Cloud Storage URIs to input files. URI can be up to
786      * 2000 characters long. URIs can match the full object path (for example,
787      * `gs://bucket/directory/object.json`) or a pattern matching one or more
788      * files, such as `gs://bucket/directory/&#42;.json`. A request can
789      * contain at most 100 files, and each file can be up to 2 GB. See
790      * [Importing product
791      * information](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog)
792      * for the expected file format and setup instructions.
793      * </pre>
794      *
795      * <code>repeated string input_uris = 1 [(.google.api.field_behavior) = REQUIRED];</code>
796      *
797      * @param values The inputUris to add.
798      * @return This builder for chaining.
799      */
addAllInputUris(java.lang.Iterable<java.lang.String> values)800     public Builder addAllInputUris(java.lang.Iterable<java.lang.String> values) {
801       ensureInputUrisIsMutable();
802       com.google.protobuf.AbstractMessageLite.Builder.addAll(values, inputUris_);
803       onChanged();
804       return this;
805     }
806     /**
807      *
808      *
809      * <pre>
810      * Required. Google Cloud Storage URIs to input files. URI can be up to
811      * 2000 characters long. URIs can match the full object path (for example,
812      * `gs://bucket/directory/object.json`) or a pattern matching one or more
813      * files, such as `gs://bucket/directory/&#42;.json`. A request can
814      * contain at most 100 files, and each file can be up to 2 GB. See
815      * [Importing product
816      * information](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog)
817      * for the expected file format and setup instructions.
818      * </pre>
819      *
820      * <code>repeated string input_uris = 1 [(.google.api.field_behavior) = REQUIRED];</code>
821      *
822      * @return This builder for chaining.
823      */
clearInputUris()824     public Builder clearInputUris() {
825       inputUris_ = com.google.protobuf.LazyStringArrayList.EMPTY;
826       bitField0_ = (bitField0_ & ~0x00000001);
827       onChanged();
828       return this;
829     }
830     /**
831      *
832      *
833      * <pre>
834      * Required. Google Cloud Storage URIs to input files. URI can be up to
835      * 2000 characters long. URIs can match the full object path (for example,
836      * `gs://bucket/directory/object.json`) or a pattern matching one or more
837      * files, such as `gs://bucket/directory/&#42;.json`. A request can
838      * contain at most 100 files, and each file can be up to 2 GB. See
839      * [Importing product
840      * information](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog)
841      * for the expected file format and setup instructions.
842      * </pre>
843      *
844      * <code>repeated string input_uris = 1 [(.google.api.field_behavior) = REQUIRED];</code>
845      *
846      * @param value The bytes of the inputUris to add.
847      * @return This builder for chaining.
848      */
addInputUrisBytes(com.google.protobuf.ByteString value)849     public Builder addInputUrisBytes(com.google.protobuf.ByteString value) {
850       if (value == null) {
851         throw new NullPointerException();
852       }
853       checkByteStringIsUtf8(value);
854       ensureInputUrisIsMutable();
855       inputUris_.add(value);
856       onChanged();
857       return this;
858     }
859 
860     private java.lang.Object dataSchema_ = "";
861     /**
862      *
863      *
864      * <pre>
865      * The schema to use when parsing the data from the source.
866      * Supported values for product imports:
867      * * `product` (default): One JSON [Product][google.cloud.retail.v2.Product]
868      * per line. Each product must
869      *   have a valid [Product.id][google.cloud.retail.v2.Product.id].
870      * * `product_merchant_center`: See [Importing catalog data from Merchant
871      *   Center](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog#mc).
872      * Supported values for user events imports:
873      * * `user_event` (default): One JSON
874      * [UserEvent][google.cloud.retail.v2.UserEvent] per line.
875      * * `user_event_ga360`: Using
876      *   https://support.google.com/analytics/answer/3437719.
877      * Supported values for control imports:
878      * * `control` (default): One JSON [Control][google.cloud.retail.v2.Control]
879      * per line.
880      * Supported values for catalog attribute imports:
881      * * `catalog_attribute` (default): One CSV
882      * [CatalogAttribute][google.cloud.retail.v2.CatalogAttribute] per line.
883      * </pre>
884      *
885      * <code>string data_schema = 2;</code>
886      *
887      * @return The dataSchema.
888      */
getDataSchema()889     public java.lang.String getDataSchema() {
890       java.lang.Object ref = dataSchema_;
891       if (!(ref instanceof java.lang.String)) {
892         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
893         java.lang.String s = bs.toStringUtf8();
894         dataSchema_ = s;
895         return s;
896       } else {
897         return (java.lang.String) ref;
898       }
899     }
900     /**
901      *
902      *
903      * <pre>
904      * The schema to use when parsing the data from the source.
905      * Supported values for product imports:
906      * * `product` (default): One JSON [Product][google.cloud.retail.v2.Product]
907      * per line. Each product must
908      *   have a valid [Product.id][google.cloud.retail.v2.Product.id].
909      * * `product_merchant_center`: See [Importing catalog data from Merchant
910      *   Center](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog#mc).
911      * Supported values for user events imports:
912      * * `user_event` (default): One JSON
913      * [UserEvent][google.cloud.retail.v2.UserEvent] per line.
914      * * `user_event_ga360`: Using
915      *   https://support.google.com/analytics/answer/3437719.
916      * Supported values for control imports:
917      * * `control` (default): One JSON [Control][google.cloud.retail.v2.Control]
918      * per line.
919      * Supported values for catalog attribute imports:
920      * * `catalog_attribute` (default): One CSV
921      * [CatalogAttribute][google.cloud.retail.v2.CatalogAttribute] per line.
922      * </pre>
923      *
924      * <code>string data_schema = 2;</code>
925      *
926      * @return The bytes for dataSchema.
927      */
getDataSchemaBytes()928     public com.google.protobuf.ByteString getDataSchemaBytes() {
929       java.lang.Object ref = dataSchema_;
930       if (ref instanceof String) {
931         com.google.protobuf.ByteString b =
932             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
933         dataSchema_ = b;
934         return b;
935       } else {
936         return (com.google.protobuf.ByteString) ref;
937       }
938     }
939     /**
940      *
941      *
942      * <pre>
943      * The schema to use when parsing the data from the source.
944      * Supported values for product imports:
945      * * `product` (default): One JSON [Product][google.cloud.retail.v2.Product]
946      * per line. Each product must
947      *   have a valid [Product.id][google.cloud.retail.v2.Product.id].
948      * * `product_merchant_center`: See [Importing catalog data from Merchant
949      *   Center](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog#mc).
950      * Supported values for user events imports:
951      * * `user_event` (default): One JSON
952      * [UserEvent][google.cloud.retail.v2.UserEvent] per line.
953      * * `user_event_ga360`: Using
954      *   https://support.google.com/analytics/answer/3437719.
955      * Supported values for control imports:
956      * * `control` (default): One JSON [Control][google.cloud.retail.v2.Control]
957      * per line.
958      * Supported values for catalog attribute imports:
959      * * `catalog_attribute` (default): One CSV
960      * [CatalogAttribute][google.cloud.retail.v2.CatalogAttribute] per line.
961      * </pre>
962      *
963      * <code>string data_schema = 2;</code>
964      *
965      * @param value The dataSchema to set.
966      * @return This builder for chaining.
967      */
setDataSchema(java.lang.String value)968     public Builder setDataSchema(java.lang.String value) {
969       if (value == null) {
970         throw new NullPointerException();
971       }
972       dataSchema_ = value;
973       bitField0_ |= 0x00000002;
974       onChanged();
975       return this;
976     }
977     /**
978      *
979      *
980      * <pre>
981      * The schema to use when parsing the data from the source.
982      * Supported values for product imports:
983      * * `product` (default): One JSON [Product][google.cloud.retail.v2.Product]
984      * per line. Each product must
985      *   have a valid [Product.id][google.cloud.retail.v2.Product.id].
986      * * `product_merchant_center`: See [Importing catalog data from Merchant
987      *   Center](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog#mc).
988      * Supported values for user events imports:
989      * * `user_event` (default): One JSON
990      * [UserEvent][google.cloud.retail.v2.UserEvent] per line.
991      * * `user_event_ga360`: Using
992      *   https://support.google.com/analytics/answer/3437719.
993      * Supported values for control imports:
994      * * `control` (default): One JSON [Control][google.cloud.retail.v2.Control]
995      * per line.
996      * Supported values for catalog attribute imports:
997      * * `catalog_attribute` (default): One CSV
998      * [CatalogAttribute][google.cloud.retail.v2.CatalogAttribute] per line.
999      * </pre>
1000      *
1001      * <code>string data_schema = 2;</code>
1002      *
1003      * @return This builder for chaining.
1004      */
clearDataSchema()1005     public Builder clearDataSchema() {
1006       dataSchema_ = getDefaultInstance().getDataSchema();
1007       bitField0_ = (bitField0_ & ~0x00000002);
1008       onChanged();
1009       return this;
1010     }
1011     /**
1012      *
1013      *
1014      * <pre>
1015      * The schema to use when parsing the data from the source.
1016      * Supported values for product imports:
1017      * * `product` (default): One JSON [Product][google.cloud.retail.v2.Product]
1018      * per line. Each product must
1019      *   have a valid [Product.id][google.cloud.retail.v2.Product.id].
1020      * * `product_merchant_center`: See [Importing catalog data from Merchant
1021      *   Center](https://cloud.google.com/retail/recommendations-ai/docs/upload-catalog#mc).
1022      * Supported values for user events imports:
1023      * * `user_event` (default): One JSON
1024      * [UserEvent][google.cloud.retail.v2.UserEvent] per line.
1025      * * `user_event_ga360`: Using
1026      *   https://support.google.com/analytics/answer/3437719.
1027      * Supported values for control imports:
1028      * * `control` (default): One JSON [Control][google.cloud.retail.v2.Control]
1029      * per line.
1030      * Supported values for catalog attribute imports:
1031      * * `catalog_attribute` (default): One CSV
1032      * [CatalogAttribute][google.cloud.retail.v2.CatalogAttribute] per line.
1033      * </pre>
1034      *
1035      * <code>string data_schema = 2;</code>
1036      *
1037      * @param value The bytes for dataSchema to set.
1038      * @return This builder for chaining.
1039      */
setDataSchemaBytes(com.google.protobuf.ByteString value)1040     public Builder setDataSchemaBytes(com.google.protobuf.ByteString value) {
1041       if (value == null) {
1042         throw new NullPointerException();
1043       }
1044       checkByteStringIsUtf8(value);
1045       dataSchema_ = value;
1046       bitField0_ |= 0x00000002;
1047       onChanged();
1048       return this;
1049     }
1050 
1051     @java.lang.Override
setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)1052     public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) {
1053       return super.setUnknownFields(unknownFields);
1054     }
1055 
1056     @java.lang.Override
mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields)1057     public final Builder mergeUnknownFields(
1058         final com.google.protobuf.UnknownFieldSet unknownFields) {
1059       return super.mergeUnknownFields(unknownFields);
1060     }
1061 
1062     // @@protoc_insertion_point(builder_scope:google.cloud.retail.v2.GcsSource)
1063   }
1064 
1065   // @@protoc_insertion_point(class_scope:google.cloud.retail.v2.GcsSource)
1066   private static final com.google.cloud.retail.v2.GcsSource DEFAULT_INSTANCE;
1067 
1068   static {
1069     DEFAULT_INSTANCE = new com.google.cloud.retail.v2.GcsSource();
1070   }
1071 
getDefaultInstance()1072   public static com.google.cloud.retail.v2.GcsSource getDefaultInstance() {
1073     return DEFAULT_INSTANCE;
1074   }
1075 
1076   private static final com.google.protobuf.Parser<GcsSource> PARSER =
1077       new com.google.protobuf.AbstractParser<GcsSource>() {
1078         @java.lang.Override
1079         public GcsSource parsePartialFrom(
1080             com.google.protobuf.CodedInputStream input,
1081             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1082             throws com.google.protobuf.InvalidProtocolBufferException {
1083           Builder builder = newBuilder();
1084           try {
1085             builder.mergeFrom(input, extensionRegistry);
1086           } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1087             throw e.setUnfinishedMessage(builder.buildPartial());
1088           } catch (com.google.protobuf.UninitializedMessageException e) {
1089             throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
1090           } catch (java.io.IOException e) {
1091             throw new com.google.protobuf.InvalidProtocolBufferException(e)
1092                 .setUnfinishedMessage(builder.buildPartial());
1093           }
1094           return builder.buildPartial();
1095         }
1096       };
1097 
parser()1098   public static com.google.protobuf.Parser<GcsSource> parser() {
1099     return PARSER;
1100   }
1101 
1102   @java.lang.Override
getParserForType()1103   public com.google.protobuf.Parser<GcsSource> getParserForType() {
1104     return PARSER;
1105   }
1106 
1107   @java.lang.Override
getDefaultInstanceForType()1108   public com.google.cloud.retail.v2.GcsSource getDefaultInstanceForType() {
1109     return DEFAULT_INSTANCE;
1110   }
1111 }
1112