• 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/automl/v1beta1/data_items.proto
18 
19 package com.google.cloud.automl.v1beta1;
20 
21 /**
22  *
23  *
24  * <pre>
25  * A structured text document e.g. a PDF.
26  * </pre>
27  *
28  * Protobuf type {@code google.cloud.automl.v1beta1.Document}
29  */
30 public final class Document extends com.google.protobuf.GeneratedMessageV3
31     implements
32     // @@protoc_insertion_point(message_implements:google.cloud.automl.v1beta1.Document)
33     DocumentOrBuilder {
34   private static final long serialVersionUID = 0L;
35   // Use Document.newBuilder() to construct.
Document(com.google.protobuf.GeneratedMessageV3.Builder<?> builder)36   private Document(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
37     super(builder);
38   }
39 
Document()40   private Document() {
41     layout_ = java.util.Collections.emptyList();
42   }
43 
44   @java.lang.Override
45   @SuppressWarnings({"unused"})
newInstance(UnusedPrivateParameter unused)46   protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
47     return new Document();
48   }
49 
50   @java.lang.Override
getUnknownFields()51   public final com.google.protobuf.UnknownFieldSet getUnknownFields() {
52     return this.unknownFields;
53   }
54 
getDescriptor()55   public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
56     return com.google.cloud.automl.v1beta1.DataItems
57         .internal_static_google_cloud_automl_v1beta1_Document_descriptor;
58   }
59 
60   @java.lang.Override
61   protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()62       internalGetFieldAccessorTable() {
63     return com.google.cloud.automl.v1beta1.DataItems
64         .internal_static_google_cloud_automl_v1beta1_Document_fieldAccessorTable
65         .ensureFieldAccessorsInitialized(
66             com.google.cloud.automl.v1beta1.Document.class,
67             com.google.cloud.automl.v1beta1.Document.Builder.class);
68   }
69 
70   public interface LayoutOrBuilder
71       extends
72       // @@protoc_insertion_point(interface_extends:google.cloud.automl.v1beta1.Document.Layout)
73       com.google.protobuf.MessageOrBuilder {
74 
75     /**
76      *
77      *
78      * <pre>
79      * Text Segment that represents a segment in
80      * [document_text][google.cloud.automl.v1beta1.Document.document_text].
81      * </pre>
82      *
83      * <code>.google.cloud.automl.v1beta1.TextSegment text_segment = 1;</code>
84      *
85      * @return Whether the textSegment field is set.
86      */
hasTextSegment()87     boolean hasTextSegment();
88     /**
89      *
90      *
91      * <pre>
92      * Text Segment that represents a segment in
93      * [document_text][google.cloud.automl.v1beta1.Document.document_text].
94      * </pre>
95      *
96      * <code>.google.cloud.automl.v1beta1.TextSegment text_segment = 1;</code>
97      *
98      * @return The textSegment.
99      */
getTextSegment()100     com.google.cloud.automl.v1beta1.TextSegment getTextSegment();
101     /**
102      *
103      *
104      * <pre>
105      * Text Segment that represents a segment in
106      * [document_text][google.cloud.automl.v1beta1.Document.document_text].
107      * </pre>
108      *
109      * <code>.google.cloud.automl.v1beta1.TextSegment text_segment = 1;</code>
110      */
getTextSegmentOrBuilder()111     com.google.cloud.automl.v1beta1.TextSegmentOrBuilder getTextSegmentOrBuilder();
112 
113     /**
114      *
115      *
116      * <pre>
117      * Page number of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the original document, starts
118      * from 1.
119      * </pre>
120      *
121      * <code>int32 page_number = 2;</code>
122      *
123      * @return The pageNumber.
124      */
getPageNumber()125     int getPageNumber();
126 
127     /**
128      *
129      *
130      * <pre>
131      * The position of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the page.
132      * Contains exactly 4
133      * [normalized_vertices][google.cloud.automl.v1beta1.BoundingPoly.normalized_vertices]
134      * and they are connected by edges in the order provided, which will
135      * represent a rectangle parallel to the frame. The
136      * [NormalizedVertex-s][google.cloud.automl.v1beta1.NormalizedVertex] are
137      * relative to the page.
138      * Coordinates are based on top-left as point (0,0).
139      * </pre>
140      *
141      * <code>.google.cloud.automl.v1beta1.BoundingPoly bounding_poly = 3;</code>
142      *
143      * @return Whether the boundingPoly field is set.
144      */
hasBoundingPoly()145     boolean hasBoundingPoly();
146     /**
147      *
148      *
149      * <pre>
150      * The position of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the page.
151      * Contains exactly 4
152      * [normalized_vertices][google.cloud.automl.v1beta1.BoundingPoly.normalized_vertices]
153      * and they are connected by edges in the order provided, which will
154      * represent a rectangle parallel to the frame. The
155      * [NormalizedVertex-s][google.cloud.automl.v1beta1.NormalizedVertex] are
156      * relative to the page.
157      * Coordinates are based on top-left as point (0,0).
158      * </pre>
159      *
160      * <code>.google.cloud.automl.v1beta1.BoundingPoly bounding_poly = 3;</code>
161      *
162      * @return The boundingPoly.
163      */
getBoundingPoly()164     com.google.cloud.automl.v1beta1.BoundingPoly getBoundingPoly();
165     /**
166      *
167      *
168      * <pre>
169      * The position of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the page.
170      * Contains exactly 4
171      * [normalized_vertices][google.cloud.automl.v1beta1.BoundingPoly.normalized_vertices]
172      * and they are connected by edges in the order provided, which will
173      * represent a rectangle parallel to the frame. The
174      * [NormalizedVertex-s][google.cloud.automl.v1beta1.NormalizedVertex] are
175      * relative to the page.
176      * Coordinates are based on top-left as point (0,0).
177      * </pre>
178      *
179      * <code>.google.cloud.automl.v1beta1.BoundingPoly bounding_poly = 3;</code>
180      */
getBoundingPolyOrBuilder()181     com.google.cloud.automl.v1beta1.BoundingPolyOrBuilder getBoundingPolyOrBuilder();
182 
183     /**
184      *
185      *
186      * <pre>
187      * The type of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in document.
188      * </pre>
189      *
190      * <code>.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType text_segment_type = 4;
191      * </code>
192      *
193      * @return The enum numeric value on the wire for textSegmentType.
194      */
getTextSegmentTypeValue()195     int getTextSegmentTypeValue();
196     /**
197      *
198      *
199      * <pre>
200      * The type of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in document.
201      * </pre>
202      *
203      * <code>.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType text_segment_type = 4;
204      * </code>
205      *
206      * @return The textSegmentType.
207      */
getTextSegmentType()208     com.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType getTextSegmentType();
209   }
210   /**
211    *
212    *
213    * <pre>
214    * Describes the layout information of a [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the document.
215    * </pre>
216    *
217    * Protobuf type {@code google.cloud.automl.v1beta1.Document.Layout}
218    */
219   public static final class Layout extends com.google.protobuf.GeneratedMessageV3
220       implements
221       // @@protoc_insertion_point(message_implements:google.cloud.automl.v1beta1.Document.Layout)
222       LayoutOrBuilder {
223     private static final long serialVersionUID = 0L;
224     // Use Layout.newBuilder() to construct.
Layout(com.google.protobuf.GeneratedMessageV3.Builder<?> builder)225     private Layout(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
226       super(builder);
227     }
228 
Layout()229     private Layout() {
230       textSegmentType_ = 0;
231     }
232 
233     @java.lang.Override
234     @SuppressWarnings({"unused"})
newInstance(UnusedPrivateParameter unused)235     protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
236       return new Layout();
237     }
238 
239     @java.lang.Override
getUnknownFields()240     public final com.google.protobuf.UnknownFieldSet getUnknownFields() {
241       return this.unknownFields;
242     }
243 
getDescriptor()244     public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
245       return com.google.cloud.automl.v1beta1.DataItems
246           .internal_static_google_cloud_automl_v1beta1_Document_Layout_descriptor;
247     }
248 
249     @java.lang.Override
250     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()251         internalGetFieldAccessorTable() {
252       return com.google.cloud.automl.v1beta1.DataItems
253           .internal_static_google_cloud_automl_v1beta1_Document_Layout_fieldAccessorTable
254           .ensureFieldAccessorsInitialized(
255               com.google.cloud.automl.v1beta1.Document.Layout.class,
256               com.google.cloud.automl.v1beta1.Document.Layout.Builder.class);
257     }
258 
259     /**
260      *
261      *
262      * <pre>
263      * The type of TextSegment in the context of the original document.
264      * </pre>
265      *
266      * Protobuf enum {@code google.cloud.automl.v1beta1.Document.Layout.TextSegmentType}
267      */
268     public enum TextSegmentType implements com.google.protobuf.ProtocolMessageEnum {
269       /**
270        *
271        *
272        * <pre>
273        * Should not be used.
274        * </pre>
275        *
276        * <code>TEXT_SEGMENT_TYPE_UNSPECIFIED = 0;</code>
277        */
278       TEXT_SEGMENT_TYPE_UNSPECIFIED(0),
279       /**
280        *
281        *
282        * <pre>
283        * The text segment is a token. e.g. word.
284        * </pre>
285        *
286        * <code>TOKEN = 1;</code>
287        */
288       TOKEN(1),
289       /**
290        *
291        *
292        * <pre>
293        * The text segment is a paragraph.
294        * </pre>
295        *
296        * <code>PARAGRAPH = 2;</code>
297        */
298       PARAGRAPH(2),
299       /**
300        *
301        *
302        * <pre>
303        * The text segment is a form field.
304        * </pre>
305        *
306        * <code>FORM_FIELD = 3;</code>
307        */
308       FORM_FIELD(3),
309       /**
310        *
311        *
312        * <pre>
313        * The text segment is the name part of a form field. It will be treated
314        * as child of another FORM_FIELD TextSegment if its span is subspan of
315        * another TextSegment with type FORM_FIELD.
316        * </pre>
317        *
318        * <code>FORM_FIELD_NAME = 4;</code>
319        */
320       FORM_FIELD_NAME(4),
321       /**
322        *
323        *
324        * <pre>
325        * The text segment is the text content part of a form field. It will be
326        * treated as child of another FORM_FIELD TextSegment if its span is
327        * subspan of another TextSegment with type FORM_FIELD.
328        * </pre>
329        *
330        * <code>FORM_FIELD_CONTENTS = 5;</code>
331        */
332       FORM_FIELD_CONTENTS(5),
333       /**
334        *
335        *
336        * <pre>
337        * The text segment is a whole table, including headers, and all rows.
338        * </pre>
339        *
340        * <code>TABLE = 6;</code>
341        */
342       TABLE(6),
343       /**
344        *
345        *
346        * <pre>
347        * The text segment is a table's headers. It will be treated as child of
348        * another TABLE TextSegment if its span is subspan of another TextSegment
349        * with type TABLE.
350        * </pre>
351        *
352        * <code>TABLE_HEADER = 7;</code>
353        */
354       TABLE_HEADER(7),
355       /**
356        *
357        *
358        * <pre>
359        * The text segment is a row in table. It will be treated as child of
360        * another TABLE TextSegment if its span is subspan of another TextSegment
361        * with type TABLE.
362        * </pre>
363        *
364        * <code>TABLE_ROW = 8;</code>
365        */
366       TABLE_ROW(8),
367       /**
368        *
369        *
370        * <pre>
371        * The text segment is a cell in table. It will be treated as child of
372        * another TABLE_ROW TextSegment if its span is subspan of another
373        * TextSegment with type TABLE_ROW.
374        * </pre>
375        *
376        * <code>TABLE_CELL = 9;</code>
377        */
378       TABLE_CELL(9),
379       UNRECOGNIZED(-1),
380       ;
381 
382       /**
383        *
384        *
385        * <pre>
386        * Should not be used.
387        * </pre>
388        *
389        * <code>TEXT_SEGMENT_TYPE_UNSPECIFIED = 0;</code>
390        */
391       public static final int TEXT_SEGMENT_TYPE_UNSPECIFIED_VALUE = 0;
392       /**
393        *
394        *
395        * <pre>
396        * The text segment is a token. e.g. word.
397        * </pre>
398        *
399        * <code>TOKEN = 1;</code>
400        */
401       public static final int TOKEN_VALUE = 1;
402       /**
403        *
404        *
405        * <pre>
406        * The text segment is a paragraph.
407        * </pre>
408        *
409        * <code>PARAGRAPH = 2;</code>
410        */
411       public static final int PARAGRAPH_VALUE = 2;
412       /**
413        *
414        *
415        * <pre>
416        * The text segment is a form field.
417        * </pre>
418        *
419        * <code>FORM_FIELD = 3;</code>
420        */
421       public static final int FORM_FIELD_VALUE = 3;
422       /**
423        *
424        *
425        * <pre>
426        * The text segment is the name part of a form field. It will be treated
427        * as child of another FORM_FIELD TextSegment if its span is subspan of
428        * another TextSegment with type FORM_FIELD.
429        * </pre>
430        *
431        * <code>FORM_FIELD_NAME = 4;</code>
432        */
433       public static final int FORM_FIELD_NAME_VALUE = 4;
434       /**
435        *
436        *
437        * <pre>
438        * The text segment is the text content part of a form field. It will be
439        * treated as child of another FORM_FIELD TextSegment if its span is
440        * subspan of another TextSegment with type FORM_FIELD.
441        * </pre>
442        *
443        * <code>FORM_FIELD_CONTENTS = 5;</code>
444        */
445       public static final int FORM_FIELD_CONTENTS_VALUE = 5;
446       /**
447        *
448        *
449        * <pre>
450        * The text segment is a whole table, including headers, and all rows.
451        * </pre>
452        *
453        * <code>TABLE = 6;</code>
454        */
455       public static final int TABLE_VALUE = 6;
456       /**
457        *
458        *
459        * <pre>
460        * The text segment is a table's headers. It will be treated as child of
461        * another TABLE TextSegment if its span is subspan of another TextSegment
462        * with type TABLE.
463        * </pre>
464        *
465        * <code>TABLE_HEADER = 7;</code>
466        */
467       public static final int TABLE_HEADER_VALUE = 7;
468       /**
469        *
470        *
471        * <pre>
472        * The text segment is a row in table. It will be treated as child of
473        * another TABLE TextSegment if its span is subspan of another TextSegment
474        * with type TABLE.
475        * </pre>
476        *
477        * <code>TABLE_ROW = 8;</code>
478        */
479       public static final int TABLE_ROW_VALUE = 8;
480       /**
481        *
482        *
483        * <pre>
484        * The text segment is a cell in table. It will be treated as child of
485        * another TABLE_ROW TextSegment if its span is subspan of another
486        * TextSegment with type TABLE_ROW.
487        * </pre>
488        *
489        * <code>TABLE_CELL = 9;</code>
490        */
491       public static final int TABLE_CELL_VALUE = 9;
492 
getNumber()493       public final int getNumber() {
494         if (this == UNRECOGNIZED) {
495           throw new java.lang.IllegalArgumentException(
496               "Can't get the number of an unknown enum value.");
497         }
498         return value;
499       }
500 
501       /**
502        * @param value The numeric wire value of the corresponding enum entry.
503        * @return The enum associated with the given numeric wire value.
504        * @deprecated Use {@link #forNumber(int)} instead.
505        */
506       @java.lang.Deprecated
valueOf(int value)507       public static TextSegmentType valueOf(int value) {
508         return forNumber(value);
509       }
510 
511       /**
512        * @param value The numeric wire value of the corresponding enum entry.
513        * @return The enum associated with the given numeric wire value.
514        */
forNumber(int value)515       public static TextSegmentType forNumber(int value) {
516         switch (value) {
517           case 0:
518             return TEXT_SEGMENT_TYPE_UNSPECIFIED;
519           case 1:
520             return TOKEN;
521           case 2:
522             return PARAGRAPH;
523           case 3:
524             return FORM_FIELD;
525           case 4:
526             return FORM_FIELD_NAME;
527           case 5:
528             return FORM_FIELD_CONTENTS;
529           case 6:
530             return TABLE;
531           case 7:
532             return TABLE_HEADER;
533           case 8:
534             return TABLE_ROW;
535           case 9:
536             return TABLE_CELL;
537           default:
538             return null;
539         }
540       }
541 
542       public static com.google.protobuf.Internal.EnumLiteMap<TextSegmentType>
internalGetValueMap()543           internalGetValueMap() {
544         return internalValueMap;
545       }
546 
547       private static final com.google.protobuf.Internal.EnumLiteMap<TextSegmentType>
548           internalValueMap =
549               new com.google.protobuf.Internal.EnumLiteMap<TextSegmentType>() {
550                 public TextSegmentType findValueByNumber(int number) {
551                   return TextSegmentType.forNumber(number);
552                 }
553               };
554 
getValueDescriptor()555       public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() {
556         if (this == UNRECOGNIZED) {
557           throw new java.lang.IllegalStateException(
558               "Can't get the descriptor of an unrecognized enum value.");
559         }
560         return getDescriptor().getValues().get(ordinal());
561       }
562 
getDescriptorForType()563       public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() {
564         return getDescriptor();
565       }
566 
getDescriptor()567       public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() {
568         return com.google.cloud.automl.v1beta1.Document.Layout.getDescriptor()
569             .getEnumTypes()
570             .get(0);
571       }
572 
573       private static final TextSegmentType[] VALUES = values();
574 
valueOf( com.google.protobuf.Descriptors.EnumValueDescriptor desc)575       public static TextSegmentType valueOf(
576           com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
577         if (desc.getType() != getDescriptor()) {
578           throw new java.lang.IllegalArgumentException("EnumValueDescriptor is not for this type.");
579         }
580         if (desc.getIndex() == -1) {
581           return UNRECOGNIZED;
582         }
583         return VALUES[desc.getIndex()];
584       }
585 
586       private final int value;
587 
TextSegmentType(int value)588       private TextSegmentType(int value) {
589         this.value = value;
590       }
591 
592       // @@protoc_insertion_point(enum_scope:google.cloud.automl.v1beta1.Document.Layout.TextSegmentType)
593     }
594 
595     public static final int TEXT_SEGMENT_FIELD_NUMBER = 1;
596     private com.google.cloud.automl.v1beta1.TextSegment textSegment_;
597     /**
598      *
599      *
600      * <pre>
601      * Text Segment that represents a segment in
602      * [document_text][google.cloud.automl.v1beta1.Document.document_text].
603      * </pre>
604      *
605      * <code>.google.cloud.automl.v1beta1.TextSegment text_segment = 1;</code>
606      *
607      * @return Whether the textSegment field is set.
608      */
609     @java.lang.Override
hasTextSegment()610     public boolean hasTextSegment() {
611       return textSegment_ != null;
612     }
613     /**
614      *
615      *
616      * <pre>
617      * Text Segment that represents a segment in
618      * [document_text][google.cloud.automl.v1beta1.Document.document_text].
619      * </pre>
620      *
621      * <code>.google.cloud.automl.v1beta1.TextSegment text_segment = 1;</code>
622      *
623      * @return The textSegment.
624      */
625     @java.lang.Override
getTextSegment()626     public com.google.cloud.automl.v1beta1.TextSegment getTextSegment() {
627       return textSegment_ == null
628           ? com.google.cloud.automl.v1beta1.TextSegment.getDefaultInstance()
629           : textSegment_;
630     }
631     /**
632      *
633      *
634      * <pre>
635      * Text Segment that represents a segment in
636      * [document_text][google.cloud.automl.v1beta1.Document.document_text].
637      * </pre>
638      *
639      * <code>.google.cloud.automl.v1beta1.TextSegment text_segment = 1;</code>
640      */
641     @java.lang.Override
getTextSegmentOrBuilder()642     public com.google.cloud.automl.v1beta1.TextSegmentOrBuilder getTextSegmentOrBuilder() {
643       return textSegment_ == null
644           ? com.google.cloud.automl.v1beta1.TextSegment.getDefaultInstance()
645           : textSegment_;
646     }
647 
648     public static final int PAGE_NUMBER_FIELD_NUMBER = 2;
649     private int pageNumber_ = 0;
650     /**
651      *
652      *
653      * <pre>
654      * Page number of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the original document, starts
655      * from 1.
656      * </pre>
657      *
658      * <code>int32 page_number = 2;</code>
659      *
660      * @return The pageNumber.
661      */
662     @java.lang.Override
getPageNumber()663     public int getPageNumber() {
664       return pageNumber_;
665     }
666 
667     public static final int BOUNDING_POLY_FIELD_NUMBER = 3;
668     private com.google.cloud.automl.v1beta1.BoundingPoly boundingPoly_;
669     /**
670      *
671      *
672      * <pre>
673      * The position of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the page.
674      * Contains exactly 4
675      * [normalized_vertices][google.cloud.automl.v1beta1.BoundingPoly.normalized_vertices]
676      * and they are connected by edges in the order provided, which will
677      * represent a rectangle parallel to the frame. The
678      * [NormalizedVertex-s][google.cloud.automl.v1beta1.NormalizedVertex] are
679      * relative to the page.
680      * Coordinates are based on top-left as point (0,0).
681      * </pre>
682      *
683      * <code>.google.cloud.automl.v1beta1.BoundingPoly bounding_poly = 3;</code>
684      *
685      * @return Whether the boundingPoly field is set.
686      */
687     @java.lang.Override
hasBoundingPoly()688     public boolean hasBoundingPoly() {
689       return boundingPoly_ != null;
690     }
691     /**
692      *
693      *
694      * <pre>
695      * The position of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the page.
696      * Contains exactly 4
697      * [normalized_vertices][google.cloud.automl.v1beta1.BoundingPoly.normalized_vertices]
698      * and they are connected by edges in the order provided, which will
699      * represent a rectangle parallel to the frame. The
700      * [NormalizedVertex-s][google.cloud.automl.v1beta1.NormalizedVertex] are
701      * relative to the page.
702      * Coordinates are based on top-left as point (0,0).
703      * </pre>
704      *
705      * <code>.google.cloud.automl.v1beta1.BoundingPoly bounding_poly = 3;</code>
706      *
707      * @return The boundingPoly.
708      */
709     @java.lang.Override
getBoundingPoly()710     public com.google.cloud.automl.v1beta1.BoundingPoly getBoundingPoly() {
711       return boundingPoly_ == null
712           ? com.google.cloud.automl.v1beta1.BoundingPoly.getDefaultInstance()
713           : boundingPoly_;
714     }
715     /**
716      *
717      *
718      * <pre>
719      * The position of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the page.
720      * Contains exactly 4
721      * [normalized_vertices][google.cloud.automl.v1beta1.BoundingPoly.normalized_vertices]
722      * and they are connected by edges in the order provided, which will
723      * represent a rectangle parallel to the frame. The
724      * [NormalizedVertex-s][google.cloud.automl.v1beta1.NormalizedVertex] are
725      * relative to the page.
726      * Coordinates are based on top-left as point (0,0).
727      * </pre>
728      *
729      * <code>.google.cloud.automl.v1beta1.BoundingPoly bounding_poly = 3;</code>
730      */
731     @java.lang.Override
getBoundingPolyOrBuilder()732     public com.google.cloud.automl.v1beta1.BoundingPolyOrBuilder getBoundingPolyOrBuilder() {
733       return boundingPoly_ == null
734           ? com.google.cloud.automl.v1beta1.BoundingPoly.getDefaultInstance()
735           : boundingPoly_;
736     }
737 
738     public static final int TEXT_SEGMENT_TYPE_FIELD_NUMBER = 4;
739     private int textSegmentType_ = 0;
740     /**
741      *
742      *
743      * <pre>
744      * The type of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in document.
745      * </pre>
746      *
747      * <code>.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType text_segment_type = 4;
748      * </code>
749      *
750      * @return The enum numeric value on the wire for textSegmentType.
751      */
752     @java.lang.Override
getTextSegmentTypeValue()753     public int getTextSegmentTypeValue() {
754       return textSegmentType_;
755     }
756     /**
757      *
758      *
759      * <pre>
760      * The type of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in document.
761      * </pre>
762      *
763      * <code>.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType text_segment_type = 4;
764      * </code>
765      *
766      * @return The textSegmentType.
767      */
768     @java.lang.Override
getTextSegmentType()769     public com.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType getTextSegmentType() {
770       com.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType result =
771           com.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType.forNumber(
772               textSegmentType_);
773       return result == null
774           ? com.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType.UNRECOGNIZED
775           : result;
776     }
777 
778     private byte memoizedIsInitialized = -1;
779 
780     @java.lang.Override
isInitialized()781     public final boolean isInitialized() {
782       byte isInitialized = memoizedIsInitialized;
783       if (isInitialized == 1) return true;
784       if (isInitialized == 0) return false;
785 
786       memoizedIsInitialized = 1;
787       return true;
788     }
789 
790     @java.lang.Override
writeTo(com.google.protobuf.CodedOutputStream output)791     public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
792       if (textSegment_ != null) {
793         output.writeMessage(1, getTextSegment());
794       }
795       if (pageNumber_ != 0) {
796         output.writeInt32(2, pageNumber_);
797       }
798       if (boundingPoly_ != null) {
799         output.writeMessage(3, getBoundingPoly());
800       }
801       if (textSegmentType_
802           != com.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType
803               .TEXT_SEGMENT_TYPE_UNSPECIFIED
804               .getNumber()) {
805         output.writeEnum(4, textSegmentType_);
806       }
807       getUnknownFields().writeTo(output);
808     }
809 
810     @java.lang.Override
getSerializedSize()811     public int getSerializedSize() {
812       int size = memoizedSize;
813       if (size != -1) return size;
814 
815       size = 0;
816       if (textSegment_ != null) {
817         size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, getTextSegment());
818       }
819       if (pageNumber_ != 0) {
820         size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, pageNumber_);
821       }
822       if (boundingPoly_ != null) {
823         size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, getBoundingPoly());
824       }
825       if (textSegmentType_
826           != com.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType
827               .TEXT_SEGMENT_TYPE_UNSPECIFIED
828               .getNumber()) {
829         size += com.google.protobuf.CodedOutputStream.computeEnumSize(4, textSegmentType_);
830       }
831       size += getUnknownFields().getSerializedSize();
832       memoizedSize = size;
833       return size;
834     }
835 
836     @java.lang.Override
equals(final java.lang.Object obj)837     public boolean equals(final java.lang.Object obj) {
838       if (obj == this) {
839         return true;
840       }
841       if (!(obj instanceof com.google.cloud.automl.v1beta1.Document.Layout)) {
842         return super.equals(obj);
843       }
844       com.google.cloud.automl.v1beta1.Document.Layout other =
845           (com.google.cloud.automl.v1beta1.Document.Layout) obj;
846 
847       if (hasTextSegment() != other.hasTextSegment()) return false;
848       if (hasTextSegment()) {
849         if (!getTextSegment().equals(other.getTextSegment())) return false;
850       }
851       if (getPageNumber() != other.getPageNumber()) return false;
852       if (hasBoundingPoly() != other.hasBoundingPoly()) return false;
853       if (hasBoundingPoly()) {
854         if (!getBoundingPoly().equals(other.getBoundingPoly())) return false;
855       }
856       if (textSegmentType_ != other.textSegmentType_) return false;
857       if (!getUnknownFields().equals(other.getUnknownFields())) return false;
858       return true;
859     }
860 
861     @java.lang.Override
hashCode()862     public int hashCode() {
863       if (memoizedHashCode != 0) {
864         return memoizedHashCode;
865       }
866       int hash = 41;
867       hash = (19 * hash) + getDescriptor().hashCode();
868       if (hasTextSegment()) {
869         hash = (37 * hash) + TEXT_SEGMENT_FIELD_NUMBER;
870         hash = (53 * hash) + getTextSegment().hashCode();
871       }
872       hash = (37 * hash) + PAGE_NUMBER_FIELD_NUMBER;
873       hash = (53 * hash) + getPageNumber();
874       if (hasBoundingPoly()) {
875         hash = (37 * hash) + BOUNDING_POLY_FIELD_NUMBER;
876         hash = (53 * hash) + getBoundingPoly().hashCode();
877       }
878       hash = (37 * hash) + TEXT_SEGMENT_TYPE_FIELD_NUMBER;
879       hash = (53 * hash) + textSegmentType_;
880       hash = (29 * hash) + getUnknownFields().hashCode();
881       memoizedHashCode = hash;
882       return hash;
883     }
884 
parseFrom( java.nio.ByteBuffer data)885     public static com.google.cloud.automl.v1beta1.Document.Layout parseFrom(
886         java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException {
887       return PARSER.parseFrom(data);
888     }
889 
parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)890     public static com.google.cloud.automl.v1beta1.Document.Layout parseFrom(
891         java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
892         throws com.google.protobuf.InvalidProtocolBufferException {
893       return PARSER.parseFrom(data, extensionRegistry);
894     }
895 
parseFrom( com.google.protobuf.ByteString data)896     public static com.google.cloud.automl.v1beta1.Document.Layout parseFrom(
897         com.google.protobuf.ByteString data)
898         throws com.google.protobuf.InvalidProtocolBufferException {
899       return PARSER.parseFrom(data);
900     }
901 
parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)902     public static com.google.cloud.automl.v1beta1.Document.Layout parseFrom(
903         com.google.protobuf.ByteString data,
904         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
905         throws com.google.protobuf.InvalidProtocolBufferException {
906       return PARSER.parseFrom(data, extensionRegistry);
907     }
908 
parseFrom(byte[] data)909     public static com.google.cloud.automl.v1beta1.Document.Layout parseFrom(byte[] data)
910         throws com.google.protobuf.InvalidProtocolBufferException {
911       return PARSER.parseFrom(data);
912     }
913 
parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)914     public static com.google.cloud.automl.v1beta1.Document.Layout parseFrom(
915         byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
916         throws com.google.protobuf.InvalidProtocolBufferException {
917       return PARSER.parseFrom(data, extensionRegistry);
918     }
919 
parseFrom( java.io.InputStream input)920     public static com.google.cloud.automl.v1beta1.Document.Layout parseFrom(
921         java.io.InputStream input) throws java.io.IOException {
922       return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
923     }
924 
parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)925     public static com.google.cloud.automl.v1beta1.Document.Layout parseFrom(
926         java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
927         throws java.io.IOException {
928       return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
929           PARSER, input, extensionRegistry);
930     }
931 
parseDelimitedFrom( java.io.InputStream input)932     public static com.google.cloud.automl.v1beta1.Document.Layout parseDelimitedFrom(
933         java.io.InputStream input) throws java.io.IOException {
934       return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
935     }
936 
parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)937     public static com.google.cloud.automl.v1beta1.Document.Layout parseDelimitedFrom(
938         java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
939         throws java.io.IOException {
940       return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(
941           PARSER, input, extensionRegistry);
942     }
943 
parseFrom( com.google.protobuf.CodedInputStream input)944     public static com.google.cloud.automl.v1beta1.Document.Layout parseFrom(
945         com.google.protobuf.CodedInputStream input) throws java.io.IOException {
946       return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
947     }
948 
parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)949     public static com.google.cloud.automl.v1beta1.Document.Layout parseFrom(
950         com.google.protobuf.CodedInputStream input,
951         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
952         throws java.io.IOException {
953       return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
954           PARSER, input, extensionRegistry);
955     }
956 
957     @java.lang.Override
newBuilderForType()958     public Builder newBuilderForType() {
959       return newBuilder();
960     }
961 
newBuilder()962     public static Builder newBuilder() {
963       return DEFAULT_INSTANCE.toBuilder();
964     }
965 
newBuilder(com.google.cloud.automl.v1beta1.Document.Layout prototype)966     public static Builder newBuilder(com.google.cloud.automl.v1beta1.Document.Layout prototype) {
967       return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
968     }
969 
970     @java.lang.Override
toBuilder()971     public Builder toBuilder() {
972       return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
973     }
974 
975     @java.lang.Override
newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent)976     protected Builder newBuilderForType(
977         com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
978       Builder builder = new Builder(parent);
979       return builder;
980     }
981     /**
982      *
983      *
984      * <pre>
985      * Describes the layout information of a [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the document.
986      * </pre>
987      *
988      * Protobuf type {@code google.cloud.automl.v1beta1.Document.Layout}
989      */
990     public static final class Builder
991         extends com.google.protobuf.GeneratedMessageV3.Builder<Builder>
992         implements
993         // @@protoc_insertion_point(builder_implements:google.cloud.automl.v1beta1.Document.Layout)
994         com.google.cloud.automl.v1beta1.Document.LayoutOrBuilder {
getDescriptor()995       public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
996         return com.google.cloud.automl.v1beta1.DataItems
997             .internal_static_google_cloud_automl_v1beta1_Document_Layout_descriptor;
998       }
999 
1000       @java.lang.Override
1001       protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()1002           internalGetFieldAccessorTable() {
1003         return com.google.cloud.automl.v1beta1.DataItems
1004             .internal_static_google_cloud_automl_v1beta1_Document_Layout_fieldAccessorTable
1005             .ensureFieldAccessorsInitialized(
1006                 com.google.cloud.automl.v1beta1.Document.Layout.class,
1007                 com.google.cloud.automl.v1beta1.Document.Layout.Builder.class);
1008       }
1009 
1010       // Construct using com.google.cloud.automl.v1beta1.Document.Layout.newBuilder()
Builder()1011       private Builder() {}
1012 
Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)1013       private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
1014         super(parent);
1015       }
1016 
1017       @java.lang.Override
clear()1018       public Builder clear() {
1019         super.clear();
1020         bitField0_ = 0;
1021         textSegment_ = null;
1022         if (textSegmentBuilder_ != null) {
1023           textSegmentBuilder_.dispose();
1024           textSegmentBuilder_ = null;
1025         }
1026         pageNumber_ = 0;
1027         boundingPoly_ = null;
1028         if (boundingPolyBuilder_ != null) {
1029           boundingPolyBuilder_.dispose();
1030           boundingPolyBuilder_ = null;
1031         }
1032         textSegmentType_ = 0;
1033         return this;
1034       }
1035 
1036       @java.lang.Override
getDescriptorForType()1037       public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() {
1038         return com.google.cloud.automl.v1beta1.DataItems
1039             .internal_static_google_cloud_automl_v1beta1_Document_Layout_descriptor;
1040       }
1041 
1042       @java.lang.Override
getDefaultInstanceForType()1043       public com.google.cloud.automl.v1beta1.Document.Layout getDefaultInstanceForType() {
1044         return com.google.cloud.automl.v1beta1.Document.Layout.getDefaultInstance();
1045       }
1046 
1047       @java.lang.Override
build()1048       public com.google.cloud.automl.v1beta1.Document.Layout build() {
1049         com.google.cloud.automl.v1beta1.Document.Layout result = buildPartial();
1050         if (!result.isInitialized()) {
1051           throw newUninitializedMessageException(result);
1052         }
1053         return result;
1054       }
1055 
1056       @java.lang.Override
buildPartial()1057       public com.google.cloud.automl.v1beta1.Document.Layout buildPartial() {
1058         com.google.cloud.automl.v1beta1.Document.Layout result =
1059             new com.google.cloud.automl.v1beta1.Document.Layout(this);
1060         if (bitField0_ != 0) {
1061           buildPartial0(result);
1062         }
1063         onBuilt();
1064         return result;
1065       }
1066 
buildPartial0(com.google.cloud.automl.v1beta1.Document.Layout result)1067       private void buildPartial0(com.google.cloud.automl.v1beta1.Document.Layout result) {
1068         int from_bitField0_ = bitField0_;
1069         if (((from_bitField0_ & 0x00000001) != 0)) {
1070           result.textSegment_ =
1071               textSegmentBuilder_ == null ? textSegment_ : textSegmentBuilder_.build();
1072         }
1073         if (((from_bitField0_ & 0x00000002) != 0)) {
1074           result.pageNumber_ = pageNumber_;
1075         }
1076         if (((from_bitField0_ & 0x00000004) != 0)) {
1077           result.boundingPoly_ =
1078               boundingPolyBuilder_ == null ? boundingPoly_ : boundingPolyBuilder_.build();
1079         }
1080         if (((from_bitField0_ & 0x00000008) != 0)) {
1081           result.textSegmentType_ = textSegmentType_;
1082         }
1083       }
1084 
1085       @java.lang.Override
clone()1086       public Builder clone() {
1087         return super.clone();
1088       }
1089 
1090       @java.lang.Override
setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)1091       public Builder setField(
1092           com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
1093         return super.setField(field, value);
1094       }
1095 
1096       @java.lang.Override
clearField(com.google.protobuf.Descriptors.FieldDescriptor field)1097       public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) {
1098         return super.clearField(field);
1099       }
1100 
1101       @java.lang.Override
clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)1102       public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) {
1103         return super.clearOneof(oneof);
1104       }
1105 
1106       @java.lang.Override
setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)1107       public Builder setRepeatedField(
1108           com.google.protobuf.Descriptors.FieldDescriptor field,
1109           int index,
1110           java.lang.Object value) {
1111         return super.setRepeatedField(field, index, value);
1112       }
1113 
1114       @java.lang.Override
addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)1115       public Builder addRepeatedField(
1116           com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
1117         return super.addRepeatedField(field, value);
1118       }
1119 
1120       @java.lang.Override
mergeFrom(com.google.protobuf.Message other)1121       public Builder mergeFrom(com.google.protobuf.Message other) {
1122         if (other instanceof com.google.cloud.automl.v1beta1.Document.Layout) {
1123           return mergeFrom((com.google.cloud.automl.v1beta1.Document.Layout) other);
1124         } else {
1125           super.mergeFrom(other);
1126           return this;
1127         }
1128       }
1129 
mergeFrom(com.google.cloud.automl.v1beta1.Document.Layout other)1130       public Builder mergeFrom(com.google.cloud.automl.v1beta1.Document.Layout other) {
1131         if (other == com.google.cloud.automl.v1beta1.Document.Layout.getDefaultInstance())
1132           return this;
1133         if (other.hasTextSegment()) {
1134           mergeTextSegment(other.getTextSegment());
1135         }
1136         if (other.getPageNumber() != 0) {
1137           setPageNumber(other.getPageNumber());
1138         }
1139         if (other.hasBoundingPoly()) {
1140           mergeBoundingPoly(other.getBoundingPoly());
1141         }
1142         if (other.textSegmentType_ != 0) {
1143           setTextSegmentTypeValue(other.getTextSegmentTypeValue());
1144         }
1145         this.mergeUnknownFields(other.getUnknownFields());
1146         onChanged();
1147         return this;
1148       }
1149 
1150       @java.lang.Override
isInitialized()1151       public final boolean isInitialized() {
1152         return true;
1153       }
1154 
1155       @java.lang.Override
mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1156       public Builder mergeFrom(
1157           com.google.protobuf.CodedInputStream input,
1158           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1159           throws java.io.IOException {
1160         if (extensionRegistry == null) {
1161           throw new java.lang.NullPointerException();
1162         }
1163         try {
1164           boolean done = false;
1165           while (!done) {
1166             int tag = input.readTag();
1167             switch (tag) {
1168               case 0:
1169                 done = true;
1170                 break;
1171               case 10:
1172                 {
1173                   input.readMessage(getTextSegmentFieldBuilder().getBuilder(), extensionRegistry);
1174                   bitField0_ |= 0x00000001;
1175                   break;
1176                 } // case 10
1177               case 16:
1178                 {
1179                   pageNumber_ = input.readInt32();
1180                   bitField0_ |= 0x00000002;
1181                   break;
1182                 } // case 16
1183               case 26:
1184                 {
1185                   input.readMessage(getBoundingPolyFieldBuilder().getBuilder(), extensionRegistry);
1186                   bitField0_ |= 0x00000004;
1187                   break;
1188                 } // case 26
1189               case 32:
1190                 {
1191                   textSegmentType_ = input.readEnum();
1192                   bitField0_ |= 0x00000008;
1193                   break;
1194                 } // case 32
1195               default:
1196                 {
1197                   if (!super.parseUnknownField(input, extensionRegistry, tag)) {
1198                     done = true; // was an endgroup tag
1199                   }
1200                   break;
1201                 } // default:
1202             } // switch (tag)
1203           } // while (!done)
1204         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1205           throw e.unwrapIOException();
1206         } finally {
1207           onChanged();
1208         } // finally
1209         return this;
1210       }
1211 
1212       private int bitField0_;
1213 
1214       private com.google.cloud.automl.v1beta1.TextSegment textSegment_;
1215       private com.google.protobuf.SingleFieldBuilderV3<
1216               com.google.cloud.automl.v1beta1.TextSegment,
1217               com.google.cloud.automl.v1beta1.TextSegment.Builder,
1218               com.google.cloud.automl.v1beta1.TextSegmentOrBuilder>
1219           textSegmentBuilder_;
1220       /**
1221        *
1222        *
1223        * <pre>
1224        * Text Segment that represents a segment in
1225        * [document_text][google.cloud.automl.v1beta1.Document.document_text].
1226        * </pre>
1227        *
1228        * <code>.google.cloud.automl.v1beta1.TextSegment text_segment = 1;</code>
1229        *
1230        * @return Whether the textSegment field is set.
1231        */
hasTextSegment()1232       public boolean hasTextSegment() {
1233         return ((bitField0_ & 0x00000001) != 0);
1234       }
1235       /**
1236        *
1237        *
1238        * <pre>
1239        * Text Segment that represents a segment in
1240        * [document_text][google.cloud.automl.v1beta1.Document.document_text].
1241        * </pre>
1242        *
1243        * <code>.google.cloud.automl.v1beta1.TextSegment text_segment = 1;</code>
1244        *
1245        * @return The textSegment.
1246        */
getTextSegment()1247       public com.google.cloud.automl.v1beta1.TextSegment getTextSegment() {
1248         if (textSegmentBuilder_ == null) {
1249           return textSegment_ == null
1250               ? com.google.cloud.automl.v1beta1.TextSegment.getDefaultInstance()
1251               : textSegment_;
1252         } else {
1253           return textSegmentBuilder_.getMessage();
1254         }
1255       }
1256       /**
1257        *
1258        *
1259        * <pre>
1260        * Text Segment that represents a segment in
1261        * [document_text][google.cloud.automl.v1beta1.Document.document_text].
1262        * </pre>
1263        *
1264        * <code>.google.cloud.automl.v1beta1.TextSegment text_segment = 1;</code>
1265        */
setTextSegment(com.google.cloud.automl.v1beta1.TextSegment value)1266       public Builder setTextSegment(com.google.cloud.automl.v1beta1.TextSegment value) {
1267         if (textSegmentBuilder_ == null) {
1268           if (value == null) {
1269             throw new NullPointerException();
1270           }
1271           textSegment_ = value;
1272         } else {
1273           textSegmentBuilder_.setMessage(value);
1274         }
1275         bitField0_ |= 0x00000001;
1276         onChanged();
1277         return this;
1278       }
1279       /**
1280        *
1281        *
1282        * <pre>
1283        * Text Segment that represents a segment in
1284        * [document_text][google.cloud.automl.v1beta1.Document.document_text].
1285        * </pre>
1286        *
1287        * <code>.google.cloud.automl.v1beta1.TextSegment text_segment = 1;</code>
1288        */
setTextSegment( com.google.cloud.automl.v1beta1.TextSegment.Builder builderForValue)1289       public Builder setTextSegment(
1290           com.google.cloud.automl.v1beta1.TextSegment.Builder builderForValue) {
1291         if (textSegmentBuilder_ == null) {
1292           textSegment_ = builderForValue.build();
1293         } else {
1294           textSegmentBuilder_.setMessage(builderForValue.build());
1295         }
1296         bitField0_ |= 0x00000001;
1297         onChanged();
1298         return this;
1299       }
1300       /**
1301        *
1302        *
1303        * <pre>
1304        * Text Segment that represents a segment in
1305        * [document_text][google.cloud.automl.v1beta1.Document.document_text].
1306        * </pre>
1307        *
1308        * <code>.google.cloud.automl.v1beta1.TextSegment text_segment = 1;</code>
1309        */
mergeTextSegment(com.google.cloud.automl.v1beta1.TextSegment value)1310       public Builder mergeTextSegment(com.google.cloud.automl.v1beta1.TextSegment value) {
1311         if (textSegmentBuilder_ == null) {
1312           if (((bitField0_ & 0x00000001) != 0)
1313               && textSegment_ != null
1314               && textSegment_ != com.google.cloud.automl.v1beta1.TextSegment.getDefaultInstance()) {
1315             getTextSegmentBuilder().mergeFrom(value);
1316           } else {
1317             textSegment_ = value;
1318           }
1319         } else {
1320           textSegmentBuilder_.mergeFrom(value);
1321         }
1322         bitField0_ |= 0x00000001;
1323         onChanged();
1324         return this;
1325       }
1326       /**
1327        *
1328        *
1329        * <pre>
1330        * Text Segment that represents a segment in
1331        * [document_text][google.cloud.automl.v1beta1.Document.document_text].
1332        * </pre>
1333        *
1334        * <code>.google.cloud.automl.v1beta1.TextSegment text_segment = 1;</code>
1335        */
clearTextSegment()1336       public Builder clearTextSegment() {
1337         bitField0_ = (bitField0_ & ~0x00000001);
1338         textSegment_ = null;
1339         if (textSegmentBuilder_ != null) {
1340           textSegmentBuilder_.dispose();
1341           textSegmentBuilder_ = null;
1342         }
1343         onChanged();
1344         return this;
1345       }
1346       /**
1347        *
1348        *
1349        * <pre>
1350        * Text Segment that represents a segment in
1351        * [document_text][google.cloud.automl.v1beta1.Document.document_text].
1352        * </pre>
1353        *
1354        * <code>.google.cloud.automl.v1beta1.TextSegment text_segment = 1;</code>
1355        */
getTextSegmentBuilder()1356       public com.google.cloud.automl.v1beta1.TextSegment.Builder getTextSegmentBuilder() {
1357         bitField0_ |= 0x00000001;
1358         onChanged();
1359         return getTextSegmentFieldBuilder().getBuilder();
1360       }
1361       /**
1362        *
1363        *
1364        * <pre>
1365        * Text Segment that represents a segment in
1366        * [document_text][google.cloud.automl.v1beta1.Document.document_text].
1367        * </pre>
1368        *
1369        * <code>.google.cloud.automl.v1beta1.TextSegment text_segment = 1;</code>
1370        */
getTextSegmentOrBuilder()1371       public com.google.cloud.automl.v1beta1.TextSegmentOrBuilder getTextSegmentOrBuilder() {
1372         if (textSegmentBuilder_ != null) {
1373           return textSegmentBuilder_.getMessageOrBuilder();
1374         } else {
1375           return textSegment_ == null
1376               ? com.google.cloud.automl.v1beta1.TextSegment.getDefaultInstance()
1377               : textSegment_;
1378         }
1379       }
1380       /**
1381        *
1382        *
1383        * <pre>
1384        * Text Segment that represents a segment in
1385        * [document_text][google.cloud.automl.v1beta1.Document.document_text].
1386        * </pre>
1387        *
1388        * <code>.google.cloud.automl.v1beta1.TextSegment text_segment = 1;</code>
1389        */
1390       private com.google.protobuf.SingleFieldBuilderV3<
1391               com.google.cloud.automl.v1beta1.TextSegment,
1392               com.google.cloud.automl.v1beta1.TextSegment.Builder,
1393               com.google.cloud.automl.v1beta1.TextSegmentOrBuilder>
getTextSegmentFieldBuilder()1394           getTextSegmentFieldBuilder() {
1395         if (textSegmentBuilder_ == null) {
1396           textSegmentBuilder_ =
1397               new com.google.protobuf.SingleFieldBuilderV3<
1398                   com.google.cloud.automl.v1beta1.TextSegment,
1399                   com.google.cloud.automl.v1beta1.TextSegment.Builder,
1400                   com.google.cloud.automl.v1beta1.TextSegmentOrBuilder>(
1401                   getTextSegment(), getParentForChildren(), isClean());
1402           textSegment_ = null;
1403         }
1404         return textSegmentBuilder_;
1405       }
1406 
1407       private int pageNumber_;
1408       /**
1409        *
1410        *
1411        * <pre>
1412        * Page number of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the original document, starts
1413        * from 1.
1414        * </pre>
1415        *
1416        * <code>int32 page_number = 2;</code>
1417        *
1418        * @return The pageNumber.
1419        */
1420       @java.lang.Override
getPageNumber()1421       public int getPageNumber() {
1422         return pageNumber_;
1423       }
1424       /**
1425        *
1426        *
1427        * <pre>
1428        * Page number of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the original document, starts
1429        * from 1.
1430        * </pre>
1431        *
1432        * <code>int32 page_number = 2;</code>
1433        *
1434        * @param value The pageNumber to set.
1435        * @return This builder for chaining.
1436        */
setPageNumber(int value)1437       public Builder setPageNumber(int value) {
1438 
1439         pageNumber_ = value;
1440         bitField0_ |= 0x00000002;
1441         onChanged();
1442         return this;
1443       }
1444       /**
1445        *
1446        *
1447        * <pre>
1448        * Page number of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the original document, starts
1449        * from 1.
1450        * </pre>
1451        *
1452        * <code>int32 page_number = 2;</code>
1453        *
1454        * @return This builder for chaining.
1455        */
clearPageNumber()1456       public Builder clearPageNumber() {
1457         bitField0_ = (bitField0_ & ~0x00000002);
1458         pageNumber_ = 0;
1459         onChanged();
1460         return this;
1461       }
1462 
1463       private com.google.cloud.automl.v1beta1.BoundingPoly boundingPoly_;
1464       private com.google.protobuf.SingleFieldBuilderV3<
1465               com.google.cloud.automl.v1beta1.BoundingPoly,
1466               com.google.cloud.automl.v1beta1.BoundingPoly.Builder,
1467               com.google.cloud.automl.v1beta1.BoundingPolyOrBuilder>
1468           boundingPolyBuilder_;
1469       /**
1470        *
1471        *
1472        * <pre>
1473        * The position of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the page.
1474        * Contains exactly 4
1475        * [normalized_vertices][google.cloud.automl.v1beta1.BoundingPoly.normalized_vertices]
1476        * and they are connected by edges in the order provided, which will
1477        * represent a rectangle parallel to the frame. The
1478        * [NormalizedVertex-s][google.cloud.automl.v1beta1.NormalizedVertex] are
1479        * relative to the page.
1480        * Coordinates are based on top-left as point (0,0).
1481        * </pre>
1482        *
1483        * <code>.google.cloud.automl.v1beta1.BoundingPoly bounding_poly = 3;</code>
1484        *
1485        * @return Whether the boundingPoly field is set.
1486        */
hasBoundingPoly()1487       public boolean hasBoundingPoly() {
1488         return ((bitField0_ & 0x00000004) != 0);
1489       }
1490       /**
1491        *
1492        *
1493        * <pre>
1494        * The position of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the page.
1495        * Contains exactly 4
1496        * [normalized_vertices][google.cloud.automl.v1beta1.BoundingPoly.normalized_vertices]
1497        * and they are connected by edges in the order provided, which will
1498        * represent a rectangle parallel to the frame. The
1499        * [NormalizedVertex-s][google.cloud.automl.v1beta1.NormalizedVertex] are
1500        * relative to the page.
1501        * Coordinates are based on top-left as point (0,0).
1502        * </pre>
1503        *
1504        * <code>.google.cloud.automl.v1beta1.BoundingPoly bounding_poly = 3;</code>
1505        *
1506        * @return The boundingPoly.
1507        */
getBoundingPoly()1508       public com.google.cloud.automl.v1beta1.BoundingPoly getBoundingPoly() {
1509         if (boundingPolyBuilder_ == null) {
1510           return boundingPoly_ == null
1511               ? com.google.cloud.automl.v1beta1.BoundingPoly.getDefaultInstance()
1512               : boundingPoly_;
1513         } else {
1514           return boundingPolyBuilder_.getMessage();
1515         }
1516       }
1517       /**
1518        *
1519        *
1520        * <pre>
1521        * The position of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the page.
1522        * Contains exactly 4
1523        * [normalized_vertices][google.cloud.automl.v1beta1.BoundingPoly.normalized_vertices]
1524        * and they are connected by edges in the order provided, which will
1525        * represent a rectangle parallel to the frame. The
1526        * [NormalizedVertex-s][google.cloud.automl.v1beta1.NormalizedVertex] are
1527        * relative to the page.
1528        * Coordinates are based on top-left as point (0,0).
1529        * </pre>
1530        *
1531        * <code>.google.cloud.automl.v1beta1.BoundingPoly bounding_poly = 3;</code>
1532        */
setBoundingPoly(com.google.cloud.automl.v1beta1.BoundingPoly value)1533       public Builder setBoundingPoly(com.google.cloud.automl.v1beta1.BoundingPoly value) {
1534         if (boundingPolyBuilder_ == null) {
1535           if (value == null) {
1536             throw new NullPointerException();
1537           }
1538           boundingPoly_ = value;
1539         } else {
1540           boundingPolyBuilder_.setMessage(value);
1541         }
1542         bitField0_ |= 0x00000004;
1543         onChanged();
1544         return this;
1545       }
1546       /**
1547        *
1548        *
1549        * <pre>
1550        * The position of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the page.
1551        * Contains exactly 4
1552        * [normalized_vertices][google.cloud.automl.v1beta1.BoundingPoly.normalized_vertices]
1553        * and they are connected by edges in the order provided, which will
1554        * represent a rectangle parallel to the frame. The
1555        * [NormalizedVertex-s][google.cloud.automl.v1beta1.NormalizedVertex] are
1556        * relative to the page.
1557        * Coordinates are based on top-left as point (0,0).
1558        * </pre>
1559        *
1560        * <code>.google.cloud.automl.v1beta1.BoundingPoly bounding_poly = 3;</code>
1561        */
setBoundingPoly( com.google.cloud.automl.v1beta1.BoundingPoly.Builder builderForValue)1562       public Builder setBoundingPoly(
1563           com.google.cloud.automl.v1beta1.BoundingPoly.Builder builderForValue) {
1564         if (boundingPolyBuilder_ == null) {
1565           boundingPoly_ = builderForValue.build();
1566         } else {
1567           boundingPolyBuilder_.setMessage(builderForValue.build());
1568         }
1569         bitField0_ |= 0x00000004;
1570         onChanged();
1571         return this;
1572       }
1573       /**
1574        *
1575        *
1576        * <pre>
1577        * The position of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the page.
1578        * Contains exactly 4
1579        * [normalized_vertices][google.cloud.automl.v1beta1.BoundingPoly.normalized_vertices]
1580        * and they are connected by edges in the order provided, which will
1581        * represent a rectangle parallel to the frame. The
1582        * [NormalizedVertex-s][google.cloud.automl.v1beta1.NormalizedVertex] are
1583        * relative to the page.
1584        * Coordinates are based on top-left as point (0,0).
1585        * </pre>
1586        *
1587        * <code>.google.cloud.automl.v1beta1.BoundingPoly bounding_poly = 3;</code>
1588        */
mergeBoundingPoly(com.google.cloud.automl.v1beta1.BoundingPoly value)1589       public Builder mergeBoundingPoly(com.google.cloud.automl.v1beta1.BoundingPoly value) {
1590         if (boundingPolyBuilder_ == null) {
1591           if (((bitField0_ & 0x00000004) != 0)
1592               && boundingPoly_ != null
1593               && boundingPoly_
1594                   != com.google.cloud.automl.v1beta1.BoundingPoly.getDefaultInstance()) {
1595             getBoundingPolyBuilder().mergeFrom(value);
1596           } else {
1597             boundingPoly_ = value;
1598           }
1599         } else {
1600           boundingPolyBuilder_.mergeFrom(value);
1601         }
1602         bitField0_ |= 0x00000004;
1603         onChanged();
1604         return this;
1605       }
1606       /**
1607        *
1608        *
1609        * <pre>
1610        * The position of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the page.
1611        * Contains exactly 4
1612        * [normalized_vertices][google.cloud.automl.v1beta1.BoundingPoly.normalized_vertices]
1613        * and they are connected by edges in the order provided, which will
1614        * represent a rectangle parallel to the frame. The
1615        * [NormalizedVertex-s][google.cloud.automl.v1beta1.NormalizedVertex] are
1616        * relative to the page.
1617        * Coordinates are based on top-left as point (0,0).
1618        * </pre>
1619        *
1620        * <code>.google.cloud.automl.v1beta1.BoundingPoly bounding_poly = 3;</code>
1621        */
clearBoundingPoly()1622       public Builder clearBoundingPoly() {
1623         bitField0_ = (bitField0_ & ~0x00000004);
1624         boundingPoly_ = null;
1625         if (boundingPolyBuilder_ != null) {
1626           boundingPolyBuilder_.dispose();
1627           boundingPolyBuilder_ = null;
1628         }
1629         onChanged();
1630         return this;
1631       }
1632       /**
1633        *
1634        *
1635        * <pre>
1636        * The position of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the page.
1637        * Contains exactly 4
1638        * [normalized_vertices][google.cloud.automl.v1beta1.BoundingPoly.normalized_vertices]
1639        * and they are connected by edges in the order provided, which will
1640        * represent a rectangle parallel to the frame. The
1641        * [NormalizedVertex-s][google.cloud.automl.v1beta1.NormalizedVertex] are
1642        * relative to the page.
1643        * Coordinates are based on top-left as point (0,0).
1644        * </pre>
1645        *
1646        * <code>.google.cloud.automl.v1beta1.BoundingPoly bounding_poly = 3;</code>
1647        */
getBoundingPolyBuilder()1648       public com.google.cloud.automl.v1beta1.BoundingPoly.Builder getBoundingPolyBuilder() {
1649         bitField0_ |= 0x00000004;
1650         onChanged();
1651         return getBoundingPolyFieldBuilder().getBuilder();
1652       }
1653       /**
1654        *
1655        *
1656        * <pre>
1657        * The position of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the page.
1658        * Contains exactly 4
1659        * [normalized_vertices][google.cloud.automl.v1beta1.BoundingPoly.normalized_vertices]
1660        * and they are connected by edges in the order provided, which will
1661        * represent a rectangle parallel to the frame. The
1662        * [NormalizedVertex-s][google.cloud.automl.v1beta1.NormalizedVertex] are
1663        * relative to the page.
1664        * Coordinates are based on top-left as point (0,0).
1665        * </pre>
1666        *
1667        * <code>.google.cloud.automl.v1beta1.BoundingPoly bounding_poly = 3;</code>
1668        */
getBoundingPolyOrBuilder()1669       public com.google.cloud.automl.v1beta1.BoundingPolyOrBuilder getBoundingPolyOrBuilder() {
1670         if (boundingPolyBuilder_ != null) {
1671           return boundingPolyBuilder_.getMessageOrBuilder();
1672         } else {
1673           return boundingPoly_ == null
1674               ? com.google.cloud.automl.v1beta1.BoundingPoly.getDefaultInstance()
1675               : boundingPoly_;
1676         }
1677       }
1678       /**
1679        *
1680        *
1681        * <pre>
1682        * The position of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in the page.
1683        * Contains exactly 4
1684        * [normalized_vertices][google.cloud.automl.v1beta1.BoundingPoly.normalized_vertices]
1685        * and they are connected by edges in the order provided, which will
1686        * represent a rectangle parallel to the frame. The
1687        * [NormalizedVertex-s][google.cloud.automl.v1beta1.NormalizedVertex] are
1688        * relative to the page.
1689        * Coordinates are based on top-left as point (0,0).
1690        * </pre>
1691        *
1692        * <code>.google.cloud.automl.v1beta1.BoundingPoly bounding_poly = 3;</code>
1693        */
1694       private com.google.protobuf.SingleFieldBuilderV3<
1695               com.google.cloud.automl.v1beta1.BoundingPoly,
1696               com.google.cloud.automl.v1beta1.BoundingPoly.Builder,
1697               com.google.cloud.automl.v1beta1.BoundingPolyOrBuilder>
getBoundingPolyFieldBuilder()1698           getBoundingPolyFieldBuilder() {
1699         if (boundingPolyBuilder_ == null) {
1700           boundingPolyBuilder_ =
1701               new com.google.protobuf.SingleFieldBuilderV3<
1702                   com.google.cloud.automl.v1beta1.BoundingPoly,
1703                   com.google.cloud.automl.v1beta1.BoundingPoly.Builder,
1704                   com.google.cloud.automl.v1beta1.BoundingPolyOrBuilder>(
1705                   getBoundingPoly(), getParentForChildren(), isClean());
1706           boundingPoly_ = null;
1707         }
1708         return boundingPolyBuilder_;
1709       }
1710 
1711       private int textSegmentType_ = 0;
1712       /**
1713        *
1714        *
1715        * <pre>
1716        * The type of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in document.
1717        * </pre>
1718        *
1719        * <code>.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType text_segment_type = 4;
1720        * </code>
1721        *
1722        * @return The enum numeric value on the wire for textSegmentType.
1723        */
1724       @java.lang.Override
getTextSegmentTypeValue()1725       public int getTextSegmentTypeValue() {
1726         return textSegmentType_;
1727       }
1728       /**
1729        *
1730        *
1731        * <pre>
1732        * The type of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in document.
1733        * </pre>
1734        *
1735        * <code>.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType text_segment_type = 4;
1736        * </code>
1737        *
1738        * @param value The enum numeric value on the wire for textSegmentType to set.
1739        * @return This builder for chaining.
1740        */
setTextSegmentTypeValue(int value)1741       public Builder setTextSegmentTypeValue(int value) {
1742         textSegmentType_ = value;
1743         bitField0_ |= 0x00000008;
1744         onChanged();
1745         return this;
1746       }
1747       /**
1748        *
1749        *
1750        * <pre>
1751        * The type of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in document.
1752        * </pre>
1753        *
1754        * <code>.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType text_segment_type = 4;
1755        * </code>
1756        *
1757        * @return The textSegmentType.
1758        */
1759       @java.lang.Override
getTextSegmentType()1760       public com.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType getTextSegmentType() {
1761         com.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType result =
1762             com.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType.forNumber(
1763                 textSegmentType_);
1764         return result == null
1765             ? com.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType.UNRECOGNIZED
1766             : result;
1767       }
1768       /**
1769        *
1770        *
1771        * <pre>
1772        * The type of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in document.
1773        * </pre>
1774        *
1775        * <code>.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType text_segment_type = 4;
1776        * </code>
1777        *
1778        * @param value The textSegmentType to set.
1779        * @return This builder for chaining.
1780        */
setTextSegmentType( com.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType value)1781       public Builder setTextSegmentType(
1782           com.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType value) {
1783         if (value == null) {
1784           throw new NullPointerException();
1785         }
1786         bitField0_ |= 0x00000008;
1787         textSegmentType_ = value.getNumber();
1788         onChanged();
1789         return this;
1790       }
1791       /**
1792        *
1793        *
1794        * <pre>
1795        * The type of the [text_segment][google.cloud.automl.v1beta1.Document.Layout.text_segment] in document.
1796        * </pre>
1797        *
1798        * <code>.google.cloud.automl.v1beta1.Document.Layout.TextSegmentType text_segment_type = 4;
1799        * </code>
1800        *
1801        * @return This builder for chaining.
1802        */
clearTextSegmentType()1803       public Builder clearTextSegmentType() {
1804         bitField0_ = (bitField0_ & ~0x00000008);
1805         textSegmentType_ = 0;
1806         onChanged();
1807         return this;
1808       }
1809 
1810       @java.lang.Override
setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields)1811       public final Builder setUnknownFields(
1812           final com.google.protobuf.UnknownFieldSet unknownFields) {
1813         return super.setUnknownFields(unknownFields);
1814       }
1815 
1816       @java.lang.Override
mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields)1817       public final Builder mergeUnknownFields(
1818           final com.google.protobuf.UnknownFieldSet unknownFields) {
1819         return super.mergeUnknownFields(unknownFields);
1820       }
1821 
1822       // @@protoc_insertion_point(builder_scope:google.cloud.automl.v1beta1.Document.Layout)
1823     }
1824 
1825     // @@protoc_insertion_point(class_scope:google.cloud.automl.v1beta1.Document.Layout)
1826     private static final com.google.cloud.automl.v1beta1.Document.Layout DEFAULT_INSTANCE;
1827 
1828     static {
1829       DEFAULT_INSTANCE = new com.google.cloud.automl.v1beta1.Document.Layout();
1830     }
1831 
getDefaultInstance()1832     public static com.google.cloud.automl.v1beta1.Document.Layout getDefaultInstance() {
1833       return DEFAULT_INSTANCE;
1834     }
1835 
1836     private static final com.google.protobuf.Parser<Layout> PARSER =
1837         new com.google.protobuf.AbstractParser<Layout>() {
1838           @java.lang.Override
1839           public Layout parsePartialFrom(
1840               com.google.protobuf.CodedInputStream input,
1841               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1842               throws com.google.protobuf.InvalidProtocolBufferException {
1843             Builder builder = newBuilder();
1844             try {
1845               builder.mergeFrom(input, extensionRegistry);
1846             } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1847               throw e.setUnfinishedMessage(builder.buildPartial());
1848             } catch (com.google.protobuf.UninitializedMessageException e) {
1849               throw e.asInvalidProtocolBufferException()
1850                   .setUnfinishedMessage(builder.buildPartial());
1851             } catch (java.io.IOException e) {
1852               throw new com.google.protobuf.InvalidProtocolBufferException(e)
1853                   .setUnfinishedMessage(builder.buildPartial());
1854             }
1855             return builder.buildPartial();
1856           }
1857         };
1858 
parser()1859     public static com.google.protobuf.Parser<Layout> parser() {
1860       return PARSER;
1861     }
1862 
1863     @java.lang.Override
getParserForType()1864     public com.google.protobuf.Parser<Layout> getParserForType() {
1865       return PARSER;
1866     }
1867 
1868     @java.lang.Override
getDefaultInstanceForType()1869     public com.google.cloud.automl.v1beta1.Document.Layout getDefaultInstanceForType() {
1870       return DEFAULT_INSTANCE;
1871     }
1872   }
1873 
1874   public static final int INPUT_CONFIG_FIELD_NUMBER = 1;
1875   private com.google.cloud.automl.v1beta1.DocumentInputConfig inputConfig_;
1876   /**
1877    *
1878    *
1879    * <pre>
1880    * An input config specifying the content of the document.
1881    * </pre>
1882    *
1883    * <code>.google.cloud.automl.v1beta1.DocumentInputConfig input_config = 1;</code>
1884    *
1885    * @return Whether the inputConfig field is set.
1886    */
1887   @java.lang.Override
hasInputConfig()1888   public boolean hasInputConfig() {
1889     return inputConfig_ != null;
1890   }
1891   /**
1892    *
1893    *
1894    * <pre>
1895    * An input config specifying the content of the document.
1896    * </pre>
1897    *
1898    * <code>.google.cloud.automl.v1beta1.DocumentInputConfig input_config = 1;</code>
1899    *
1900    * @return The inputConfig.
1901    */
1902   @java.lang.Override
getInputConfig()1903   public com.google.cloud.automl.v1beta1.DocumentInputConfig getInputConfig() {
1904     return inputConfig_ == null
1905         ? com.google.cloud.automl.v1beta1.DocumentInputConfig.getDefaultInstance()
1906         : inputConfig_;
1907   }
1908   /**
1909    *
1910    *
1911    * <pre>
1912    * An input config specifying the content of the document.
1913    * </pre>
1914    *
1915    * <code>.google.cloud.automl.v1beta1.DocumentInputConfig input_config = 1;</code>
1916    */
1917   @java.lang.Override
getInputConfigOrBuilder()1918   public com.google.cloud.automl.v1beta1.DocumentInputConfigOrBuilder getInputConfigOrBuilder() {
1919     return inputConfig_ == null
1920         ? com.google.cloud.automl.v1beta1.DocumentInputConfig.getDefaultInstance()
1921         : inputConfig_;
1922   }
1923 
1924   public static final int DOCUMENT_TEXT_FIELD_NUMBER = 2;
1925   private com.google.cloud.automl.v1beta1.TextSnippet documentText_;
1926   /**
1927    *
1928    *
1929    * <pre>
1930    * The plain text version of this document.
1931    * </pre>
1932    *
1933    * <code>.google.cloud.automl.v1beta1.TextSnippet document_text = 2;</code>
1934    *
1935    * @return Whether the documentText field is set.
1936    */
1937   @java.lang.Override
hasDocumentText()1938   public boolean hasDocumentText() {
1939     return documentText_ != null;
1940   }
1941   /**
1942    *
1943    *
1944    * <pre>
1945    * The plain text version of this document.
1946    * </pre>
1947    *
1948    * <code>.google.cloud.automl.v1beta1.TextSnippet document_text = 2;</code>
1949    *
1950    * @return The documentText.
1951    */
1952   @java.lang.Override
getDocumentText()1953   public com.google.cloud.automl.v1beta1.TextSnippet getDocumentText() {
1954     return documentText_ == null
1955         ? com.google.cloud.automl.v1beta1.TextSnippet.getDefaultInstance()
1956         : documentText_;
1957   }
1958   /**
1959    *
1960    *
1961    * <pre>
1962    * The plain text version of this document.
1963    * </pre>
1964    *
1965    * <code>.google.cloud.automl.v1beta1.TextSnippet document_text = 2;</code>
1966    */
1967   @java.lang.Override
getDocumentTextOrBuilder()1968   public com.google.cloud.automl.v1beta1.TextSnippetOrBuilder getDocumentTextOrBuilder() {
1969     return documentText_ == null
1970         ? com.google.cloud.automl.v1beta1.TextSnippet.getDefaultInstance()
1971         : documentText_;
1972   }
1973 
1974   public static final int LAYOUT_FIELD_NUMBER = 3;
1975 
1976   @SuppressWarnings("serial")
1977   private java.util.List<com.google.cloud.automl.v1beta1.Document.Layout> layout_;
1978   /**
1979    *
1980    *
1981    * <pre>
1982    * Describes the layout of the document.
1983    * Sorted by [page_number][].
1984    * </pre>
1985    *
1986    * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
1987    */
1988   @java.lang.Override
getLayoutList()1989   public java.util.List<com.google.cloud.automl.v1beta1.Document.Layout> getLayoutList() {
1990     return layout_;
1991   }
1992   /**
1993    *
1994    *
1995    * <pre>
1996    * Describes the layout of the document.
1997    * Sorted by [page_number][].
1998    * </pre>
1999    *
2000    * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
2001    */
2002   @java.lang.Override
2003   public java.util.List<? extends com.google.cloud.automl.v1beta1.Document.LayoutOrBuilder>
getLayoutOrBuilderList()2004       getLayoutOrBuilderList() {
2005     return layout_;
2006   }
2007   /**
2008    *
2009    *
2010    * <pre>
2011    * Describes the layout of the document.
2012    * Sorted by [page_number][].
2013    * </pre>
2014    *
2015    * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
2016    */
2017   @java.lang.Override
getLayoutCount()2018   public int getLayoutCount() {
2019     return layout_.size();
2020   }
2021   /**
2022    *
2023    *
2024    * <pre>
2025    * Describes the layout of the document.
2026    * Sorted by [page_number][].
2027    * </pre>
2028    *
2029    * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
2030    */
2031   @java.lang.Override
getLayout(int index)2032   public com.google.cloud.automl.v1beta1.Document.Layout getLayout(int index) {
2033     return layout_.get(index);
2034   }
2035   /**
2036    *
2037    *
2038    * <pre>
2039    * Describes the layout of the document.
2040    * Sorted by [page_number][].
2041    * </pre>
2042    *
2043    * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
2044    */
2045   @java.lang.Override
getLayoutOrBuilder(int index)2046   public com.google.cloud.automl.v1beta1.Document.LayoutOrBuilder getLayoutOrBuilder(int index) {
2047     return layout_.get(index);
2048   }
2049 
2050   public static final int DOCUMENT_DIMENSIONS_FIELD_NUMBER = 4;
2051   private com.google.cloud.automl.v1beta1.DocumentDimensions documentDimensions_;
2052   /**
2053    *
2054    *
2055    * <pre>
2056    * The dimensions of the page in the document.
2057    * </pre>
2058    *
2059    * <code>.google.cloud.automl.v1beta1.DocumentDimensions document_dimensions = 4;</code>
2060    *
2061    * @return Whether the documentDimensions field is set.
2062    */
2063   @java.lang.Override
hasDocumentDimensions()2064   public boolean hasDocumentDimensions() {
2065     return documentDimensions_ != null;
2066   }
2067   /**
2068    *
2069    *
2070    * <pre>
2071    * The dimensions of the page in the document.
2072    * </pre>
2073    *
2074    * <code>.google.cloud.automl.v1beta1.DocumentDimensions document_dimensions = 4;</code>
2075    *
2076    * @return The documentDimensions.
2077    */
2078   @java.lang.Override
getDocumentDimensions()2079   public com.google.cloud.automl.v1beta1.DocumentDimensions getDocumentDimensions() {
2080     return documentDimensions_ == null
2081         ? com.google.cloud.automl.v1beta1.DocumentDimensions.getDefaultInstance()
2082         : documentDimensions_;
2083   }
2084   /**
2085    *
2086    *
2087    * <pre>
2088    * The dimensions of the page in the document.
2089    * </pre>
2090    *
2091    * <code>.google.cloud.automl.v1beta1.DocumentDimensions document_dimensions = 4;</code>
2092    */
2093   @java.lang.Override
2094   public com.google.cloud.automl.v1beta1.DocumentDimensionsOrBuilder
getDocumentDimensionsOrBuilder()2095       getDocumentDimensionsOrBuilder() {
2096     return documentDimensions_ == null
2097         ? com.google.cloud.automl.v1beta1.DocumentDimensions.getDefaultInstance()
2098         : documentDimensions_;
2099   }
2100 
2101   public static final int PAGE_COUNT_FIELD_NUMBER = 5;
2102   private int pageCount_ = 0;
2103   /**
2104    *
2105    *
2106    * <pre>
2107    * Number of pages in the document.
2108    * </pre>
2109    *
2110    * <code>int32 page_count = 5;</code>
2111    *
2112    * @return The pageCount.
2113    */
2114   @java.lang.Override
getPageCount()2115   public int getPageCount() {
2116     return pageCount_;
2117   }
2118 
2119   private byte memoizedIsInitialized = -1;
2120 
2121   @java.lang.Override
isInitialized()2122   public final boolean isInitialized() {
2123     byte isInitialized = memoizedIsInitialized;
2124     if (isInitialized == 1) return true;
2125     if (isInitialized == 0) return false;
2126 
2127     memoizedIsInitialized = 1;
2128     return true;
2129   }
2130 
2131   @java.lang.Override
writeTo(com.google.protobuf.CodedOutputStream output)2132   public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
2133     if (inputConfig_ != null) {
2134       output.writeMessage(1, getInputConfig());
2135     }
2136     if (documentText_ != null) {
2137       output.writeMessage(2, getDocumentText());
2138     }
2139     for (int i = 0; i < layout_.size(); i++) {
2140       output.writeMessage(3, layout_.get(i));
2141     }
2142     if (documentDimensions_ != null) {
2143       output.writeMessage(4, getDocumentDimensions());
2144     }
2145     if (pageCount_ != 0) {
2146       output.writeInt32(5, pageCount_);
2147     }
2148     getUnknownFields().writeTo(output);
2149   }
2150 
2151   @java.lang.Override
getSerializedSize()2152   public int getSerializedSize() {
2153     int size = memoizedSize;
2154     if (size != -1) return size;
2155 
2156     size = 0;
2157     if (inputConfig_ != null) {
2158       size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, getInputConfig());
2159     }
2160     if (documentText_ != null) {
2161       size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getDocumentText());
2162     }
2163     for (int i = 0; i < layout_.size(); i++) {
2164       size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, layout_.get(i));
2165     }
2166     if (documentDimensions_ != null) {
2167       size += com.google.protobuf.CodedOutputStream.computeMessageSize(4, getDocumentDimensions());
2168     }
2169     if (pageCount_ != 0) {
2170       size += com.google.protobuf.CodedOutputStream.computeInt32Size(5, pageCount_);
2171     }
2172     size += getUnknownFields().getSerializedSize();
2173     memoizedSize = size;
2174     return size;
2175   }
2176 
2177   @java.lang.Override
equals(final java.lang.Object obj)2178   public boolean equals(final java.lang.Object obj) {
2179     if (obj == this) {
2180       return true;
2181     }
2182     if (!(obj instanceof com.google.cloud.automl.v1beta1.Document)) {
2183       return super.equals(obj);
2184     }
2185     com.google.cloud.automl.v1beta1.Document other = (com.google.cloud.automl.v1beta1.Document) obj;
2186 
2187     if (hasInputConfig() != other.hasInputConfig()) return false;
2188     if (hasInputConfig()) {
2189       if (!getInputConfig().equals(other.getInputConfig())) return false;
2190     }
2191     if (hasDocumentText() != other.hasDocumentText()) return false;
2192     if (hasDocumentText()) {
2193       if (!getDocumentText().equals(other.getDocumentText())) return false;
2194     }
2195     if (!getLayoutList().equals(other.getLayoutList())) return false;
2196     if (hasDocumentDimensions() != other.hasDocumentDimensions()) return false;
2197     if (hasDocumentDimensions()) {
2198       if (!getDocumentDimensions().equals(other.getDocumentDimensions())) return false;
2199     }
2200     if (getPageCount() != other.getPageCount()) return false;
2201     if (!getUnknownFields().equals(other.getUnknownFields())) return false;
2202     return true;
2203   }
2204 
2205   @java.lang.Override
hashCode()2206   public int hashCode() {
2207     if (memoizedHashCode != 0) {
2208       return memoizedHashCode;
2209     }
2210     int hash = 41;
2211     hash = (19 * hash) + getDescriptor().hashCode();
2212     if (hasInputConfig()) {
2213       hash = (37 * hash) + INPUT_CONFIG_FIELD_NUMBER;
2214       hash = (53 * hash) + getInputConfig().hashCode();
2215     }
2216     if (hasDocumentText()) {
2217       hash = (37 * hash) + DOCUMENT_TEXT_FIELD_NUMBER;
2218       hash = (53 * hash) + getDocumentText().hashCode();
2219     }
2220     if (getLayoutCount() > 0) {
2221       hash = (37 * hash) + LAYOUT_FIELD_NUMBER;
2222       hash = (53 * hash) + getLayoutList().hashCode();
2223     }
2224     if (hasDocumentDimensions()) {
2225       hash = (37 * hash) + DOCUMENT_DIMENSIONS_FIELD_NUMBER;
2226       hash = (53 * hash) + getDocumentDimensions().hashCode();
2227     }
2228     hash = (37 * hash) + PAGE_COUNT_FIELD_NUMBER;
2229     hash = (53 * hash) + getPageCount();
2230     hash = (29 * hash) + getUnknownFields().hashCode();
2231     memoizedHashCode = hash;
2232     return hash;
2233   }
2234 
parseFrom(java.nio.ByteBuffer data)2235   public static com.google.cloud.automl.v1beta1.Document parseFrom(java.nio.ByteBuffer data)
2236       throws com.google.protobuf.InvalidProtocolBufferException {
2237     return PARSER.parseFrom(data);
2238   }
2239 
parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)2240   public static com.google.cloud.automl.v1beta1.Document parseFrom(
2241       java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2242       throws com.google.protobuf.InvalidProtocolBufferException {
2243     return PARSER.parseFrom(data, extensionRegistry);
2244   }
2245 
parseFrom( com.google.protobuf.ByteString data)2246   public static com.google.cloud.automl.v1beta1.Document parseFrom(
2247       com.google.protobuf.ByteString data)
2248       throws com.google.protobuf.InvalidProtocolBufferException {
2249     return PARSER.parseFrom(data);
2250   }
2251 
parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)2252   public static com.google.cloud.automl.v1beta1.Document parseFrom(
2253       com.google.protobuf.ByteString data,
2254       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2255       throws com.google.protobuf.InvalidProtocolBufferException {
2256     return PARSER.parseFrom(data, extensionRegistry);
2257   }
2258 
parseFrom(byte[] data)2259   public static com.google.cloud.automl.v1beta1.Document parseFrom(byte[] data)
2260       throws com.google.protobuf.InvalidProtocolBufferException {
2261     return PARSER.parseFrom(data);
2262   }
2263 
parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)2264   public static com.google.cloud.automl.v1beta1.Document parseFrom(
2265       byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2266       throws com.google.protobuf.InvalidProtocolBufferException {
2267     return PARSER.parseFrom(data, extensionRegistry);
2268   }
2269 
parseFrom(java.io.InputStream input)2270   public static com.google.cloud.automl.v1beta1.Document parseFrom(java.io.InputStream input)
2271       throws java.io.IOException {
2272     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
2273   }
2274 
parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)2275   public static com.google.cloud.automl.v1beta1.Document parseFrom(
2276       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2277       throws java.io.IOException {
2278     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
2279         PARSER, input, extensionRegistry);
2280   }
2281 
parseDelimitedFrom( java.io.InputStream input)2282   public static com.google.cloud.automl.v1beta1.Document parseDelimitedFrom(
2283       java.io.InputStream input) throws java.io.IOException {
2284     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
2285   }
2286 
parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)2287   public static com.google.cloud.automl.v1beta1.Document parseDelimitedFrom(
2288       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2289       throws java.io.IOException {
2290     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(
2291         PARSER, input, extensionRegistry);
2292   }
2293 
parseFrom( com.google.protobuf.CodedInputStream input)2294   public static com.google.cloud.automl.v1beta1.Document parseFrom(
2295       com.google.protobuf.CodedInputStream input) throws java.io.IOException {
2296     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
2297   }
2298 
parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)2299   public static com.google.cloud.automl.v1beta1.Document parseFrom(
2300       com.google.protobuf.CodedInputStream input,
2301       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2302       throws java.io.IOException {
2303     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
2304         PARSER, input, extensionRegistry);
2305   }
2306 
2307   @java.lang.Override
newBuilderForType()2308   public Builder newBuilderForType() {
2309     return newBuilder();
2310   }
2311 
newBuilder()2312   public static Builder newBuilder() {
2313     return DEFAULT_INSTANCE.toBuilder();
2314   }
2315 
newBuilder(com.google.cloud.automl.v1beta1.Document prototype)2316   public static Builder newBuilder(com.google.cloud.automl.v1beta1.Document prototype) {
2317     return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
2318   }
2319 
2320   @java.lang.Override
toBuilder()2321   public Builder toBuilder() {
2322     return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
2323   }
2324 
2325   @java.lang.Override
newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)2326   protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
2327     Builder builder = new Builder(parent);
2328     return builder;
2329   }
2330   /**
2331    *
2332    *
2333    * <pre>
2334    * A structured text document e.g. a PDF.
2335    * </pre>
2336    *
2337    * Protobuf type {@code google.cloud.automl.v1beta1.Document}
2338    */
2339   public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder>
2340       implements
2341       // @@protoc_insertion_point(builder_implements:google.cloud.automl.v1beta1.Document)
2342       com.google.cloud.automl.v1beta1.DocumentOrBuilder {
getDescriptor()2343     public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
2344       return com.google.cloud.automl.v1beta1.DataItems
2345           .internal_static_google_cloud_automl_v1beta1_Document_descriptor;
2346     }
2347 
2348     @java.lang.Override
2349     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()2350         internalGetFieldAccessorTable() {
2351       return com.google.cloud.automl.v1beta1.DataItems
2352           .internal_static_google_cloud_automl_v1beta1_Document_fieldAccessorTable
2353           .ensureFieldAccessorsInitialized(
2354               com.google.cloud.automl.v1beta1.Document.class,
2355               com.google.cloud.automl.v1beta1.Document.Builder.class);
2356     }
2357 
2358     // Construct using com.google.cloud.automl.v1beta1.Document.newBuilder()
Builder()2359     private Builder() {}
2360 
Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)2361     private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
2362       super(parent);
2363     }
2364 
2365     @java.lang.Override
clear()2366     public Builder clear() {
2367       super.clear();
2368       bitField0_ = 0;
2369       inputConfig_ = null;
2370       if (inputConfigBuilder_ != null) {
2371         inputConfigBuilder_.dispose();
2372         inputConfigBuilder_ = null;
2373       }
2374       documentText_ = null;
2375       if (documentTextBuilder_ != null) {
2376         documentTextBuilder_.dispose();
2377         documentTextBuilder_ = null;
2378       }
2379       if (layoutBuilder_ == null) {
2380         layout_ = java.util.Collections.emptyList();
2381       } else {
2382         layout_ = null;
2383         layoutBuilder_.clear();
2384       }
2385       bitField0_ = (bitField0_ & ~0x00000004);
2386       documentDimensions_ = null;
2387       if (documentDimensionsBuilder_ != null) {
2388         documentDimensionsBuilder_.dispose();
2389         documentDimensionsBuilder_ = null;
2390       }
2391       pageCount_ = 0;
2392       return this;
2393     }
2394 
2395     @java.lang.Override
getDescriptorForType()2396     public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() {
2397       return com.google.cloud.automl.v1beta1.DataItems
2398           .internal_static_google_cloud_automl_v1beta1_Document_descriptor;
2399     }
2400 
2401     @java.lang.Override
getDefaultInstanceForType()2402     public com.google.cloud.automl.v1beta1.Document getDefaultInstanceForType() {
2403       return com.google.cloud.automl.v1beta1.Document.getDefaultInstance();
2404     }
2405 
2406     @java.lang.Override
build()2407     public com.google.cloud.automl.v1beta1.Document build() {
2408       com.google.cloud.automl.v1beta1.Document result = buildPartial();
2409       if (!result.isInitialized()) {
2410         throw newUninitializedMessageException(result);
2411       }
2412       return result;
2413     }
2414 
2415     @java.lang.Override
buildPartial()2416     public com.google.cloud.automl.v1beta1.Document buildPartial() {
2417       com.google.cloud.automl.v1beta1.Document result =
2418           new com.google.cloud.automl.v1beta1.Document(this);
2419       buildPartialRepeatedFields(result);
2420       if (bitField0_ != 0) {
2421         buildPartial0(result);
2422       }
2423       onBuilt();
2424       return result;
2425     }
2426 
buildPartialRepeatedFields(com.google.cloud.automl.v1beta1.Document result)2427     private void buildPartialRepeatedFields(com.google.cloud.automl.v1beta1.Document result) {
2428       if (layoutBuilder_ == null) {
2429         if (((bitField0_ & 0x00000004) != 0)) {
2430           layout_ = java.util.Collections.unmodifiableList(layout_);
2431           bitField0_ = (bitField0_ & ~0x00000004);
2432         }
2433         result.layout_ = layout_;
2434       } else {
2435         result.layout_ = layoutBuilder_.build();
2436       }
2437     }
2438 
buildPartial0(com.google.cloud.automl.v1beta1.Document result)2439     private void buildPartial0(com.google.cloud.automl.v1beta1.Document result) {
2440       int from_bitField0_ = bitField0_;
2441       if (((from_bitField0_ & 0x00000001) != 0)) {
2442         result.inputConfig_ =
2443             inputConfigBuilder_ == null ? inputConfig_ : inputConfigBuilder_.build();
2444       }
2445       if (((from_bitField0_ & 0x00000002) != 0)) {
2446         result.documentText_ =
2447             documentTextBuilder_ == null ? documentText_ : documentTextBuilder_.build();
2448       }
2449       if (((from_bitField0_ & 0x00000008) != 0)) {
2450         result.documentDimensions_ =
2451             documentDimensionsBuilder_ == null
2452                 ? documentDimensions_
2453                 : documentDimensionsBuilder_.build();
2454       }
2455       if (((from_bitField0_ & 0x00000010) != 0)) {
2456         result.pageCount_ = pageCount_;
2457       }
2458     }
2459 
2460     @java.lang.Override
clone()2461     public Builder clone() {
2462       return super.clone();
2463     }
2464 
2465     @java.lang.Override
setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)2466     public Builder setField(
2467         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
2468       return super.setField(field, value);
2469     }
2470 
2471     @java.lang.Override
clearField(com.google.protobuf.Descriptors.FieldDescriptor field)2472     public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) {
2473       return super.clearField(field);
2474     }
2475 
2476     @java.lang.Override
clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)2477     public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) {
2478       return super.clearOneof(oneof);
2479     }
2480 
2481     @java.lang.Override
setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)2482     public Builder setRepeatedField(
2483         com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) {
2484       return super.setRepeatedField(field, index, value);
2485     }
2486 
2487     @java.lang.Override
addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)2488     public Builder addRepeatedField(
2489         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
2490       return super.addRepeatedField(field, value);
2491     }
2492 
2493     @java.lang.Override
mergeFrom(com.google.protobuf.Message other)2494     public Builder mergeFrom(com.google.protobuf.Message other) {
2495       if (other instanceof com.google.cloud.automl.v1beta1.Document) {
2496         return mergeFrom((com.google.cloud.automl.v1beta1.Document) other);
2497       } else {
2498         super.mergeFrom(other);
2499         return this;
2500       }
2501     }
2502 
mergeFrom(com.google.cloud.automl.v1beta1.Document other)2503     public Builder mergeFrom(com.google.cloud.automl.v1beta1.Document other) {
2504       if (other == com.google.cloud.automl.v1beta1.Document.getDefaultInstance()) return this;
2505       if (other.hasInputConfig()) {
2506         mergeInputConfig(other.getInputConfig());
2507       }
2508       if (other.hasDocumentText()) {
2509         mergeDocumentText(other.getDocumentText());
2510       }
2511       if (layoutBuilder_ == null) {
2512         if (!other.layout_.isEmpty()) {
2513           if (layout_.isEmpty()) {
2514             layout_ = other.layout_;
2515             bitField0_ = (bitField0_ & ~0x00000004);
2516           } else {
2517             ensureLayoutIsMutable();
2518             layout_.addAll(other.layout_);
2519           }
2520           onChanged();
2521         }
2522       } else {
2523         if (!other.layout_.isEmpty()) {
2524           if (layoutBuilder_.isEmpty()) {
2525             layoutBuilder_.dispose();
2526             layoutBuilder_ = null;
2527             layout_ = other.layout_;
2528             bitField0_ = (bitField0_ & ~0x00000004);
2529             layoutBuilder_ =
2530                 com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders
2531                     ? getLayoutFieldBuilder()
2532                     : null;
2533           } else {
2534             layoutBuilder_.addAllMessages(other.layout_);
2535           }
2536         }
2537       }
2538       if (other.hasDocumentDimensions()) {
2539         mergeDocumentDimensions(other.getDocumentDimensions());
2540       }
2541       if (other.getPageCount() != 0) {
2542         setPageCount(other.getPageCount());
2543       }
2544       this.mergeUnknownFields(other.getUnknownFields());
2545       onChanged();
2546       return this;
2547     }
2548 
2549     @java.lang.Override
isInitialized()2550     public final boolean isInitialized() {
2551       return true;
2552     }
2553 
2554     @java.lang.Override
mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)2555     public Builder mergeFrom(
2556         com.google.protobuf.CodedInputStream input,
2557         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2558         throws java.io.IOException {
2559       if (extensionRegistry == null) {
2560         throw new java.lang.NullPointerException();
2561       }
2562       try {
2563         boolean done = false;
2564         while (!done) {
2565           int tag = input.readTag();
2566           switch (tag) {
2567             case 0:
2568               done = true;
2569               break;
2570             case 10:
2571               {
2572                 input.readMessage(getInputConfigFieldBuilder().getBuilder(), extensionRegistry);
2573                 bitField0_ |= 0x00000001;
2574                 break;
2575               } // case 10
2576             case 18:
2577               {
2578                 input.readMessage(getDocumentTextFieldBuilder().getBuilder(), extensionRegistry);
2579                 bitField0_ |= 0x00000002;
2580                 break;
2581               } // case 18
2582             case 26:
2583               {
2584                 com.google.cloud.automl.v1beta1.Document.Layout m =
2585                     input.readMessage(
2586                         com.google.cloud.automl.v1beta1.Document.Layout.parser(),
2587                         extensionRegistry);
2588                 if (layoutBuilder_ == null) {
2589                   ensureLayoutIsMutable();
2590                   layout_.add(m);
2591                 } else {
2592                   layoutBuilder_.addMessage(m);
2593                 }
2594                 break;
2595               } // case 26
2596             case 34:
2597               {
2598                 input.readMessage(
2599                     getDocumentDimensionsFieldBuilder().getBuilder(), extensionRegistry);
2600                 bitField0_ |= 0x00000008;
2601                 break;
2602               } // case 34
2603             case 40:
2604               {
2605                 pageCount_ = input.readInt32();
2606                 bitField0_ |= 0x00000010;
2607                 break;
2608               } // case 40
2609             default:
2610               {
2611                 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
2612                   done = true; // was an endgroup tag
2613                 }
2614                 break;
2615               } // default:
2616           } // switch (tag)
2617         } // while (!done)
2618       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
2619         throw e.unwrapIOException();
2620       } finally {
2621         onChanged();
2622       } // finally
2623       return this;
2624     }
2625 
2626     private int bitField0_;
2627 
2628     private com.google.cloud.automl.v1beta1.DocumentInputConfig inputConfig_;
2629     private com.google.protobuf.SingleFieldBuilderV3<
2630             com.google.cloud.automl.v1beta1.DocumentInputConfig,
2631             com.google.cloud.automl.v1beta1.DocumentInputConfig.Builder,
2632             com.google.cloud.automl.v1beta1.DocumentInputConfigOrBuilder>
2633         inputConfigBuilder_;
2634     /**
2635      *
2636      *
2637      * <pre>
2638      * An input config specifying the content of the document.
2639      * </pre>
2640      *
2641      * <code>.google.cloud.automl.v1beta1.DocumentInputConfig input_config = 1;</code>
2642      *
2643      * @return Whether the inputConfig field is set.
2644      */
hasInputConfig()2645     public boolean hasInputConfig() {
2646       return ((bitField0_ & 0x00000001) != 0);
2647     }
2648     /**
2649      *
2650      *
2651      * <pre>
2652      * An input config specifying the content of the document.
2653      * </pre>
2654      *
2655      * <code>.google.cloud.automl.v1beta1.DocumentInputConfig input_config = 1;</code>
2656      *
2657      * @return The inputConfig.
2658      */
getInputConfig()2659     public com.google.cloud.automl.v1beta1.DocumentInputConfig getInputConfig() {
2660       if (inputConfigBuilder_ == null) {
2661         return inputConfig_ == null
2662             ? com.google.cloud.automl.v1beta1.DocumentInputConfig.getDefaultInstance()
2663             : inputConfig_;
2664       } else {
2665         return inputConfigBuilder_.getMessage();
2666       }
2667     }
2668     /**
2669      *
2670      *
2671      * <pre>
2672      * An input config specifying the content of the document.
2673      * </pre>
2674      *
2675      * <code>.google.cloud.automl.v1beta1.DocumentInputConfig input_config = 1;</code>
2676      */
setInputConfig(com.google.cloud.automl.v1beta1.DocumentInputConfig value)2677     public Builder setInputConfig(com.google.cloud.automl.v1beta1.DocumentInputConfig value) {
2678       if (inputConfigBuilder_ == null) {
2679         if (value == null) {
2680           throw new NullPointerException();
2681         }
2682         inputConfig_ = value;
2683       } else {
2684         inputConfigBuilder_.setMessage(value);
2685       }
2686       bitField0_ |= 0x00000001;
2687       onChanged();
2688       return this;
2689     }
2690     /**
2691      *
2692      *
2693      * <pre>
2694      * An input config specifying the content of the document.
2695      * </pre>
2696      *
2697      * <code>.google.cloud.automl.v1beta1.DocumentInputConfig input_config = 1;</code>
2698      */
setInputConfig( com.google.cloud.automl.v1beta1.DocumentInputConfig.Builder builderForValue)2699     public Builder setInputConfig(
2700         com.google.cloud.automl.v1beta1.DocumentInputConfig.Builder builderForValue) {
2701       if (inputConfigBuilder_ == null) {
2702         inputConfig_ = builderForValue.build();
2703       } else {
2704         inputConfigBuilder_.setMessage(builderForValue.build());
2705       }
2706       bitField0_ |= 0x00000001;
2707       onChanged();
2708       return this;
2709     }
2710     /**
2711      *
2712      *
2713      * <pre>
2714      * An input config specifying the content of the document.
2715      * </pre>
2716      *
2717      * <code>.google.cloud.automl.v1beta1.DocumentInputConfig input_config = 1;</code>
2718      */
mergeInputConfig(com.google.cloud.automl.v1beta1.DocumentInputConfig value)2719     public Builder mergeInputConfig(com.google.cloud.automl.v1beta1.DocumentInputConfig value) {
2720       if (inputConfigBuilder_ == null) {
2721         if (((bitField0_ & 0x00000001) != 0)
2722             && inputConfig_ != null
2723             && inputConfig_
2724                 != com.google.cloud.automl.v1beta1.DocumentInputConfig.getDefaultInstance()) {
2725           getInputConfigBuilder().mergeFrom(value);
2726         } else {
2727           inputConfig_ = value;
2728         }
2729       } else {
2730         inputConfigBuilder_.mergeFrom(value);
2731       }
2732       bitField0_ |= 0x00000001;
2733       onChanged();
2734       return this;
2735     }
2736     /**
2737      *
2738      *
2739      * <pre>
2740      * An input config specifying the content of the document.
2741      * </pre>
2742      *
2743      * <code>.google.cloud.automl.v1beta1.DocumentInputConfig input_config = 1;</code>
2744      */
clearInputConfig()2745     public Builder clearInputConfig() {
2746       bitField0_ = (bitField0_ & ~0x00000001);
2747       inputConfig_ = null;
2748       if (inputConfigBuilder_ != null) {
2749         inputConfigBuilder_.dispose();
2750         inputConfigBuilder_ = null;
2751       }
2752       onChanged();
2753       return this;
2754     }
2755     /**
2756      *
2757      *
2758      * <pre>
2759      * An input config specifying the content of the document.
2760      * </pre>
2761      *
2762      * <code>.google.cloud.automl.v1beta1.DocumentInputConfig input_config = 1;</code>
2763      */
getInputConfigBuilder()2764     public com.google.cloud.automl.v1beta1.DocumentInputConfig.Builder getInputConfigBuilder() {
2765       bitField0_ |= 0x00000001;
2766       onChanged();
2767       return getInputConfigFieldBuilder().getBuilder();
2768     }
2769     /**
2770      *
2771      *
2772      * <pre>
2773      * An input config specifying the content of the document.
2774      * </pre>
2775      *
2776      * <code>.google.cloud.automl.v1beta1.DocumentInputConfig input_config = 1;</code>
2777      */
getInputConfigOrBuilder()2778     public com.google.cloud.automl.v1beta1.DocumentInputConfigOrBuilder getInputConfigOrBuilder() {
2779       if (inputConfigBuilder_ != null) {
2780         return inputConfigBuilder_.getMessageOrBuilder();
2781       } else {
2782         return inputConfig_ == null
2783             ? com.google.cloud.automl.v1beta1.DocumentInputConfig.getDefaultInstance()
2784             : inputConfig_;
2785       }
2786     }
2787     /**
2788      *
2789      *
2790      * <pre>
2791      * An input config specifying the content of the document.
2792      * </pre>
2793      *
2794      * <code>.google.cloud.automl.v1beta1.DocumentInputConfig input_config = 1;</code>
2795      */
2796     private com.google.protobuf.SingleFieldBuilderV3<
2797             com.google.cloud.automl.v1beta1.DocumentInputConfig,
2798             com.google.cloud.automl.v1beta1.DocumentInputConfig.Builder,
2799             com.google.cloud.automl.v1beta1.DocumentInputConfigOrBuilder>
getInputConfigFieldBuilder()2800         getInputConfigFieldBuilder() {
2801       if (inputConfigBuilder_ == null) {
2802         inputConfigBuilder_ =
2803             new com.google.protobuf.SingleFieldBuilderV3<
2804                 com.google.cloud.automl.v1beta1.DocumentInputConfig,
2805                 com.google.cloud.automl.v1beta1.DocumentInputConfig.Builder,
2806                 com.google.cloud.automl.v1beta1.DocumentInputConfigOrBuilder>(
2807                 getInputConfig(), getParentForChildren(), isClean());
2808         inputConfig_ = null;
2809       }
2810       return inputConfigBuilder_;
2811     }
2812 
2813     private com.google.cloud.automl.v1beta1.TextSnippet documentText_;
2814     private com.google.protobuf.SingleFieldBuilderV3<
2815             com.google.cloud.automl.v1beta1.TextSnippet,
2816             com.google.cloud.automl.v1beta1.TextSnippet.Builder,
2817             com.google.cloud.automl.v1beta1.TextSnippetOrBuilder>
2818         documentTextBuilder_;
2819     /**
2820      *
2821      *
2822      * <pre>
2823      * The plain text version of this document.
2824      * </pre>
2825      *
2826      * <code>.google.cloud.automl.v1beta1.TextSnippet document_text = 2;</code>
2827      *
2828      * @return Whether the documentText field is set.
2829      */
hasDocumentText()2830     public boolean hasDocumentText() {
2831       return ((bitField0_ & 0x00000002) != 0);
2832     }
2833     /**
2834      *
2835      *
2836      * <pre>
2837      * The plain text version of this document.
2838      * </pre>
2839      *
2840      * <code>.google.cloud.automl.v1beta1.TextSnippet document_text = 2;</code>
2841      *
2842      * @return The documentText.
2843      */
getDocumentText()2844     public com.google.cloud.automl.v1beta1.TextSnippet getDocumentText() {
2845       if (documentTextBuilder_ == null) {
2846         return documentText_ == null
2847             ? com.google.cloud.automl.v1beta1.TextSnippet.getDefaultInstance()
2848             : documentText_;
2849       } else {
2850         return documentTextBuilder_.getMessage();
2851       }
2852     }
2853     /**
2854      *
2855      *
2856      * <pre>
2857      * The plain text version of this document.
2858      * </pre>
2859      *
2860      * <code>.google.cloud.automl.v1beta1.TextSnippet document_text = 2;</code>
2861      */
setDocumentText(com.google.cloud.automl.v1beta1.TextSnippet value)2862     public Builder setDocumentText(com.google.cloud.automl.v1beta1.TextSnippet value) {
2863       if (documentTextBuilder_ == null) {
2864         if (value == null) {
2865           throw new NullPointerException();
2866         }
2867         documentText_ = value;
2868       } else {
2869         documentTextBuilder_.setMessage(value);
2870       }
2871       bitField0_ |= 0x00000002;
2872       onChanged();
2873       return this;
2874     }
2875     /**
2876      *
2877      *
2878      * <pre>
2879      * The plain text version of this document.
2880      * </pre>
2881      *
2882      * <code>.google.cloud.automl.v1beta1.TextSnippet document_text = 2;</code>
2883      */
setDocumentText( com.google.cloud.automl.v1beta1.TextSnippet.Builder builderForValue)2884     public Builder setDocumentText(
2885         com.google.cloud.automl.v1beta1.TextSnippet.Builder builderForValue) {
2886       if (documentTextBuilder_ == null) {
2887         documentText_ = builderForValue.build();
2888       } else {
2889         documentTextBuilder_.setMessage(builderForValue.build());
2890       }
2891       bitField0_ |= 0x00000002;
2892       onChanged();
2893       return this;
2894     }
2895     /**
2896      *
2897      *
2898      * <pre>
2899      * The plain text version of this document.
2900      * </pre>
2901      *
2902      * <code>.google.cloud.automl.v1beta1.TextSnippet document_text = 2;</code>
2903      */
mergeDocumentText(com.google.cloud.automl.v1beta1.TextSnippet value)2904     public Builder mergeDocumentText(com.google.cloud.automl.v1beta1.TextSnippet value) {
2905       if (documentTextBuilder_ == null) {
2906         if (((bitField0_ & 0x00000002) != 0)
2907             && documentText_ != null
2908             && documentText_ != com.google.cloud.automl.v1beta1.TextSnippet.getDefaultInstance()) {
2909           getDocumentTextBuilder().mergeFrom(value);
2910         } else {
2911           documentText_ = value;
2912         }
2913       } else {
2914         documentTextBuilder_.mergeFrom(value);
2915       }
2916       bitField0_ |= 0x00000002;
2917       onChanged();
2918       return this;
2919     }
2920     /**
2921      *
2922      *
2923      * <pre>
2924      * The plain text version of this document.
2925      * </pre>
2926      *
2927      * <code>.google.cloud.automl.v1beta1.TextSnippet document_text = 2;</code>
2928      */
clearDocumentText()2929     public Builder clearDocumentText() {
2930       bitField0_ = (bitField0_ & ~0x00000002);
2931       documentText_ = null;
2932       if (documentTextBuilder_ != null) {
2933         documentTextBuilder_.dispose();
2934         documentTextBuilder_ = null;
2935       }
2936       onChanged();
2937       return this;
2938     }
2939     /**
2940      *
2941      *
2942      * <pre>
2943      * The plain text version of this document.
2944      * </pre>
2945      *
2946      * <code>.google.cloud.automl.v1beta1.TextSnippet document_text = 2;</code>
2947      */
getDocumentTextBuilder()2948     public com.google.cloud.automl.v1beta1.TextSnippet.Builder getDocumentTextBuilder() {
2949       bitField0_ |= 0x00000002;
2950       onChanged();
2951       return getDocumentTextFieldBuilder().getBuilder();
2952     }
2953     /**
2954      *
2955      *
2956      * <pre>
2957      * The plain text version of this document.
2958      * </pre>
2959      *
2960      * <code>.google.cloud.automl.v1beta1.TextSnippet document_text = 2;</code>
2961      */
getDocumentTextOrBuilder()2962     public com.google.cloud.automl.v1beta1.TextSnippetOrBuilder getDocumentTextOrBuilder() {
2963       if (documentTextBuilder_ != null) {
2964         return documentTextBuilder_.getMessageOrBuilder();
2965       } else {
2966         return documentText_ == null
2967             ? com.google.cloud.automl.v1beta1.TextSnippet.getDefaultInstance()
2968             : documentText_;
2969       }
2970     }
2971     /**
2972      *
2973      *
2974      * <pre>
2975      * The plain text version of this document.
2976      * </pre>
2977      *
2978      * <code>.google.cloud.automl.v1beta1.TextSnippet document_text = 2;</code>
2979      */
2980     private com.google.protobuf.SingleFieldBuilderV3<
2981             com.google.cloud.automl.v1beta1.TextSnippet,
2982             com.google.cloud.automl.v1beta1.TextSnippet.Builder,
2983             com.google.cloud.automl.v1beta1.TextSnippetOrBuilder>
getDocumentTextFieldBuilder()2984         getDocumentTextFieldBuilder() {
2985       if (documentTextBuilder_ == null) {
2986         documentTextBuilder_ =
2987             new com.google.protobuf.SingleFieldBuilderV3<
2988                 com.google.cloud.automl.v1beta1.TextSnippet,
2989                 com.google.cloud.automl.v1beta1.TextSnippet.Builder,
2990                 com.google.cloud.automl.v1beta1.TextSnippetOrBuilder>(
2991                 getDocumentText(), getParentForChildren(), isClean());
2992         documentText_ = null;
2993       }
2994       return documentTextBuilder_;
2995     }
2996 
2997     private java.util.List<com.google.cloud.automl.v1beta1.Document.Layout> layout_ =
2998         java.util.Collections.emptyList();
2999 
ensureLayoutIsMutable()3000     private void ensureLayoutIsMutable() {
3001       if (!((bitField0_ & 0x00000004) != 0)) {
3002         layout_ = new java.util.ArrayList<com.google.cloud.automl.v1beta1.Document.Layout>(layout_);
3003         bitField0_ |= 0x00000004;
3004       }
3005     }
3006 
3007     private com.google.protobuf.RepeatedFieldBuilderV3<
3008             com.google.cloud.automl.v1beta1.Document.Layout,
3009             com.google.cloud.automl.v1beta1.Document.Layout.Builder,
3010             com.google.cloud.automl.v1beta1.Document.LayoutOrBuilder>
3011         layoutBuilder_;
3012 
3013     /**
3014      *
3015      *
3016      * <pre>
3017      * Describes the layout of the document.
3018      * Sorted by [page_number][].
3019      * </pre>
3020      *
3021      * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
3022      */
getLayoutList()3023     public java.util.List<com.google.cloud.automl.v1beta1.Document.Layout> getLayoutList() {
3024       if (layoutBuilder_ == null) {
3025         return java.util.Collections.unmodifiableList(layout_);
3026       } else {
3027         return layoutBuilder_.getMessageList();
3028       }
3029     }
3030     /**
3031      *
3032      *
3033      * <pre>
3034      * Describes the layout of the document.
3035      * Sorted by [page_number][].
3036      * </pre>
3037      *
3038      * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
3039      */
getLayoutCount()3040     public int getLayoutCount() {
3041       if (layoutBuilder_ == null) {
3042         return layout_.size();
3043       } else {
3044         return layoutBuilder_.getCount();
3045       }
3046     }
3047     /**
3048      *
3049      *
3050      * <pre>
3051      * Describes the layout of the document.
3052      * Sorted by [page_number][].
3053      * </pre>
3054      *
3055      * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
3056      */
getLayout(int index)3057     public com.google.cloud.automl.v1beta1.Document.Layout getLayout(int index) {
3058       if (layoutBuilder_ == null) {
3059         return layout_.get(index);
3060       } else {
3061         return layoutBuilder_.getMessage(index);
3062       }
3063     }
3064     /**
3065      *
3066      *
3067      * <pre>
3068      * Describes the layout of the document.
3069      * Sorted by [page_number][].
3070      * </pre>
3071      *
3072      * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
3073      */
setLayout(int index, com.google.cloud.automl.v1beta1.Document.Layout value)3074     public Builder setLayout(int index, com.google.cloud.automl.v1beta1.Document.Layout value) {
3075       if (layoutBuilder_ == null) {
3076         if (value == null) {
3077           throw new NullPointerException();
3078         }
3079         ensureLayoutIsMutable();
3080         layout_.set(index, value);
3081         onChanged();
3082       } else {
3083         layoutBuilder_.setMessage(index, value);
3084       }
3085       return this;
3086     }
3087     /**
3088      *
3089      *
3090      * <pre>
3091      * Describes the layout of the document.
3092      * Sorted by [page_number][].
3093      * </pre>
3094      *
3095      * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
3096      */
setLayout( int index, com.google.cloud.automl.v1beta1.Document.Layout.Builder builderForValue)3097     public Builder setLayout(
3098         int index, com.google.cloud.automl.v1beta1.Document.Layout.Builder builderForValue) {
3099       if (layoutBuilder_ == null) {
3100         ensureLayoutIsMutable();
3101         layout_.set(index, builderForValue.build());
3102         onChanged();
3103       } else {
3104         layoutBuilder_.setMessage(index, builderForValue.build());
3105       }
3106       return this;
3107     }
3108     /**
3109      *
3110      *
3111      * <pre>
3112      * Describes the layout of the document.
3113      * Sorted by [page_number][].
3114      * </pre>
3115      *
3116      * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
3117      */
addLayout(com.google.cloud.automl.v1beta1.Document.Layout value)3118     public Builder addLayout(com.google.cloud.automl.v1beta1.Document.Layout value) {
3119       if (layoutBuilder_ == null) {
3120         if (value == null) {
3121           throw new NullPointerException();
3122         }
3123         ensureLayoutIsMutable();
3124         layout_.add(value);
3125         onChanged();
3126       } else {
3127         layoutBuilder_.addMessage(value);
3128       }
3129       return this;
3130     }
3131     /**
3132      *
3133      *
3134      * <pre>
3135      * Describes the layout of the document.
3136      * Sorted by [page_number][].
3137      * </pre>
3138      *
3139      * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
3140      */
addLayout(int index, com.google.cloud.automl.v1beta1.Document.Layout value)3141     public Builder addLayout(int index, com.google.cloud.automl.v1beta1.Document.Layout value) {
3142       if (layoutBuilder_ == null) {
3143         if (value == null) {
3144           throw new NullPointerException();
3145         }
3146         ensureLayoutIsMutable();
3147         layout_.add(index, value);
3148         onChanged();
3149       } else {
3150         layoutBuilder_.addMessage(index, value);
3151       }
3152       return this;
3153     }
3154     /**
3155      *
3156      *
3157      * <pre>
3158      * Describes the layout of the document.
3159      * Sorted by [page_number][].
3160      * </pre>
3161      *
3162      * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
3163      */
addLayout( com.google.cloud.automl.v1beta1.Document.Layout.Builder builderForValue)3164     public Builder addLayout(
3165         com.google.cloud.automl.v1beta1.Document.Layout.Builder builderForValue) {
3166       if (layoutBuilder_ == null) {
3167         ensureLayoutIsMutable();
3168         layout_.add(builderForValue.build());
3169         onChanged();
3170       } else {
3171         layoutBuilder_.addMessage(builderForValue.build());
3172       }
3173       return this;
3174     }
3175     /**
3176      *
3177      *
3178      * <pre>
3179      * Describes the layout of the document.
3180      * Sorted by [page_number][].
3181      * </pre>
3182      *
3183      * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
3184      */
addLayout( int index, com.google.cloud.automl.v1beta1.Document.Layout.Builder builderForValue)3185     public Builder addLayout(
3186         int index, com.google.cloud.automl.v1beta1.Document.Layout.Builder builderForValue) {
3187       if (layoutBuilder_ == null) {
3188         ensureLayoutIsMutable();
3189         layout_.add(index, builderForValue.build());
3190         onChanged();
3191       } else {
3192         layoutBuilder_.addMessage(index, builderForValue.build());
3193       }
3194       return this;
3195     }
3196     /**
3197      *
3198      *
3199      * <pre>
3200      * Describes the layout of the document.
3201      * Sorted by [page_number][].
3202      * </pre>
3203      *
3204      * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
3205      */
addAllLayout( java.lang.Iterable<? extends com.google.cloud.automl.v1beta1.Document.Layout> values)3206     public Builder addAllLayout(
3207         java.lang.Iterable<? extends com.google.cloud.automl.v1beta1.Document.Layout> values) {
3208       if (layoutBuilder_ == null) {
3209         ensureLayoutIsMutable();
3210         com.google.protobuf.AbstractMessageLite.Builder.addAll(values, layout_);
3211         onChanged();
3212       } else {
3213         layoutBuilder_.addAllMessages(values);
3214       }
3215       return this;
3216     }
3217     /**
3218      *
3219      *
3220      * <pre>
3221      * Describes the layout of the document.
3222      * Sorted by [page_number][].
3223      * </pre>
3224      *
3225      * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
3226      */
clearLayout()3227     public Builder clearLayout() {
3228       if (layoutBuilder_ == null) {
3229         layout_ = java.util.Collections.emptyList();
3230         bitField0_ = (bitField0_ & ~0x00000004);
3231         onChanged();
3232       } else {
3233         layoutBuilder_.clear();
3234       }
3235       return this;
3236     }
3237     /**
3238      *
3239      *
3240      * <pre>
3241      * Describes the layout of the document.
3242      * Sorted by [page_number][].
3243      * </pre>
3244      *
3245      * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
3246      */
removeLayout(int index)3247     public Builder removeLayout(int index) {
3248       if (layoutBuilder_ == null) {
3249         ensureLayoutIsMutable();
3250         layout_.remove(index);
3251         onChanged();
3252       } else {
3253         layoutBuilder_.remove(index);
3254       }
3255       return this;
3256     }
3257     /**
3258      *
3259      *
3260      * <pre>
3261      * Describes the layout of the document.
3262      * Sorted by [page_number][].
3263      * </pre>
3264      *
3265      * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
3266      */
getLayoutBuilder(int index)3267     public com.google.cloud.automl.v1beta1.Document.Layout.Builder getLayoutBuilder(int index) {
3268       return getLayoutFieldBuilder().getBuilder(index);
3269     }
3270     /**
3271      *
3272      *
3273      * <pre>
3274      * Describes the layout of the document.
3275      * Sorted by [page_number][].
3276      * </pre>
3277      *
3278      * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
3279      */
getLayoutOrBuilder(int index)3280     public com.google.cloud.automl.v1beta1.Document.LayoutOrBuilder getLayoutOrBuilder(int index) {
3281       if (layoutBuilder_ == null) {
3282         return layout_.get(index);
3283       } else {
3284         return layoutBuilder_.getMessageOrBuilder(index);
3285       }
3286     }
3287     /**
3288      *
3289      *
3290      * <pre>
3291      * Describes the layout of the document.
3292      * Sorted by [page_number][].
3293      * </pre>
3294      *
3295      * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
3296      */
3297     public java.util.List<? extends com.google.cloud.automl.v1beta1.Document.LayoutOrBuilder>
getLayoutOrBuilderList()3298         getLayoutOrBuilderList() {
3299       if (layoutBuilder_ != null) {
3300         return layoutBuilder_.getMessageOrBuilderList();
3301       } else {
3302         return java.util.Collections.unmodifiableList(layout_);
3303       }
3304     }
3305     /**
3306      *
3307      *
3308      * <pre>
3309      * Describes the layout of the document.
3310      * Sorted by [page_number][].
3311      * </pre>
3312      *
3313      * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
3314      */
addLayoutBuilder()3315     public com.google.cloud.automl.v1beta1.Document.Layout.Builder addLayoutBuilder() {
3316       return getLayoutFieldBuilder()
3317           .addBuilder(com.google.cloud.automl.v1beta1.Document.Layout.getDefaultInstance());
3318     }
3319     /**
3320      *
3321      *
3322      * <pre>
3323      * Describes the layout of the document.
3324      * Sorted by [page_number][].
3325      * </pre>
3326      *
3327      * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
3328      */
addLayoutBuilder(int index)3329     public com.google.cloud.automl.v1beta1.Document.Layout.Builder addLayoutBuilder(int index) {
3330       return getLayoutFieldBuilder()
3331           .addBuilder(index, com.google.cloud.automl.v1beta1.Document.Layout.getDefaultInstance());
3332     }
3333     /**
3334      *
3335      *
3336      * <pre>
3337      * Describes the layout of the document.
3338      * Sorted by [page_number][].
3339      * </pre>
3340      *
3341      * <code>repeated .google.cloud.automl.v1beta1.Document.Layout layout = 3;</code>
3342      */
3343     public java.util.List<com.google.cloud.automl.v1beta1.Document.Layout.Builder>
getLayoutBuilderList()3344         getLayoutBuilderList() {
3345       return getLayoutFieldBuilder().getBuilderList();
3346     }
3347 
3348     private com.google.protobuf.RepeatedFieldBuilderV3<
3349             com.google.cloud.automl.v1beta1.Document.Layout,
3350             com.google.cloud.automl.v1beta1.Document.Layout.Builder,
3351             com.google.cloud.automl.v1beta1.Document.LayoutOrBuilder>
getLayoutFieldBuilder()3352         getLayoutFieldBuilder() {
3353       if (layoutBuilder_ == null) {
3354         layoutBuilder_ =
3355             new com.google.protobuf.RepeatedFieldBuilderV3<
3356                 com.google.cloud.automl.v1beta1.Document.Layout,
3357                 com.google.cloud.automl.v1beta1.Document.Layout.Builder,
3358                 com.google.cloud.automl.v1beta1.Document.LayoutOrBuilder>(
3359                 layout_, ((bitField0_ & 0x00000004) != 0), getParentForChildren(), isClean());
3360         layout_ = null;
3361       }
3362       return layoutBuilder_;
3363     }
3364 
3365     private com.google.cloud.automl.v1beta1.DocumentDimensions documentDimensions_;
3366     private com.google.protobuf.SingleFieldBuilderV3<
3367             com.google.cloud.automl.v1beta1.DocumentDimensions,
3368             com.google.cloud.automl.v1beta1.DocumentDimensions.Builder,
3369             com.google.cloud.automl.v1beta1.DocumentDimensionsOrBuilder>
3370         documentDimensionsBuilder_;
3371     /**
3372      *
3373      *
3374      * <pre>
3375      * The dimensions of the page in the document.
3376      * </pre>
3377      *
3378      * <code>.google.cloud.automl.v1beta1.DocumentDimensions document_dimensions = 4;</code>
3379      *
3380      * @return Whether the documentDimensions field is set.
3381      */
hasDocumentDimensions()3382     public boolean hasDocumentDimensions() {
3383       return ((bitField0_ & 0x00000008) != 0);
3384     }
3385     /**
3386      *
3387      *
3388      * <pre>
3389      * The dimensions of the page in the document.
3390      * </pre>
3391      *
3392      * <code>.google.cloud.automl.v1beta1.DocumentDimensions document_dimensions = 4;</code>
3393      *
3394      * @return The documentDimensions.
3395      */
getDocumentDimensions()3396     public com.google.cloud.automl.v1beta1.DocumentDimensions getDocumentDimensions() {
3397       if (documentDimensionsBuilder_ == null) {
3398         return documentDimensions_ == null
3399             ? com.google.cloud.automl.v1beta1.DocumentDimensions.getDefaultInstance()
3400             : documentDimensions_;
3401       } else {
3402         return documentDimensionsBuilder_.getMessage();
3403       }
3404     }
3405     /**
3406      *
3407      *
3408      * <pre>
3409      * The dimensions of the page in the document.
3410      * </pre>
3411      *
3412      * <code>.google.cloud.automl.v1beta1.DocumentDimensions document_dimensions = 4;</code>
3413      */
setDocumentDimensions(com.google.cloud.automl.v1beta1.DocumentDimensions value)3414     public Builder setDocumentDimensions(com.google.cloud.automl.v1beta1.DocumentDimensions value) {
3415       if (documentDimensionsBuilder_ == null) {
3416         if (value == null) {
3417           throw new NullPointerException();
3418         }
3419         documentDimensions_ = value;
3420       } else {
3421         documentDimensionsBuilder_.setMessage(value);
3422       }
3423       bitField0_ |= 0x00000008;
3424       onChanged();
3425       return this;
3426     }
3427     /**
3428      *
3429      *
3430      * <pre>
3431      * The dimensions of the page in the document.
3432      * </pre>
3433      *
3434      * <code>.google.cloud.automl.v1beta1.DocumentDimensions document_dimensions = 4;</code>
3435      */
setDocumentDimensions( com.google.cloud.automl.v1beta1.DocumentDimensions.Builder builderForValue)3436     public Builder setDocumentDimensions(
3437         com.google.cloud.automl.v1beta1.DocumentDimensions.Builder builderForValue) {
3438       if (documentDimensionsBuilder_ == null) {
3439         documentDimensions_ = builderForValue.build();
3440       } else {
3441         documentDimensionsBuilder_.setMessage(builderForValue.build());
3442       }
3443       bitField0_ |= 0x00000008;
3444       onChanged();
3445       return this;
3446     }
3447     /**
3448      *
3449      *
3450      * <pre>
3451      * The dimensions of the page in the document.
3452      * </pre>
3453      *
3454      * <code>.google.cloud.automl.v1beta1.DocumentDimensions document_dimensions = 4;</code>
3455      */
mergeDocumentDimensions( com.google.cloud.automl.v1beta1.DocumentDimensions value)3456     public Builder mergeDocumentDimensions(
3457         com.google.cloud.automl.v1beta1.DocumentDimensions value) {
3458       if (documentDimensionsBuilder_ == null) {
3459         if (((bitField0_ & 0x00000008) != 0)
3460             && documentDimensions_ != null
3461             && documentDimensions_
3462                 != com.google.cloud.automl.v1beta1.DocumentDimensions.getDefaultInstance()) {
3463           getDocumentDimensionsBuilder().mergeFrom(value);
3464         } else {
3465           documentDimensions_ = value;
3466         }
3467       } else {
3468         documentDimensionsBuilder_.mergeFrom(value);
3469       }
3470       bitField0_ |= 0x00000008;
3471       onChanged();
3472       return this;
3473     }
3474     /**
3475      *
3476      *
3477      * <pre>
3478      * The dimensions of the page in the document.
3479      * </pre>
3480      *
3481      * <code>.google.cloud.automl.v1beta1.DocumentDimensions document_dimensions = 4;</code>
3482      */
clearDocumentDimensions()3483     public Builder clearDocumentDimensions() {
3484       bitField0_ = (bitField0_ & ~0x00000008);
3485       documentDimensions_ = null;
3486       if (documentDimensionsBuilder_ != null) {
3487         documentDimensionsBuilder_.dispose();
3488         documentDimensionsBuilder_ = null;
3489       }
3490       onChanged();
3491       return this;
3492     }
3493     /**
3494      *
3495      *
3496      * <pre>
3497      * The dimensions of the page in the document.
3498      * </pre>
3499      *
3500      * <code>.google.cloud.automl.v1beta1.DocumentDimensions document_dimensions = 4;</code>
3501      */
3502     public com.google.cloud.automl.v1beta1.DocumentDimensions.Builder
getDocumentDimensionsBuilder()3503         getDocumentDimensionsBuilder() {
3504       bitField0_ |= 0x00000008;
3505       onChanged();
3506       return getDocumentDimensionsFieldBuilder().getBuilder();
3507     }
3508     /**
3509      *
3510      *
3511      * <pre>
3512      * The dimensions of the page in the document.
3513      * </pre>
3514      *
3515      * <code>.google.cloud.automl.v1beta1.DocumentDimensions document_dimensions = 4;</code>
3516      */
3517     public com.google.cloud.automl.v1beta1.DocumentDimensionsOrBuilder
getDocumentDimensionsOrBuilder()3518         getDocumentDimensionsOrBuilder() {
3519       if (documentDimensionsBuilder_ != null) {
3520         return documentDimensionsBuilder_.getMessageOrBuilder();
3521       } else {
3522         return documentDimensions_ == null
3523             ? com.google.cloud.automl.v1beta1.DocumentDimensions.getDefaultInstance()
3524             : documentDimensions_;
3525       }
3526     }
3527     /**
3528      *
3529      *
3530      * <pre>
3531      * The dimensions of the page in the document.
3532      * </pre>
3533      *
3534      * <code>.google.cloud.automl.v1beta1.DocumentDimensions document_dimensions = 4;</code>
3535      */
3536     private com.google.protobuf.SingleFieldBuilderV3<
3537             com.google.cloud.automl.v1beta1.DocumentDimensions,
3538             com.google.cloud.automl.v1beta1.DocumentDimensions.Builder,
3539             com.google.cloud.automl.v1beta1.DocumentDimensionsOrBuilder>
getDocumentDimensionsFieldBuilder()3540         getDocumentDimensionsFieldBuilder() {
3541       if (documentDimensionsBuilder_ == null) {
3542         documentDimensionsBuilder_ =
3543             new com.google.protobuf.SingleFieldBuilderV3<
3544                 com.google.cloud.automl.v1beta1.DocumentDimensions,
3545                 com.google.cloud.automl.v1beta1.DocumentDimensions.Builder,
3546                 com.google.cloud.automl.v1beta1.DocumentDimensionsOrBuilder>(
3547                 getDocumentDimensions(), getParentForChildren(), isClean());
3548         documentDimensions_ = null;
3549       }
3550       return documentDimensionsBuilder_;
3551     }
3552 
3553     private int pageCount_;
3554     /**
3555      *
3556      *
3557      * <pre>
3558      * Number of pages in the document.
3559      * </pre>
3560      *
3561      * <code>int32 page_count = 5;</code>
3562      *
3563      * @return The pageCount.
3564      */
3565     @java.lang.Override
getPageCount()3566     public int getPageCount() {
3567       return pageCount_;
3568     }
3569     /**
3570      *
3571      *
3572      * <pre>
3573      * Number of pages in the document.
3574      * </pre>
3575      *
3576      * <code>int32 page_count = 5;</code>
3577      *
3578      * @param value The pageCount to set.
3579      * @return This builder for chaining.
3580      */
setPageCount(int value)3581     public Builder setPageCount(int value) {
3582 
3583       pageCount_ = value;
3584       bitField0_ |= 0x00000010;
3585       onChanged();
3586       return this;
3587     }
3588     /**
3589      *
3590      *
3591      * <pre>
3592      * Number of pages in the document.
3593      * </pre>
3594      *
3595      * <code>int32 page_count = 5;</code>
3596      *
3597      * @return This builder for chaining.
3598      */
clearPageCount()3599     public Builder clearPageCount() {
3600       bitField0_ = (bitField0_ & ~0x00000010);
3601       pageCount_ = 0;
3602       onChanged();
3603       return this;
3604     }
3605 
3606     @java.lang.Override
setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)3607     public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) {
3608       return super.setUnknownFields(unknownFields);
3609     }
3610 
3611     @java.lang.Override
mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields)3612     public final Builder mergeUnknownFields(
3613         final com.google.protobuf.UnknownFieldSet unknownFields) {
3614       return super.mergeUnknownFields(unknownFields);
3615     }
3616 
3617     // @@protoc_insertion_point(builder_scope:google.cloud.automl.v1beta1.Document)
3618   }
3619 
3620   // @@protoc_insertion_point(class_scope:google.cloud.automl.v1beta1.Document)
3621   private static final com.google.cloud.automl.v1beta1.Document DEFAULT_INSTANCE;
3622 
3623   static {
3624     DEFAULT_INSTANCE = new com.google.cloud.automl.v1beta1.Document();
3625   }
3626 
getDefaultInstance()3627   public static com.google.cloud.automl.v1beta1.Document getDefaultInstance() {
3628     return DEFAULT_INSTANCE;
3629   }
3630 
3631   private static final com.google.protobuf.Parser<Document> PARSER =
3632       new com.google.protobuf.AbstractParser<Document>() {
3633         @java.lang.Override
3634         public Document parsePartialFrom(
3635             com.google.protobuf.CodedInputStream input,
3636             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3637             throws com.google.protobuf.InvalidProtocolBufferException {
3638           Builder builder = newBuilder();
3639           try {
3640             builder.mergeFrom(input, extensionRegistry);
3641           } catch (com.google.protobuf.InvalidProtocolBufferException e) {
3642             throw e.setUnfinishedMessage(builder.buildPartial());
3643           } catch (com.google.protobuf.UninitializedMessageException e) {
3644             throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
3645           } catch (java.io.IOException e) {
3646             throw new com.google.protobuf.InvalidProtocolBufferException(e)
3647                 .setUnfinishedMessage(builder.buildPartial());
3648           }
3649           return builder.buildPartial();
3650         }
3651       };
3652 
parser()3653   public static com.google.protobuf.Parser<Document> parser() {
3654     return PARSER;
3655   }
3656 
3657   @java.lang.Override
getParserForType()3658   public com.google.protobuf.Parser<Document> getParserForType() {
3659     return PARSER;
3660   }
3661 
3662   @java.lang.Override
getDefaultInstanceForType()3663   public com.google.cloud.automl.v1beta1.Document getDefaultInstanceForType() {
3664     return DEFAULT_INSTANCE;
3665   }
3666 }
3667