• 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/api/service.proto
18 
19 package com.google.api;
20 
21 /**
22  *
23  *
24  * <pre>
25  * `Service` is the root object of Google API service configuration (service
26  * config). It describes the basic information about a logical service,
27  * such as the service name and the user-facing title, and delegates other
28  * aspects to sub-sections. Each sub-section is either a proto message or a
29  * repeated proto message that configures a specific aspect, such as auth.
30  * For more information, see each proto message definition.
31  * Example:
32  *     type: google.api.Service
33  *     name: calendar.googleapis.com
34  *     title: Google Calendar API
35  *     apis:
36  *     - name: google.calendar.v3.Calendar
37  *     visibility:
38  *       rules:
39  *       - selector: "google.calendar.v3.*"
40  *         restriction: PREVIEW
41  *     backend:
42  *       rules:
43  *       - selector: "google.calendar.v3.*"
44  *         address: calendar.example.com
45  *     authentication:
46  *       providers:
47  *       - id: google_calendar_auth
48  *         jwks_uri: https://www.googleapis.com/oauth2/v1/certs
49  *         issuer: https://securetoken.google.com
50  *       rules:
51  *       - selector: "*"
52  *         requirements:
53  *           provider_id: google_calendar_auth
54  * </pre>
55  *
56  * Protobuf type {@code google.api.Service}
57  */
58 public final class Service extends com.google.protobuf.GeneratedMessageV3
59     implements
60     // @@protoc_insertion_point(message_implements:google.api.Service)
61     ServiceOrBuilder {
62   private static final long serialVersionUID = 0L;
63   // Use Service.newBuilder() to construct.
Service(com.google.protobuf.GeneratedMessageV3.Builder<?> builder)64   private Service(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
65     super(builder);
66   }
67 
Service()68   private Service() {
69     name_ = "";
70     title_ = "";
71     producerProjectId_ = "";
72     id_ = "";
73     apis_ = java.util.Collections.emptyList();
74     types_ = java.util.Collections.emptyList();
75     enums_ = java.util.Collections.emptyList();
76     endpoints_ = java.util.Collections.emptyList();
77     logs_ = java.util.Collections.emptyList();
78     metrics_ = java.util.Collections.emptyList();
79     monitoredResources_ = java.util.Collections.emptyList();
80   }
81 
82   @java.lang.Override
83   @SuppressWarnings({"unused"})
newInstance(UnusedPrivateParameter unused)84   protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
85     return new Service();
86   }
87 
88   @java.lang.Override
getUnknownFields()89   public final com.google.protobuf.UnknownFieldSet getUnknownFields() {
90     return this.unknownFields;
91   }
92 
getDescriptor()93   public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
94     return com.google.api.ServiceProto.internal_static_google_api_Service_descriptor;
95   }
96 
97   @java.lang.Override
98   protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()99       internalGetFieldAccessorTable() {
100     return com.google.api.ServiceProto.internal_static_google_api_Service_fieldAccessorTable
101         .ensureFieldAccessorsInitialized(
102             com.google.api.Service.class, com.google.api.Service.Builder.class);
103   }
104 
105   public static final int NAME_FIELD_NUMBER = 1;
106 
107   @SuppressWarnings("serial")
108   private volatile java.lang.Object name_ = "";
109   /**
110    *
111    *
112    * <pre>
113    * The service name, which is a DNS-like logical identifier for the
114    * service, such as `calendar.googleapis.com`. The service name
115    * typically goes through DNS verification to make sure the owner
116    * of the service also owns the DNS name.
117    * </pre>
118    *
119    * <code>string name = 1;</code>
120    *
121    * @return The name.
122    */
123   @java.lang.Override
getName()124   public java.lang.String getName() {
125     java.lang.Object ref = name_;
126     if (ref instanceof java.lang.String) {
127       return (java.lang.String) ref;
128     } else {
129       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
130       java.lang.String s = bs.toStringUtf8();
131       name_ = s;
132       return s;
133     }
134   }
135   /**
136    *
137    *
138    * <pre>
139    * The service name, which is a DNS-like logical identifier for the
140    * service, such as `calendar.googleapis.com`. The service name
141    * typically goes through DNS verification to make sure the owner
142    * of the service also owns the DNS name.
143    * </pre>
144    *
145    * <code>string name = 1;</code>
146    *
147    * @return The bytes for name.
148    */
149   @java.lang.Override
getNameBytes()150   public com.google.protobuf.ByteString getNameBytes() {
151     java.lang.Object ref = name_;
152     if (ref instanceof java.lang.String) {
153       com.google.protobuf.ByteString b =
154           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
155       name_ = b;
156       return b;
157     } else {
158       return (com.google.protobuf.ByteString) ref;
159     }
160   }
161 
162   public static final int TITLE_FIELD_NUMBER = 2;
163 
164   @SuppressWarnings("serial")
165   private volatile java.lang.Object title_ = "";
166   /**
167    *
168    *
169    * <pre>
170    * The product title for this service, it is the name displayed in Google
171    * Cloud Console.
172    * </pre>
173    *
174    * <code>string title = 2;</code>
175    *
176    * @return The title.
177    */
178   @java.lang.Override
getTitle()179   public java.lang.String getTitle() {
180     java.lang.Object ref = title_;
181     if (ref instanceof java.lang.String) {
182       return (java.lang.String) ref;
183     } else {
184       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
185       java.lang.String s = bs.toStringUtf8();
186       title_ = s;
187       return s;
188     }
189   }
190   /**
191    *
192    *
193    * <pre>
194    * The product title for this service, it is the name displayed in Google
195    * Cloud Console.
196    * </pre>
197    *
198    * <code>string title = 2;</code>
199    *
200    * @return The bytes for title.
201    */
202   @java.lang.Override
getTitleBytes()203   public com.google.protobuf.ByteString getTitleBytes() {
204     java.lang.Object ref = title_;
205     if (ref instanceof java.lang.String) {
206       com.google.protobuf.ByteString b =
207           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
208       title_ = b;
209       return b;
210     } else {
211       return (com.google.protobuf.ByteString) ref;
212     }
213   }
214 
215   public static final int PRODUCER_PROJECT_ID_FIELD_NUMBER = 22;
216 
217   @SuppressWarnings("serial")
218   private volatile java.lang.Object producerProjectId_ = "";
219   /**
220    *
221    *
222    * <pre>
223    * The Google project that owns this service.
224    * </pre>
225    *
226    * <code>string producer_project_id = 22;</code>
227    *
228    * @return The producerProjectId.
229    */
230   @java.lang.Override
getProducerProjectId()231   public java.lang.String getProducerProjectId() {
232     java.lang.Object ref = producerProjectId_;
233     if (ref instanceof java.lang.String) {
234       return (java.lang.String) ref;
235     } else {
236       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
237       java.lang.String s = bs.toStringUtf8();
238       producerProjectId_ = s;
239       return s;
240     }
241   }
242   /**
243    *
244    *
245    * <pre>
246    * The Google project that owns this service.
247    * </pre>
248    *
249    * <code>string producer_project_id = 22;</code>
250    *
251    * @return The bytes for producerProjectId.
252    */
253   @java.lang.Override
getProducerProjectIdBytes()254   public com.google.protobuf.ByteString getProducerProjectIdBytes() {
255     java.lang.Object ref = producerProjectId_;
256     if (ref instanceof java.lang.String) {
257       com.google.protobuf.ByteString b =
258           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
259       producerProjectId_ = b;
260       return b;
261     } else {
262       return (com.google.protobuf.ByteString) ref;
263     }
264   }
265 
266   public static final int ID_FIELD_NUMBER = 33;
267 
268   @SuppressWarnings("serial")
269   private volatile java.lang.Object id_ = "";
270   /**
271    *
272    *
273    * <pre>
274    * A unique ID for a specific instance of this message, typically assigned
275    * by the client for tracking purpose. Must be no longer than 63 characters
276    * and only lower case letters, digits, '.', '_' and '-' are allowed. If
277    * empty, the server may choose to generate one instead.
278    * </pre>
279    *
280    * <code>string id = 33;</code>
281    *
282    * @return The id.
283    */
284   @java.lang.Override
getId()285   public java.lang.String getId() {
286     java.lang.Object ref = id_;
287     if (ref instanceof java.lang.String) {
288       return (java.lang.String) ref;
289     } else {
290       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
291       java.lang.String s = bs.toStringUtf8();
292       id_ = s;
293       return s;
294     }
295   }
296   /**
297    *
298    *
299    * <pre>
300    * A unique ID for a specific instance of this message, typically assigned
301    * by the client for tracking purpose. Must be no longer than 63 characters
302    * and only lower case letters, digits, '.', '_' and '-' are allowed. If
303    * empty, the server may choose to generate one instead.
304    * </pre>
305    *
306    * <code>string id = 33;</code>
307    *
308    * @return The bytes for id.
309    */
310   @java.lang.Override
getIdBytes()311   public com.google.protobuf.ByteString getIdBytes() {
312     java.lang.Object ref = id_;
313     if (ref instanceof java.lang.String) {
314       com.google.protobuf.ByteString b =
315           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
316       id_ = b;
317       return b;
318     } else {
319       return (com.google.protobuf.ByteString) ref;
320     }
321   }
322 
323   public static final int APIS_FIELD_NUMBER = 3;
324 
325   @SuppressWarnings("serial")
326   private java.util.List<com.google.protobuf.Api> apis_;
327   /**
328    *
329    *
330    * <pre>
331    * A list of API interfaces exported by this service. Only the `name` field
332    * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
333    * the configuration author, as the remaining fields will be derived from the
334    * IDL during the normalization process. It is an error to specify an API
335    * interface here which cannot be resolved against the associated IDL files.
336    * </pre>
337    *
338    * <code>repeated .google.protobuf.Api apis = 3;</code>
339    */
340   @java.lang.Override
getApisList()341   public java.util.List<com.google.protobuf.Api> getApisList() {
342     return apis_;
343   }
344   /**
345    *
346    *
347    * <pre>
348    * A list of API interfaces exported by this service. Only the `name` field
349    * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
350    * the configuration author, as the remaining fields will be derived from the
351    * IDL during the normalization process. It is an error to specify an API
352    * interface here which cannot be resolved against the associated IDL files.
353    * </pre>
354    *
355    * <code>repeated .google.protobuf.Api apis = 3;</code>
356    */
357   @java.lang.Override
getApisOrBuilderList()358   public java.util.List<? extends com.google.protobuf.ApiOrBuilder> getApisOrBuilderList() {
359     return apis_;
360   }
361   /**
362    *
363    *
364    * <pre>
365    * A list of API interfaces exported by this service. Only the `name` field
366    * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
367    * the configuration author, as the remaining fields will be derived from the
368    * IDL during the normalization process. It is an error to specify an API
369    * interface here which cannot be resolved against the associated IDL files.
370    * </pre>
371    *
372    * <code>repeated .google.protobuf.Api apis = 3;</code>
373    */
374   @java.lang.Override
getApisCount()375   public int getApisCount() {
376     return apis_.size();
377   }
378   /**
379    *
380    *
381    * <pre>
382    * A list of API interfaces exported by this service. Only the `name` field
383    * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
384    * the configuration author, as the remaining fields will be derived from the
385    * IDL during the normalization process. It is an error to specify an API
386    * interface here which cannot be resolved against the associated IDL files.
387    * </pre>
388    *
389    * <code>repeated .google.protobuf.Api apis = 3;</code>
390    */
391   @java.lang.Override
getApis(int index)392   public com.google.protobuf.Api getApis(int index) {
393     return apis_.get(index);
394   }
395   /**
396    *
397    *
398    * <pre>
399    * A list of API interfaces exported by this service. Only the `name` field
400    * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
401    * the configuration author, as the remaining fields will be derived from the
402    * IDL during the normalization process. It is an error to specify an API
403    * interface here which cannot be resolved against the associated IDL files.
404    * </pre>
405    *
406    * <code>repeated .google.protobuf.Api apis = 3;</code>
407    */
408   @java.lang.Override
getApisOrBuilder(int index)409   public com.google.protobuf.ApiOrBuilder getApisOrBuilder(int index) {
410     return apis_.get(index);
411   }
412 
413   public static final int TYPES_FIELD_NUMBER = 4;
414 
415   @SuppressWarnings("serial")
416   private java.util.List<com.google.protobuf.Type> types_;
417   /**
418    *
419    *
420    * <pre>
421    * A list of all proto message types included in this API service.
422    * Types referenced directly or indirectly by the `apis` are automatically
423    * included.  Messages which are not referenced but shall be included, such as
424    * types used by the `google.protobuf.Any` type, should be listed here by
425    * name by the configuration author. Example:
426    *     types:
427    *     - name: google.protobuf.Int32
428    * </pre>
429    *
430    * <code>repeated .google.protobuf.Type types = 4;</code>
431    */
432   @java.lang.Override
getTypesList()433   public java.util.List<com.google.protobuf.Type> getTypesList() {
434     return types_;
435   }
436   /**
437    *
438    *
439    * <pre>
440    * A list of all proto message types included in this API service.
441    * Types referenced directly or indirectly by the `apis` are automatically
442    * included.  Messages which are not referenced but shall be included, such as
443    * types used by the `google.protobuf.Any` type, should be listed here by
444    * name by the configuration author. Example:
445    *     types:
446    *     - name: google.protobuf.Int32
447    * </pre>
448    *
449    * <code>repeated .google.protobuf.Type types = 4;</code>
450    */
451   @java.lang.Override
getTypesOrBuilderList()452   public java.util.List<? extends com.google.protobuf.TypeOrBuilder> getTypesOrBuilderList() {
453     return types_;
454   }
455   /**
456    *
457    *
458    * <pre>
459    * A list of all proto message types included in this API service.
460    * Types referenced directly or indirectly by the `apis` are automatically
461    * included.  Messages which are not referenced but shall be included, such as
462    * types used by the `google.protobuf.Any` type, should be listed here by
463    * name by the configuration author. Example:
464    *     types:
465    *     - name: google.protobuf.Int32
466    * </pre>
467    *
468    * <code>repeated .google.protobuf.Type types = 4;</code>
469    */
470   @java.lang.Override
getTypesCount()471   public int getTypesCount() {
472     return types_.size();
473   }
474   /**
475    *
476    *
477    * <pre>
478    * A list of all proto message types included in this API service.
479    * Types referenced directly or indirectly by the `apis` are automatically
480    * included.  Messages which are not referenced but shall be included, such as
481    * types used by the `google.protobuf.Any` type, should be listed here by
482    * name by the configuration author. Example:
483    *     types:
484    *     - name: google.protobuf.Int32
485    * </pre>
486    *
487    * <code>repeated .google.protobuf.Type types = 4;</code>
488    */
489   @java.lang.Override
getTypes(int index)490   public com.google.protobuf.Type getTypes(int index) {
491     return types_.get(index);
492   }
493   /**
494    *
495    *
496    * <pre>
497    * A list of all proto message types included in this API service.
498    * Types referenced directly or indirectly by the `apis` are automatically
499    * included.  Messages which are not referenced but shall be included, such as
500    * types used by the `google.protobuf.Any` type, should be listed here by
501    * name by the configuration author. Example:
502    *     types:
503    *     - name: google.protobuf.Int32
504    * </pre>
505    *
506    * <code>repeated .google.protobuf.Type types = 4;</code>
507    */
508   @java.lang.Override
getTypesOrBuilder(int index)509   public com.google.protobuf.TypeOrBuilder getTypesOrBuilder(int index) {
510     return types_.get(index);
511   }
512 
513   public static final int ENUMS_FIELD_NUMBER = 5;
514 
515   @SuppressWarnings("serial")
516   private java.util.List<com.google.protobuf.Enum> enums_;
517   /**
518    *
519    *
520    * <pre>
521    * A list of all enum types included in this API service.  Enums referenced
522    * directly or indirectly by the `apis` are automatically included.  Enums
523    * which are not referenced but shall be included should be listed here by
524    * name by the configuration author. Example:
525    *     enums:
526    *     - name: google.someapi.v1.SomeEnum
527    * </pre>
528    *
529    * <code>repeated .google.protobuf.Enum enums = 5;</code>
530    */
531   @java.lang.Override
getEnumsList()532   public java.util.List<com.google.protobuf.Enum> getEnumsList() {
533     return enums_;
534   }
535   /**
536    *
537    *
538    * <pre>
539    * A list of all enum types included in this API service.  Enums referenced
540    * directly or indirectly by the `apis` are automatically included.  Enums
541    * which are not referenced but shall be included should be listed here by
542    * name by the configuration author. Example:
543    *     enums:
544    *     - name: google.someapi.v1.SomeEnum
545    * </pre>
546    *
547    * <code>repeated .google.protobuf.Enum enums = 5;</code>
548    */
549   @java.lang.Override
getEnumsOrBuilderList()550   public java.util.List<? extends com.google.protobuf.EnumOrBuilder> getEnumsOrBuilderList() {
551     return enums_;
552   }
553   /**
554    *
555    *
556    * <pre>
557    * A list of all enum types included in this API service.  Enums referenced
558    * directly or indirectly by the `apis` are automatically included.  Enums
559    * which are not referenced but shall be included should be listed here by
560    * name by the configuration author. Example:
561    *     enums:
562    *     - name: google.someapi.v1.SomeEnum
563    * </pre>
564    *
565    * <code>repeated .google.protobuf.Enum enums = 5;</code>
566    */
567   @java.lang.Override
getEnumsCount()568   public int getEnumsCount() {
569     return enums_.size();
570   }
571   /**
572    *
573    *
574    * <pre>
575    * A list of all enum types included in this API service.  Enums referenced
576    * directly or indirectly by the `apis` are automatically included.  Enums
577    * which are not referenced but shall be included should be listed here by
578    * name by the configuration author. Example:
579    *     enums:
580    *     - name: google.someapi.v1.SomeEnum
581    * </pre>
582    *
583    * <code>repeated .google.protobuf.Enum enums = 5;</code>
584    */
585   @java.lang.Override
getEnums(int index)586   public com.google.protobuf.Enum getEnums(int index) {
587     return enums_.get(index);
588   }
589   /**
590    *
591    *
592    * <pre>
593    * A list of all enum types included in this API service.  Enums referenced
594    * directly or indirectly by the `apis` are automatically included.  Enums
595    * which are not referenced but shall be included should be listed here by
596    * name by the configuration author. Example:
597    *     enums:
598    *     - name: google.someapi.v1.SomeEnum
599    * </pre>
600    *
601    * <code>repeated .google.protobuf.Enum enums = 5;</code>
602    */
603   @java.lang.Override
getEnumsOrBuilder(int index)604   public com.google.protobuf.EnumOrBuilder getEnumsOrBuilder(int index) {
605     return enums_.get(index);
606   }
607 
608   public static final int DOCUMENTATION_FIELD_NUMBER = 6;
609   private com.google.api.Documentation documentation_;
610   /**
611    *
612    *
613    * <pre>
614    * Additional API documentation.
615    * </pre>
616    *
617    * <code>.google.api.Documentation documentation = 6;</code>
618    *
619    * @return Whether the documentation field is set.
620    */
621   @java.lang.Override
hasDocumentation()622   public boolean hasDocumentation() {
623     return documentation_ != null;
624   }
625   /**
626    *
627    *
628    * <pre>
629    * Additional API documentation.
630    * </pre>
631    *
632    * <code>.google.api.Documentation documentation = 6;</code>
633    *
634    * @return The documentation.
635    */
636   @java.lang.Override
getDocumentation()637   public com.google.api.Documentation getDocumentation() {
638     return documentation_ == null
639         ? com.google.api.Documentation.getDefaultInstance()
640         : documentation_;
641   }
642   /**
643    *
644    *
645    * <pre>
646    * Additional API documentation.
647    * </pre>
648    *
649    * <code>.google.api.Documentation documentation = 6;</code>
650    */
651   @java.lang.Override
getDocumentationOrBuilder()652   public com.google.api.DocumentationOrBuilder getDocumentationOrBuilder() {
653     return documentation_ == null
654         ? com.google.api.Documentation.getDefaultInstance()
655         : documentation_;
656   }
657 
658   public static final int BACKEND_FIELD_NUMBER = 8;
659   private com.google.api.Backend backend_;
660   /**
661    *
662    *
663    * <pre>
664    * API backend configuration.
665    * </pre>
666    *
667    * <code>.google.api.Backend backend = 8;</code>
668    *
669    * @return Whether the backend field is set.
670    */
671   @java.lang.Override
hasBackend()672   public boolean hasBackend() {
673     return backend_ != null;
674   }
675   /**
676    *
677    *
678    * <pre>
679    * API backend configuration.
680    * </pre>
681    *
682    * <code>.google.api.Backend backend = 8;</code>
683    *
684    * @return The backend.
685    */
686   @java.lang.Override
getBackend()687   public com.google.api.Backend getBackend() {
688     return backend_ == null ? com.google.api.Backend.getDefaultInstance() : backend_;
689   }
690   /**
691    *
692    *
693    * <pre>
694    * API backend configuration.
695    * </pre>
696    *
697    * <code>.google.api.Backend backend = 8;</code>
698    */
699   @java.lang.Override
getBackendOrBuilder()700   public com.google.api.BackendOrBuilder getBackendOrBuilder() {
701     return backend_ == null ? com.google.api.Backend.getDefaultInstance() : backend_;
702   }
703 
704   public static final int HTTP_FIELD_NUMBER = 9;
705   private com.google.api.Http http_;
706   /**
707    *
708    *
709    * <pre>
710    * HTTP configuration.
711    * </pre>
712    *
713    * <code>.google.api.Http http = 9;</code>
714    *
715    * @return Whether the http field is set.
716    */
717   @java.lang.Override
hasHttp()718   public boolean hasHttp() {
719     return http_ != null;
720   }
721   /**
722    *
723    *
724    * <pre>
725    * HTTP configuration.
726    * </pre>
727    *
728    * <code>.google.api.Http http = 9;</code>
729    *
730    * @return The http.
731    */
732   @java.lang.Override
getHttp()733   public com.google.api.Http getHttp() {
734     return http_ == null ? com.google.api.Http.getDefaultInstance() : http_;
735   }
736   /**
737    *
738    *
739    * <pre>
740    * HTTP configuration.
741    * </pre>
742    *
743    * <code>.google.api.Http http = 9;</code>
744    */
745   @java.lang.Override
getHttpOrBuilder()746   public com.google.api.HttpOrBuilder getHttpOrBuilder() {
747     return http_ == null ? com.google.api.Http.getDefaultInstance() : http_;
748   }
749 
750   public static final int QUOTA_FIELD_NUMBER = 10;
751   private com.google.api.Quota quota_;
752   /**
753    *
754    *
755    * <pre>
756    * Quota configuration.
757    * </pre>
758    *
759    * <code>.google.api.Quota quota = 10;</code>
760    *
761    * @return Whether the quota field is set.
762    */
763   @java.lang.Override
hasQuota()764   public boolean hasQuota() {
765     return quota_ != null;
766   }
767   /**
768    *
769    *
770    * <pre>
771    * Quota configuration.
772    * </pre>
773    *
774    * <code>.google.api.Quota quota = 10;</code>
775    *
776    * @return The quota.
777    */
778   @java.lang.Override
getQuota()779   public com.google.api.Quota getQuota() {
780     return quota_ == null ? com.google.api.Quota.getDefaultInstance() : quota_;
781   }
782   /**
783    *
784    *
785    * <pre>
786    * Quota configuration.
787    * </pre>
788    *
789    * <code>.google.api.Quota quota = 10;</code>
790    */
791   @java.lang.Override
getQuotaOrBuilder()792   public com.google.api.QuotaOrBuilder getQuotaOrBuilder() {
793     return quota_ == null ? com.google.api.Quota.getDefaultInstance() : quota_;
794   }
795 
796   public static final int AUTHENTICATION_FIELD_NUMBER = 11;
797   private com.google.api.Authentication authentication_;
798   /**
799    *
800    *
801    * <pre>
802    * Auth configuration.
803    * </pre>
804    *
805    * <code>.google.api.Authentication authentication = 11;</code>
806    *
807    * @return Whether the authentication field is set.
808    */
809   @java.lang.Override
hasAuthentication()810   public boolean hasAuthentication() {
811     return authentication_ != null;
812   }
813   /**
814    *
815    *
816    * <pre>
817    * Auth configuration.
818    * </pre>
819    *
820    * <code>.google.api.Authentication authentication = 11;</code>
821    *
822    * @return The authentication.
823    */
824   @java.lang.Override
getAuthentication()825   public com.google.api.Authentication getAuthentication() {
826     return authentication_ == null
827         ? com.google.api.Authentication.getDefaultInstance()
828         : authentication_;
829   }
830   /**
831    *
832    *
833    * <pre>
834    * Auth configuration.
835    * </pre>
836    *
837    * <code>.google.api.Authentication authentication = 11;</code>
838    */
839   @java.lang.Override
getAuthenticationOrBuilder()840   public com.google.api.AuthenticationOrBuilder getAuthenticationOrBuilder() {
841     return authentication_ == null
842         ? com.google.api.Authentication.getDefaultInstance()
843         : authentication_;
844   }
845 
846   public static final int CONTEXT_FIELD_NUMBER = 12;
847   private com.google.api.Context context_;
848   /**
849    *
850    *
851    * <pre>
852    * Context configuration.
853    * </pre>
854    *
855    * <code>.google.api.Context context = 12;</code>
856    *
857    * @return Whether the context field is set.
858    */
859   @java.lang.Override
hasContext()860   public boolean hasContext() {
861     return context_ != null;
862   }
863   /**
864    *
865    *
866    * <pre>
867    * Context configuration.
868    * </pre>
869    *
870    * <code>.google.api.Context context = 12;</code>
871    *
872    * @return The context.
873    */
874   @java.lang.Override
getContext()875   public com.google.api.Context getContext() {
876     return context_ == null ? com.google.api.Context.getDefaultInstance() : context_;
877   }
878   /**
879    *
880    *
881    * <pre>
882    * Context configuration.
883    * </pre>
884    *
885    * <code>.google.api.Context context = 12;</code>
886    */
887   @java.lang.Override
getContextOrBuilder()888   public com.google.api.ContextOrBuilder getContextOrBuilder() {
889     return context_ == null ? com.google.api.Context.getDefaultInstance() : context_;
890   }
891 
892   public static final int USAGE_FIELD_NUMBER = 15;
893   private com.google.api.Usage usage_;
894   /**
895    *
896    *
897    * <pre>
898    * Configuration controlling usage of this service.
899    * </pre>
900    *
901    * <code>.google.api.Usage usage = 15;</code>
902    *
903    * @return Whether the usage field is set.
904    */
905   @java.lang.Override
hasUsage()906   public boolean hasUsage() {
907     return usage_ != null;
908   }
909   /**
910    *
911    *
912    * <pre>
913    * Configuration controlling usage of this service.
914    * </pre>
915    *
916    * <code>.google.api.Usage usage = 15;</code>
917    *
918    * @return The usage.
919    */
920   @java.lang.Override
getUsage()921   public com.google.api.Usage getUsage() {
922     return usage_ == null ? com.google.api.Usage.getDefaultInstance() : usage_;
923   }
924   /**
925    *
926    *
927    * <pre>
928    * Configuration controlling usage of this service.
929    * </pre>
930    *
931    * <code>.google.api.Usage usage = 15;</code>
932    */
933   @java.lang.Override
getUsageOrBuilder()934   public com.google.api.UsageOrBuilder getUsageOrBuilder() {
935     return usage_ == null ? com.google.api.Usage.getDefaultInstance() : usage_;
936   }
937 
938   public static final int ENDPOINTS_FIELD_NUMBER = 18;
939 
940   @SuppressWarnings("serial")
941   private java.util.List<com.google.api.Endpoint> endpoints_;
942   /**
943    *
944    *
945    * <pre>
946    * Configuration for network endpoints.  If this is empty, then an endpoint
947    * with the same name as the service is automatically generated to service all
948    * defined APIs.
949    * </pre>
950    *
951    * <code>repeated .google.api.Endpoint endpoints = 18;</code>
952    */
953   @java.lang.Override
getEndpointsList()954   public java.util.List<com.google.api.Endpoint> getEndpointsList() {
955     return endpoints_;
956   }
957   /**
958    *
959    *
960    * <pre>
961    * Configuration for network endpoints.  If this is empty, then an endpoint
962    * with the same name as the service is automatically generated to service all
963    * defined APIs.
964    * </pre>
965    *
966    * <code>repeated .google.api.Endpoint endpoints = 18;</code>
967    */
968   @java.lang.Override
getEndpointsOrBuilderList()969   public java.util.List<? extends com.google.api.EndpointOrBuilder> getEndpointsOrBuilderList() {
970     return endpoints_;
971   }
972   /**
973    *
974    *
975    * <pre>
976    * Configuration for network endpoints.  If this is empty, then an endpoint
977    * with the same name as the service is automatically generated to service all
978    * defined APIs.
979    * </pre>
980    *
981    * <code>repeated .google.api.Endpoint endpoints = 18;</code>
982    */
983   @java.lang.Override
getEndpointsCount()984   public int getEndpointsCount() {
985     return endpoints_.size();
986   }
987   /**
988    *
989    *
990    * <pre>
991    * Configuration for network endpoints.  If this is empty, then an endpoint
992    * with the same name as the service is automatically generated to service all
993    * defined APIs.
994    * </pre>
995    *
996    * <code>repeated .google.api.Endpoint endpoints = 18;</code>
997    */
998   @java.lang.Override
getEndpoints(int index)999   public com.google.api.Endpoint getEndpoints(int index) {
1000     return endpoints_.get(index);
1001   }
1002   /**
1003    *
1004    *
1005    * <pre>
1006    * Configuration for network endpoints.  If this is empty, then an endpoint
1007    * with the same name as the service is automatically generated to service all
1008    * defined APIs.
1009    * </pre>
1010    *
1011    * <code>repeated .google.api.Endpoint endpoints = 18;</code>
1012    */
1013   @java.lang.Override
getEndpointsOrBuilder(int index)1014   public com.google.api.EndpointOrBuilder getEndpointsOrBuilder(int index) {
1015     return endpoints_.get(index);
1016   }
1017 
1018   public static final int CONTROL_FIELD_NUMBER = 21;
1019   private com.google.api.Control control_;
1020   /**
1021    *
1022    *
1023    * <pre>
1024    * Configuration for the service control plane.
1025    * </pre>
1026    *
1027    * <code>.google.api.Control control = 21;</code>
1028    *
1029    * @return Whether the control field is set.
1030    */
1031   @java.lang.Override
hasControl()1032   public boolean hasControl() {
1033     return control_ != null;
1034   }
1035   /**
1036    *
1037    *
1038    * <pre>
1039    * Configuration for the service control plane.
1040    * </pre>
1041    *
1042    * <code>.google.api.Control control = 21;</code>
1043    *
1044    * @return The control.
1045    */
1046   @java.lang.Override
getControl()1047   public com.google.api.Control getControl() {
1048     return control_ == null ? com.google.api.Control.getDefaultInstance() : control_;
1049   }
1050   /**
1051    *
1052    *
1053    * <pre>
1054    * Configuration for the service control plane.
1055    * </pre>
1056    *
1057    * <code>.google.api.Control control = 21;</code>
1058    */
1059   @java.lang.Override
getControlOrBuilder()1060   public com.google.api.ControlOrBuilder getControlOrBuilder() {
1061     return control_ == null ? com.google.api.Control.getDefaultInstance() : control_;
1062   }
1063 
1064   public static final int LOGS_FIELD_NUMBER = 23;
1065 
1066   @SuppressWarnings("serial")
1067   private java.util.List<com.google.api.LogDescriptor> logs_;
1068   /**
1069    *
1070    *
1071    * <pre>
1072    * Defines the logs used by this service.
1073    * </pre>
1074    *
1075    * <code>repeated .google.api.LogDescriptor logs = 23;</code>
1076    */
1077   @java.lang.Override
getLogsList()1078   public java.util.List<com.google.api.LogDescriptor> getLogsList() {
1079     return logs_;
1080   }
1081   /**
1082    *
1083    *
1084    * <pre>
1085    * Defines the logs used by this service.
1086    * </pre>
1087    *
1088    * <code>repeated .google.api.LogDescriptor logs = 23;</code>
1089    */
1090   @java.lang.Override
getLogsOrBuilderList()1091   public java.util.List<? extends com.google.api.LogDescriptorOrBuilder> getLogsOrBuilderList() {
1092     return logs_;
1093   }
1094   /**
1095    *
1096    *
1097    * <pre>
1098    * Defines the logs used by this service.
1099    * </pre>
1100    *
1101    * <code>repeated .google.api.LogDescriptor logs = 23;</code>
1102    */
1103   @java.lang.Override
getLogsCount()1104   public int getLogsCount() {
1105     return logs_.size();
1106   }
1107   /**
1108    *
1109    *
1110    * <pre>
1111    * Defines the logs used by this service.
1112    * </pre>
1113    *
1114    * <code>repeated .google.api.LogDescriptor logs = 23;</code>
1115    */
1116   @java.lang.Override
getLogs(int index)1117   public com.google.api.LogDescriptor getLogs(int index) {
1118     return logs_.get(index);
1119   }
1120   /**
1121    *
1122    *
1123    * <pre>
1124    * Defines the logs used by this service.
1125    * </pre>
1126    *
1127    * <code>repeated .google.api.LogDescriptor logs = 23;</code>
1128    */
1129   @java.lang.Override
getLogsOrBuilder(int index)1130   public com.google.api.LogDescriptorOrBuilder getLogsOrBuilder(int index) {
1131     return logs_.get(index);
1132   }
1133 
1134   public static final int METRICS_FIELD_NUMBER = 24;
1135 
1136   @SuppressWarnings("serial")
1137   private java.util.List<com.google.api.MetricDescriptor> metrics_;
1138   /**
1139    *
1140    *
1141    * <pre>
1142    * Defines the metrics used by this service.
1143    * </pre>
1144    *
1145    * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
1146    */
1147   @java.lang.Override
getMetricsList()1148   public java.util.List<com.google.api.MetricDescriptor> getMetricsList() {
1149     return metrics_;
1150   }
1151   /**
1152    *
1153    *
1154    * <pre>
1155    * Defines the metrics used by this service.
1156    * </pre>
1157    *
1158    * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
1159    */
1160   @java.lang.Override
1161   public java.util.List<? extends com.google.api.MetricDescriptorOrBuilder>
getMetricsOrBuilderList()1162       getMetricsOrBuilderList() {
1163     return metrics_;
1164   }
1165   /**
1166    *
1167    *
1168    * <pre>
1169    * Defines the metrics used by this service.
1170    * </pre>
1171    *
1172    * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
1173    */
1174   @java.lang.Override
getMetricsCount()1175   public int getMetricsCount() {
1176     return metrics_.size();
1177   }
1178   /**
1179    *
1180    *
1181    * <pre>
1182    * Defines the metrics used by this service.
1183    * </pre>
1184    *
1185    * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
1186    */
1187   @java.lang.Override
getMetrics(int index)1188   public com.google.api.MetricDescriptor getMetrics(int index) {
1189     return metrics_.get(index);
1190   }
1191   /**
1192    *
1193    *
1194    * <pre>
1195    * Defines the metrics used by this service.
1196    * </pre>
1197    *
1198    * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
1199    */
1200   @java.lang.Override
getMetricsOrBuilder(int index)1201   public com.google.api.MetricDescriptorOrBuilder getMetricsOrBuilder(int index) {
1202     return metrics_.get(index);
1203   }
1204 
1205   public static final int MONITORED_RESOURCES_FIELD_NUMBER = 25;
1206 
1207   @SuppressWarnings("serial")
1208   private java.util.List<com.google.api.MonitoredResourceDescriptor> monitoredResources_;
1209   /**
1210    *
1211    *
1212    * <pre>
1213    * Defines the monitored resources used by this service. This is required
1214    * by the [Service.monitoring][google.api.Service.monitoring] and
1215    * [Service.logging][google.api.Service.logging] configurations.
1216    * </pre>
1217    *
1218    * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
1219    */
1220   @java.lang.Override
getMonitoredResourcesList()1221   public java.util.List<com.google.api.MonitoredResourceDescriptor> getMonitoredResourcesList() {
1222     return monitoredResources_;
1223   }
1224   /**
1225    *
1226    *
1227    * <pre>
1228    * Defines the monitored resources used by this service. This is required
1229    * by the [Service.monitoring][google.api.Service.monitoring] and
1230    * [Service.logging][google.api.Service.logging] configurations.
1231    * </pre>
1232    *
1233    * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
1234    */
1235   @java.lang.Override
1236   public java.util.List<? extends com.google.api.MonitoredResourceDescriptorOrBuilder>
getMonitoredResourcesOrBuilderList()1237       getMonitoredResourcesOrBuilderList() {
1238     return monitoredResources_;
1239   }
1240   /**
1241    *
1242    *
1243    * <pre>
1244    * Defines the monitored resources used by this service. This is required
1245    * by the [Service.monitoring][google.api.Service.monitoring] and
1246    * [Service.logging][google.api.Service.logging] configurations.
1247    * </pre>
1248    *
1249    * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
1250    */
1251   @java.lang.Override
getMonitoredResourcesCount()1252   public int getMonitoredResourcesCount() {
1253     return monitoredResources_.size();
1254   }
1255   /**
1256    *
1257    *
1258    * <pre>
1259    * Defines the monitored resources used by this service. This is required
1260    * by the [Service.monitoring][google.api.Service.monitoring] and
1261    * [Service.logging][google.api.Service.logging] configurations.
1262    * </pre>
1263    *
1264    * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
1265    */
1266   @java.lang.Override
getMonitoredResources(int index)1267   public com.google.api.MonitoredResourceDescriptor getMonitoredResources(int index) {
1268     return monitoredResources_.get(index);
1269   }
1270   /**
1271    *
1272    *
1273    * <pre>
1274    * Defines the monitored resources used by this service. This is required
1275    * by the [Service.monitoring][google.api.Service.monitoring] and
1276    * [Service.logging][google.api.Service.logging] configurations.
1277    * </pre>
1278    *
1279    * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
1280    */
1281   @java.lang.Override
getMonitoredResourcesOrBuilder( int index)1282   public com.google.api.MonitoredResourceDescriptorOrBuilder getMonitoredResourcesOrBuilder(
1283       int index) {
1284     return monitoredResources_.get(index);
1285   }
1286 
1287   public static final int BILLING_FIELD_NUMBER = 26;
1288   private com.google.api.Billing billing_;
1289   /**
1290    *
1291    *
1292    * <pre>
1293    * Billing configuration.
1294    * </pre>
1295    *
1296    * <code>.google.api.Billing billing = 26;</code>
1297    *
1298    * @return Whether the billing field is set.
1299    */
1300   @java.lang.Override
hasBilling()1301   public boolean hasBilling() {
1302     return billing_ != null;
1303   }
1304   /**
1305    *
1306    *
1307    * <pre>
1308    * Billing configuration.
1309    * </pre>
1310    *
1311    * <code>.google.api.Billing billing = 26;</code>
1312    *
1313    * @return The billing.
1314    */
1315   @java.lang.Override
getBilling()1316   public com.google.api.Billing getBilling() {
1317     return billing_ == null ? com.google.api.Billing.getDefaultInstance() : billing_;
1318   }
1319   /**
1320    *
1321    *
1322    * <pre>
1323    * Billing configuration.
1324    * </pre>
1325    *
1326    * <code>.google.api.Billing billing = 26;</code>
1327    */
1328   @java.lang.Override
getBillingOrBuilder()1329   public com.google.api.BillingOrBuilder getBillingOrBuilder() {
1330     return billing_ == null ? com.google.api.Billing.getDefaultInstance() : billing_;
1331   }
1332 
1333   public static final int LOGGING_FIELD_NUMBER = 27;
1334   private com.google.api.Logging logging_;
1335   /**
1336    *
1337    *
1338    * <pre>
1339    * Logging configuration.
1340    * </pre>
1341    *
1342    * <code>.google.api.Logging logging = 27;</code>
1343    *
1344    * @return Whether the logging field is set.
1345    */
1346   @java.lang.Override
hasLogging()1347   public boolean hasLogging() {
1348     return logging_ != null;
1349   }
1350   /**
1351    *
1352    *
1353    * <pre>
1354    * Logging configuration.
1355    * </pre>
1356    *
1357    * <code>.google.api.Logging logging = 27;</code>
1358    *
1359    * @return The logging.
1360    */
1361   @java.lang.Override
getLogging()1362   public com.google.api.Logging getLogging() {
1363     return logging_ == null ? com.google.api.Logging.getDefaultInstance() : logging_;
1364   }
1365   /**
1366    *
1367    *
1368    * <pre>
1369    * Logging configuration.
1370    * </pre>
1371    *
1372    * <code>.google.api.Logging logging = 27;</code>
1373    */
1374   @java.lang.Override
getLoggingOrBuilder()1375   public com.google.api.LoggingOrBuilder getLoggingOrBuilder() {
1376     return logging_ == null ? com.google.api.Logging.getDefaultInstance() : logging_;
1377   }
1378 
1379   public static final int MONITORING_FIELD_NUMBER = 28;
1380   private com.google.api.Monitoring monitoring_;
1381   /**
1382    *
1383    *
1384    * <pre>
1385    * Monitoring configuration.
1386    * </pre>
1387    *
1388    * <code>.google.api.Monitoring monitoring = 28;</code>
1389    *
1390    * @return Whether the monitoring field is set.
1391    */
1392   @java.lang.Override
hasMonitoring()1393   public boolean hasMonitoring() {
1394     return monitoring_ != null;
1395   }
1396   /**
1397    *
1398    *
1399    * <pre>
1400    * Monitoring configuration.
1401    * </pre>
1402    *
1403    * <code>.google.api.Monitoring monitoring = 28;</code>
1404    *
1405    * @return The monitoring.
1406    */
1407   @java.lang.Override
getMonitoring()1408   public com.google.api.Monitoring getMonitoring() {
1409     return monitoring_ == null ? com.google.api.Monitoring.getDefaultInstance() : monitoring_;
1410   }
1411   /**
1412    *
1413    *
1414    * <pre>
1415    * Monitoring configuration.
1416    * </pre>
1417    *
1418    * <code>.google.api.Monitoring monitoring = 28;</code>
1419    */
1420   @java.lang.Override
getMonitoringOrBuilder()1421   public com.google.api.MonitoringOrBuilder getMonitoringOrBuilder() {
1422     return monitoring_ == null ? com.google.api.Monitoring.getDefaultInstance() : monitoring_;
1423   }
1424 
1425   public static final int SYSTEM_PARAMETERS_FIELD_NUMBER = 29;
1426   private com.google.api.SystemParameters systemParameters_;
1427   /**
1428    *
1429    *
1430    * <pre>
1431    * System parameter configuration.
1432    * </pre>
1433    *
1434    * <code>.google.api.SystemParameters system_parameters = 29;</code>
1435    *
1436    * @return Whether the systemParameters field is set.
1437    */
1438   @java.lang.Override
hasSystemParameters()1439   public boolean hasSystemParameters() {
1440     return systemParameters_ != null;
1441   }
1442   /**
1443    *
1444    *
1445    * <pre>
1446    * System parameter configuration.
1447    * </pre>
1448    *
1449    * <code>.google.api.SystemParameters system_parameters = 29;</code>
1450    *
1451    * @return The systemParameters.
1452    */
1453   @java.lang.Override
getSystemParameters()1454   public com.google.api.SystemParameters getSystemParameters() {
1455     return systemParameters_ == null
1456         ? com.google.api.SystemParameters.getDefaultInstance()
1457         : systemParameters_;
1458   }
1459   /**
1460    *
1461    *
1462    * <pre>
1463    * System parameter configuration.
1464    * </pre>
1465    *
1466    * <code>.google.api.SystemParameters system_parameters = 29;</code>
1467    */
1468   @java.lang.Override
getSystemParametersOrBuilder()1469   public com.google.api.SystemParametersOrBuilder getSystemParametersOrBuilder() {
1470     return systemParameters_ == null
1471         ? com.google.api.SystemParameters.getDefaultInstance()
1472         : systemParameters_;
1473   }
1474 
1475   public static final int SOURCE_INFO_FIELD_NUMBER = 37;
1476   private com.google.api.SourceInfo sourceInfo_;
1477   /**
1478    *
1479    *
1480    * <pre>
1481    * Output only. The source information for this configuration if available.
1482    * </pre>
1483    *
1484    * <code>.google.api.SourceInfo source_info = 37;</code>
1485    *
1486    * @return Whether the sourceInfo field is set.
1487    */
1488   @java.lang.Override
hasSourceInfo()1489   public boolean hasSourceInfo() {
1490     return sourceInfo_ != null;
1491   }
1492   /**
1493    *
1494    *
1495    * <pre>
1496    * Output only. The source information for this configuration if available.
1497    * </pre>
1498    *
1499    * <code>.google.api.SourceInfo source_info = 37;</code>
1500    *
1501    * @return The sourceInfo.
1502    */
1503   @java.lang.Override
getSourceInfo()1504   public com.google.api.SourceInfo getSourceInfo() {
1505     return sourceInfo_ == null ? com.google.api.SourceInfo.getDefaultInstance() : sourceInfo_;
1506   }
1507   /**
1508    *
1509    *
1510    * <pre>
1511    * Output only. The source information for this configuration if available.
1512    * </pre>
1513    *
1514    * <code>.google.api.SourceInfo source_info = 37;</code>
1515    */
1516   @java.lang.Override
getSourceInfoOrBuilder()1517   public com.google.api.SourceInfoOrBuilder getSourceInfoOrBuilder() {
1518     return sourceInfo_ == null ? com.google.api.SourceInfo.getDefaultInstance() : sourceInfo_;
1519   }
1520 
1521   public static final int PUBLISHING_FIELD_NUMBER = 45;
1522   private com.google.api.Publishing publishing_;
1523   /**
1524    *
1525    *
1526    * <pre>
1527    * Settings for [Google Cloud Client
1528    * libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
1529    * generated from APIs defined as protocol buffers.
1530    * </pre>
1531    *
1532    * <code>.google.api.Publishing publishing = 45;</code>
1533    *
1534    * @return Whether the publishing field is set.
1535    */
1536   @java.lang.Override
hasPublishing()1537   public boolean hasPublishing() {
1538     return publishing_ != null;
1539   }
1540   /**
1541    *
1542    *
1543    * <pre>
1544    * Settings for [Google Cloud Client
1545    * libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
1546    * generated from APIs defined as protocol buffers.
1547    * </pre>
1548    *
1549    * <code>.google.api.Publishing publishing = 45;</code>
1550    *
1551    * @return The publishing.
1552    */
1553   @java.lang.Override
getPublishing()1554   public com.google.api.Publishing getPublishing() {
1555     return publishing_ == null ? com.google.api.Publishing.getDefaultInstance() : publishing_;
1556   }
1557   /**
1558    *
1559    *
1560    * <pre>
1561    * Settings for [Google Cloud Client
1562    * libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
1563    * generated from APIs defined as protocol buffers.
1564    * </pre>
1565    *
1566    * <code>.google.api.Publishing publishing = 45;</code>
1567    */
1568   @java.lang.Override
getPublishingOrBuilder()1569   public com.google.api.PublishingOrBuilder getPublishingOrBuilder() {
1570     return publishing_ == null ? com.google.api.Publishing.getDefaultInstance() : publishing_;
1571   }
1572 
1573   public static final int CONFIG_VERSION_FIELD_NUMBER = 20;
1574   private com.google.protobuf.UInt32Value configVersion_;
1575   /**
1576    *
1577    *
1578    * <pre>
1579    * Obsolete. Do not use.
1580    * This field has no semantic meaning. The service config compiler always
1581    * sets this field to `3`.
1582    * </pre>
1583    *
1584    * <code>.google.protobuf.UInt32Value config_version = 20;</code>
1585    *
1586    * @return Whether the configVersion field is set.
1587    */
1588   @java.lang.Override
hasConfigVersion()1589   public boolean hasConfigVersion() {
1590     return configVersion_ != null;
1591   }
1592   /**
1593    *
1594    *
1595    * <pre>
1596    * Obsolete. Do not use.
1597    * This field has no semantic meaning. The service config compiler always
1598    * sets this field to `3`.
1599    * </pre>
1600    *
1601    * <code>.google.protobuf.UInt32Value config_version = 20;</code>
1602    *
1603    * @return The configVersion.
1604    */
1605   @java.lang.Override
getConfigVersion()1606   public com.google.protobuf.UInt32Value getConfigVersion() {
1607     return configVersion_ == null
1608         ? com.google.protobuf.UInt32Value.getDefaultInstance()
1609         : configVersion_;
1610   }
1611   /**
1612    *
1613    *
1614    * <pre>
1615    * Obsolete. Do not use.
1616    * This field has no semantic meaning. The service config compiler always
1617    * sets this field to `3`.
1618    * </pre>
1619    *
1620    * <code>.google.protobuf.UInt32Value config_version = 20;</code>
1621    */
1622   @java.lang.Override
getConfigVersionOrBuilder()1623   public com.google.protobuf.UInt32ValueOrBuilder getConfigVersionOrBuilder() {
1624     return configVersion_ == null
1625         ? com.google.protobuf.UInt32Value.getDefaultInstance()
1626         : configVersion_;
1627   }
1628 
1629   private byte memoizedIsInitialized = -1;
1630 
1631   @java.lang.Override
isInitialized()1632   public final boolean isInitialized() {
1633     byte isInitialized = memoizedIsInitialized;
1634     if (isInitialized == 1) return true;
1635     if (isInitialized == 0) return false;
1636 
1637     memoizedIsInitialized = 1;
1638     return true;
1639   }
1640 
1641   @java.lang.Override
writeTo(com.google.protobuf.CodedOutputStream output)1642   public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
1643     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
1644       com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
1645     }
1646     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(title_)) {
1647       com.google.protobuf.GeneratedMessageV3.writeString(output, 2, title_);
1648     }
1649     for (int i = 0; i < apis_.size(); i++) {
1650       output.writeMessage(3, apis_.get(i));
1651     }
1652     for (int i = 0; i < types_.size(); i++) {
1653       output.writeMessage(4, types_.get(i));
1654     }
1655     for (int i = 0; i < enums_.size(); i++) {
1656       output.writeMessage(5, enums_.get(i));
1657     }
1658     if (documentation_ != null) {
1659       output.writeMessage(6, getDocumentation());
1660     }
1661     if (backend_ != null) {
1662       output.writeMessage(8, getBackend());
1663     }
1664     if (http_ != null) {
1665       output.writeMessage(9, getHttp());
1666     }
1667     if (quota_ != null) {
1668       output.writeMessage(10, getQuota());
1669     }
1670     if (authentication_ != null) {
1671       output.writeMessage(11, getAuthentication());
1672     }
1673     if (context_ != null) {
1674       output.writeMessage(12, getContext());
1675     }
1676     if (usage_ != null) {
1677       output.writeMessage(15, getUsage());
1678     }
1679     for (int i = 0; i < endpoints_.size(); i++) {
1680       output.writeMessage(18, endpoints_.get(i));
1681     }
1682     if (configVersion_ != null) {
1683       output.writeMessage(20, getConfigVersion());
1684     }
1685     if (control_ != null) {
1686       output.writeMessage(21, getControl());
1687     }
1688     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(producerProjectId_)) {
1689       com.google.protobuf.GeneratedMessageV3.writeString(output, 22, producerProjectId_);
1690     }
1691     for (int i = 0; i < logs_.size(); i++) {
1692       output.writeMessage(23, logs_.get(i));
1693     }
1694     for (int i = 0; i < metrics_.size(); i++) {
1695       output.writeMessage(24, metrics_.get(i));
1696     }
1697     for (int i = 0; i < monitoredResources_.size(); i++) {
1698       output.writeMessage(25, monitoredResources_.get(i));
1699     }
1700     if (billing_ != null) {
1701       output.writeMessage(26, getBilling());
1702     }
1703     if (logging_ != null) {
1704       output.writeMessage(27, getLogging());
1705     }
1706     if (monitoring_ != null) {
1707       output.writeMessage(28, getMonitoring());
1708     }
1709     if (systemParameters_ != null) {
1710       output.writeMessage(29, getSystemParameters());
1711     }
1712     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) {
1713       com.google.protobuf.GeneratedMessageV3.writeString(output, 33, id_);
1714     }
1715     if (sourceInfo_ != null) {
1716       output.writeMessage(37, getSourceInfo());
1717     }
1718     if (publishing_ != null) {
1719       output.writeMessage(45, getPublishing());
1720     }
1721     getUnknownFields().writeTo(output);
1722   }
1723 
1724   @java.lang.Override
getSerializedSize()1725   public int getSerializedSize() {
1726     int size = memoizedSize;
1727     if (size != -1) return size;
1728 
1729     size = 0;
1730     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) {
1731       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
1732     }
1733     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(title_)) {
1734       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, title_);
1735     }
1736     for (int i = 0; i < apis_.size(); i++) {
1737       size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, apis_.get(i));
1738     }
1739     for (int i = 0; i < types_.size(); i++) {
1740       size += com.google.protobuf.CodedOutputStream.computeMessageSize(4, types_.get(i));
1741     }
1742     for (int i = 0; i < enums_.size(); i++) {
1743       size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, enums_.get(i));
1744     }
1745     if (documentation_ != null) {
1746       size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getDocumentation());
1747     }
1748     if (backend_ != null) {
1749       size += com.google.protobuf.CodedOutputStream.computeMessageSize(8, getBackend());
1750     }
1751     if (http_ != null) {
1752       size += com.google.protobuf.CodedOutputStream.computeMessageSize(9, getHttp());
1753     }
1754     if (quota_ != null) {
1755       size += com.google.protobuf.CodedOutputStream.computeMessageSize(10, getQuota());
1756     }
1757     if (authentication_ != null) {
1758       size += com.google.protobuf.CodedOutputStream.computeMessageSize(11, getAuthentication());
1759     }
1760     if (context_ != null) {
1761       size += com.google.protobuf.CodedOutputStream.computeMessageSize(12, getContext());
1762     }
1763     if (usage_ != null) {
1764       size += com.google.protobuf.CodedOutputStream.computeMessageSize(15, getUsage());
1765     }
1766     for (int i = 0; i < endpoints_.size(); i++) {
1767       size += com.google.protobuf.CodedOutputStream.computeMessageSize(18, endpoints_.get(i));
1768     }
1769     if (configVersion_ != null) {
1770       size += com.google.protobuf.CodedOutputStream.computeMessageSize(20, getConfigVersion());
1771     }
1772     if (control_ != null) {
1773       size += com.google.protobuf.CodedOutputStream.computeMessageSize(21, getControl());
1774     }
1775     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(producerProjectId_)) {
1776       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(22, producerProjectId_);
1777     }
1778     for (int i = 0; i < logs_.size(); i++) {
1779       size += com.google.protobuf.CodedOutputStream.computeMessageSize(23, logs_.get(i));
1780     }
1781     for (int i = 0; i < metrics_.size(); i++) {
1782       size += com.google.protobuf.CodedOutputStream.computeMessageSize(24, metrics_.get(i));
1783     }
1784     for (int i = 0; i < monitoredResources_.size(); i++) {
1785       size +=
1786           com.google.protobuf.CodedOutputStream.computeMessageSize(25, monitoredResources_.get(i));
1787     }
1788     if (billing_ != null) {
1789       size += com.google.protobuf.CodedOutputStream.computeMessageSize(26, getBilling());
1790     }
1791     if (logging_ != null) {
1792       size += com.google.protobuf.CodedOutputStream.computeMessageSize(27, getLogging());
1793     }
1794     if (monitoring_ != null) {
1795       size += com.google.protobuf.CodedOutputStream.computeMessageSize(28, getMonitoring());
1796     }
1797     if (systemParameters_ != null) {
1798       size += com.google.protobuf.CodedOutputStream.computeMessageSize(29, getSystemParameters());
1799     }
1800     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(id_)) {
1801       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(33, id_);
1802     }
1803     if (sourceInfo_ != null) {
1804       size += com.google.protobuf.CodedOutputStream.computeMessageSize(37, getSourceInfo());
1805     }
1806     if (publishing_ != null) {
1807       size += com.google.protobuf.CodedOutputStream.computeMessageSize(45, getPublishing());
1808     }
1809     size += getUnknownFields().getSerializedSize();
1810     memoizedSize = size;
1811     return size;
1812   }
1813 
1814   @java.lang.Override
equals(final java.lang.Object obj)1815   public boolean equals(final java.lang.Object obj) {
1816     if (obj == this) {
1817       return true;
1818     }
1819     if (!(obj instanceof com.google.api.Service)) {
1820       return super.equals(obj);
1821     }
1822     com.google.api.Service other = (com.google.api.Service) obj;
1823 
1824     if (!getName().equals(other.getName())) return false;
1825     if (!getTitle().equals(other.getTitle())) return false;
1826     if (!getProducerProjectId().equals(other.getProducerProjectId())) return false;
1827     if (!getId().equals(other.getId())) return false;
1828     if (!getApisList().equals(other.getApisList())) return false;
1829     if (!getTypesList().equals(other.getTypesList())) return false;
1830     if (!getEnumsList().equals(other.getEnumsList())) return false;
1831     if (hasDocumentation() != other.hasDocumentation()) return false;
1832     if (hasDocumentation()) {
1833       if (!getDocumentation().equals(other.getDocumentation())) return false;
1834     }
1835     if (hasBackend() != other.hasBackend()) return false;
1836     if (hasBackend()) {
1837       if (!getBackend().equals(other.getBackend())) return false;
1838     }
1839     if (hasHttp() != other.hasHttp()) return false;
1840     if (hasHttp()) {
1841       if (!getHttp().equals(other.getHttp())) return false;
1842     }
1843     if (hasQuota() != other.hasQuota()) return false;
1844     if (hasQuota()) {
1845       if (!getQuota().equals(other.getQuota())) return false;
1846     }
1847     if (hasAuthentication() != other.hasAuthentication()) return false;
1848     if (hasAuthentication()) {
1849       if (!getAuthentication().equals(other.getAuthentication())) return false;
1850     }
1851     if (hasContext() != other.hasContext()) return false;
1852     if (hasContext()) {
1853       if (!getContext().equals(other.getContext())) return false;
1854     }
1855     if (hasUsage() != other.hasUsage()) return false;
1856     if (hasUsage()) {
1857       if (!getUsage().equals(other.getUsage())) return false;
1858     }
1859     if (!getEndpointsList().equals(other.getEndpointsList())) return false;
1860     if (hasControl() != other.hasControl()) return false;
1861     if (hasControl()) {
1862       if (!getControl().equals(other.getControl())) return false;
1863     }
1864     if (!getLogsList().equals(other.getLogsList())) return false;
1865     if (!getMetricsList().equals(other.getMetricsList())) return false;
1866     if (!getMonitoredResourcesList().equals(other.getMonitoredResourcesList())) return false;
1867     if (hasBilling() != other.hasBilling()) return false;
1868     if (hasBilling()) {
1869       if (!getBilling().equals(other.getBilling())) return false;
1870     }
1871     if (hasLogging() != other.hasLogging()) return false;
1872     if (hasLogging()) {
1873       if (!getLogging().equals(other.getLogging())) return false;
1874     }
1875     if (hasMonitoring() != other.hasMonitoring()) return false;
1876     if (hasMonitoring()) {
1877       if (!getMonitoring().equals(other.getMonitoring())) return false;
1878     }
1879     if (hasSystemParameters() != other.hasSystemParameters()) return false;
1880     if (hasSystemParameters()) {
1881       if (!getSystemParameters().equals(other.getSystemParameters())) return false;
1882     }
1883     if (hasSourceInfo() != other.hasSourceInfo()) return false;
1884     if (hasSourceInfo()) {
1885       if (!getSourceInfo().equals(other.getSourceInfo())) return false;
1886     }
1887     if (hasPublishing() != other.hasPublishing()) return false;
1888     if (hasPublishing()) {
1889       if (!getPublishing().equals(other.getPublishing())) return false;
1890     }
1891     if (hasConfigVersion() != other.hasConfigVersion()) return false;
1892     if (hasConfigVersion()) {
1893       if (!getConfigVersion().equals(other.getConfigVersion())) return false;
1894     }
1895     if (!getUnknownFields().equals(other.getUnknownFields())) return false;
1896     return true;
1897   }
1898 
1899   @java.lang.Override
hashCode()1900   public int hashCode() {
1901     if (memoizedHashCode != 0) {
1902       return memoizedHashCode;
1903     }
1904     int hash = 41;
1905     hash = (19 * hash) + getDescriptor().hashCode();
1906     hash = (37 * hash) + NAME_FIELD_NUMBER;
1907     hash = (53 * hash) + getName().hashCode();
1908     hash = (37 * hash) + TITLE_FIELD_NUMBER;
1909     hash = (53 * hash) + getTitle().hashCode();
1910     hash = (37 * hash) + PRODUCER_PROJECT_ID_FIELD_NUMBER;
1911     hash = (53 * hash) + getProducerProjectId().hashCode();
1912     hash = (37 * hash) + ID_FIELD_NUMBER;
1913     hash = (53 * hash) + getId().hashCode();
1914     if (getApisCount() > 0) {
1915       hash = (37 * hash) + APIS_FIELD_NUMBER;
1916       hash = (53 * hash) + getApisList().hashCode();
1917     }
1918     if (getTypesCount() > 0) {
1919       hash = (37 * hash) + TYPES_FIELD_NUMBER;
1920       hash = (53 * hash) + getTypesList().hashCode();
1921     }
1922     if (getEnumsCount() > 0) {
1923       hash = (37 * hash) + ENUMS_FIELD_NUMBER;
1924       hash = (53 * hash) + getEnumsList().hashCode();
1925     }
1926     if (hasDocumentation()) {
1927       hash = (37 * hash) + DOCUMENTATION_FIELD_NUMBER;
1928       hash = (53 * hash) + getDocumentation().hashCode();
1929     }
1930     if (hasBackend()) {
1931       hash = (37 * hash) + BACKEND_FIELD_NUMBER;
1932       hash = (53 * hash) + getBackend().hashCode();
1933     }
1934     if (hasHttp()) {
1935       hash = (37 * hash) + HTTP_FIELD_NUMBER;
1936       hash = (53 * hash) + getHttp().hashCode();
1937     }
1938     if (hasQuota()) {
1939       hash = (37 * hash) + QUOTA_FIELD_NUMBER;
1940       hash = (53 * hash) + getQuota().hashCode();
1941     }
1942     if (hasAuthentication()) {
1943       hash = (37 * hash) + AUTHENTICATION_FIELD_NUMBER;
1944       hash = (53 * hash) + getAuthentication().hashCode();
1945     }
1946     if (hasContext()) {
1947       hash = (37 * hash) + CONTEXT_FIELD_NUMBER;
1948       hash = (53 * hash) + getContext().hashCode();
1949     }
1950     if (hasUsage()) {
1951       hash = (37 * hash) + USAGE_FIELD_NUMBER;
1952       hash = (53 * hash) + getUsage().hashCode();
1953     }
1954     if (getEndpointsCount() > 0) {
1955       hash = (37 * hash) + ENDPOINTS_FIELD_NUMBER;
1956       hash = (53 * hash) + getEndpointsList().hashCode();
1957     }
1958     if (hasControl()) {
1959       hash = (37 * hash) + CONTROL_FIELD_NUMBER;
1960       hash = (53 * hash) + getControl().hashCode();
1961     }
1962     if (getLogsCount() > 0) {
1963       hash = (37 * hash) + LOGS_FIELD_NUMBER;
1964       hash = (53 * hash) + getLogsList().hashCode();
1965     }
1966     if (getMetricsCount() > 0) {
1967       hash = (37 * hash) + METRICS_FIELD_NUMBER;
1968       hash = (53 * hash) + getMetricsList().hashCode();
1969     }
1970     if (getMonitoredResourcesCount() > 0) {
1971       hash = (37 * hash) + MONITORED_RESOURCES_FIELD_NUMBER;
1972       hash = (53 * hash) + getMonitoredResourcesList().hashCode();
1973     }
1974     if (hasBilling()) {
1975       hash = (37 * hash) + BILLING_FIELD_NUMBER;
1976       hash = (53 * hash) + getBilling().hashCode();
1977     }
1978     if (hasLogging()) {
1979       hash = (37 * hash) + LOGGING_FIELD_NUMBER;
1980       hash = (53 * hash) + getLogging().hashCode();
1981     }
1982     if (hasMonitoring()) {
1983       hash = (37 * hash) + MONITORING_FIELD_NUMBER;
1984       hash = (53 * hash) + getMonitoring().hashCode();
1985     }
1986     if (hasSystemParameters()) {
1987       hash = (37 * hash) + SYSTEM_PARAMETERS_FIELD_NUMBER;
1988       hash = (53 * hash) + getSystemParameters().hashCode();
1989     }
1990     if (hasSourceInfo()) {
1991       hash = (37 * hash) + SOURCE_INFO_FIELD_NUMBER;
1992       hash = (53 * hash) + getSourceInfo().hashCode();
1993     }
1994     if (hasPublishing()) {
1995       hash = (37 * hash) + PUBLISHING_FIELD_NUMBER;
1996       hash = (53 * hash) + getPublishing().hashCode();
1997     }
1998     if (hasConfigVersion()) {
1999       hash = (37 * hash) + CONFIG_VERSION_FIELD_NUMBER;
2000       hash = (53 * hash) + getConfigVersion().hashCode();
2001     }
2002     hash = (29 * hash) + getUnknownFields().hashCode();
2003     memoizedHashCode = hash;
2004     return hash;
2005   }
2006 
parseFrom(java.nio.ByteBuffer data)2007   public static com.google.api.Service parseFrom(java.nio.ByteBuffer data)
2008       throws com.google.protobuf.InvalidProtocolBufferException {
2009     return PARSER.parseFrom(data);
2010   }
2011 
parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)2012   public static com.google.api.Service parseFrom(
2013       java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2014       throws com.google.protobuf.InvalidProtocolBufferException {
2015     return PARSER.parseFrom(data, extensionRegistry);
2016   }
2017 
parseFrom(com.google.protobuf.ByteString data)2018   public static com.google.api.Service parseFrom(com.google.protobuf.ByteString data)
2019       throws com.google.protobuf.InvalidProtocolBufferException {
2020     return PARSER.parseFrom(data);
2021   }
2022 
parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)2023   public static com.google.api.Service parseFrom(
2024       com.google.protobuf.ByteString data,
2025       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2026       throws com.google.protobuf.InvalidProtocolBufferException {
2027     return PARSER.parseFrom(data, extensionRegistry);
2028   }
2029 
parseFrom(byte[] data)2030   public static com.google.api.Service parseFrom(byte[] data)
2031       throws com.google.protobuf.InvalidProtocolBufferException {
2032     return PARSER.parseFrom(data);
2033   }
2034 
parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)2035   public static com.google.api.Service parseFrom(
2036       byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2037       throws com.google.protobuf.InvalidProtocolBufferException {
2038     return PARSER.parseFrom(data, extensionRegistry);
2039   }
2040 
parseFrom(java.io.InputStream input)2041   public static com.google.api.Service parseFrom(java.io.InputStream input)
2042       throws java.io.IOException {
2043     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
2044   }
2045 
parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)2046   public static com.google.api.Service parseFrom(
2047       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2048       throws java.io.IOException {
2049     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
2050         PARSER, input, extensionRegistry);
2051   }
2052 
parseDelimitedFrom(java.io.InputStream input)2053   public static com.google.api.Service parseDelimitedFrom(java.io.InputStream input)
2054       throws java.io.IOException {
2055     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
2056   }
2057 
parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)2058   public static com.google.api.Service parseDelimitedFrom(
2059       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2060       throws java.io.IOException {
2061     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(
2062         PARSER, input, extensionRegistry);
2063   }
2064 
parseFrom(com.google.protobuf.CodedInputStream input)2065   public static com.google.api.Service parseFrom(com.google.protobuf.CodedInputStream input)
2066       throws java.io.IOException {
2067     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
2068   }
2069 
parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)2070   public static com.google.api.Service parseFrom(
2071       com.google.protobuf.CodedInputStream input,
2072       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2073       throws java.io.IOException {
2074     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
2075         PARSER, input, extensionRegistry);
2076   }
2077 
2078   @java.lang.Override
newBuilderForType()2079   public Builder newBuilderForType() {
2080     return newBuilder();
2081   }
2082 
newBuilder()2083   public static Builder newBuilder() {
2084     return DEFAULT_INSTANCE.toBuilder();
2085   }
2086 
newBuilder(com.google.api.Service prototype)2087   public static Builder newBuilder(com.google.api.Service prototype) {
2088     return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
2089   }
2090 
2091   @java.lang.Override
toBuilder()2092   public Builder toBuilder() {
2093     return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
2094   }
2095 
2096   @java.lang.Override
newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)2097   protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
2098     Builder builder = new Builder(parent);
2099     return builder;
2100   }
2101   /**
2102    *
2103    *
2104    * <pre>
2105    * `Service` is the root object of Google API service configuration (service
2106    * config). It describes the basic information about a logical service,
2107    * such as the service name and the user-facing title, and delegates other
2108    * aspects to sub-sections. Each sub-section is either a proto message or a
2109    * repeated proto message that configures a specific aspect, such as auth.
2110    * For more information, see each proto message definition.
2111    * Example:
2112    *     type: google.api.Service
2113    *     name: calendar.googleapis.com
2114    *     title: Google Calendar API
2115    *     apis:
2116    *     - name: google.calendar.v3.Calendar
2117    *     visibility:
2118    *       rules:
2119    *       - selector: "google.calendar.v3.*"
2120    *         restriction: PREVIEW
2121    *     backend:
2122    *       rules:
2123    *       - selector: "google.calendar.v3.*"
2124    *         address: calendar.example.com
2125    *     authentication:
2126    *       providers:
2127    *       - id: google_calendar_auth
2128    *         jwks_uri: https://www.googleapis.com/oauth2/v1/certs
2129    *         issuer: https://securetoken.google.com
2130    *       rules:
2131    *       - selector: "*"
2132    *         requirements:
2133    *           provider_id: google_calendar_auth
2134    * </pre>
2135    *
2136    * Protobuf type {@code google.api.Service}
2137    */
2138   public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder>
2139       implements
2140       // @@protoc_insertion_point(builder_implements:google.api.Service)
2141       com.google.api.ServiceOrBuilder {
getDescriptor()2142     public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
2143       return com.google.api.ServiceProto.internal_static_google_api_Service_descriptor;
2144     }
2145 
2146     @java.lang.Override
2147     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()2148         internalGetFieldAccessorTable() {
2149       return com.google.api.ServiceProto.internal_static_google_api_Service_fieldAccessorTable
2150           .ensureFieldAccessorsInitialized(
2151               com.google.api.Service.class, com.google.api.Service.Builder.class);
2152     }
2153 
2154     // Construct using com.google.api.Service.newBuilder()
Builder()2155     private Builder() {}
2156 
Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)2157     private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
2158       super(parent);
2159     }
2160 
2161     @java.lang.Override
clear()2162     public Builder clear() {
2163       super.clear();
2164       bitField0_ = 0;
2165       name_ = "";
2166       title_ = "";
2167       producerProjectId_ = "";
2168       id_ = "";
2169       if (apisBuilder_ == null) {
2170         apis_ = java.util.Collections.emptyList();
2171       } else {
2172         apis_ = null;
2173         apisBuilder_.clear();
2174       }
2175       bitField0_ = (bitField0_ & ~0x00000010);
2176       if (typesBuilder_ == null) {
2177         types_ = java.util.Collections.emptyList();
2178       } else {
2179         types_ = null;
2180         typesBuilder_.clear();
2181       }
2182       bitField0_ = (bitField0_ & ~0x00000020);
2183       if (enumsBuilder_ == null) {
2184         enums_ = java.util.Collections.emptyList();
2185       } else {
2186         enums_ = null;
2187         enumsBuilder_.clear();
2188       }
2189       bitField0_ = (bitField0_ & ~0x00000040);
2190       documentation_ = null;
2191       if (documentationBuilder_ != null) {
2192         documentationBuilder_.dispose();
2193         documentationBuilder_ = null;
2194       }
2195       backend_ = null;
2196       if (backendBuilder_ != null) {
2197         backendBuilder_.dispose();
2198         backendBuilder_ = null;
2199       }
2200       http_ = null;
2201       if (httpBuilder_ != null) {
2202         httpBuilder_.dispose();
2203         httpBuilder_ = null;
2204       }
2205       quota_ = null;
2206       if (quotaBuilder_ != null) {
2207         quotaBuilder_.dispose();
2208         quotaBuilder_ = null;
2209       }
2210       authentication_ = null;
2211       if (authenticationBuilder_ != null) {
2212         authenticationBuilder_.dispose();
2213         authenticationBuilder_ = null;
2214       }
2215       context_ = null;
2216       if (contextBuilder_ != null) {
2217         contextBuilder_.dispose();
2218         contextBuilder_ = null;
2219       }
2220       usage_ = null;
2221       if (usageBuilder_ != null) {
2222         usageBuilder_.dispose();
2223         usageBuilder_ = null;
2224       }
2225       if (endpointsBuilder_ == null) {
2226         endpoints_ = java.util.Collections.emptyList();
2227       } else {
2228         endpoints_ = null;
2229         endpointsBuilder_.clear();
2230       }
2231       bitField0_ = (bitField0_ & ~0x00004000);
2232       control_ = null;
2233       if (controlBuilder_ != null) {
2234         controlBuilder_.dispose();
2235         controlBuilder_ = null;
2236       }
2237       if (logsBuilder_ == null) {
2238         logs_ = java.util.Collections.emptyList();
2239       } else {
2240         logs_ = null;
2241         logsBuilder_.clear();
2242       }
2243       bitField0_ = (bitField0_ & ~0x00010000);
2244       if (metricsBuilder_ == null) {
2245         metrics_ = java.util.Collections.emptyList();
2246       } else {
2247         metrics_ = null;
2248         metricsBuilder_.clear();
2249       }
2250       bitField0_ = (bitField0_ & ~0x00020000);
2251       if (monitoredResourcesBuilder_ == null) {
2252         monitoredResources_ = java.util.Collections.emptyList();
2253       } else {
2254         monitoredResources_ = null;
2255         monitoredResourcesBuilder_.clear();
2256       }
2257       bitField0_ = (bitField0_ & ~0x00040000);
2258       billing_ = null;
2259       if (billingBuilder_ != null) {
2260         billingBuilder_.dispose();
2261         billingBuilder_ = null;
2262       }
2263       logging_ = null;
2264       if (loggingBuilder_ != null) {
2265         loggingBuilder_.dispose();
2266         loggingBuilder_ = null;
2267       }
2268       monitoring_ = null;
2269       if (monitoringBuilder_ != null) {
2270         monitoringBuilder_.dispose();
2271         monitoringBuilder_ = null;
2272       }
2273       systemParameters_ = null;
2274       if (systemParametersBuilder_ != null) {
2275         systemParametersBuilder_.dispose();
2276         systemParametersBuilder_ = null;
2277       }
2278       sourceInfo_ = null;
2279       if (sourceInfoBuilder_ != null) {
2280         sourceInfoBuilder_.dispose();
2281         sourceInfoBuilder_ = null;
2282       }
2283       publishing_ = null;
2284       if (publishingBuilder_ != null) {
2285         publishingBuilder_.dispose();
2286         publishingBuilder_ = null;
2287       }
2288       configVersion_ = null;
2289       if (configVersionBuilder_ != null) {
2290         configVersionBuilder_.dispose();
2291         configVersionBuilder_ = null;
2292       }
2293       return this;
2294     }
2295 
2296     @java.lang.Override
getDescriptorForType()2297     public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() {
2298       return com.google.api.ServiceProto.internal_static_google_api_Service_descriptor;
2299     }
2300 
2301     @java.lang.Override
getDefaultInstanceForType()2302     public com.google.api.Service getDefaultInstanceForType() {
2303       return com.google.api.Service.getDefaultInstance();
2304     }
2305 
2306     @java.lang.Override
build()2307     public com.google.api.Service build() {
2308       com.google.api.Service result = buildPartial();
2309       if (!result.isInitialized()) {
2310         throw newUninitializedMessageException(result);
2311       }
2312       return result;
2313     }
2314 
2315     @java.lang.Override
buildPartial()2316     public com.google.api.Service buildPartial() {
2317       com.google.api.Service result = new com.google.api.Service(this);
2318       buildPartialRepeatedFields(result);
2319       if (bitField0_ != 0) {
2320         buildPartial0(result);
2321       }
2322       onBuilt();
2323       return result;
2324     }
2325 
buildPartialRepeatedFields(com.google.api.Service result)2326     private void buildPartialRepeatedFields(com.google.api.Service result) {
2327       if (apisBuilder_ == null) {
2328         if (((bitField0_ & 0x00000010) != 0)) {
2329           apis_ = java.util.Collections.unmodifiableList(apis_);
2330           bitField0_ = (bitField0_ & ~0x00000010);
2331         }
2332         result.apis_ = apis_;
2333       } else {
2334         result.apis_ = apisBuilder_.build();
2335       }
2336       if (typesBuilder_ == null) {
2337         if (((bitField0_ & 0x00000020) != 0)) {
2338           types_ = java.util.Collections.unmodifiableList(types_);
2339           bitField0_ = (bitField0_ & ~0x00000020);
2340         }
2341         result.types_ = types_;
2342       } else {
2343         result.types_ = typesBuilder_.build();
2344       }
2345       if (enumsBuilder_ == null) {
2346         if (((bitField0_ & 0x00000040) != 0)) {
2347           enums_ = java.util.Collections.unmodifiableList(enums_);
2348           bitField0_ = (bitField0_ & ~0x00000040);
2349         }
2350         result.enums_ = enums_;
2351       } else {
2352         result.enums_ = enumsBuilder_.build();
2353       }
2354       if (endpointsBuilder_ == null) {
2355         if (((bitField0_ & 0x00004000) != 0)) {
2356           endpoints_ = java.util.Collections.unmodifiableList(endpoints_);
2357           bitField0_ = (bitField0_ & ~0x00004000);
2358         }
2359         result.endpoints_ = endpoints_;
2360       } else {
2361         result.endpoints_ = endpointsBuilder_.build();
2362       }
2363       if (logsBuilder_ == null) {
2364         if (((bitField0_ & 0x00010000) != 0)) {
2365           logs_ = java.util.Collections.unmodifiableList(logs_);
2366           bitField0_ = (bitField0_ & ~0x00010000);
2367         }
2368         result.logs_ = logs_;
2369       } else {
2370         result.logs_ = logsBuilder_.build();
2371       }
2372       if (metricsBuilder_ == null) {
2373         if (((bitField0_ & 0x00020000) != 0)) {
2374           metrics_ = java.util.Collections.unmodifiableList(metrics_);
2375           bitField0_ = (bitField0_ & ~0x00020000);
2376         }
2377         result.metrics_ = metrics_;
2378       } else {
2379         result.metrics_ = metricsBuilder_.build();
2380       }
2381       if (monitoredResourcesBuilder_ == null) {
2382         if (((bitField0_ & 0x00040000) != 0)) {
2383           monitoredResources_ = java.util.Collections.unmodifiableList(monitoredResources_);
2384           bitField0_ = (bitField0_ & ~0x00040000);
2385         }
2386         result.monitoredResources_ = monitoredResources_;
2387       } else {
2388         result.monitoredResources_ = monitoredResourcesBuilder_.build();
2389       }
2390     }
2391 
buildPartial0(com.google.api.Service result)2392     private void buildPartial0(com.google.api.Service result) {
2393       int from_bitField0_ = bitField0_;
2394       if (((from_bitField0_ & 0x00000001) != 0)) {
2395         result.name_ = name_;
2396       }
2397       if (((from_bitField0_ & 0x00000002) != 0)) {
2398         result.title_ = title_;
2399       }
2400       if (((from_bitField0_ & 0x00000004) != 0)) {
2401         result.producerProjectId_ = producerProjectId_;
2402       }
2403       if (((from_bitField0_ & 0x00000008) != 0)) {
2404         result.id_ = id_;
2405       }
2406       if (((from_bitField0_ & 0x00000080) != 0)) {
2407         result.documentation_ =
2408             documentationBuilder_ == null ? documentation_ : documentationBuilder_.build();
2409       }
2410       if (((from_bitField0_ & 0x00000100) != 0)) {
2411         result.backend_ = backendBuilder_ == null ? backend_ : backendBuilder_.build();
2412       }
2413       if (((from_bitField0_ & 0x00000200) != 0)) {
2414         result.http_ = httpBuilder_ == null ? http_ : httpBuilder_.build();
2415       }
2416       if (((from_bitField0_ & 0x00000400) != 0)) {
2417         result.quota_ = quotaBuilder_ == null ? quota_ : quotaBuilder_.build();
2418       }
2419       if (((from_bitField0_ & 0x00000800) != 0)) {
2420         result.authentication_ =
2421             authenticationBuilder_ == null ? authentication_ : authenticationBuilder_.build();
2422       }
2423       if (((from_bitField0_ & 0x00001000) != 0)) {
2424         result.context_ = contextBuilder_ == null ? context_ : contextBuilder_.build();
2425       }
2426       if (((from_bitField0_ & 0x00002000) != 0)) {
2427         result.usage_ = usageBuilder_ == null ? usage_ : usageBuilder_.build();
2428       }
2429       if (((from_bitField0_ & 0x00008000) != 0)) {
2430         result.control_ = controlBuilder_ == null ? control_ : controlBuilder_.build();
2431       }
2432       if (((from_bitField0_ & 0x00080000) != 0)) {
2433         result.billing_ = billingBuilder_ == null ? billing_ : billingBuilder_.build();
2434       }
2435       if (((from_bitField0_ & 0x00100000) != 0)) {
2436         result.logging_ = loggingBuilder_ == null ? logging_ : loggingBuilder_.build();
2437       }
2438       if (((from_bitField0_ & 0x00200000) != 0)) {
2439         result.monitoring_ = monitoringBuilder_ == null ? monitoring_ : monitoringBuilder_.build();
2440       }
2441       if (((from_bitField0_ & 0x00400000) != 0)) {
2442         result.systemParameters_ =
2443             systemParametersBuilder_ == null ? systemParameters_ : systemParametersBuilder_.build();
2444       }
2445       if (((from_bitField0_ & 0x00800000) != 0)) {
2446         result.sourceInfo_ = sourceInfoBuilder_ == null ? sourceInfo_ : sourceInfoBuilder_.build();
2447       }
2448       if (((from_bitField0_ & 0x01000000) != 0)) {
2449         result.publishing_ = publishingBuilder_ == null ? publishing_ : publishingBuilder_.build();
2450       }
2451       if (((from_bitField0_ & 0x02000000) != 0)) {
2452         result.configVersion_ =
2453             configVersionBuilder_ == null ? configVersion_ : configVersionBuilder_.build();
2454       }
2455     }
2456 
2457     @java.lang.Override
clone()2458     public Builder clone() {
2459       return super.clone();
2460     }
2461 
2462     @java.lang.Override
setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)2463     public Builder setField(
2464         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
2465       return super.setField(field, value);
2466     }
2467 
2468     @java.lang.Override
clearField(com.google.protobuf.Descriptors.FieldDescriptor field)2469     public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) {
2470       return super.clearField(field);
2471     }
2472 
2473     @java.lang.Override
clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)2474     public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) {
2475       return super.clearOneof(oneof);
2476     }
2477 
2478     @java.lang.Override
setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)2479     public Builder setRepeatedField(
2480         com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) {
2481       return super.setRepeatedField(field, index, value);
2482     }
2483 
2484     @java.lang.Override
addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)2485     public Builder addRepeatedField(
2486         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
2487       return super.addRepeatedField(field, value);
2488     }
2489 
2490     @java.lang.Override
mergeFrom(com.google.protobuf.Message other)2491     public Builder mergeFrom(com.google.protobuf.Message other) {
2492       if (other instanceof com.google.api.Service) {
2493         return mergeFrom((com.google.api.Service) other);
2494       } else {
2495         super.mergeFrom(other);
2496         return this;
2497       }
2498     }
2499 
mergeFrom(com.google.api.Service other)2500     public Builder mergeFrom(com.google.api.Service other) {
2501       if (other == com.google.api.Service.getDefaultInstance()) return this;
2502       if (!other.getName().isEmpty()) {
2503         name_ = other.name_;
2504         bitField0_ |= 0x00000001;
2505         onChanged();
2506       }
2507       if (!other.getTitle().isEmpty()) {
2508         title_ = other.title_;
2509         bitField0_ |= 0x00000002;
2510         onChanged();
2511       }
2512       if (!other.getProducerProjectId().isEmpty()) {
2513         producerProjectId_ = other.producerProjectId_;
2514         bitField0_ |= 0x00000004;
2515         onChanged();
2516       }
2517       if (!other.getId().isEmpty()) {
2518         id_ = other.id_;
2519         bitField0_ |= 0x00000008;
2520         onChanged();
2521       }
2522       if (apisBuilder_ == null) {
2523         if (!other.apis_.isEmpty()) {
2524           if (apis_.isEmpty()) {
2525             apis_ = other.apis_;
2526             bitField0_ = (bitField0_ & ~0x00000010);
2527           } else {
2528             ensureApisIsMutable();
2529             apis_.addAll(other.apis_);
2530           }
2531           onChanged();
2532         }
2533       } else {
2534         if (!other.apis_.isEmpty()) {
2535           if (apisBuilder_.isEmpty()) {
2536             apisBuilder_.dispose();
2537             apisBuilder_ = null;
2538             apis_ = other.apis_;
2539             bitField0_ = (bitField0_ & ~0x00000010);
2540             apisBuilder_ =
2541                 com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders
2542                     ? getApisFieldBuilder()
2543                     : null;
2544           } else {
2545             apisBuilder_.addAllMessages(other.apis_);
2546           }
2547         }
2548       }
2549       if (typesBuilder_ == null) {
2550         if (!other.types_.isEmpty()) {
2551           if (types_.isEmpty()) {
2552             types_ = other.types_;
2553             bitField0_ = (bitField0_ & ~0x00000020);
2554           } else {
2555             ensureTypesIsMutable();
2556             types_.addAll(other.types_);
2557           }
2558           onChanged();
2559         }
2560       } else {
2561         if (!other.types_.isEmpty()) {
2562           if (typesBuilder_.isEmpty()) {
2563             typesBuilder_.dispose();
2564             typesBuilder_ = null;
2565             types_ = other.types_;
2566             bitField0_ = (bitField0_ & ~0x00000020);
2567             typesBuilder_ =
2568                 com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders
2569                     ? getTypesFieldBuilder()
2570                     : null;
2571           } else {
2572             typesBuilder_.addAllMessages(other.types_);
2573           }
2574         }
2575       }
2576       if (enumsBuilder_ == null) {
2577         if (!other.enums_.isEmpty()) {
2578           if (enums_.isEmpty()) {
2579             enums_ = other.enums_;
2580             bitField0_ = (bitField0_ & ~0x00000040);
2581           } else {
2582             ensureEnumsIsMutable();
2583             enums_.addAll(other.enums_);
2584           }
2585           onChanged();
2586         }
2587       } else {
2588         if (!other.enums_.isEmpty()) {
2589           if (enumsBuilder_.isEmpty()) {
2590             enumsBuilder_.dispose();
2591             enumsBuilder_ = null;
2592             enums_ = other.enums_;
2593             bitField0_ = (bitField0_ & ~0x00000040);
2594             enumsBuilder_ =
2595                 com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders
2596                     ? getEnumsFieldBuilder()
2597                     : null;
2598           } else {
2599             enumsBuilder_.addAllMessages(other.enums_);
2600           }
2601         }
2602       }
2603       if (other.hasDocumentation()) {
2604         mergeDocumentation(other.getDocumentation());
2605       }
2606       if (other.hasBackend()) {
2607         mergeBackend(other.getBackend());
2608       }
2609       if (other.hasHttp()) {
2610         mergeHttp(other.getHttp());
2611       }
2612       if (other.hasQuota()) {
2613         mergeQuota(other.getQuota());
2614       }
2615       if (other.hasAuthentication()) {
2616         mergeAuthentication(other.getAuthentication());
2617       }
2618       if (other.hasContext()) {
2619         mergeContext(other.getContext());
2620       }
2621       if (other.hasUsage()) {
2622         mergeUsage(other.getUsage());
2623       }
2624       if (endpointsBuilder_ == null) {
2625         if (!other.endpoints_.isEmpty()) {
2626           if (endpoints_.isEmpty()) {
2627             endpoints_ = other.endpoints_;
2628             bitField0_ = (bitField0_ & ~0x00004000);
2629           } else {
2630             ensureEndpointsIsMutable();
2631             endpoints_.addAll(other.endpoints_);
2632           }
2633           onChanged();
2634         }
2635       } else {
2636         if (!other.endpoints_.isEmpty()) {
2637           if (endpointsBuilder_.isEmpty()) {
2638             endpointsBuilder_.dispose();
2639             endpointsBuilder_ = null;
2640             endpoints_ = other.endpoints_;
2641             bitField0_ = (bitField0_ & ~0x00004000);
2642             endpointsBuilder_ =
2643                 com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders
2644                     ? getEndpointsFieldBuilder()
2645                     : null;
2646           } else {
2647             endpointsBuilder_.addAllMessages(other.endpoints_);
2648           }
2649         }
2650       }
2651       if (other.hasControl()) {
2652         mergeControl(other.getControl());
2653       }
2654       if (logsBuilder_ == null) {
2655         if (!other.logs_.isEmpty()) {
2656           if (logs_.isEmpty()) {
2657             logs_ = other.logs_;
2658             bitField0_ = (bitField0_ & ~0x00010000);
2659           } else {
2660             ensureLogsIsMutable();
2661             logs_.addAll(other.logs_);
2662           }
2663           onChanged();
2664         }
2665       } else {
2666         if (!other.logs_.isEmpty()) {
2667           if (logsBuilder_.isEmpty()) {
2668             logsBuilder_.dispose();
2669             logsBuilder_ = null;
2670             logs_ = other.logs_;
2671             bitField0_ = (bitField0_ & ~0x00010000);
2672             logsBuilder_ =
2673                 com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders
2674                     ? getLogsFieldBuilder()
2675                     : null;
2676           } else {
2677             logsBuilder_.addAllMessages(other.logs_);
2678           }
2679         }
2680       }
2681       if (metricsBuilder_ == null) {
2682         if (!other.metrics_.isEmpty()) {
2683           if (metrics_.isEmpty()) {
2684             metrics_ = other.metrics_;
2685             bitField0_ = (bitField0_ & ~0x00020000);
2686           } else {
2687             ensureMetricsIsMutable();
2688             metrics_.addAll(other.metrics_);
2689           }
2690           onChanged();
2691         }
2692       } else {
2693         if (!other.metrics_.isEmpty()) {
2694           if (metricsBuilder_.isEmpty()) {
2695             metricsBuilder_.dispose();
2696             metricsBuilder_ = null;
2697             metrics_ = other.metrics_;
2698             bitField0_ = (bitField0_ & ~0x00020000);
2699             metricsBuilder_ =
2700                 com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders
2701                     ? getMetricsFieldBuilder()
2702                     : null;
2703           } else {
2704             metricsBuilder_.addAllMessages(other.metrics_);
2705           }
2706         }
2707       }
2708       if (monitoredResourcesBuilder_ == null) {
2709         if (!other.monitoredResources_.isEmpty()) {
2710           if (monitoredResources_.isEmpty()) {
2711             monitoredResources_ = other.monitoredResources_;
2712             bitField0_ = (bitField0_ & ~0x00040000);
2713           } else {
2714             ensureMonitoredResourcesIsMutable();
2715             monitoredResources_.addAll(other.monitoredResources_);
2716           }
2717           onChanged();
2718         }
2719       } else {
2720         if (!other.monitoredResources_.isEmpty()) {
2721           if (monitoredResourcesBuilder_.isEmpty()) {
2722             monitoredResourcesBuilder_.dispose();
2723             monitoredResourcesBuilder_ = null;
2724             monitoredResources_ = other.monitoredResources_;
2725             bitField0_ = (bitField0_ & ~0x00040000);
2726             monitoredResourcesBuilder_ =
2727                 com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders
2728                     ? getMonitoredResourcesFieldBuilder()
2729                     : null;
2730           } else {
2731             monitoredResourcesBuilder_.addAllMessages(other.monitoredResources_);
2732           }
2733         }
2734       }
2735       if (other.hasBilling()) {
2736         mergeBilling(other.getBilling());
2737       }
2738       if (other.hasLogging()) {
2739         mergeLogging(other.getLogging());
2740       }
2741       if (other.hasMonitoring()) {
2742         mergeMonitoring(other.getMonitoring());
2743       }
2744       if (other.hasSystemParameters()) {
2745         mergeSystemParameters(other.getSystemParameters());
2746       }
2747       if (other.hasSourceInfo()) {
2748         mergeSourceInfo(other.getSourceInfo());
2749       }
2750       if (other.hasPublishing()) {
2751         mergePublishing(other.getPublishing());
2752       }
2753       if (other.hasConfigVersion()) {
2754         mergeConfigVersion(other.getConfigVersion());
2755       }
2756       this.mergeUnknownFields(other.getUnknownFields());
2757       onChanged();
2758       return this;
2759     }
2760 
2761     @java.lang.Override
isInitialized()2762     public final boolean isInitialized() {
2763       return true;
2764     }
2765 
2766     @java.lang.Override
mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)2767     public Builder mergeFrom(
2768         com.google.protobuf.CodedInputStream input,
2769         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2770         throws java.io.IOException {
2771       if (extensionRegistry == null) {
2772         throw new java.lang.NullPointerException();
2773       }
2774       try {
2775         boolean done = false;
2776         while (!done) {
2777           int tag = input.readTag();
2778           switch (tag) {
2779             case 0:
2780               done = true;
2781               break;
2782             case 10:
2783               {
2784                 name_ = input.readStringRequireUtf8();
2785                 bitField0_ |= 0x00000001;
2786                 break;
2787               } // case 10
2788             case 18:
2789               {
2790                 title_ = input.readStringRequireUtf8();
2791                 bitField0_ |= 0x00000002;
2792                 break;
2793               } // case 18
2794             case 26:
2795               {
2796                 com.google.protobuf.Api m =
2797                     input.readMessage(com.google.protobuf.Api.parser(), extensionRegistry);
2798                 if (apisBuilder_ == null) {
2799                   ensureApisIsMutable();
2800                   apis_.add(m);
2801                 } else {
2802                   apisBuilder_.addMessage(m);
2803                 }
2804                 break;
2805               } // case 26
2806             case 34:
2807               {
2808                 com.google.protobuf.Type m =
2809                     input.readMessage(com.google.protobuf.Type.parser(), extensionRegistry);
2810                 if (typesBuilder_ == null) {
2811                   ensureTypesIsMutable();
2812                   types_.add(m);
2813                 } else {
2814                   typesBuilder_.addMessage(m);
2815                 }
2816                 break;
2817               } // case 34
2818             case 42:
2819               {
2820                 com.google.protobuf.Enum m =
2821                     input.readMessage(com.google.protobuf.Enum.parser(), extensionRegistry);
2822                 if (enumsBuilder_ == null) {
2823                   ensureEnumsIsMutable();
2824                   enums_.add(m);
2825                 } else {
2826                   enumsBuilder_.addMessage(m);
2827                 }
2828                 break;
2829               } // case 42
2830             case 50:
2831               {
2832                 input.readMessage(getDocumentationFieldBuilder().getBuilder(), extensionRegistry);
2833                 bitField0_ |= 0x00000080;
2834                 break;
2835               } // case 50
2836             case 66:
2837               {
2838                 input.readMessage(getBackendFieldBuilder().getBuilder(), extensionRegistry);
2839                 bitField0_ |= 0x00000100;
2840                 break;
2841               } // case 66
2842             case 74:
2843               {
2844                 input.readMessage(getHttpFieldBuilder().getBuilder(), extensionRegistry);
2845                 bitField0_ |= 0x00000200;
2846                 break;
2847               } // case 74
2848             case 82:
2849               {
2850                 input.readMessage(getQuotaFieldBuilder().getBuilder(), extensionRegistry);
2851                 bitField0_ |= 0x00000400;
2852                 break;
2853               } // case 82
2854             case 90:
2855               {
2856                 input.readMessage(getAuthenticationFieldBuilder().getBuilder(), extensionRegistry);
2857                 bitField0_ |= 0x00000800;
2858                 break;
2859               } // case 90
2860             case 98:
2861               {
2862                 input.readMessage(getContextFieldBuilder().getBuilder(), extensionRegistry);
2863                 bitField0_ |= 0x00001000;
2864                 break;
2865               } // case 98
2866             case 122:
2867               {
2868                 input.readMessage(getUsageFieldBuilder().getBuilder(), extensionRegistry);
2869                 bitField0_ |= 0x00002000;
2870                 break;
2871               } // case 122
2872             case 146:
2873               {
2874                 com.google.api.Endpoint m =
2875                     input.readMessage(com.google.api.Endpoint.parser(), extensionRegistry);
2876                 if (endpointsBuilder_ == null) {
2877                   ensureEndpointsIsMutable();
2878                   endpoints_.add(m);
2879                 } else {
2880                   endpointsBuilder_.addMessage(m);
2881                 }
2882                 break;
2883               } // case 146
2884             case 162:
2885               {
2886                 input.readMessage(getConfigVersionFieldBuilder().getBuilder(), extensionRegistry);
2887                 bitField0_ |= 0x02000000;
2888                 break;
2889               } // case 162
2890             case 170:
2891               {
2892                 input.readMessage(getControlFieldBuilder().getBuilder(), extensionRegistry);
2893                 bitField0_ |= 0x00008000;
2894                 break;
2895               } // case 170
2896             case 178:
2897               {
2898                 producerProjectId_ = input.readStringRequireUtf8();
2899                 bitField0_ |= 0x00000004;
2900                 break;
2901               } // case 178
2902             case 186:
2903               {
2904                 com.google.api.LogDescriptor m =
2905                     input.readMessage(com.google.api.LogDescriptor.parser(), extensionRegistry);
2906                 if (logsBuilder_ == null) {
2907                   ensureLogsIsMutable();
2908                   logs_.add(m);
2909                 } else {
2910                   logsBuilder_.addMessage(m);
2911                 }
2912                 break;
2913               } // case 186
2914             case 194:
2915               {
2916                 com.google.api.MetricDescriptor m =
2917                     input.readMessage(com.google.api.MetricDescriptor.parser(), extensionRegistry);
2918                 if (metricsBuilder_ == null) {
2919                   ensureMetricsIsMutable();
2920                   metrics_.add(m);
2921                 } else {
2922                   metricsBuilder_.addMessage(m);
2923                 }
2924                 break;
2925               } // case 194
2926             case 202:
2927               {
2928                 com.google.api.MonitoredResourceDescriptor m =
2929                     input.readMessage(
2930                         com.google.api.MonitoredResourceDescriptor.parser(), extensionRegistry);
2931                 if (monitoredResourcesBuilder_ == null) {
2932                   ensureMonitoredResourcesIsMutable();
2933                   monitoredResources_.add(m);
2934                 } else {
2935                   monitoredResourcesBuilder_.addMessage(m);
2936                 }
2937                 break;
2938               } // case 202
2939             case 210:
2940               {
2941                 input.readMessage(getBillingFieldBuilder().getBuilder(), extensionRegistry);
2942                 bitField0_ |= 0x00080000;
2943                 break;
2944               } // case 210
2945             case 218:
2946               {
2947                 input.readMessage(getLoggingFieldBuilder().getBuilder(), extensionRegistry);
2948                 bitField0_ |= 0x00100000;
2949                 break;
2950               } // case 218
2951             case 226:
2952               {
2953                 input.readMessage(getMonitoringFieldBuilder().getBuilder(), extensionRegistry);
2954                 bitField0_ |= 0x00200000;
2955                 break;
2956               } // case 226
2957             case 234:
2958               {
2959                 input.readMessage(
2960                     getSystemParametersFieldBuilder().getBuilder(), extensionRegistry);
2961                 bitField0_ |= 0x00400000;
2962                 break;
2963               } // case 234
2964             case 266:
2965               {
2966                 id_ = input.readStringRequireUtf8();
2967                 bitField0_ |= 0x00000008;
2968                 break;
2969               } // case 266
2970             case 298:
2971               {
2972                 input.readMessage(getSourceInfoFieldBuilder().getBuilder(), extensionRegistry);
2973                 bitField0_ |= 0x00800000;
2974                 break;
2975               } // case 298
2976             case 362:
2977               {
2978                 input.readMessage(getPublishingFieldBuilder().getBuilder(), extensionRegistry);
2979                 bitField0_ |= 0x01000000;
2980                 break;
2981               } // case 362
2982             default:
2983               {
2984                 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
2985                   done = true; // was an endgroup tag
2986                 }
2987                 break;
2988               } // default:
2989           } // switch (tag)
2990         } // while (!done)
2991       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
2992         throw e.unwrapIOException();
2993       } finally {
2994         onChanged();
2995       } // finally
2996       return this;
2997     }
2998 
2999     private int bitField0_;
3000 
3001     private java.lang.Object name_ = "";
3002     /**
3003      *
3004      *
3005      * <pre>
3006      * The service name, which is a DNS-like logical identifier for the
3007      * service, such as `calendar.googleapis.com`. The service name
3008      * typically goes through DNS verification to make sure the owner
3009      * of the service also owns the DNS name.
3010      * </pre>
3011      *
3012      * <code>string name = 1;</code>
3013      *
3014      * @return The name.
3015      */
getName()3016     public java.lang.String getName() {
3017       java.lang.Object ref = name_;
3018       if (!(ref instanceof java.lang.String)) {
3019         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
3020         java.lang.String s = bs.toStringUtf8();
3021         name_ = s;
3022         return s;
3023       } else {
3024         return (java.lang.String) ref;
3025       }
3026     }
3027     /**
3028      *
3029      *
3030      * <pre>
3031      * The service name, which is a DNS-like logical identifier for the
3032      * service, such as `calendar.googleapis.com`. The service name
3033      * typically goes through DNS verification to make sure the owner
3034      * of the service also owns the DNS name.
3035      * </pre>
3036      *
3037      * <code>string name = 1;</code>
3038      *
3039      * @return The bytes for name.
3040      */
getNameBytes()3041     public com.google.protobuf.ByteString getNameBytes() {
3042       java.lang.Object ref = name_;
3043       if (ref instanceof String) {
3044         com.google.protobuf.ByteString b =
3045             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
3046         name_ = b;
3047         return b;
3048       } else {
3049         return (com.google.protobuf.ByteString) ref;
3050       }
3051     }
3052     /**
3053      *
3054      *
3055      * <pre>
3056      * The service name, which is a DNS-like logical identifier for the
3057      * service, such as `calendar.googleapis.com`. The service name
3058      * typically goes through DNS verification to make sure the owner
3059      * of the service also owns the DNS name.
3060      * </pre>
3061      *
3062      * <code>string name = 1;</code>
3063      *
3064      * @param value The name to set.
3065      * @return This builder for chaining.
3066      */
setName(java.lang.String value)3067     public Builder setName(java.lang.String value) {
3068       if (value == null) {
3069         throw new NullPointerException();
3070       }
3071       name_ = value;
3072       bitField0_ |= 0x00000001;
3073       onChanged();
3074       return this;
3075     }
3076     /**
3077      *
3078      *
3079      * <pre>
3080      * The service name, which is a DNS-like logical identifier for the
3081      * service, such as `calendar.googleapis.com`. The service name
3082      * typically goes through DNS verification to make sure the owner
3083      * of the service also owns the DNS name.
3084      * </pre>
3085      *
3086      * <code>string name = 1;</code>
3087      *
3088      * @return This builder for chaining.
3089      */
clearName()3090     public Builder clearName() {
3091       name_ = getDefaultInstance().getName();
3092       bitField0_ = (bitField0_ & ~0x00000001);
3093       onChanged();
3094       return this;
3095     }
3096     /**
3097      *
3098      *
3099      * <pre>
3100      * The service name, which is a DNS-like logical identifier for the
3101      * service, such as `calendar.googleapis.com`. The service name
3102      * typically goes through DNS verification to make sure the owner
3103      * of the service also owns the DNS name.
3104      * </pre>
3105      *
3106      * <code>string name = 1;</code>
3107      *
3108      * @param value The bytes for name to set.
3109      * @return This builder for chaining.
3110      */
setNameBytes(com.google.protobuf.ByteString value)3111     public Builder setNameBytes(com.google.protobuf.ByteString value) {
3112       if (value == null) {
3113         throw new NullPointerException();
3114       }
3115       checkByteStringIsUtf8(value);
3116       name_ = value;
3117       bitField0_ |= 0x00000001;
3118       onChanged();
3119       return this;
3120     }
3121 
3122     private java.lang.Object title_ = "";
3123     /**
3124      *
3125      *
3126      * <pre>
3127      * The product title for this service, it is the name displayed in Google
3128      * Cloud Console.
3129      * </pre>
3130      *
3131      * <code>string title = 2;</code>
3132      *
3133      * @return The title.
3134      */
getTitle()3135     public java.lang.String getTitle() {
3136       java.lang.Object ref = title_;
3137       if (!(ref instanceof java.lang.String)) {
3138         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
3139         java.lang.String s = bs.toStringUtf8();
3140         title_ = s;
3141         return s;
3142       } else {
3143         return (java.lang.String) ref;
3144       }
3145     }
3146     /**
3147      *
3148      *
3149      * <pre>
3150      * The product title for this service, it is the name displayed in Google
3151      * Cloud Console.
3152      * </pre>
3153      *
3154      * <code>string title = 2;</code>
3155      *
3156      * @return The bytes for title.
3157      */
getTitleBytes()3158     public com.google.protobuf.ByteString getTitleBytes() {
3159       java.lang.Object ref = title_;
3160       if (ref instanceof String) {
3161         com.google.protobuf.ByteString b =
3162             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
3163         title_ = b;
3164         return b;
3165       } else {
3166         return (com.google.protobuf.ByteString) ref;
3167       }
3168     }
3169     /**
3170      *
3171      *
3172      * <pre>
3173      * The product title for this service, it is the name displayed in Google
3174      * Cloud Console.
3175      * </pre>
3176      *
3177      * <code>string title = 2;</code>
3178      *
3179      * @param value The title to set.
3180      * @return This builder for chaining.
3181      */
setTitle(java.lang.String value)3182     public Builder setTitle(java.lang.String value) {
3183       if (value == null) {
3184         throw new NullPointerException();
3185       }
3186       title_ = value;
3187       bitField0_ |= 0x00000002;
3188       onChanged();
3189       return this;
3190     }
3191     /**
3192      *
3193      *
3194      * <pre>
3195      * The product title for this service, it is the name displayed in Google
3196      * Cloud Console.
3197      * </pre>
3198      *
3199      * <code>string title = 2;</code>
3200      *
3201      * @return This builder for chaining.
3202      */
clearTitle()3203     public Builder clearTitle() {
3204       title_ = getDefaultInstance().getTitle();
3205       bitField0_ = (bitField0_ & ~0x00000002);
3206       onChanged();
3207       return this;
3208     }
3209     /**
3210      *
3211      *
3212      * <pre>
3213      * The product title for this service, it is the name displayed in Google
3214      * Cloud Console.
3215      * </pre>
3216      *
3217      * <code>string title = 2;</code>
3218      *
3219      * @param value The bytes for title to set.
3220      * @return This builder for chaining.
3221      */
setTitleBytes(com.google.protobuf.ByteString value)3222     public Builder setTitleBytes(com.google.protobuf.ByteString value) {
3223       if (value == null) {
3224         throw new NullPointerException();
3225       }
3226       checkByteStringIsUtf8(value);
3227       title_ = value;
3228       bitField0_ |= 0x00000002;
3229       onChanged();
3230       return this;
3231     }
3232 
3233     private java.lang.Object producerProjectId_ = "";
3234     /**
3235      *
3236      *
3237      * <pre>
3238      * The Google project that owns this service.
3239      * </pre>
3240      *
3241      * <code>string producer_project_id = 22;</code>
3242      *
3243      * @return The producerProjectId.
3244      */
getProducerProjectId()3245     public java.lang.String getProducerProjectId() {
3246       java.lang.Object ref = producerProjectId_;
3247       if (!(ref instanceof java.lang.String)) {
3248         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
3249         java.lang.String s = bs.toStringUtf8();
3250         producerProjectId_ = s;
3251         return s;
3252       } else {
3253         return (java.lang.String) ref;
3254       }
3255     }
3256     /**
3257      *
3258      *
3259      * <pre>
3260      * The Google project that owns this service.
3261      * </pre>
3262      *
3263      * <code>string producer_project_id = 22;</code>
3264      *
3265      * @return The bytes for producerProjectId.
3266      */
getProducerProjectIdBytes()3267     public com.google.protobuf.ByteString getProducerProjectIdBytes() {
3268       java.lang.Object ref = producerProjectId_;
3269       if (ref instanceof String) {
3270         com.google.protobuf.ByteString b =
3271             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
3272         producerProjectId_ = b;
3273         return b;
3274       } else {
3275         return (com.google.protobuf.ByteString) ref;
3276       }
3277     }
3278     /**
3279      *
3280      *
3281      * <pre>
3282      * The Google project that owns this service.
3283      * </pre>
3284      *
3285      * <code>string producer_project_id = 22;</code>
3286      *
3287      * @param value The producerProjectId to set.
3288      * @return This builder for chaining.
3289      */
setProducerProjectId(java.lang.String value)3290     public Builder setProducerProjectId(java.lang.String value) {
3291       if (value == null) {
3292         throw new NullPointerException();
3293       }
3294       producerProjectId_ = value;
3295       bitField0_ |= 0x00000004;
3296       onChanged();
3297       return this;
3298     }
3299     /**
3300      *
3301      *
3302      * <pre>
3303      * The Google project that owns this service.
3304      * </pre>
3305      *
3306      * <code>string producer_project_id = 22;</code>
3307      *
3308      * @return This builder for chaining.
3309      */
clearProducerProjectId()3310     public Builder clearProducerProjectId() {
3311       producerProjectId_ = getDefaultInstance().getProducerProjectId();
3312       bitField0_ = (bitField0_ & ~0x00000004);
3313       onChanged();
3314       return this;
3315     }
3316     /**
3317      *
3318      *
3319      * <pre>
3320      * The Google project that owns this service.
3321      * </pre>
3322      *
3323      * <code>string producer_project_id = 22;</code>
3324      *
3325      * @param value The bytes for producerProjectId to set.
3326      * @return This builder for chaining.
3327      */
setProducerProjectIdBytes(com.google.protobuf.ByteString value)3328     public Builder setProducerProjectIdBytes(com.google.protobuf.ByteString value) {
3329       if (value == null) {
3330         throw new NullPointerException();
3331       }
3332       checkByteStringIsUtf8(value);
3333       producerProjectId_ = value;
3334       bitField0_ |= 0x00000004;
3335       onChanged();
3336       return this;
3337     }
3338 
3339     private java.lang.Object id_ = "";
3340     /**
3341      *
3342      *
3343      * <pre>
3344      * A unique ID for a specific instance of this message, typically assigned
3345      * by the client for tracking purpose. Must be no longer than 63 characters
3346      * and only lower case letters, digits, '.', '_' and '-' are allowed. If
3347      * empty, the server may choose to generate one instead.
3348      * </pre>
3349      *
3350      * <code>string id = 33;</code>
3351      *
3352      * @return The id.
3353      */
getId()3354     public java.lang.String getId() {
3355       java.lang.Object ref = id_;
3356       if (!(ref instanceof java.lang.String)) {
3357         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
3358         java.lang.String s = bs.toStringUtf8();
3359         id_ = s;
3360         return s;
3361       } else {
3362         return (java.lang.String) ref;
3363       }
3364     }
3365     /**
3366      *
3367      *
3368      * <pre>
3369      * A unique ID for a specific instance of this message, typically assigned
3370      * by the client for tracking purpose. Must be no longer than 63 characters
3371      * and only lower case letters, digits, '.', '_' and '-' are allowed. If
3372      * empty, the server may choose to generate one instead.
3373      * </pre>
3374      *
3375      * <code>string id = 33;</code>
3376      *
3377      * @return The bytes for id.
3378      */
getIdBytes()3379     public com.google.protobuf.ByteString getIdBytes() {
3380       java.lang.Object ref = id_;
3381       if (ref instanceof String) {
3382         com.google.protobuf.ByteString b =
3383             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
3384         id_ = b;
3385         return b;
3386       } else {
3387         return (com.google.protobuf.ByteString) ref;
3388       }
3389     }
3390     /**
3391      *
3392      *
3393      * <pre>
3394      * A unique ID for a specific instance of this message, typically assigned
3395      * by the client for tracking purpose. Must be no longer than 63 characters
3396      * and only lower case letters, digits, '.', '_' and '-' are allowed. If
3397      * empty, the server may choose to generate one instead.
3398      * </pre>
3399      *
3400      * <code>string id = 33;</code>
3401      *
3402      * @param value The id to set.
3403      * @return This builder for chaining.
3404      */
setId(java.lang.String value)3405     public Builder setId(java.lang.String value) {
3406       if (value == null) {
3407         throw new NullPointerException();
3408       }
3409       id_ = value;
3410       bitField0_ |= 0x00000008;
3411       onChanged();
3412       return this;
3413     }
3414     /**
3415      *
3416      *
3417      * <pre>
3418      * A unique ID for a specific instance of this message, typically assigned
3419      * by the client for tracking purpose. Must be no longer than 63 characters
3420      * and only lower case letters, digits, '.', '_' and '-' are allowed. If
3421      * empty, the server may choose to generate one instead.
3422      * </pre>
3423      *
3424      * <code>string id = 33;</code>
3425      *
3426      * @return This builder for chaining.
3427      */
clearId()3428     public Builder clearId() {
3429       id_ = getDefaultInstance().getId();
3430       bitField0_ = (bitField0_ & ~0x00000008);
3431       onChanged();
3432       return this;
3433     }
3434     /**
3435      *
3436      *
3437      * <pre>
3438      * A unique ID for a specific instance of this message, typically assigned
3439      * by the client for tracking purpose. Must be no longer than 63 characters
3440      * and only lower case letters, digits, '.', '_' and '-' are allowed. If
3441      * empty, the server may choose to generate one instead.
3442      * </pre>
3443      *
3444      * <code>string id = 33;</code>
3445      *
3446      * @param value The bytes for id to set.
3447      * @return This builder for chaining.
3448      */
setIdBytes(com.google.protobuf.ByteString value)3449     public Builder setIdBytes(com.google.protobuf.ByteString value) {
3450       if (value == null) {
3451         throw new NullPointerException();
3452       }
3453       checkByteStringIsUtf8(value);
3454       id_ = value;
3455       bitField0_ |= 0x00000008;
3456       onChanged();
3457       return this;
3458     }
3459 
3460     private java.util.List<com.google.protobuf.Api> apis_ = java.util.Collections.emptyList();
3461 
ensureApisIsMutable()3462     private void ensureApisIsMutable() {
3463       if (!((bitField0_ & 0x00000010) != 0)) {
3464         apis_ = new java.util.ArrayList<com.google.protobuf.Api>(apis_);
3465         bitField0_ |= 0x00000010;
3466       }
3467     }
3468 
3469     private com.google.protobuf.RepeatedFieldBuilderV3<
3470             com.google.protobuf.Api,
3471             com.google.protobuf.Api.Builder,
3472             com.google.protobuf.ApiOrBuilder>
3473         apisBuilder_;
3474 
3475     /**
3476      *
3477      *
3478      * <pre>
3479      * A list of API interfaces exported by this service. Only the `name` field
3480      * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
3481      * the configuration author, as the remaining fields will be derived from the
3482      * IDL during the normalization process. It is an error to specify an API
3483      * interface here which cannot be resolved against the associated IDL files.
3484      * </pre>
3485      *
3486      * <code>repeated .google.protobuf.Api apis = 3;</code>
3487      */
getApisList()3488     public java.util.List<com.google.protobuf.Api> getApisList() {
3489       if (apisBuilder_ == null) {
3490         return java.util.Collections.unmodifiableList(apis_);
3491       } else {
3492         return apisBuilder_.getMessageList();
3493       }
3494     }
3495     /**
3496      *
3497      *
3498      * <pre>
3499      * A list of API interfaces exported by this service. Only the `name` field
3500      * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
3501      * the configuration author, as the remaining fields will be derived from the
3502      * IDL during the normalization process. It is an error to specify an API
3503      * interface here which cannot be resolved against the associated IDL files.
3504      * </pre>
3505      *
3506      * <code>repeated .google.protobuf.Api apis = 3;</code>
3507      */
getApisCount()3508     public int getApisCount() {
3509       if (apisBuilder_ == null) {
3510         return apis_.size();
3511       } else {
3512         return apisBuilder_.getCount();
3513       }
3514     }
3515     /**
3516      *
3517      *
3518      * <pre>
3519      * A list of API interfaces exported by this service. Only the `name` field
3520      * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
3521      * the configuration author, as the remaining fields will be derived from the
3522      * IDL during the normalization process. It is an error to specify an API
3523      * interface here which cannot be resolved against the associated IDL files.
3524      * </pre>
3525      *
3526      * <code>repeated .google.protobuf.Api apis = 3;</code>
3527      */
getApis(int index)3528     public com.google.protobuf.Api getApis(int index) {
3529       if (apisBuilder_ == null) {
3530         return apis_.get(index);
3531       } else {
3532         return apisBuilder_.getMessage(index);
3533       }
3534     }
3535     /**
3536      *
3537      *
3538      * <pre>
3539      * A list of API interfaces exported by this service. Only the `name` field
3540      * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
3541      * the configuration author, as the remaining fields will be derived from the
3542      * IDL during the normalization process. It is an error to specify an API
3543      * interface here which cannot be resolved against the associated IDL files.
3544      * </pre>
3545      *
3546      * <code>repeated .google.protobuf.Api apis = 3;</code>
3547      */
setApis(int index, com.google.protobuf.Api value)3548     public Builder setApis(int index, com.google.protobuf.Api value) {
3549       if (apisBuilder_ == null) {
3550         if (value == null) {
3551           throw new NullPointerException();
3552         }
3553         ensureApisIsMutable();
3554         apis_.set(index, value);
3555         onChanged();
3556       } else {
3557         apisBuilder_.setMessage(index, value);
3558       }
3559       return this;
3560     }
3561     /**
3562      *
3563      *
3564      * <pre>
3565      * A list of API interfaces exported by this service. Only the `name` field
3566      * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
3567      * the configuration author, as the remaining fields will be derived from the
3568      * IDL during the normalization process. It is an error to specify an API
3569      * interface here which cannot be resolved against the associated IDL files.
3570      * </pre>
3571      *
3572      * <code>repeated .google.protobuf.Api apis = 3;</code>
3573      */
setApis(int index, com.google.protobuf.Api.Builder builderForValue)3574     public Builder setApis(int index, com.google.protobuf.Api.Builder builderForValue) {
3575       if (apisBuilder_ == null) {
3576         ensureApisIsMutable();
3577         apis_.set(index, builderForValue.build());
3578         onChanged();
3579       } else {
3580         apisBuilder_.setMessage(index, builderForValue.build());
3581       }
3582       return this;
3583     }
3584     /**
3585      *
3586      *
3587      * <pre>
3588      * A list of API interfaces exported by this service. Only the `name` field
3589      * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
3590      * the configuration author, as the remaining fields will be derived from the
3591      * IDL during the normalization process. It is an error to specify an API
3592      * interface here which cannot be resolved against the associated IDL files.
3593      * </pre>
3594      *
3595      * <code>repeated .google.protobuf.Api apis = 3;</code>
3596      */
addApis(com.google.protobuf.Api value)3597     public Builder addApis(com.google.protobuf.Api value) {
3598       if (apisBuilder_ == null) {
3599         if (value == null) {
3600           throw new NullPointerException();
3601         }
3602         ensureApisIsMutable();
3603         apis_.add(value);
3604         onChanged();
3605       } else {
3606         apisBuilder_.addMessage(value);
3607       }
3608       return this;
3609     }
3610     /**
3611      *
3612      *
3613      * <pre>
3614      * A list of API interfaces exported by this service. Only the `name` field
3615      * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
3616      * the configuration author, as the remaining fields will be derived from the
3617      * IDL during the normalization process. It is an error to specify an API
3618      * interface here which cannot be resolved against the associated IDL files.
3619      * </pre>
3620      *
3621      * <code>repeated .google.protobuf.Api apis = 3;</code>
3622      */
addApis(int index, com.google.protobuf.Api value)3623     public Builder addApis(int index, com.google.protobuf.Api value) {
3624       if (apisBuilder_ == null) {
3625         if (value == null) {
3626           throw new NullPointerException();
3627         }
3628         ensureApisIsMutable();
3629         apis_.add(index, value);
3630         onChanged();
3631       } else {
3632         apisBuilder_.addMessage(index, value);
3633       }
3634       return this;
3635     }
3636     /**
3637      *
3638      *
3639      * <pre>
3640      * A list of API interfaces exported by this service. Only the `name` field
3641      * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
3642      * the configuration author, as the remaining fields will be derived from the
3643      * IDL during the normalization process. It is an error to specify an API
3644      * interface here which cannot be resolved against the associated IDL files.
3645      * </pre>
3646      *
3647      * <code>repeated .google.protobuf.Api apis = 3;</code>
3648      */
addApis(com.google.protobuf.Api.Builder builderForValue)3649     public Builder addApis(com.google.protobuf.Api.Builder builderForValue) {
3650       if (apisBuilder_ == null) {
3651         ensureApisIsMutable();
3652         apis_.add(builderForValue.build());
3653         onChanged();
3654       } else {
3655         apisBuilder_.addMessage(builderForValue.build());
3656       }
3657       return this;
3658     }
3659     /**
3660      *
3661      *
3662      * <pre>
3663      * A list of API interfaces exported by this service. Only the `name` field
3664      * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
3665      * the configuration author, as the remaining fields will be derived from the
3666      * IDL during the normalization process. It is an error to specify an API
3667      * interface here which cannot be resolved against the associated IDL files.
3668      * </pre>
3669      *
3670      * <code>repeated .google.protobuf.Api apis = 3;</code>
3671      */
addApis(int index, com.google.protobuf.Api.Builder builderForValue)3672     public Builder addApis(int index, com.google.protobuf.Api.Builder builderForValue) {
3673       if (apisBuilder_ == null) {
3674         ensureApisIsMutable();
3675         apis_.add(index, builderForValue.build());
3676         onChanged();
3677       } else {
3678         apisBuilder_.addMessage(index, builderForValue.build());
3679       }
3680       return this;
3681     }
3682     /**
3683      *
3684      *
3685      * <pre>
3686      * A list of API interfaces exported by this service. Only the `name` field
3687      * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
3688      * the configuration author, as the remaining fields will be derived from the
3689      * IDL during the normalization process. It is an error to specify an API
3690      * interface here which cannot be resolved against the associated IDL files.
3691      * </pre>
3692      *
3693      * <code>repeated .google.protobuf.Api apis = 3;</code>
3694      */
addAllApis(java.lang.Iterable<? extends com.google.protobuf.Api> values)3695     public Builder addAllApis(java.lang.Iterable<? extends com.google.protobuf.Api> values) {
3696       if (apisBuilder_ == null) {
3697         ensureApisIsMutable();
3698         com.google.protobuf.AbstractMessageLite.Builder.addAll(values, apis_);
3699         onChanged();
3700       } else {
3701         apisBuilder_.addAllMessages(values);
3702       }
3703       return this;
3704     }
3705     /**
3706      *
3707      *
3708      * <pre>
3709      * A list of API interfaces exported by this service. Only the `name` field
3710      * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
3711      * the configuration author, as the remaining fields will be derived from the
3712      * IDL during the normalization process. It is an error to specify an API
3713      * interface here which cannot be resolved against the associated IDL files.
3714      * </pre>
3715      *
3716      * <code>repeated .google.protobuf.Api apis = 3;</code>
3717      */
clearApis()3718     public Builder clearApis() {
3719       if (apisBuilder_ == null) {
3720         apis_ = java.util.Collections.emptyList();
3721         bitField0_ = (bitField0_ & ~0x00000010);
3722         onChanged();
3723       } else {
3724         apisBuilder_.clear();
3725       }
3726       return this;
3727     }
3728     /**
3729      *
3730      *
3731      * <pre>
3732      * A list of API interfaces exported by this service. Only the `name` field
3733      * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
3734      * the configuration author, as the remaining fields will be derived from the
3735      * IDL during the normalization process. It is an error to specify an API
3736      * interface here which cannot be resolved against the associated IDL files.
3737      * </pre>
3738      *
3739      * <code>repeated .google.protobuf.Api apis = 3;</code>
3740      */
removeApis(int index)3741     public Builder removeApis(int index) {
3742       if (apisBuilder_ == null) {
3743         ensureApisIsMutable();
3744         apis_.remove(index);
3745         onChanged();
3746       } else {
3747         apisBuilder_.remove(index);
3748       }
3749       return this;
3750     }
3751     /**
3752      *
3753      *
3754      * <pre>
3755      * A list of API interfaces exported by this service. Only the `name` field
3756      * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
3757      * the configuration author, as the remaining fields will be derived from the
3758      * IDL during the normalization process. It is an error to specify an API
3759      * interface here which cannot be resolved against the associated IDL files.
3760      * </pre>
3761      *
3762      * <code>repeated .google.protobuf.Api apis = 3;</code>
3763      */
getApisBuilder(int index)3764     public com.google.protobuf.Api.Builder getApisBuilder(int index) {
3765       return getApisFieldBuilder().getBuilder(index);
3766     }
3767     /**
3768      *
3769      *
3770      * <pre>
3771      * A list of API interfaces exported by this service. Only the `name` field
3772      * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
3773      * the configuration author, as the remaining fields will be derived from the
3774      * IDL during the normalization process. It is an error to specify an API
3775      * interface here which cannot be resolved against the associated IDL files.
3776      * </pre>
3777      *
3778      * <code>repeated .google.protobuf.Api apis = 3;</code>
3779      */
getApisOrBuilder(int index)3780     public com.google.protobuf.ApiOrBuilder getApisOrBuilder(int index) {
3781       if (apisBuilder_ == null) {
3782         return apis_.get(index);
3783       } else {
3784         return apisBuilder_.getMessageOrBuilder(index);
3785       }
3786     }
3787     /**
3788      *
3789      *
3790      * <pre>
3791      * A list of API interfaces exported by this service. Only the `name` field
3792      * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
3793      * the configuration author, as the remaining fields will be derived from the
3794      * IDL during the normalization process. It is an error to specify an API
3795      * interface here which cannot be resolved against the associated IDL files.
3796      * </pre>
3797      *
3798      * <code>repeated .google.protobuf.Api apis = 3;</code>
3799      */
getApisOrBuilderList()3800     public java.util.List<? extends com.google.protobuf.ApiOrBuilder> getApisOrBuilderList() {
3801       if (apisBuilder_ != null) {
3802         return apisBuilder_.getMessageOrBuilderList();
3803       } else {
3804         return java.util.Collections.unmodifiableList(apis_);
3805       }
3806     }
3807     /**
3808      *
3809      *
3810      * <pre>
3811      * A list of API interfaces exported by this service. Only the `name` field
3812      * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
3813      * the configuration author, as the remaining fields will be derived from the
3814      * IDL during the normalization process. It is an error to specify an API
3815      * interface here which cannot be resolved against the associated IDL files.
3816      * </pre>
3817      *
3818      * <code>repeated .google.protobuf.Api apis = 3;</code>
3819      */
addApisBuilder()3820     public com.google.protobuf.Api.Builder addApisBuilder() {
3821       return getApisFieldBuilder().addBuilder(com.google.protobuf.Api.getDefaultInstance());
3822     }
3823     /**
3824      *
3825      *
3826      * <pre>
3827      * A list of API interfaces exported by this service. Only the `name` field
3828      * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
3829      * the configuration author, as the remaining fields will be derived from the
3830      * IDL during the normalization process. It is an error to specify an API
3831      * interface here which cannot be resolved against the associated IDL files.
3832      * </pre>
3833      *
3834      * <code>repeated .google.protobuf.Api apis = 3;</code>
3835      */
addApisBuilder(int index)3836     public com.google.protobuf.Api.Builder addApisBuilder(int index) {
3837       return getApisFieldBuilder().addBuilder(index, com.google.protobuf.Api.getDefaultInstance());
3838     }
3839     /**
3840      *
3841      *
3842      * <pre>
3843      * A list of API interfaces exported by this service. Only the `name` field
3844      * of the [google.protobuf.Api][google.protobuf.Api] needs to be provided by
3845      * the configuration author, as the remaining fields will be derived from the
3846      * IDL during the normalization process. It is an error to specify an API
3847      * interface here which cannot be resolved against the associated IDL files.
3848      * </pre>
3849      *
3850      * <code>repeated .google.protobuf.Api apis = 3;</code>
3851      */
getApisBuilderList()3852     public java.util.List<com.google.protobuf.Api.Builder> getApisBuilderList() {
3853       return getApisFieldBuilder().getBuilderList();
3854     }
3855 
3856     private com.google.protobuf.RepeatedFieldBuilderV3<
3857             com.google.protobuf.Api,
3858             com.google.protobuf.Api.Builder,
3859             com.google.protobuf.ApiOrBuilder>
getApisFieldBuilder()3860         getApisFieldBuilder() {
3861       if (apisBuilder_ == null) {
3862         apisBuilder_ =
3863             new com.google.protobuf.RepeatedFieldBuilderV3<
3864                 com.google.protobuf.Api,
3865                 com.google.protobuf.Api.Builder,
3866                 com.google.protobuf.ApiOrBuilder>(
3867                 apis_, ((bitField0_ & 0x00000010) != 0), getParentForChildren(), isClean());
3868         apis_ = null;
3869       }
3870       return apisBuilder_;
3871     }
3872 
3873     private java.util.List<com.google.protobuf.Type> types_ = java.util.Collections.emptyList();
3874 
ensureTypesIsMutable()3875     private void ensureTypesIsMutable() {
3876       if (!((bitField0_ & 0x00000020) != 0)) {
3877         types_ = new java.util.ArrayList<com.google.protobuf.Type>(types_);
3878         bitField0_ |= 0x00000020;
3879       }
3880     }
3881 
3882     private com.google.protobuf.RepeatedFieldBuilderV3<
3883             com.google.protobuf.Type,
3884             com.google.protobuf.Type.Builder,
3885             com.google.protobuf.TypeOrBuilder>
3886         typesBuilder_;
3887 
3888     /**
3889      *
3890      *
3891      * <pre>
3892      * A list of all proto message types included in this API service.
3893      * Types referenced directly or indirectly by the `apis` are automatically
3894      * included.  Messages which are not referenced but shall be included, such as
3895      * types used by the `google.protobuf.Any` type, should be listed here by
3896      * name by the configuration author. Example:
3897      *     types:
3898      *     - name: google.protobuf.Int32
3899      * </pre>
3900      *
3901      * <code>repeated .google.protobuf.Type types = 4;</code>
3902      */
getTypesList()3903     public java.util.List<com.google.protobuf.Type> getTypesList() {
3904       if (typesBuilder_ == null) {
3905         return java.util.Collections.unmodifiableList(types_);
3906       } else {
3907         return typesBuilder_.getMessageList();
3908       }
3909     }
3910     /**
3911      *
3912      *
3913      * <pre>
3914      * A list of all proto message types included in this API service.
3915      * Types referenced directly or indirectly by the `apis` are automatically
3916      * included.  Messages which are not referenced but shall be included, such as
3917      * types used by the `google.protobuf.Any` type, should be listed here by
3918      * name by the configuration author. Example:
3919      *     types:
3920      *     - name: google.protobuf.Int32
3921      * </pre>
3922      *
3923      * <code>repeated .google.protobuf.Type types = 4;</code>
3924      */
getTypesCount()3925     public int getTypesCount() {
3926       if (typesBuilder_ == null) {
3927         return types_.size();
3928       } else {
3929         return typesBuilder_.getCount();
3930       }
3931     }
3932     /**
3933      *
3934      *
3935      * <pre>
3936      * A list of all proto message types included in this API service.
3937      * Types referenced directly or indirectly by the `apis` are automatically
3938      * included.  Messages which are not referenced but shall be included, such as
3939      * types used by the `google.protobuf.Any` type, should be listed here by
3940      * name by the configuration author. Example:
3941      *     types:
3942      *     - name: google.protobuf.Int32
3943      * </pre>
3944      *
3945      * <code>repeated .google.protobuf.Type types = 4;</code>
3946      */
getTypes(int index)3947     public com.google.protobuf.Type getTypes(int index) {
3948       if (typesBuilder_ == null) {
3949         return types_.get(index);
3950       } else {
3951         return typesBuilder_.getMessage(index);
3952       }
3953     }
3954     /**
3955      *
3956      *
3957      * <pre>
3958      * A list of all proto message types included in this API service.
3959      * Types referenced directly or indirectly by the `apis` are automatically
3960      * included.  Messages which are not referenced but shall be included, such as
3961      * types used by the `google.protobuf.Any` type, should be listed here by
3962      * name by the configuration author. Example:
3963      *     types:
3964      *     - name: google.protobuf.Int32
3965      * </pre>
3966      *
3967      * <code>repeated .google.protobuf.Type types = 4;</code>
3968      */
setTypes(int index, com.google.protobuf.Type value)3969     public Builder setTypes(int index, com.google.protobuf.Type value) {
3970       if (typesBuilder_ == null) {
3971         if (value == null) {
3972           throw new NullPointerException();
3973         }
3974         ensureTypesIsMutable();
3975         types_.set(index, value);
3976         onChanged();
3977       } else {
3978         typesBuilder_.setMessage(index, value);
3979       }
3980       return this;
3981     }
3982     /**
3983      *
3984      *
3985      * <pre>
3986      * A list of all proto message types included in this API service.
3987      * Types referenced directly or indirectly by the `apis` are automatically
3988      * included.  Messages which are not referenced but shall be included, such as
3989      * types used by the `google.protobuf.Any` type, should be listed here by
3990      * name by the configuration author. Example:
3991      *     types:
3992      *     - name: google.protobuf.Int32
3993      * </pre>
3994      *
3995      * <code>repeated .google.protobuf.Type types = 4;</code>
3996      */
setTypes(int index, com.google.protobuf.Type.Builder builderForValue)3997     public Builder setTypes(int index, com.google.protobuf.Type.Builder builderForValue) {
3998       if (typesBuilder_ == null) {
3999         ensureTypesIsMutable();
4000         types_.set(index, builderForValue.build());
4001         onChanged();
4002       } else {
4003         typesBuilder_.setMessage(index, builderForValue.build());
4004       }
4005       return this;
4006     }
4007     /**
4008      *
4009      *
4010      * <pre>
4011      * A list of all proto message types included in this API service.
4012      * Types referenced directly or indirectly by the `apis` are automatically
4013      * included.  Messages which are not referenced but shall be included, such as
4014      * types used by the `google.protobuf.Any` type, should be listed here by
4015      * name by the configuration author. Example:
4016      *     types:
4017      *     - name: google.protobuf.Int32
4018      * </pre>
4019      *
4020      * <code>repeated .google.protobuf.Type types = 4;</code>
4021      */
addTypes(com.google.protobuf.Type value)4022     public Builder addTypes(com.google.protobuf.Type value) {
4023       if (typesBuilder_ == null) {
4024         if (value == null) {
4025           throw new NullPointerException();
4026         }
4027         ensureTypesIsMutable();
4028         types_.add(value);
4029         onChanged();
4030       } else {
4031         typesBuilder_.addMessage(value);
4032       }
4033       return this;
4034     }
4035     /**
4036      *
4037      *
4038      * <pre>
4039      * A list of all proto message types included in this API service.
4040      * Types referenced directly or indirectly by the `apis` are automatically
4041      * included.  Messages which are not referenced but shall be included, such as
4042      * types used by the `google.protobuf.Any` type, should be listed here by
4043      * name by the configuration author. Example:
4044      *     types:
4045      *     - name: google.protobuf.Int32
4046      * </pre>
4047      *
4048      * <code>repeated .google.protobuf.Type types = 4;</code>
4049      */
addTypes(int index, com.google.protobuf.Type value)4050     public Builder addTypes(int index, com.google.protobuf.Type value) {
4051       if (typesBuilder_ == null) {
4052         if (value == null) {
4053           throw new NullPointerException();
4054         }
4055         ensureTypesIsMutable();
4056         types_.add(index, value);
4057         onChanged();
4058       } else {
4059         typesBuilder_.addMessage(index, value);
4060       }
4061       return this;
4062     }
4063     /**
4064      *
4065      *
4066      * <pre>
4067      * A list of all proto message types included in this API service.
4068      * Types referenced directly or indirectly by the `apis` are automatically
4069      * included.  Messages which are not referenced but shall be included, such as
4070      * types used by the `google.protobuf.Any` type, should be listed here by
4071      * name by the configuration author. Example:
4072      *     types:
4073      *     - name: google.protobuf.Int32
4074      * </pre>
4075      *
4076      * <code>repeated .google.protobuf.Type types = 4;</code>
4077      */
addTypes(com.google.protobuf.Type.Builder builderForValue)4078     public Builder addTypes(com.google.protobuf.Type.Builder builderForValue) {
4079       if (typesBuilder_ == null) {
4080         ensureTypesIsMutable();
4081         types_.add(builderForValue.build());
4082         onChanged();
4083       } else {
4084         typesBuilder_.addMessage(builderForValue.build());
4085       }
4086       return this;
4087     }
4088     /**
4089      *
4090      *
4091      * <pre>
4092      * A list of all proto message types included in this API service.
4093      * Types referenced directly or indirectly by the `apis` are automatically
4094      * included.  Messages which are not referenced but shall be included, such as
4095      * types used by the `google.protobuf.Any` type, should be listed here by
4096      * name by the configuration author. Example:
4097      *     types:
4098      *     - name: google.protobuf.Int32
4099      * </pre>
4100      *
4101      * <code>repeated .google.protobuf.Type types = 4;</code>
4102      */
addTypes(int index, com.google.protobuf.Type.Builder builderForValue)4103     public Builder addTypes(int index, com.google.protobuf.Type.Builder builderForValue) {
4104       if (typesBuilder_ == null) {
4105         ensureTypesIsMutable();
4106         types_.add(index, builderForValue.build());
4107         onChanged();
4108       } else {
4109         typesBuilder_.addMessage(index, builderForValue.build());
4110       }
4111       return this;
4112     }
4113     /**
4114      *
4115      *
4116      * <pre>
4117      * A list of all proto message types included in this API service.
4118      * Types referenced directly or indirectly by the `apis` are automatically
4119      * included.  Messages which are not referenced but shall be included, such as
4120      * types used by the `google.protobuf.Any` type, should be listed here by
4121      * name by the configuration author. Example:
4122      *     types:
4123      *     - name: google.protobuf.Int32
4124      * </pre>
4125      *
4126      * <code>repeated .google.protobuf.Type types = 4;</code>
4127      */
addAllTypes(java.lang.Iterable<? extends com.google.protobuf.Type> values)4128     public Builder addAllTypes(java.lang.Iterable<? extends com.google.protobuf.Type> values) {
4129       if (typesBuilder_ == null) {
4130         ensureTypesIsMutable();
4131         com.google.protobuf.AbstractMessageLite.Builder.addAll(values, types_);
4132         onChanged();
4133       } else {
4134         typesBuilder_.addAllMessages(values);
4135       }
4136       return this;
4137     }
4138     /**
4139      *
4140      *
4141      * <pre>
4142      * A list of all proto message types included in this API service.
4143      * Types referenced directly or indirectly by the `apis` are automatically
4144      * included.  Messages which are not referenced but shall be included, such as
4145      * types used by the `google.protobuf.Any` type, should be listed here by
4146      * name by the configuration author. Example:
4147      *     types:
4148      *     - name: google.protobuf.Int32
4149      * </pre>
4150      *
4151      * <code>repeated .google.protobuf.Type types = 4;</code>
4152      */
clearTypes()4153     public Builder clearTypes() {
4154       if (typesBuilder_ == null) {
4155         types_ = java.util.Collections.emptyList();
4156         bitField0_ = (bitField0_ & ~0x00000020);
4157         onChanged();
4158       } else {
4159         typesBuilder_.clear();
4160       }
4161       return this;
4162     }
4163     /**
4164      *
4165      *
4166      * <pre>
4167      * A list of all proto message types included in this API service.
4168      * Types referenced directly or indirectly by the `apis` are automatically
4169      * included.  Messages which are not referenced but shall be included, such as
4170      * types used by the `google.protobuf.Any` type, should be listed here by
4171      * name by the configuration author. Example:
4172      *     types:
4173      *     - name: google.protobuf.Int32
4174      * </pre>
4175      *
4176      * <code>repeated .google.protobuf.Type types = 4;</code>
4177      */
removeTypes(int index)4178     public Builder removeTypes(int index) {
4179       if (typesBuilder_ == null) {
4180         ensureTypesIsMutable();
4181         types_.remove(index);
4182         onChanged();
4183       } else {
4184         typesBuilder_.remove(index);
4185       }
4186       return this;
4187     }
4188     /**
4189      *
4190      *
4191      * <pre>
4192      * A list of all proto message types included in this API service.
4193      * Types referenced directly or indirectly by the `apis` are automatically
4194      * included.  Messages which are not referenced but shall be included, such as
4195      * types used by the `google.protobuf.Any` type, should be listed here by
4196      * name by the configuration author. Example:
4197      *     types:
4198      *     - name: google.protobuf.Int32
4199      * </pre>
4200      *
4201      * <code>repeated .google.protobuf.Type types = 4;</code>
4202      */
getTypesBuilder(int index)4203     public com.google.protobuf.Type.Builder getTypesBuilder(int index) {
4204       return getTypesFieldBuilder().getBuilder(index);
4205     }
4206     /**
4207      *
4208      *
4209      * <pre>
4210      * A list of all proto message types included in this API service.
4211      * Types referenced directly or indirectly by the `apis` are automatically
4212      * included.  Messages which are not referenced but shall be included, such as
4213      * types used by the `google.protobuf.Any` type, should be listed here by
4214      * name by the configuration author. Example:
4215      *     types:
4216      *     - name: google.protobuf.Int32
4217      * </pre>
4218      *
4219      * <code>repeated .google.protobuf.Type types = 4;</code>
4220      */
getTypesOrBuilder(int index)4221     public com.google.protobuf.TypeOrBuilder getTypesOrBuilder(int index) {
4222       if (typesBuilder_ == null) {
4223         return types_.get(index);
4224       } else {
4225         return typesBuilder_.getMessageOrBuilder(index);
4226       }
4227     }
4228     /**
4229      *
4230      *
4231      * <pre>
4232      * A list of all proto message types included in this API service.
4233      * Types referenced directly or indirectly by the `apis` are automatically
4234      * included.  Messages which are not referenced but shall be included, such as
4235      * types used by the `google.protobuf.Any` type, should be listed here by
4236      * name by the configuration author. Example:
4237      *     types:
4238      *     - name: google.protobuf.Int32
4239      * </pre>
4240      *
4241      * <code>repeated .google.protobuf.Type types = 4;</code>
4242      */
getTypesOrBuilderList()4243     public java.util.List<? extends com.google.protobuf.TypeOrBuilder> getTypesOrBuilderList() {
4244       if (typesBuilder_ != null) {
4245         return typesBuilder_.getMessageOrBuilderList();
4246       } else {
4247         return java.util.Collections.unmodifiableList(types_);
4248       }
4249     }
4250     /**
4251      *
4252      *
4253      * <pre>
4254      * A list of all proto message types included in this API service.
4255      * Types referenced directly or indirectly by the `apis` are automatically
4256      * included.  Messages which are not referenced but shall be included, such as
4257      * types used by the `google.protobuf.Any` type, should be listed here by
4258      * name by the configuration author. Example:
4259      *     types:
4260      *     - name: google.protobuf.Int32
4261      * </pre>
4262      *
4263      * <code>repeated .google.protobuf.Type types = 4;</code>
4264      */
addTypesBuilder()4265     public com.google.protobuf.Type.Builder addTypesBuilder() {
4266       return getTypesFieldBuilder().addBuilder(com.google.protobuf.Type.getDefaultInstance());
4267     }
4268     /**
4269      *
4270      *
4271      * <pre>
4272      * A list of all proto message types included in this API service.
4273      * Types referenced directly or indirectly by the `apis` are automatically
4274      * included.  Messages which are not referenced but shall be included, such as
4275      * types used by the `google.protobuf.Any` type, should be listed here by
4276      * name by the configuration author. Example:
4277      *     types:
4278      *     - name: google.protobuf.Int32
4279      * </pre>
4280      *
4281      * <code>repeated .google.protobuf.Type types = 4;</code>
4282      */
addTypesBuilder(int index)4283     public com.google.protobuf.Type.Builder addTypesBuilder(int index) {
4284       return getTypesFieldBuilder()
4285           .addBuilder(index, com.google.protobuf.Type.getDefaultInstance());
4286     }
4287     /**
4288      *
4289      *
4290      * <pre>
4291      * A list of all proto message types included in this API service.
4292      * Types referenced directly or indirectly by the `apis` are automatically
4293      * included.  Messages which are not referenced but shall be included, such as
4294      * types used by the `google.protobuf.Any` type, should be listed here by
4295      * name by the configuration author. Example:
4296      *     types:
4297      *     - name: google.protobuf.Int32
4298      * </pre>
4299      *
4300      * <code>repeated .google.protobuf.Type types = 4;</code>
4301      */
getTypesBuilderList()4302     public java.util.List<com.google.protobuf.Type.Builder> getTypesBuilderList() {
4303       return getTypesFieldBuilder().getBuilderList();
4304     }
4305 
4306     private com.google.protobuf.RepeatedFieldBuilderV3<
4307             com.google.protobuf.Type,
4308             com.google.protobuf.Type.Builder,
4309             com.google.protobuf.TypeOrBuilder>
getTypesFieldBuilder()4310         getTypesFieldBuilder() {
4311       if (typesBuilder_ == null) {
4312         typesBuilder_ =
4313             new com.google.protobuf.RepeatedFieldBuilderV3<
4314                 com.google.protobuf.Type,
4315                 com.google.protobuf.Type.Builder,
4316                 com.google.protobuf.TypeOrBuilder>(
4317                 types_, ((bitField0_ & 0x00000020) != 0), getParentForChildren(), isClean());
4318         types_ = null;
4319       }
4320       return typesBuilder_;
4321     }
4322 
4323     private java.util.List<com.google.protobuf.Enum> enums_ = java.util.Collections.emptyList();
4324 
ensureEnumsIsMutable()4325     private void ensureEnumsIsMutable() {
4326       if (!((bitField0_ & 0x00000040) != 0)) {
4327         enums_ = new java.util.ArrayList<com.google.protobuf.Enum>(enums_);
4328         bitField0_ |= 0x00000040;
4329       }
4330     }
4331 
4332     private com.google.protobuf.RepeatedFieldBuilderV3<
4333             com.google.protobuf.Enum,
4334             com.google.protobuf.Enum.Builder,
4335             com.google.protobuf.EnumOrBuilder>
4336         enumsBuilder_;
4337 
4338     /**
4339      *
4340      *
4341      * <pre>
4342      * A list of all enum types included in this API service.  Enums referenced
4343      * directly or indirectly by the `apis` are automatically included.  Enums
4344      * which are not referenced but shall be included should be listed here by
4345      * name by the configuration author. Example:
4346      *     enums:
4347      *     - name: google.someapi.v1.SomeEnum
4348      * </pre>
4349      *
4350      * <code>repeated .google.protobuf.Enum enums = 5;</code>
4351      */
getEnumsList()4352     public java.util.List<com.google.protobuf.Enum> getEnumsList() {
4353       if (enumsBuilder_ == null) {
4354         return java.util.Collections.unmodifiableList(enums_);
4355       } else {
4356         return enumsBuilder_.getMessageList();
4357       }
4358     }
4359     /**
4360      *
4361      *
4362      * <pre>
4363      * A list of all enum types included in this API service.  Enums referenced
4364      * directly or indirectly by the `apis` are automatically included.  Enums
4365      * which are not referenced but shall be included should be listed here by
4366      * name by the configuration author. Example:
4367      *     enums:
4368      *     - name: google.someapi.v1.SomeEnum
4369      * </pre>
4370      *
4371      * <code>repeated .google.protobuf.Enum enums = 5;</code>
4372      */
getEnumsCount()4373     public int getEnumsCount() {
4374       if (enumsBuilder_ == null) {
4375         return enums_.size();
4376       } else {
4377         return enumsBuilder_.getCount();
4378       }
4379     }
4380     /**
4381      *
4382      *
4383      * <pre>
4384      * A list of all enum types included in this API service.  Enums referenced
4385      * directly or indirectly by the `apis` are automatically included.  Enums
4386      * which are not referenced but shall be included should be listed here by
4387      * name by the configuration author. Example:
4388      *     enums:
4389      *     - name: google.someapi.v1.SomeEnum
4390      * </pre>
4391      *
4392      * <code>repeated .google.protobuf.Enum enums = 5;</code>
4393      */
getEnums(int index)4394     public com.google.protobuf.Enum getEnums(int index) {
4395       if (enumsBuilder_ == null) {
4396         return enums_.get(index);
4397       } else {
4398         return enumsBuilder_.getMessage(index);
4399       }
4400     }
4401     /**
4402      *
4403      *
4404      * <pre>
4405      * A list of all enum types included in this API service.  Enums referenced
4406      * directly or indirectly by the `apis` are automatically included.  Enums
4407      * which are not referenced but shall be included should be listed here by
4408      * name by the configuration author. Example:
4409      *     enums:
4410      *     - name: google.someapi.v1.SomeEnum
4411      * </pre>
4412      *
4413      * <code>repeated .google.protobuf.Enum enums = 5;</code>
4414      */
setEnums(int index, com.google.protobuf.Enum value)4415     public Builder setEnums(int index, com.google.protobuf.Enum value) {
4416       if (enumsBuilder_ == null) {
4417         if (value == null) {
4418           throw new NullPointerException();
4419         }
4420         ensureEnumsIsMutable();
4421         enums_.set(index, value);
4422         onChanged();
4423       } else {
4424         enumsBuilder_.setMessage(index, value);
4425       }
4426       return this;
4427     }
4428     /**
4429      *
4430      *
4431      * <pre>
4432      * A list of all enum types included in this API service.  Enums referenced
4433      * directly or indirectly by the `apis` are automatically included.  Enums
4434      * which are not referenced but shall be included should be listed here by
4435      * name by the configuration author. Example:
4436      *     enums:
4437      *     - name: google.someapi.v1.SomeEnum
4438      * </pre>
4439      *
4440      * <code>repeated .google.protobuf.Enum enums = 5;</code>
4441      */
setEnums(int index, com.google.protobuf.Enum.Builder builderForValue)4442     public Builder setEnums(int index, com.google.protobuf.Enum.Builder builderForValue) {
4443       if (enumsBuilder_ == null) {
4444         ensureEnumsIsMutable();
4445         enums_.set(index, builderForValue.build());
4446         onChanged();
4447       } else {
4448         enumsBuilder_.setMessage(index, builderForValue.build());
4449       }
4450       return this;
4451     }
4452     /**
4453      *
4454      *
4455      * <pre>
4456      * A list of all enum types included in this API service.  Enums referenced
4457      * directly or indirectly by the `apis` are automatically included.  Enums
4458      * which are not referenced but shall be included should be listed here by
4459      * name by the configuration author. Example:
4460      *     enums:
4461      *     - name: google.someapi.v1.SomeEnum
4462      * </pre>
4463      *
4464      * <code>repeated .google.protobuf.Enum enums = 5;</code>
4465      */
addEnums(com.google.protobuf.Enum value)4466     public Builder addEnums(com.google.protobuf.Enum value) {
4467       if (enumsBuilder_ == null) {
4468         if (value == null) {
4469           throw new NullPointerException();
4470         }
4471         ensureEnumsIsMutable();
4472         enums_.add(value);
4473         onChanged();
4474       } else {
4475         enumsBuilder_.addMessage(value);
4476       }
4477       return this;
4478     }
4479     /**
4480      *
4481      *
4482      * <pre>
4483      * A list of all enum types included in this API service.  Enums referenced
4484      * directly or indirectly by the `apis` are automatically included.  Enums
4485      * which are not referenced but shall be included should be listed here by
4486      * name by the configuration author. Example:
4487      *     enums:
4488      *     - name: google.someapi.v1.SomeEnum
4489      * </pre>
4490      *
4491      * <code>repeated .google.protobuf.Enum enums = 5;</code>
4492      */
addEnums(int index, com.google.protobuf.Enum value)4493     public Builder addEnums(int index, com.google.protobuf.Enum value) {
4494       if (enumsBuilder_ == null) {
4495         if (value == null) {
4496           throw new NullPointerException();
4497         }
4498         ensureEnumsIsMutable();
4499         enums_.add(index, value);
4500         onChanged();
4501       } else {
4502         enumsBuilder_.addMessage(index, value);
4503       }
4504       return this;
4505     }
4506     /**
4507      *
4508      *
4509      * <pre>
4510      * A list of all enum types included in this API service.  Enums referenced
4511      * directly or indirectly by the `apis` are automatically included.  Enums
4512      * which are not referenced but shall be included should be listed here by
4513      * name by the configuration author. Example:
4514      *     enums:
4515      *     - name: google.someapi.v1.SomeEnum
4516      * </pre>
4517      *
4518      * <code>repeated .google.protobuf.Enum enums = 5;</code>
4519      */
addEnums(com.google.protobuf.Enum.Builder builderForValue)4520     public Builder addEnums(com.google.protobuf.Enum.Builder builderForValue) {
4521       if (enumsBuilder_ == null) {
4522         ensureEnumsIsMutable();
4523         enums_.add(builderForValue.build());
4524         onChanged();
4525       } else {
4526         enumsBuilder_.addMessage(builderForValue.build());
4527       }
4528       return this;
4529     }
4530     /**
4531      *
4532      *
4533      * <pre>
4534      * A list of all enum types included in this API service.  Enums referenced
4535      * directly or indirectly by the `apis` are automatically included.  Enums
4536      * which are not referenced but shall be included should be listed here by
4537      * name by the configuration author. Example:
4538      *     enums:
4539      *     - name: google.someapi.v1.SomeEnum
4540      * </pre>
4541      *
4542      * <code>repeated .google.protobuf.Enum enums = 5;</code>
4543      */
addEnums(int index, com.google.protobuf.Enum.Builder builderForValue)4544     public Builder addEnums(int index, com.google.protobuf.Enum.Builder builderForValue) {
4545       if (enumsBuilder_ == null) {
4546         ensureEnumsIsMutable();
4547         enums_.add(index, builderForValue.build());
4548         onChanged();
4549       } else {
4550         enumsBuilder_.addMessage(index, builderForValue.build());
4551       }
4552       return this;
4553     }
4554     /**
4555      *
4556      *
4557      * <pre>
4558      * A list of all enum types included in this API service.  Enums referenced
4559      * directly or indirectly by the `apis` are automatically included.  Enums
4560      * which are not referenced but shall be included should be listed here by
4561      * name by the configuration author. Example:
4562      *     enums:
4563      *     - name: google.someapi.v1.SomeEnum
4564      * </pre>
4565      *
4566      * <code>repeated .google.protobuf.Enum enums = 5;</code>
4567      */
addAllEnums(java.lang.Iterable<? extends com.google.protobuf.Enum> values)4568     public Builder addAllEnums(java.lang.Iterable<? extends com.google.protobuf.Enum> values) {
4569       if (enumsBuilder_ == null) {
4570         ensureEnumsIsMutable();
4571         com.google.protobuf.AbstractMessageLite.Builder.addAll(values, enums_);
4572         onChanged();
4573       } else {
4574         enumsBuilder_.addAllMessages(values);
4575       }
4576       return this;
4577     }
4578     /**
4579      *
4580      *
4581      * <pre>
4582      * A list of all enum types included in this API service.  Enums referenced
4583      * directly or indirectly by the `apis` are automatically included.  Enums
4584      * which are not referenced but shall be included should be listed here by
4585      * name by the configuration author. Example:
4586      *     enums:
4587      *     - name: google.someapi.v1.SomeEnum
4588      * </pre>
4589      *
4590      * <code>repeated .google.protobuf.Enum enums = 5;</code>
4591      */
clearEnums()4592     public Builder clearEnums() {
4593       if (enumsBuilder_ == null) {
4594         enums_ = java.util.Collections.emptyList();
4595         bitField0_ = (bitField0_ & ~0x00000040);
4596         onChanged();
4597       } else {
4598         enumsBuilder_.clear();
4599       }
4600       return this;
4601     }
4602     /**
4603      *
4604      *
4605      * <pre>
4606      * A list of all enum types included in this API service.  Enums referenced
4607      * directly or indirectly by the `apis` are automatically included.  Enums
4608      * which are not referenced but shall be included should be listed here by
4609      * name by the configuration author. Example:
4610      *     enums:
4611      *     - name: google.someapi.v1.SomeEnum
4612      * </pre>
4613      *
4614      * <code>repeated .google.protobuf.Enum enums = 5;</code>
4615      */
removeEnums(int index)4616     public Builder removeEnums(int index) {
4617       if (enumsBuilder_ == null) {
4618         ensureEnumsIsMutable();
4619         enums_.remove(index);
4620         onChanged();
4621       } else {
4622         enumsBuilder_.remove(index);
4623       }
4624       return this;
4625     }
4626     /**
4627      *
4628      *
4629      * <pre>
4630      * A list of all enum types included in this API service.  Enums referenced
4631      * directly or indirectly by the `apis` are automatically included.  Enums
4632      * which are not referenced but shall be included should be listed here by
4633      * name by the configuration author. Example:
4634      *     enums:
4635      *     - name: google.someapi.v1.SomeEnum
4636      * </pre>
4637      *
4638      * <code>repeated .google.protobuf.Enum enums = 5;</code>
4639      */
getEnumsBuilder(int index)4640     public com.google.protobuf.Enum.Builder getEnumsBuilder(int index) {
4641       return getEnumsFieldBuilder().getBuilder(index);
4642     }
4643     /**
4644      *
4645      *
4646      * <pre>
4647      * A list of all enum types included in this API service.  Enums referenced
4648      * directly or indirectly by the `apis` are automatically included.  Enums
4649      * which are not referenced but shall be included should be listed here by
4650      * name by the configuration author. Example:
4651      *     enums:
4652      *     - name: google.someapi.v1.SomeEnum
4653      * </pre>
4654      *
4655      * <code>repeated .google.protobuf.Enum enums = 5;</code>
4656      */
getEnumsOrBuilder(int index)4657     public com.google.protobuf.EnumOrBuilder getEnumsOrBuilder(int index) {
4658       if (enumsBuilder_ == null) {
4659         return enums_.get(index);
4660       } else {
4661         return enumsBuilder_.getMessageOrBuilder(index);
4662       }
4663     }
4664     /**
4665      *
4666      *
4667      * <pre>
4668      * A list of all enum types included in this API service.  Enums referenced
4669      * directly or indirectly by the `apis` are automatically included.  Enums
4670      * which are not referenced but shall be included should be listed here by
4671      * name by the configuration author. Example:
4672      *     enums:
4673      *     - name: google.someapi.v1.SomeEnum
4674      * </pre>
4675      *
4676      * <code>repeated .google.protobuf.Enum enums = 5;</code>
4677      */
getEnumsOrBuilderList()4678     public java.util.List<? extends com.google.protobuf.EnumOrBuilder> getEnumsOrBuilderList() {
4679       if (enumsBuilder_ != null) {
4680         return enumsBuilder_.getMessageOrBuilderList();
4681       } else {
4682         return java.util.Collections.unmodifiableList(enums_);
4683       }
4684     }
4685     /**
4686      *
4687      *
4688      * <pre>
4689      * A list of all enum types included in this API service.  Enums referenced
4690      * directly or indirectly by the `apis` are automatically included.  Enums
4691      * which are not referenced but shall be included should be listed here by
4692      * name by the configuration author. Example:
4693      *     enums:
4694      *     - name: google.someapi.v1.SomeEnum
4695      * </pre>
4696      *
4697      * <code>repeated .google.protobuf.Enum enums = 5;</code>
4698      */
addEnumsBuilder()4699     public com.google.protobuf.Enum.Builder addEnumsBuilder() {
4700       return getEnumsFieldBuilder().addBuilder(com.google.protobuf.Enum.getDefaultInstance());
4701     }
4702     /**
4703      *
4704      *
4705      * <pre>
4706      * A list of all enum types included in this API service.  Enums referenced
4707      * directly or indirectly by the `apis` are automatically included.  Enums
4708      * which are not referenced but shall be included should be listed here by
4709      * name by the configuration author. Example:
4710      *     enums:
4711      *     - name: google.someapi.v1.SomeEnum
4712      * </pre>
4713      *
4714      * <code>repeated .google.protobuf.Enum enums = 5;</code>
4715      */
addEnumsBuilder(int index)4716     public com.google.protobuf.Enum.Builder addEnumsBuilder(int index) {
4717       return getEnumsFieldBuilder()
4718           .addBuilder(index, com.google.protobuf.Enum.getDefaultInstance());
4719     }
4720     /**
4721      *
4722      *
4723      * <pre>
4724      * A list of all enum types included in this API service.  Enums referenced
4725      * directly or indirectly by the `apis` are automatically included.  Enums
4726      * which are not referenced but shall be included should be listed here by
4727      * name by the configuration author. Example:
4728      *     enums:
4729      *     - name: google.someapi.v1.SomeEnum
4730      * </pre>
4731      *
4732      * <code>repeated .google.protobuf.Enum enums = 5;</code>
4733      */
getEnumsBuilderList()4734     public java.util.List<com.google.protobuf.Enum.Builder> getEnumsBuilderList() {
4735       return getEnumsFieldBuilder().getBuilderList();
4736     }
4737 
4738     private com.google.protobuf.RepeatedFieldBuilderV3<
4739             com.google.protobuf.Enum,
4740             com.google.protobuf.Enum.Builder,
4741             com.google.protobuf.EnumOrBuilder>
getEnumsFieldBuilder()4742         getEnumsFieldBuilder() {
4743       if (enumsBuilder_ == null) {
4744         enumsBuilder_ =
4745             new com.google.protobuf.RepeatedFieldBuilderV3<
4746                 com.google.protobuf.Enum,
4747                 com.google.protobuf.Enum.Builder,
4748                 com.google.protobuf.EnumOrBuilder>(
4749                 enums_, ((bitField0_ & 0x00000040) != 0), getParentForChildren(), isClean());
4750         enums_ = null;
4751       }
4752       return enumsBuilder_;
4753     }
4754 
4755     private com.google.api.Documentation documentation_;
4756     private com.google.protobuf.SingleFieldBuilderV3<
4757             com.google.api.Documentation,
4758             com.google.api.Documentation.Builder,
4759             com.google.api.DocumentationOrBuilder>
4760         documentationBuilder_;
4761     /**
4762      *
4763      *
4764      * <pre>
4765      * Additional API documentation.
4766      * </pre>
4767      *
4768      * <code>.google.api.Documentation documentation = 6;</code>
4769      *
4770      * @return Whether the documentation field is set.
4771      */
hasDocumentation()4772     public boolean hasDocumentation() {
4773       return ((bitField0_ & 0x00000080) != 0);
4774     }
4775     /**
4776      *
4777      *
4778      * <pre>
4779      * Additional API documentation.
4780      * </pre>
4781      *
4782      * <code>.google.api.Documentation documentation = 6;</code>
4783      *
4784      * @return The documentation.
4785      */
getDocumentation()4786     public com.google.api.Documentation getDocumentation() {
4787       if (documentationBuilder_ == null) {
4788         return documentation_ == null
4789             ? com.google.api.Documentation.getDefaultInstance()
4790             : documentation_;
4791       } else {
4792         return documentationBuilder_.getMessage();
4793       }
4794     }
4795     /**
4796      *
4797      *
4798      * <pre>
4799      * Additional API documentation.
4800      * </pre>
4801      *
4802      * <code>.google.api.Documentation documentation = 6;</code>
4803      */
setDocumentation(com.google.api.Documentation value)4804     public Builder setDocumentation(com.google.api.Documentation value) {
4805       if (documentationBuilder_ == null) {
4806         if (value == null) {
4807           throw new NullPointerException();
4808         }
4809         documentation_ = value;
4810       } else {
4811         documentationBuilder_.setMessage(value);
4812       }
4813       bitField0_ |= 0x00000080;
4814       onChanged();
4815       return this;
4816     }
4817     /**
4818      *
4819      *
4820      * <pre>
4821      * Additional API documentation.
4822      * </pre>
4823      *
4824      * <code>.google.api.Documentation documentation = 6;</code>
4825      */
setDocumentation(com.google.api.Documentation.Builder builderForValue)4826     public Builder setDocumentation(com.google.api.Documentation.Builder builderForValue) {
4827       if (documentationBuilder_ == null) {
4828         documentation_ = builderForValue.build();
4829       } else {
4830         documentationBuilder_.setMessage(builderForValue.build());
4831       }
4832       bitField0_ |= 0x00000080;
4833       onChanged();
4834       return this;
4835     }
4836     /**
4837      *
4838      *
4839      * <pre>
4840      * Additional API documentation.
4841      * </pre>
4842      *
4843      * <code>.google.api.Documentation documentation = 6;</code>
4844      */
mergeDocumentation(com.google.api.Documentation value)4845     public Builder mergeDocumentation(com.google.api.Documentation value) {
4846       if (documentationBuilder_ == null) {
4847         if (((bitField0_ & 0x00000080) != 0)
4848             && documentation_ != null
4849             && documentation_ != com.google.api.Documentation.getDefaultInstance()) {
4850           getDocumentationBuilder().mergeFrom(value);
4851         } else {
4852           documentation_ = value;
4853         }
4854       } else {
4855         documentationBuilder_.mergeFrom(value);
4856       }
4857       bitField0_ |= 0x00000080;
4858       onChanged();
4859       return this;
4860     }
4861     /**
4862      *
4863      *
4864      * <pre>
4865      * Additional API documentation.
4866      * </pre>
4867      *
4868      * <code>.google.api.Documentation documentation = 6;</code>
4869      */
clearDocumentation()4870     public Builder clearDocumentation() {
4871       bitField0_ = (bitField0_ & ~0x00000080);
4872       documentation_ = null;
4873       if (documentationBuilder_ != null) {
4874         documentationBuilder_.dispose();
4875         documentationBuilder_ = null;
4876       }
4877       onChanged();
4878       return this;
4879     }
4880     /**
4881      *
4882      *
4883      * <pre>
4884      * Additional API documentation.
4885      * </pre>
4886      *
4887      * <code>.google.api.Documentation documentation = 6;</code>
4888      */
getDocumentationBuilder()4889     public com.google.api.Documentation.Builder getDocumentationBuilder() {
4890       bitField0_ |= 0x00000080;
4891       onChanged();
4892       return getDocumentationFieldBuilder().getBuilder();
4893     }
4894     /**
4895      *
4896      *
4897      * <pre>
4898      * Additional API documentation.
4899      * </pre>
4900      *
4901      * <code>.google.api.Documentation documentation = 6;</code>
4902      */
getDocumentationOrBuilder()4903     public com.google.api.DocumentationOrBuilder getDocumentationOrBuilder() {
4904       if (documentationBuilder_ != null) {
4905         return documentationBuilder_.getMessageOrBuilder();
4906       } else {
4907         return documentation_ == null
4908             ? com.google.api.Documentation.getDefaultInstance()
4909             : documentation_;
4910       }
4911     }
4912     /**
4913      *
4914      *
4915      * <pre>
4916      * Additional API documentation.
4917      * </pre>
4918      *
4919      * <code>.google.api.Documentation documentation = 6;</code>
4920      */
4921     private com.google.protobuf.SingleFieldBuilderV3<
4922             com.google.api.Documentation,
4923             com.google.api.Documentation.Builder,
4924             com.google.api.DocumentationOrBuilder>
getDocumentationFieldBuilder()4925         getDocumentationFieldBuilder() {
4926       if (documentationBuilder_ == null) {
4927         documentationBuilder_ =
4928             new com.google.protobuf.SingleFieldBuilderV3<
4929                 com.google.api.Documentation,
4930                 com.google.api.Documentation.Builder,
4931                 com.google.api.DocumentationOrBuilder>(
4932                 getDocumentation(), getParentForChildren(), isClean());
4933         documentation_ = null;
4934       }
4935       return documentationBuilder_;
4936     }
4937 
4938     private com.google.api.Backend backend_;
4939     private com.google.protobuf.SingleFieldBuilderV3<
4940             com.google.api.Backend, com.google.api.Backend.Builder, com.google.api.BackendOrBuilder>
4941         backendBuilder_;
4942     /**
4943      *
4944      *
4945      * <pre>
4946      * API backend configuration.
4947      * </pre>
4948      *
4949      * <code>.google.api.Backend backend = 8;</code>
4950      *
4951      * @return Whether the backend field is set.
4952      */
hasBackend()4953     public boolean hasBackend() {
4954       return ((bitField0_ & 0x00000100) != 0);
4955     }
4956     /**
4957      *
4958      *
4959      * <pre>
4960      * API backend configuration.
4961      * </pre>
4962      *
4963      * <code>.google.api.Backend backend = 8;</code>
4964      *
4965      * @return The backend.
4966      */
getBackend()4967     public com.google.api.Backend getBackend() {
4968       if (backendBuilder_ == null) {
4969         return backend_ == null ? com.google.api.Backend.getDefaultInstance() : backend_;
4970       } else {
4971         return backendBuilder_.getMessage();
4972       }
4973     }
4974     /**
4975      *
4976      *
4977      * <pre>
4978      * API backend configuration.
4979      * </pre>
4980      *
4981      * <code>.google.api.Backend backend = 8;</code>
4982      */
setBackend(com.google.api.Backend value)4983     public Builder setBackend(com.google.api.Backend value) {
4984       if (backendBuilder_ == null) {
4985         if (value == null) {
4986           throw new NullPointerException();
4987         }
4988         backend_ = value;
4989       } else {
4990         backendBuilder_.setMessage(value);
4991       }
4992       bitField0_ |= 0x00000100;
4993       onChanged();
4994       return this;
4995     }
4996     /**
4997      *
4998      *
4999      * <pre>
5000      * API backend configuration.
5001      * </pre>
5002      *
5003      * <code>.google.api.Backend backend = 8;</code>
5004      */
setBackend(com.google.api.Backend.Builder builderForValue)5005     public Builder setBackend(com.google.api.Backend.Builder builderForValue) {
5006       if (backendBuilder_ == null) {
5007         backend_ = builderForValue.build();
5008       } else {
5009         backendBuilder_.setMessage(builderForValue.build());
5010       }
5011       bitField0_ |= 0x00000100;
5012       onChanged();
5013       return this;
5014     }
5015     /**
5016      *
5017      *
5018      * <pre>
5019      * API backend configuration.
5020      * </pre>
5021      *
5022      * <code>.google.api.Backend backend = 8;</code>
5023      */
mergeBackend(com.google.api.Backend value)5024     public Builder mergeBackend(com.google.api.Backend value) {
5025       if (backendBuilder_ == null) {
5026         if (((bitField0_ & 0x00000100) != 0)
5027             && backend_ != null
5028             && backend_ != com.google.api.Backend.getDefaultInstance()) {
5029           getBackendBuilder().mergeFrom(value);
5030         } else {
5031           backend_ = value;
5032         }
5033       } else {
5034         backendBuilder_.mergeFrom(value);
5035       }
5036       bitField0_ |= 0x00000100;
5037       onChanged();
5038       return this;
5039     }
5040     /**
5041      *
5042      *
5043      * <pre>
5044      * API backend configuration.
5045      * </pre>
5046      *
5047      * <code>.google.api.Backend backend = 8;</code>
5048      */
clearBackend()5049     public Builder clearBackend() {
5050       bitField0_ = (bitField0_ & ~0x00000100);
5051       backend_ = null;
5052       if (backendBuilder_ != null) {
5053         backendBuilder_.dispose();
5054         backendBuilder_ = null;
5055       }
5056       onChanged();
5057       return this;
5058     }
5059     /**
5060      *
5061      *
5062      * <pre>
5063      * API backend configuration.
5064      * </pre>
5065      *
5066      * <code>.google.api.Backend backend = 8;</code>
5067      */
getBackendBuilder()5068     public com.google.api.Backend.Builder getBackendBuilder() {
5069       bitField0_ |= 0x00000100;
5070       onChanged();
5071       return getBackendFieldBuilder().getBuilder();
5072     }
5073     /**
5074      *
5075      *
5076      * <pre>
5077      * API backend configuration.
5078      * </pre>
5079      *
5080      * <code>.google.api.Backend backend = 8;</code>
5081      */
getBackendOrBuilder()5082     public com.google.api.BackendOrBuilder getBackendOrBuilder() {
5083       if (backendBuilder_ != null) {
5084         return backendBuilder_.getMessageOrBuilder();
5085       } else {
5086         return backend_ == null ? com.google.api.Backend.getDefaultInstance() : backend_;
5087       }
5088     }
5089     /**
5090      *
5091      *
5092      * <pre>
5093      * API backend configuration.
5094      * </pre>
5095      *
5096      * <code>.google.api.Backend backend = 8;</code>
5097      */
5098     private com.google.protobuf.SingleFieldBuilderV3<
5099             com.google.api.Backend, com.google.api.Backend.Builder, com.google.api.BackendOrBuilder>
getBackendFieldBuilder()5100         getBackendFieldBuilder() {
5101       if (backendBuilder_ == null) {
5102         backendBuilder_ =
5103             new com.google.protobuf.SingleFieldBuilderV3<
5104                 com.google.api.Backend,
5105                 com.google.api.Backend.Builder,
5106                 com.google.api.BackendOrBuilder>(getBackend(), getParentForChildren(), isClean());
5107         backend_ = null;
5108       }
5109       return backendBuilder_;
5110     }
5111 
5112     private com.google.api.Http http_;
5113     private com.google.protobuf.SingleFieldBuilderV3<
5114             com.google.api.Http, com.google.api.Http.Builder, com.google.api.HttpOrBuilder>
5115         httpBuilder_;
5116     /**
5117      *
5118      *
5119      * <pre>
5120      * HTTP configuration.
5121      * </pre>
5122      *
5123      * <code>.google.api.Http http = 9;</code>
5124      *
5125      * @return Whether the http field is set.
5126      */
hasHttp()5127     public boolean hasHttp() {
5128       return ((bitField0_ & 0x00000200) != 0);
5129     }
5130     /**
5131      *
5132      *
5133      * <pre>
5134      * HTTP configuration.
5135      * </pre>
5136      *
5137      * <code>.google.api.Http http = 9;</code>
5138      *
5139      * @return The http.
5140      */
getHttp()5141     public com.google.api.Http getHttp() {
5142       if (httpBuilder_ == null) {
5143         return http_ == null ? com.google.api.Http.getDefaultInstance() : http_;
5144       } else {
5145         return httpBuilder_.getMessage();
5146       }
5147     }
5148     /**
5149      *
5150      *
5151      * <pre>
5152      * HTTP configuration.
5153      * </pre>
5154      *
5155      * <code>.google.api.Http http = 9;</code>
5156      */
setHttp(com.google.api.Http value)5157     public Builder setHttp(com.google.api.Http value) {
5158       if (httpBuilder_ == null) {
5159         if (value == null) {
5160           throw new NullPointerException();
5161         }
5162         http_ = value;
5163       } else {
5164         httpBuilder_.setMessage(value);
5165       }
5166       bitField0_ |= 0x00000200;
5167       onChanged();
5168       return this;
5169     }
5170     /**
5171      *
5172      *
5173      * <pre>
5174      * HTTP configuration.
5175      * </pre>
5176      *
5177      * <code>.google.api.Http http = 9;</code>
5178      */
setHttp(com.google.api.Http.Builder builderForValue)5179     public Builder setHttp(com.google.api.Http.Builder builderForValue) {
5180       if (httpBuilder_ == null) {
5181         http_ = builderForValue.build();
5182       } else {
5183         httpBuilder_.setMessage(builderForValue.build());
5184       }
5185       bitField0_ |= 0x00000200;
5186       onChanged();
5187       return this;
5188     }
5189     /**
5190      *
5191      *
5192      * <pre>
5193      * HTTP configuration.
5194      * </pre>
5195      *
5196      * <code>.google.api.Http http = 9;</code>
5197      */
mergeHttp(com.google.api.Http value)5198     public Builder mergeHttp(com.google.api.Http value) {
5199       if (httpBuilder_ == null) {
5200         if (((bitField0_ & 0x00000200) != 0)
5201             && http_ != null
5202             && http_ != com.google.api.Http.getDefaultInstance()) {
5203           getHttpBuilder().mergeFrom(value);
5204         } else {
5205           http_ = value;
5206         }
5207       } else {
5208         httpBuilder_.mergeFrom(value);
5209       }
5210       bitField0_ |= 0x00000200;
5211       onChanged();
5212       return this;
5213     }
5214     /**
5215      *
5216      *
5217      * <pre>
5218      * HTTP configuration.
5219      * </pre>
5220      *
5221      * <code>.google.api.Http http = 9;</code>
5222      */
clearHttp()5223     public Builder clearHttp() {
5224       bitField0_ = (bitField0_ & ~0x00000200);
5225       http_ = null;
5226       if (httpBuilder_ != null) {
5227         httpBuilder_.dispose();
5228         httpBuilder_ = null;
5229       }
5230       onChanged();
5231       return this;
5232     }
5233     /**
5234      *
5235      *
5236      * <pre>
5237      * HTTP configuration.
5238      * </pre>
5239      *
5240      * <code>.google.api.Http http = 9;</code>
5241      */
getHttpBuilder()5242     public com.google.api.Http.Builder getHttpBuilder() {
5243       bitField0_ |= 0x00000200;
5244       onChanged();
5245       return getHttpFieldBuilder().getBuilder();
5246     }
5247     /**
5248      *
5249      *
5250      * <pre>
5251      * HTTP configuration.
5252      * </pre>
5253      *
5254      * <code>.google.api.Http http = 9;</code>
5255      */
getHttpOrBuilder()5256     public com.google.api.HttpOrBuilder getHttpOrBuilder() {
5257       if (httpBuilder_ != null) {
5258         return httpBuilder_.getMessageOrBuilder();
5259       } else {
5260         return http_ == null ? com.google.api.Http.getDefaultInstance() : http_;
5261       }
5262     }
5263     /**
5264      *
5265      *
5266      * <pre>
5267      * HTTP configuration.
5268      * </pre>
5269      *
5270      * <code>.google.api.Http http = 9;</code>
5271      */
5272     private com.google.protobuf.SingleFieldBuilderV3<
5273             com.google.api.Http, com.google.api.Http.Builder, com.google.api.HttpOrBuilder>
getHttpFieldBuilder()5274         getHttpFieldBuilder() {
5275       if (httpBuilder_ == null) {
5276         httpBuilder_ =
5277             new com.google.protobuf.SingleFieldBuilderV3<
5278                 com.google.api.Http, com.google.api.Http.Builder, com.google.api.HttpOrBuilder>(
5279                 getHttp(), getParentForChildren(), isClean());
5280         http_ = null;
5281       }
5282       return httpBuilder_;
5283     }
5284 
5285     private com.google.api.Quota quota_;
5286     private com.google.protobuf.SingleFieldBuilderV3<
5287             com.google.api.Quota, com.google.api.Quota.Builder, com.google.api.QuotaOrBuilder>
5288         quotaBuilder_;
5289     /**
5290      *
5291      *
5292      * <pre>
5293      * Quota configuration.
5294      * </pre>
5295      *
5296      * <code>.google.api.Quota quota = 10;</code>
5297      *
5298      * @return Whether the quota field is set.
5299      */
hasQuota()5300     public boolean hasQuota() {
5301       return ((bitField0_ & 0x00000400) != 0);
5302     }
5303     /**
5304      *
5305      *
5306      * <pre>
5307      * Quota configuration.
5308      * </pre>
5309      *
5310      * <code>.google.api.Quota quota = 10;</code>
5311      *
5312      * @return The quota.
5313      */
getQuota()5314     public com.google.api.Quota getQuota() {
5315       if (quotaBuilder_ == null) {
5316         return quota_ == null ? com.google.api.Quota.getDefaultInstance() : quota_;
5317       } else {
5318         return quotaBuilder_.getMessage();
5319       }
5320     }
5321     /**
5322      *
5323      *
5324      * <pre>
5325      * Quota configuration.
5326      * </pre>
5327      *
5328      * <code>.google.api.Quota quota = 10;</code>
5329      */
setQuota(com.google.api.Quota value)5330     public Builder setQuota(com.google.api.Quota value) {
5331       if (quotaBuilder_ == null) {
5332         if (value == null) {
5333           throw new NullPointerException();
5334         }
5335         quota_ = value;
5336       } else {
5337         quotaBuilder_.setMessage(value);
5338       }
5339       bitField0_ |= 0x00000400;
5340       onChanged();
5341       return this;
5342     }
5343     /**
5344      *
5345      *
5346      * <pre>
5347      * Quota configuration.
5348      * </pre>
5349      *
5350      * <code>.google.api.Quota quota = 10;</code>
5351      */
setQuota(com.google.api.Quota.Builder builderForValue)5352     public Builder setQuota(com.google.api.Quota.Builder builderForValue) {
5353       if (quotaBuilder_ == null) {
5354         quota_ = builderForValue.build();
5355       } else {
5356         quotaBuilder_.setMessage(builderForValue.build());
5357       }
5358       bitField0_ |= 0x00000400;
5359       onChanged();
5360       return this;
5361     }
5362     /**
5363      *
5364      *
5365      * <pre>
5366      * Quota configuration.
5367      * </pre>
5368      *
5369      * <code>.google.api.Quota quota = 10;</code>
5370      */
mergeQuota(com.google.api.Quota value)5371     public Builder mergeQuota(com.google.api.Quota value) {
5372       if (quotaBuilder_ == null) {
5373         if (((bitField0_ & 0x00000400) != 0)
5374             && quota_ != null
5375             && quota_ != com.google.api.Quota.getDefaultInstance()) {
5376           getQuotaBuilder().mergeFrom(value);
5377         } else {
5378           quota_ = value;
5379         }
5380       } else {
5381         quotaBuilder_.mergeFrom(value);
5382       }
5383       bitField0_ |= 0x00000400;
5384       onChanged();
5385       return this;
5386     }
5387     /**
5388      *
5389      *
5390      * <pre>
5391      * Quota configuration.
5392      * </pre>
5393      *
5394      * <code>.google.api.Quota quota = 10;</code>
5395      */
clearQuota()5396     public Builder clearQuota() {
5397       bitField0_ = (bitField0_ & ~0x00000400);
5398       quota_ = null;
5399       if (quotaBuilder_ != null) {
5400         quotaBuilder_.dispose();
5401         quotaBuilder_ = null;
5402       }
5403       onChanged();
5404       return this;
5405     }
5406     /**
5407      *
5408      *
5409      * <pre>
5410      * Quota configuration.
5411      * </pre>
5412      *
5413      * <code>.google.api.Quota quota = 10;</code>
5414      */
getQuotaBuilder()5415     public com.google.api.Quota.Builder getQuotaBuilder() {
5416       bitField0_ |= 0x00000400;
5417       onChanged();
5418       return getQuotaFieldBuilder().getBuilder();
5419     }
5420     /**
5421      *
5422      *
5423      * <pre>
5424      * Quota configuration.
5425      * </pre>
5426      *
5427      * <code>.google.api.Quota quota = 10;</code>
5428      */
getQuotaOrBuilder()5429     public com.google.api.QuotaOrBuilder getQuotaOrBuilder() {
5430       if (quotaBuilder_ != null) {
5431         return quotaBuilder_.getMessageOrBuilder();
5432       } else {
5433         return quota_ == null ? com.google.api.Quota.getDefaultInstance() : quota_;
5434       }
5435     }
5436     /**
5437      *
5438      *
5439      * <pre>
5440      * Quota configuration.
5441      * </pre>
5442      *
5443      * <code>.google.api.Quota quota = 10;</code>
5444      */
5445     private com.google.protobuf.SingleFieldBuilderV3<
5446             com.google.api.Quota, com.google.api.Quota.Builder, com.google.api.QuotaOrBuilder>
getQuotaFieldBuilder()5447         getQuotaFieldBuilder() {
5448       if (quotaBuilder_ == null) {
5449         quotaBuilder_ =
5450             new com.google.protobuf.SingleFieldBuilderV3<
5451                 com.google.api.Quota, com.google.api.Quota.Builder, com.google.api.QuotaOrBuilder>(
5452                 getQuota(), getParentForChildren(), isClean());
5453         quota_ = null;
5454       }
5455       return quotaBuilder_;
5456     }
5457 
5458     private com.google.api.Authentication authentication_;
5459     private com.google.protobuf.SingleFieldBuilderV3<
5460             com.google.api.Authentication,
5461             com.google.api.Authentication.Builder,
5462             com.google.api.AuthenticationOrBuilder>
5463         authenticationBuilder_;
5464     /**
5465      *
5466      *
5467      * <pre>
5468      * Auth configuration.
5469      * </pre>
5470      *
5471      * <code>.google.api.Authentication authentication = 11;</code>
5472      *
5473      * @return Whether the authentication field is set.
5474      */
hasAuthentication()5475     public boolean hasAuthentication() {
5476       return ((bitField0_ & 0x00000800) != 0);
5477     }
5478     /**
5479      *
5480      *
5481      * <pre>
5482      * Auth configuration.
5483      * </pre>
5484      *
5485      * <code>.google.api.Authentication authentication = 11;</code>
5486      *
5487      * @return The authentication.
5488      */
getAuthentication()5489     public com.google.api.Authentication getAuthentication() {
5490       if (authenticationBuilder_ == null) {
5491         return authentication_ == null
5492             ? com.google.api.Authentication.getDefaultInstance()
5493             : authentication_;
5494       } else {
5495         return authenticationBuilder_.getMessage();
5496       }
5497     }
5498     /**
5499      *
5500      *
5501      * <pre>
5502      * Auth configuration.
5503      * </pre>
5504      *
5505      * <code>.google.api.Authentication authentication = 11;</code>
5506      */
setAuthentication(com.google.api.Authentication value)5507     public Builder setAuthentication(com.google.api.Authentication value) {
5508       if (authenticationBuilder_ == null) {
5509         if (value == null) {
5510           throw new NullPointerException();
5511         }
5512         authentication_ = value;
5513       } else {
5514         authenticationBuilder_.setMessage(value);
5515       }
5516       bitField0_ |= 0x00000800;
5517       onChanged();
5518       return this;
5519     }
5520     /**
5521      *
5522      *
5523      * <pre>
5524      * Auth configuration.
5525      * </pre>
5526      *
5527      * <code>.google.api.Authentication authentication = 11;</code>
5528      */
setAuthentication(com.google.api.Authentication.Builder builderForValue)5529     public Builder setAuthentication(com.google.api.Authentication.Builder builderForValue) {
5530       if (authenticationBuilder_ == null) {
5531         authentication_ = builderForValue.build();
5532       } else {
5533         authenticationBuilder_.setMessage(builderForValue.build());
5534       }
5535       bitField0_ |= 0x00000800;
5536       onChanged();
5537       return this;
5538     }
5539     /**
5540      *
5541      *
5542      * <pre>
5543      * Auth configuration.
5544      * </pre>
5545      *
5546      * <code>.google.api.Authentication authentication = 11;</code>
5547      */
mergeAuthentication(com.google.api.Authentication value)5548     public Builder mergeAuthentication(com.google.api.Authentication value) {
5549       if (authenticationBuilder_ == null) {
5550         if (((bitField0_ & 0x00000800) != 0)
5551             && authentication_ != null
5552             && authentication_ != com.google.api.Authentication.getDefaultInstance()) {
5553           getAuthenticationBuilder().mergeFrom(value);
5554         } else {
5555           authentication_ = value;
5556         }
5557       } else {
5558         authenticationBuilder_.mergeFrom(value);
5559       }
5560       bitField0_ |= 0x00000800;
5561       onChanged();
5562       return this;
5563     }
5564     /**
5565      *
5566      *
5567      * <pre>
5568      * Auth configuration.
5569      * </pre>
5570      *
5571      * <code>.google.api.Authentication authentication = 11;</code>
5572      */
clearAuthentication()5573     public Builder clearAuthentication() {
5574       bitField0_ = (bitField0_ & ~0x00000800);
5575       authentication_ = null;
5576       if (authenticationBuilder_ != null) {
5577         authenticationBuilder_.dispose();
5578         authenticationBuilder_ = null;
5579       }
5580       onChanged();
5581       return this;
5582     }
5583     /**
5584      *
5585      *
5586      * <pre>
5587      * Auth configuration.
5588      * </pre>
5589      *
5590      * <code>.google.api.Authentication authentication = 11;</code>
5591      */
getAuthenticationBuilder()5592     public com.google.api.Authentication.Builder getAuthenticationBuilder() {
5593       bitField0_ |= 0x00000800;
5594       onChanged();
5595       return getAuthenticationFieldBuilder().getBuilder();
5596     }
5597     /**
5598      *
5599      *
5600      * <pre>
5601      * Auth configuration.
5602      * </pre>
5603      *
5604      * <code>.google.api.Authentication authentication = 11;</code>
5605      */
getAuthenticationOrBuilder()5606     public com.google.api.AuthenticationOrBuilder getAuthenticationOrBuilder() {
5607       if (authenticationBuilder_ != null) {
5608         return authenticationBuilder_.getMessageOrBuilder();
5609       } else {
5610         return authentication_ == null
5611             ? com.google.api.Authentication.getDefaultInstance()
5612             : authentication_;
5613       }
5614     }
5615     /**
5616      *
5617      *
5618      * <pre>
5619      * Auth configuration.
5620      * </pre>
5621      *
5622      * <code>.google.api.Authentication authentication = 11;</code>
5623      */
5624     private com.google.protobuf.SingleFieldBuilderV3<
5625             com.google.api.Authentication,
5626             com.google.api.Authentication.Builder,
5627             com.google.api.AuthenticationOrBuilder>
getAuthenticationFieldBuilder()5628         getAuthenticationFieldBuilder() {
5629       if (authenticationBuilder_ == null) {
5630         authenticationBuilder_ =
5631             new com.google.protobuf.SingleFieldBuilderV3<
5632                 com.google.api.Authentication,
5633                 com.google.api.Authentication.Builder,
5634                 com.google.api.AuthenticationOrBuilder>(
5635                 getAuthentication(), getParentForChildren(), isClean());
5636         authentication_ = null;
5637       }
5638       return authenticationBuilder_;
5639     }
5640 
5641     private com.google.api.Context context_;
5642     private com.google.protobuf.SingleFieldBuilderV3<
5643             com.google.api.Context, com.google.api.Context.Builder, com.google.api.ContextOrBuilder>
5644         contextBuilder_;
5645     /**
5646      *
5647      *
5648      * <pre>
5649      * Context configuration.
5650      * </pre>
5651      *
5652      * <code>.google.api.Context context = 12;</code>
5653      *
5654      * @return Whether the context field is set.
5655      */
hasContext()5656     public boolean hasContext() {
5657       return ((bitField0_ & 0x00001000) != 0);
5658     }
5659     /**
5660      *
5661      *
5662      * <pre>
5663      * Context configuration.
5664      * </pre>
5665      *
5666      * <code>.google.api.Context context = 12;</code>
5667      *
5668      * @return The context.
5669      */
getContext()5670     public com.google.api.Context getContext() {
5671       if (contextBuilder_ == null) {
5672         return context_ == null ? com.google.api.Context.getDefaultInstance() : context_;
5673       } else {
5674         return contextBuilder_.getMessage();
5675       }
5676     }
5677     /**
5678      *
5679      *
5680      * <pre>
5681      * Context configuration.
5682      * </pre>
5683      *
5684      * <code>.google.api.Context context = 12;</code>
5685      */
setContext(com.google.api.Context value)5686     public Builder setContext(com.google.api.Context value) {
5687       if (contextBuilder_ == null) {
5688         if (value == null) {
5689           throw new NullPointerException();
5690         }
5691         context_ = value;
5692       } else {
5693         contextBuilder_.setMessage(value);
5694       }
5695       bitField0_ |= 0x00001000;
5696       onChanged();
5697       return this;
5698     }
5699     /**
5700      *
5701      *
5702      * <pre>
5703      * Context configuration.
5704      * </pre>
5705      *
5706      * <code>.google.api.Context context = 12;</code>
5707      */
setContext(com.google.api.Context.Builder builderForValue)5708     public Builder setContext(com.google.api.Context.Builder builderForValue) {
5709       if (contextBuilder_ == null) {
5710         context_ = builderForValue.build();
5711       } else {
5712         contextBuilder_.setMessage(builderForValue.build());
5713       }
5714       bitField0_ |= 0x00001000;
5715       onChanged();
5716       return this;
5717     }
5718     /**
5719      *
5720      *
5721      * <pre>
5722      * Context configuration.
5723      * </pre>
5724      *
5725      * <code>.google.api.Context context = 12;</code>
5726      */
mergeContext(com.google.api.Context value)5727     public Builder mergeContext(com.google.api.Context value) {
5728       if (contextBuilder_ == null) {
5729         if (((bitField0_ & 0x00001000) != 0)
5730             && context_ != null
5731             && context_ != com.google.api.Context.getDefaultInstance()) {
5732           getContextBuilder().mergeFrom(value);
5733         } else {
5734           context_ = value;
5735         }
5736       } else {
5737         contextBuilder_.mergeFrom(value);
5738       }
5739       bitField0_ |= 0x00001000;
5740       onChanged();
5741       return this;
5742     }
5743     /**
5744      *
5745      *
5746      * <pre>
5747      * Context configuration.
5748      * </pre>
5749      *
5750      * <code>.google.api.Context context = 12;</code>
5751      */
clearContext()5752     public Builder clearContext() {
5753       bitField0_ = (bitField0_ & ~0x00001000);
5754       context_ = null;
5755       if (contextBuilder_ != null) {
5756         contextBuilder_.dispose();
5757         contextBuilder_ = null;
5758       }
5759       onChanged();
5760       return this;
5761     }
5762     /**
5763      *
5764      *
5765      * <pre>
5766      * Context configuration.
5767      * </pre>
5768      *
5769      * <code>.google.api.Context context = 12;</code>
5770      */
getContextBuilder()5771     public com.google.api.Context.Builder getContextBuilder() {
5772       bitField0_ |= 0x00001000;
5773       onChanged();
5774       return getContextFieldBuilder().getBuilder();
5775     }
5776     /**
5777      *
5778      *
5779      * <pre>
5780      * Context configuration.
5781      * </pre>
5782      *
5783      * <code>.google.api.Context context = 12;</code>
5784      */
getContextOrBuilder()5785     public com.google.api.ContextOrBuilder getContextOrBuilder() {
5786       if (contextBuilder_ != null) {
5787         return contextBuilder_.getMessageOrBuilder();
5788       } else {
5789         return context_ == null ? com.google.api.Context.getDefaultInstance() : context_;
5790       }
5791     }
5792     /**
5793      *
5794      *
5795      * <pre>
5796      * Context configuration.
5797      * </pre>
5798      *
5799      * <code>.google.api.Context context = 12;</code>
5800      */
5801     private com.google.protobuf.SingleFieldBuilderV3<
5802             com.google.api.Context, com.google.api.Context.Builder, com.google.api.ContextOrBuilder>
getContextFieldBuilder()5803         getContextFieldBuilder() {
5804       if (contextBuilder_ == null) {
5805         contextBuilder_ =
5806             new com.google.protobuf.SingleFieldBuilderV3<
5807                 com.google.api.Context,
5808                 com.google.api.Context.Builder,
5809                 com.google.api.ContextOrBuilder>(getContext(), getParentForChildren(), isClean());
5810         context_ = null;
5811       }
5812       return contextBuilder_;
5813     }
5814 
5815     private com.google.api.Usage usage_;
5816     private com.google.protobuf.SingleFieldBuilderV3<
5817             com.google.api.Usage, com.google.api.Usage.Builder, com.google.api.UsageOrBuilder>
5818         usageBuilder_;
5819     /**
5820      *
5821      *
5822      * <pre>
5823      * Configuration controlling usage of this service.
5824      * </pre>
5825      *
5826      * <code>.google.api.Usage usage = 15;</code>
5827      *
5828      * @return Whether the usage field is set.
5829      */
hasUsage()5830     public boolean hasUsage() {
5831       return ((bitField0_ & 0x00002000) != 0);
5832     }
5833     /**
5834      *
5835      *
5836      * <pre>
5837      * Configuration controlling usage of this service.
5838      * </pre>
5839      *
5840      * <code>.google.api.Usage usage = 15;</code>
5841      *
5842      * @return The usage.
5843      */
getUsage()5844     public com.google.api.Usage getUsage() {
5845       if (usageBuilder_ == null) {
5846         return usage_ == null ? com.google.api.Usage.getDefaultInstance() : usage_;
5847       } else {
5848         return usageBuilder_.getMessage();
5849       }
5850     }
5851     /**
5852      *
5853      *
5854      * <pre>
5855      * Configuration controlling usage of this service.
5856      * </pre>
5857      *
5858      * <code>.google.api.Usage usage = 15;</code>
5859      */
setUsage(com.google.api.Usage value)5860     public Builder setUsage(com.google.api.Usage value) {
5861       if (usageBuilder_ == null) {
5862         if (value == null) {
5863           throw new NullPointerException();
5864         }
5865         usage_ = value;
5866       } else {
5867         usageBuilder_.setMessage(value);
5868       }
5869       bitField0_ |= 0x00002000;
5870       onChanged();
5871       return this;
5872     }
5873     /**
5874      *
5875      *
5876      * <pre>
5877      * Configuration controlling usage of this service.
5878      * </pre>
5879      *
5880      * <code>.google.api.Usage usage = 15;</code>
5881      */
setUsage(com.google.api.Usage.Builder builderForValue)5882     public Builder setUsage(com.google.api.Usage.Builder builderForValue) {
5883       if (usageBuilder_ == null) {
5884         usage_ = builderForValue.build();
5885       } else {
5886         usageBuilder_.setMessage(builderForValue.build());
5887       }
5888       bitField0_ |= 0x00002000;
5889       onChanged();
5890       return this;
5891     }
5892     /**
5893      *
5894      *
5895      * <pre>
5896      * Configuration controlling usage of this service.
5897      * </pre>
5898      *
5899      * <code>.google.api.Usage usage = 15;</code>
5900      */
mergeUsage(com.google.api.Usage value)5901     public Builder mergeUsage(com.google.api.Usage value) {
5902       if (usageBuilder_ == null) {
5903         if (((bitField0_ & 0x00002000) != 0)
5904             && usage_ != null
5905             && usage_ != com.google.api.Usage.getDefaultInstance()) {
5906           getUsageBuilder().mergeFrom(value);
5907         } else {
5908           usage_ = value;
5909         }
5910       } else {
5911         usageBuilder_.mergeFrom(value);
5912       }
5913       bitField0_ |= 0x00002000;
5914       onChanged();
5915       return this;
5916     }
5917     /**
5918      *
5919      *
5920      * <pre>
5921      * Configuration controlling usage of this service.
5922      * </pre>
5923      *
5924      * <code>.google.api.Usage usage = 15;</code>
5925      */
clearUsage()5926     public Builder clearUsage() {
5927       bitField0_ = (bitField0_ & ~0x00002000);
5928       usage_ = null;
5929       if (usageBuilder_ != null) {
5930         usageBuilder_.dispose();
5931         usageBuilder_ = null;
5932       }
5933       onChanged();
5934       return this;
5935     }
5936     /**
5937      *
5938      *
5939      * <pre>
5940      * Configuration controlling usage of this service.
5941      * </pre>
5942      *
5943      * <code>.google.api.Usage usage = 15;</code>
5944      */
getUsageBuilder()5945     public com.google.api.Usage.Builder getUsageBuilder() {
5946       bitField0_ |= 0x00002000;
5947       onChanged();
5948       return getUsageFieldBuilder().getBuilder();
5949     }
5950     /**
5951      *
5952      *
5953      * <pre>
5954      * Configuration controlling usage of this service.
5955      * </pre>
5956      *
5957      * <code>.google.api.Usage usage = 15;</code>
5958      */
getUsageOrBuilder()5959     public com.google.api.UsageOrBuilder getUsageOrBuilder() {
5960       if (usageBuilder_ != null) {
5961         return usageBuilder_.getMessageOrBuilder();
5962       } else {
5963         return usage_ == null ? com.google.api.Usage.getDefaultInstance() : usage_;
5964       }
5965     }
5966     /**
5967      *
5968      *
5969      * <pre>
5970      * Configuration controlling usage of this service.
5971      * </pre>
5972      *
5973      * <code>.google.api.Usage usage = 15;</code>
5974      */
5975     private com.google.protobuf.SingleFieldBuilderV3<
5976             com.google.api.Usage, com.google.api.Usage.Builder, com.google.api.UsageOrBuilder>
getUsageFieldBuilder()5977         getUsageFieldBuilder() {
5978       if (usageBuilder_ == null) {
5979         usageBuilder_ =
5980             new com.google.protobuf.SingleFieldBuilderV3<
5981                 com.google.api.Usage, com.google.api.Usage.Builder, com.google.api.UsageOrBuilder>(
5982                 getUsage(), getParentForChildren(), isClean());
5983         usage_ = null;
5984       }
5985       return usageBuilder_;
5986     }
5987 
5988     private java.util.List<com.google.api.Endpoint> endpoints_ = java.util.Collections.emptyList();
5989 
ensureEndpointsIsMutable()5990     private void ensureEndpointsIsMutable() {
5991       if (!((bitField0_ & 0x00004000) != 0)) {
5992         endpoints_ = new java.util.ArrayList<com.google.api.Endpoint>(endpoints_);
5993         bitField0_ |= 0x00004000;
5994       }
5995     }
5996 
5997     private com.google.protobuf.RepeatedFieldBuilderV3<
5998             com.google.api.Endpoint,
5999             com.google.api.Endpoint.Builder,
6000             com.google.api.EndpointOrBuilder>
6001         endpointsBuilder_;
6002 
6003     /**
6004      *
6005      *
6006      * <pre>
6007      * Configuration for network endpoints.  If this is empty, then an endpoint
6008      * with the same name as the service is automatically generated to service all
6009      * defined APIs.
6010      * </pre>
6011      *
6012      * <code>repeated .google.api.Endpoint endpoints = 18;</code>
6013      */
getEndpointsList()6014     public java.util.List<com.google.api.Endpoint> getEndpointsList() {
6015       if (endpointsBuilder_ == null) {
6016         return java.util.Collections.unmodifiableList(endpoints_);
6017       } else {
6018         return endpointsBuilder_.getMessageList();
6019       }
6020     }
6021     /**
6022      *
6023      *
6024      * <pre>
6025      * Configuration for network endpoints.  If this is empty, then an endpoint
6026      * with the same name as the service is automatically generated to service all
6027      * defined APIs.
6028      * </pre>
6029      *
6030      * <code>repeated .google.api.Endpoint endpoints = 18;</code>
6031      */
getEndpointsCount()6032     public int getEndpointsCount() {
6033       if (endpointsBuilder_ == null) {
6034         return endpoints_.size();
6035       } else {
6036         return endpointsBuilder_.getCount();
6037       }
6038     }
6039     /**
6040      *
6041      *
6042      * <pre>
6043      * Configuration for network endpoints.  If this is empty, then an endpoint
6044      * with the same name as the service is automatically generated to service all
6045      * defined APIs.
6046      * </pre>
6047      *
6048      * <code>repeated .google.api.Endpoint endpoints = 18;</code>
6049      */
getEndpoints(int index)6050     public com.google.api.Endpoint getEndpoints(int index) {
6051       if (endpointsBuilder_ == null) {
6052         return endpoints_.get(index);
6053       } else {
6054         return endpointsBuilder_.getMessage(index);
6055       }
6056     }
6057     /**
6058      *
6059      *
6060      * <pre>
6061      * Configuration for network endpoints.  If this is empty, then an endpoint
6062      * with the same name as the service is automatically generated to service all
6063      * defined APIs.
6064      * </pre>
6065      *
6066      * <code>repeated .google.api.Endpoint endpoints = 18;</code>
6067      */
setEndpoints(int index, com.google.api.Endpoint value)6068     public Builder setEndpoints(int index, com.google.api.Endpoint value) {
6069       if (endpointsBuilder_ == null) {
6070         if (value == null) {
6071           throw new NullPointerException();
6072         }
6073         ensureEndpointsIsMutable();
6074         endpoints_.set(index, value);
6075         onChanged();
6076       } else {
6077         endpointsBuilder_.setMessage(index, value);
6078       }
6079       return this;
6080     }
6081     /**
6082      *
6083      *
6084      * <pre>
6085      * Configuration for network endpoints.  If this is empty, then an endpoint
6086      * with the same name as the service is automatically generated to service all
6087      * defined APIs.
6088      * </pre>
6089      *
6090      * <code>repeated .google.api.Endpoint endpoints = 18;</code>
6091      */
setEndpoints(int index, com.google.api.Endpoint.Builder builderForValue)6092     public Builder setEndpoints(int index, com.google.api.Endpoint.Builder builderForValue) {
6093       if (endpointsBuilder_ == null) {
6094         ensureEndpointsIsMutable();
6095         endpoints_.set(index, builderForValue.build());
6096         onChanged();
6097       } else {
6098         endpointsBuilder_.setMessage(index, builderForValue.build());
6099       }
6100       return this;
6101     }
6102     /**
6103      *
6104      *
6105      * <pre>
6106      * Configuration for network endpoints.  If this is empty, then an endpoint
6107      * with the same name as the service is automatically generated to service all
6108      * defined APIs.
6109      * </pre>
6110      *
6111      * <code>repeated .google.api.Endpoint endpoints = 18;</code>
6112      */
addEndpoints(com.google.api.Endpoint value)6113     public Builder addEndpoints(com.google.api.Endpoint value) {
6114       if (endpointsBuilder_ == null) {
6115         if (value == null) {
6116           throw new NullPointerException();
6117         }
6118         ensureEndpointsIsMutable();
6119         endpoints_.add(value);
6120         onChanged();
6121       } else {
6122         endpointsBuilder_.addMessage(value);
6123       }
6124       return this;
6125     }
6126     /**
6127      *
6128      *
6129      * <pre>
6130      * Configuration for network endpoints.  If this is empty, then an endpoint
6131      * with the same name as the service is automatically generated to service all
6132      * defined APIs.
6133      * </pre>
6134      *
6135      * <code>repeated .google.api.Endpoint endpoints = 18;</code>
6136      */
addEndpoints(int index, com.google.api.Endpoint value)6137     public Builder addEndpoints(int index, com.google.api.Endpoint value) {
6138       if (endpointsBuilder_ == null) {
6139         if (value == null) {
6140           throw new NullPointerException();
6141         }
6142         ensureEndpointsIsMutable();
6143         endpoints_.add(index, value);
6144         onChanged();
6145       } else {
6146         endpointsBuilder_.addMessage(index, value);
6147       }
6148       return this;
6149     }
6150     /**
6151      *
6152      *
6153      * <pre>
6154      * Configuration for network endpoints.  If this is empty, then an endpoint
6155      * with the same name as the service is automatically generated to service all
6156      * defined APIs.
6157      * </pre>
6158      *
6159      * <code>repeated .google.api.Endpoint endpoints = 18;</code>
6160      */
addEndpoints(com.google.api.Endpoint.Builder builderForValue)6161     public Builder addEndpoints(com.google.api.Endpoint.Builder builderForValue) {
6162       if (endpointsBuilder_ == null) {
6163         ensureEndpointsIsMutable();
6164         endpoints_.add(builderForValue.build());
6165         onChanged();
6166       } else {
6167         endpointsBuilder_.addMessage(builderForValue.build());
6168       }
6169       return this;
6170     }
6171     /**
6172      *
6173      *
6174      * <pre>
6175      * Configuration for network endpoints.  If this is empty, then an endpoint
6176      * with the same name as the service is automatically generated to service all
6177      * defined APIs.
6178      * </pre>
6179      *
6180      * <code>repeated .google.api.Endpoint endpoints = 18;</code>
6181      */
addEndpoints(int index, com.google.api.Endpoint.Builder builderForValue)6182     public Builder addEndpoints(int index, com.google.api.Endpoint.Builder builderForValue) {
6183       if (endpointsBuilder_ == null) {
6184         ensureEndpointsIsMutable();
6185         endpoints_.add(index, builderForValue.build());
6186         onChanged();
6187       } else {
6188         endpointsBuilder_.addMessage(index, builderForValue.build());
6189       }
6190       return this;
6191     }
6192     /**
6193      *
6194      *
6195      * <pre>
6196      * Configuration for network endpoints.  If this is empty, then an endpoint
6197      * with the same name as the service is automatically generated to service all
6198      * defined APIs.
6199      * </pre>
6200      *
6201      * <code>repeated .google.api.Endpoint endpoints = 18;</code>
6202      */
addAllEndpoints(java.lang.Iterable<? extends com.google.api.Endpoint> values)6203     public Builder addAllEndpoints(java.lang.Iterable<? extends com.google.api.Endpoint> values) {
6204       if (endpointsBuilder_ == null) {
6205         ensureEndpointsIsMutable();
6206         com.google.protobuf.AbstractMessageLite.Builder.addAll(values, endpoints_);
6207         onChanged();
6208       } else {
6209         endpointsBuilder_.addAllMessages(values);
6210       }
6211       return this;
6212     }
6213     /**
6214      *
6215      *
6216      * <pre>
6217      * Configuration for network endpoints.  If this is empty, then an endpoint
6218      * with the same name as the service is automatically generated to service all
6219      * defined APIs.
6220      * </pre>
6221      *
6222      * <code>repeated .google.api.Endpoint endpoints = 18;</code>
6223      */
clearEndpoints()6224     public Builder clearEndpoints() {
6225       if (endpointsBuilder_ == null) {
6226         endpoints_ = java.util.Collections.emptyList();
6227         bitField0_ = (bitField0_ & ~0x00004000);
6228         onChanged();
6229       } else {
6230         endpointsBuilder_.clear();
6231       }
6232       return this;
6233     }
6234     /**
6235      *
6236      *
6237      * <pre>
6238      * Configuration for network endpoints.  If this is empty, then an endpoint
6239      * with the same name as the service is automatically generated to service all
6240      * defined APIs.
6241      * </pre>
6242      *
6243      * <code>repeated .google.api.Endpoint endpoints = 18;</code>
6244      */
removeEndpoints(int index)6245     public Builder removeEndpoints(int index) {
6246       if (endpointsBuilder_ == null) {
6247         ensureEndpointsIsMutable();
6248         endpoints_.remove(index);
6249         onChanged();
6250       } else {
6251         endpointsBuilder_.remove(index);
6252       }
6253       return this;
6254     }
6255     /**
6256      *
6257      *
6258      * <pre>
6259      * Configuration for network endpoints.  If this is empty, then an endpoint
6260      * with the same name as the service is automatically generated to service all
6261      * defined APIs.
6262      * </pre>
6263      *
6264      * <code>repeated .google.api.Endpoint endpoints = 18;</code>
6265      */
getEndpointsBuilder(int index)6266     public com.google.api.Endpoint.Builder getEndpointsBuilder(int index) {
6267       return getEndpointsFieldBuilder().getBuilder(index);
6268     }
6269     /**
6270      *
6271      *
6272      * <pre>
6273      * Configuration for network endpoints.  If this is empty, then an endpoint
6274      * with the same name as the service is automatically generated to service all
6275      * defined APIs.
6276      * </pre>
6277      *
6278      * <code>repeated .google.api.Endpoint endpoints = 18;</code>
6279      */
getEndpointsOrBuilder(int index)6280     public com.google.api.EndpointOrBuilder getEndpointsOrBuilder(int index) {
6281       if (endpointsBuilder_ == null) {
6282         return endpoints_.get(index);
6283       } else {
6284         return endpointsBuilder_.getMessageOrBuilder(index);
6285       }
6286     }
6287     /**
6288      *
6289      *
6290      * <pre>
6291      * Configuration for network endpoints.  If this is empty, then an endpoint
6292      * with the same name as the service is automatically generated to service all
6293      * defined APIs.
6294      * </pre>
6295      *
6296      * <code>repeated .google.api.Endpoint endpoints = 18;</code>
6297      */
getEndpointsOrBuilderList()6298     public java.util.List<? extends com.google.api.EndpointOrBuilder> getEndpointsOrBuilderList() {
6299       if (endpointsBuilder_ != null) {
6300         return endpointsBuilder_.getMessageOrBuilderList();
6301       } else {
6302         return java.util.Collections.unmodifiableList(endpoints_);
6303       }
6304     }
6305     /**
6306      *
6307      *
6308      * <pre>
6309      * Configuration for network endpoints.  If this is empty, then an endpoint
6310      * with the same name as the service is automatically generated to service all
6311      * defined APIs.
6312      * </pre>
6313      *
6314      * <code>repeated .google.api.Endpoint endpoints = 18;</code>
6315      */
addEndpointsBuilder()6316     public com.google.api.Endpoint.Builder addEndpointsBuilder() {
6317       return getEndpointsFieldBuilder().addBuilder(com.google.api.Endpoint.getDefaultInstance());
6318     }
6319     /**
6320      *
6321      *
6322      * <pre>
6323      * Configuration for network endpoints.  If this is empty, then an endpoint
6324      * with the same name as the service is automatically generated to service all
6325      * defined APIs.
6326      * </pre>
6327      *
6328      * <code>repeated .google.api.Endpoint endpoints = 18;</code>
6329      */
addEndpointsBuilder(int index)6330     public com.google.api.Endpoint.Builder addEndpointsBuilder(int index) {
6331       return getEndpointsFieldBuilder()
6332           .addBuilder(index, com.google.api.Endpoint.getDefaultInstance());
6333     }
6334     /**
6335      *
6336      *
6337      * <pre>
6338      * Configuration for network endpoints.  If this is empty, then an endpoint
6339      * with the same name as the service is automatically generated to service all
6340      * defined APIs.
6341      * </pre>
6342      *
6343      * <code>repeated .google.api.Endpoint endpoints = 18;</code>
6344      */
getEndpointsBuilderList()6345     public java.util.List<com.google.api.Endpoint.Builder> getEndpointsBuilderList() {
6346       return getEndpointsFieldBuilder().getBuilderList();
6347     }
6348 
6349     private com.google.protobuf.RepeatedFieldBuilderV3<
6350             com.google.api.Endpoint,
6351             com.google.api.Endpoint.Builder,
6352             com.google.api.EndpointOrBuilder>
getEndpointsFieldBuilder()6353         getEndpointsFieldBuilder() {
6354       if (endpointsBuilder_ == null) {
6355         endpointsBuilder_ =
6356             new com.google.protobuf.RepeatedFieldBuilderV3<
6357                 com.google.api.Endpoint,
6358                 com.google.api.Endpoint.Builder,
6359                 com.google.api.EndpointOrBuilder>(
6360                 endpoints_, ((bitField0_ & 0x00004000) != 0), getParentForChildren(), isClean());
6361         endpoints_ = null;
6362       }
6363       return endpointsBuilder_;
6364     }
6365 
6366     private com.google.api.Control control_;
6367     private com.google.protobuf.SingleFieldBuilderV3<
6368             com.google.api.Control, com.google.api.Control.Builder, com.google.api.ControlOrBuilder>
6369         controlBuilder_;
6370     /**
6371      *
6372      *
6373      * <pre>
6374      * Configuration for the service control plane.
6375      * </pre>
6376      *
6377      * <code>.google.api.Control control = 21;</code>
6378      *
6379      * @return Whether the control field is set.
6380      */
hasControl()6381     public boolean hasControl() {
6382       return ((bitField0_ & 0x00008000) != 0);
6383     }
6384     /**
6385      *
6386      *
6387      * <pre>
6388      * Configuration for the service control plane.
6389      * </pre>
6390      *
6391      * <code>.google.api.Control control = 21;</code>
6392      *
6393      * @return The control.
6394      */
getControl()6395     public com.google.api.Control getControl() {
6396       if (controlBuilder_ == null) {
6397         return control_ == null ? com.google.api.Control.getDefaultInstance() : control_;
6398       } else {
6399         return controlBuilder_.getMessage();
6400       }
6401     }
6402     /**
6403      *
6404      *
6405      * <pre>
6406      * Configuration for the service control plane.
6407      * </pre>
6408      *
6409      * <code>.google.api.Control control = 21;</code>
6410      */
setControl(com.google.api.Control value)6411     public Builder setControl(com.google.api.Control value) {
6412       if (controlBuilder_ == null) {
6413         if (value == null) {
6414           throw new NullPointerException();
6415         }
6416         control_ = value;
6417       } else {
6418         controlBuilder_.setMessage(value);
6419       }
6420       bitField0_ |= 0x00008000;
6421       onChanged();
6422       return this;
6423     }
6424     /**
6425      *
6426      *
6427      * <pre>
6428      * Configuration for the service control plane.
6429      * </pre>
6430      *
6431      * <code>.google.api.Control control = 21;</code>
6432      */
setControl(com.google.api.Control.Builder builderForValue)6433     public Builder setControl(com.google.api.Control.Builder builderForValue) {
6434       if (controlBuilder_ == null) {
6435         control_ = builderForValue.build();
6436       } else {
6437         controlBuilder_.setMessage(builderForValue.build());
6438       }
6439       bitField0_ |= 0x00008000;
6440       onChanged();
6441       return this;
6442     }
6443     /**
6444      *
6445      *
6446      * <pre>
6447      * Configuration for the service control plane.
6448      * </pre>
6449      *
6450      * <code>.google.api.Control control = 21;</code>
6451      */
mergeControl(com.google.api.Control value)6452     public Builder mergeControl(com.google.api.Control value) {
6453       if (controlBuilder_ == null) {
6454         if (((bitField0_ & 0x00008000) != 0)
6455             && control_ != null
6456             && control_ != com.google.api.Control.getDefaultInstance()) {
6457           getControlBuilder().mergeFrom(value);
6458         } else {
6459           control_ = value;
6460         }
6461       } else {
6462         controlBuilder_.mergeFrom(value);
6463       }
6464       bitField0_ |= 0x00008000;
6465       onChanged();
6466       return this;
6467     }
6468     /**
6469      *
6470      *
6471      * <pre>
6472      * Configuration for the service control plane.
6473      * </pre>
6474      *
6475      * <code>.google.api.Control control = 21;</code>
6476      */
clearControl()6477     public Builder clearControl() {
6478       bitField0_ = (bitField0_ & ~0x00008000);
6479       control_ = null;
6480       if (controlBuilder_ != null) {
6481         controlBuilder_.dispose();
6482         controlBuilder_ = null;
6483       }
6484       onChanged();
6485       return this;
6486     }
6487     /**
6488      *
6489      *
6490      * <pre>
6491      * Configuration for the service control plane.
6492      * </pre>
6493      *
6494      * <code>.google.api.Control control = 21;</code>
6495      */
getControlBuilder()6496     public com.google.api.Control.Builder getControlBuilder() {
6497       bitField0_ |= 0x00008000;
6498       onChanged();
6499       return getControlFieldBuilder().getBuilder();
6500     }
6501     /**
6502      *
6503      *
6504      * <pre>
6505      * Configuration for the service control plane.
6506      * </pre>
6507      *
6508      * <code>.google.api.Control control = 21;</code>
6509      */
getControlOrBuilder()6510     public com.google.api.ControlOrBuilder getControlOrBuilder() {
6511       if (controlBuilder_ != null) {
6512         return controlBuilder_.getMessageOrBuilder();
6513       } else {
6514         return control_ == null ? com.google.api.Control.getDefaultInstance() : control_;
6515       }
6516     }
6517     /**
6518      *
6519      *
6520      * <pre>
6521      * Configuration for the service control plane.
6522      * </pre>
6523      *
6524      * <code>.google.api.Control control = 21;</code>
6525      */
6526     private com.google.protobuf.SingleFieldBuilderV3<
6527             com.google.api.Control, com.google.api.Control.Builder, com.google.api.ControlOrBuilder>
getControlFieldBuilder()6528         getControlFieldBuilder() {
6529       if (controlBuilder_ == null) {
6530         controlBuilder_ =
6531             new com.google.protobuf.SingleFieldBuilderV3<
6532                 com.google.api.Control,
6533                 com.google.api.Control.Builder,
6534                 com.google.api.ControlOrBuilder>(getControl(), getParentForChildren(), isClean());
6535         control_ = null;
6536       }
6537       return controlBuilder_;
6538     }
6539 
6540     private java.util.List<com.google.api.LogDescriptor> logs_ = java.util.Collections.emptyList();
6541 
ensureLogsIsMutable()6542     private void ensureLogsIsMutable() {
6543       if (!((bitField0_ & 0x00010000) != 0)) {
6544         logs_ = new java.util.ArrayList<com.google.api.LogDescriptor>(logs_);
6545         bitField0_ |= 0x00010000;
6546       }
6547     }
6548 
6549     private com.google.protobuf.RepeatedFieldBuilderV3<
6550             com.google.api.LogDescriptor,
6551             com.google.api.LogDescriptor.Builder,
6552             com.google.api.LogDescriptorOrBuilder>
6553         logsBuilder_;
6554 
6555     /**
6556      *
6557      *
6558      * <pre>
6559      * Defines the logs used by this service.
6560      * </pre>
6561      *
6562      * <code>repeated .google.api.LogDescriptor logs = 23;</code>
6563      */
getLogsList()6564     public java.util.List<com.google.api.LogDescriptor> getLogsList() {
6565       if (logsBuilder_ == null) {
6566         return java.util.Collections.unmodifiableList(logs_);
6567       } else {
6568         return logsBuilder_.getMessageList();
6569       }
6570     }
6571     /**
6572      *
6573      *
6574      * <pre>
6575      * Defines the logs used by this service.
6576      * </pre>
6577      *
6578      * <code>repeated .google.api.LogDescriptor logs = 23;</code>
6579      */
getLogsCount()6580     public int getLogsCount() {
6581       if (logsBuilder_ == null) {
6582         return logs_.size();
6583       } else {
6584         return logsBuilder_.getCount();
6585       }
6586     }
6587     /**
6588      *
6589      *
6590      * <pre>
6591      * Defines the logs used by this service.
6592      * </pre>
6593      *
6594      * <code>repeated .google.api.LogDescriptor logs = 23;</code>
6595      */
getLogs(int index)6596     public com.google.api.LogDescriptor getLogs(int index) {
6597       if (logsBuilder_ == null) {
6598         return logs_.get(index);
6599       } else {
6600         return logsBuilder_.getMessage(index);
6601       }
6602     }
6603     /**
6604      *
6605      *
6606      * <pre>
6607      * Defines the logs used by this service.
6608      * </pre>
6609      *
6610      * <code>repeated .google.api.LogDescriptor logs = 23;</code>
6611      */
setLogs(int index, com.google.api.LogDescriptor value)6612     public Builder setLogs(int index, com.google.api.LogDescriptor value) {
6613       if (logsBuilder_ == null) {
6614         if (value == null) {
6615           throw new NullPointerException();
6616         }
6617         ensureLogsIsMutable();
6618         logs_.set(index, value);
6619         onChanged();
6620       } else {
6621         logsBuilder_.setMessage(index, value);
6622       }
6623       return this;
6624     }
6625     /**
6626      *
6627      *
6628      * <pre>
6629      * Defines the logs used by this service.
6630      * </pre>
6631      *
6632      * <code>repeated .google.api.LogDescriptor logs = 23;</code>
6633      */
setLogs(int index, com.google.api.LogDescriptor.Builder builderForValue)6634     public Builder setLogs(int index, com.google.api.LogDescriptor.Builder builderForValue) {
6635       if (logsBuilder_ == null) {
6636         ensureLogsIsMutable();
6637         logs_.set(index, builderForValue.build());
6638         onChanged();
6639       } else {
6640         logsBuilder_.setMessage(index, builderForValue.build());
6641       }
6642       return this;
6643     }
6644     /**
6645      *
6646      *
6647      * <pre>
6648      * Defines the logs used by this service.
6649      * </pre>
6650      *
6651      * <code>repeated .google.api.LogDescriptor logs = 23;</code>
6652      */
addLogs(com.google.api.LogDescriptor value)6653     public Builder addLogs(com.google.api.LogDescriptor value) {
6654       if (logsBuilder_ == null) {
6655         if (value == null) {
6656           throw new NullPointerException();
6657         }
6658         ensureLogsIsMutable();
6659         logs_.add(value);
6660         onChanged();
6661       } else {
6662         logsBuilder_.addMessage(value);
6663       }
6664       return this;
6665     }
6666     /**
6667      *
6668      *
6669      * <pre>
6670      * Defines the logs used by this service.
6671      * </pre>
6672      *
6673      * <code>repeated .google.api.LogDescriptor logs = 23;</code>
6674      */
addLogs(int index, com.google.api.LogDescriptor value)6675     public Builder addLogs(int index, com.google.api.LogDescriptor value) {
6676       if (logsBuilder_ == null) {
6677         if (value == null) {
6678           throw new NullPointerException();
6679         }
6680         ensureLogsIsMutable();
6681         logs_.add(index, value);
6682         onChanged();
6683       } else {
6684         logsBuilder_.addMessage(index, value);
6685       }
6686       return this;
6687     }
6688     /**
6689      *
6690      *
6691      * <pre>
6692      * Defines the logs used by this service.
6693      * </pre>
6694      *
6695      * <code>repeated .google.api.LogDescriptor logs = 23;</code>
6696      */
addLogs(com.google.api.LogDescriptor.Builder builderForValue)6697     public Builder addLogs(com.google.api.LogDescriptor.Builder builderForValue) {
6698       if (logsBuilder_ == null) {
6699         ensureLogsIsMutable();
6700         logs_.add(builderForValue.build());
6701         onChanged();
6702       } else {
6703         logsBuilder_.addMessage(builderForValue.build());
6704       }
6705       return this;
6706     }
6707     /**
6708      *
6709      *
6710      * <pre>
6711      * Defines the logs used by this service.
6712      * </pre>
6713      *
6714      * <code>repeated .google.api.LogDescriptor logs = 23;</code>
6715      */
addLogs(int index, com.google.api.LogDescriptor.Builder builderForValue)6716     public Builder addLogs(int index, com.google.api.LogDescriptor.Builder builderForValue) {
6717       if (logsBuilder_ == null) {
6718         ensureLogsIsMutable();
6719         logs_.add(index, builderForValue.build());
6720         onChanged();
6721       } else {
6722         logsBuilder_.addMessage(index, builderForValue.build());
6723       }
6724       return this;
6725     }
6726     /**
6727      *
6728      *
6729      * <pre>
6730      * Defines the logs used by this service.
6731      * </pre>
6732      *
6733      * <code>repeated .google.api.LogDescriptor logs = 23;</code>
6734      */
addAllLogs(java.lang.Iterable<? extends com.google.api.LogDescriptor> values)6735     public Builder addAllLogs(java.lang.Iterable<? extends com.google.api.LogDescriptor> values) {
6736       if (logsBuilder_ == null) {
6737         ensureLogsIsMutable();
6738         com.google.protobuf.AbstractMessageLite.Builder.addAll(values, logs_);
6739         onChanged();
6740       } else {
6741         logsBuilder_.addAllMessages(values);
6742       }
6743       return this;
6744     }
6745     /**
6746      *
6747      *
6748      * <pre>
6749      * Defines the logs used by this service.
6750      * </pre>
6751      *
6752      * <code>repeated .google.api.LogDescriptor logs = 23;</code>
6753      */
clearLogs()6754     public Builder clearLogs() {
6755       if (logsBuilder_ == null) {
6756         logs_ = java.util.Collections.emptyList();
6757         bitField0_ = (bitField0_ & ~0x00010000);
6758         onChanged();
6759       } else {
6760         logsBuilder_.clear();
6761       }
6762       return this;
6763     }
6764     /**
6765      *
6766      *
6767      * <pre>
6768      * Defines the logs used by this service.
6769      * </pre>
6770      *
6771      * <code>repeated .google.api.LogDescriptor logs = 23;</code>
6772      */
removeLogs(int index)6773     public Builder removeLogs(int index) {
6774       if (logsBuilder_ == null) {
6775         ensureLogsIsMutable();
6776         logs_.remove(index);
6777         onChanged();
6778       } else {
6779         logsBuilder_.remove(index);
6780       }
6781       return this;
6782     }
6783     /**
6784      *
6785      *
6786      * <pre>
6787      * Defines the logs used by this service.
6788      * </pre>
6789      *
6790      * <code>repeated .google.api.LogDescriptor logs = 23;</code>
6791      */
getLogsBuilder(int index)6792     public com.google.api.LogDescriptor.Builder getLogsBuilder(int index) {
6793       return getLogsFieldBuilder().getBuilder(index);
6794     }
6795     /**
6796      *
6797      *
6798      * <pre>
6799      * Defines the logs used by this service.
6800      * </pre>
6801      *
6802      * <code>repeated .google.api.LogDescriptor logs = 23;</code>
6803      */
getLogsOrBuilder(int index)6804     public com.google.api.LogDescriptorOrBuilder getLogsOrBuilder(int index) {
6805       if (logsBuilder_ == null) {
6806         return logs_.get(index);
6807       } else {
6808         return logsBuilder_.getMessageOrBuilder(index);
6809       }
6810     }
6811     /**
6812      *
6813      *
6814      * <pre>
6815      * Defines the logs used by this service.
6816      * </pre>
6817      *
6818      * <code>repeated .google.api.LogDescriptor logs = 23;</code>
6819      */
getLogsOrBuilderList()6820     public java.util.List<? extends com.google.api.LogDescriptorOrBuilder> getLogsOrBuilderList() {
6821       if (logsBuilder_ != null) {
6822         return logsBuilder_.getMessageOrBuilderList();
6823       } else {
6824         return java.util.Collections.unmodifiableList(logs_);
6825       }
6826     }
6827     /**
6828      *
6829      *
6830      * <pre>
6831      * Defines the logs used by this service.
6832      * </pre>
6833      *
6834      * <code>repeated .google.api.LogDescriptor logs = 23;</code>
6835      */
addLogsBuilder()6836     public com.google.api.LogDescriptor.Builder addLogsBuilder() {
6837       return getLogsFieldBuilder().addBuilder(com.google.api.LogDescriptor.getDefaultInstance());
6838     }
6839     /**
6840      *
6841      *
6842      * <pre>
6843      * Defines the logs used by this service.
6844      * </pre>
6845      *
6846      * <code>repeated .google.api.LogDescriptor logs = 23;</code>
6847      */
addLogsBuilder(int index)6848     public com.google.api.LogDescriptor.Builder addLogsBuilder(int index) {
6849       return getLogsFieldBuilder()
6850           .addBuilder(index, com.google.api.LogDescriptor.getDefaultInstance());
6851     }
6852     /**
6853      *
6854      *
6855      * <pre>
6856      * Defines the logs used by this service.
6857      * </pre>
6858      *
6859      * <code>repeated .google.api.LogDescriptor logs = 23;</code>
6860      */
getLogsBuilderList()6861     public java.util.List<com.google.api.LogDescriptor.Builder> getLogsBuilderList() {
6862       return getLogsFieldBuilder().getBuilderList();
6863     }
6864 
6865     private com.google.protobuf.RepeatedFieldBuilderV3<
6866             com.google.api.LogDescriptor,
6867             com.google.api.LogDescriptor.Builder,
6868             com.google.api.LogDescriptorOrBuilder>
getLogsFieldBuilder()6869         getLogsFieldBuilder() {
6870       if (logsBuilder_ == null) {
6871         logsBuilder_ =
6872             new com.google.protobuf.RepeatedFieldBuilderV3<
6873                 com.google.api.LogDescriptor,
6874                 com.google.api.LogDescriptor.Builder,
6875                 com.google.api.LogDescriptorOrBuilder>(
6876                 logs_, ((bitField0_ & 0x00010000) != 0), getParentForChildren(), isClean());
6877         logs_ = null;
6878       }
6879       return logsBuilder_;
6880     }
6881 
6882     private java.util.List<com.google.api.MetricDescriptor> metrics_ =
6883         java.util.Collections.emptyList();
6884 
ensureMetricsIsMutable()6885     private void ensureMetricsIsMutable() {
6886       if (!((bitField0_ & 0x00020000) != 0)) {
6887         metrics_ = new java.util.ArrayList<com.google.api.MetricDescriptor>(metrics_);
6888         bitField0_ |= 0x00020000;
6889       }
6890     }
6891 
6892     private com.google.protobuf.RepeatedFieldBuilderV3<
6893             com.google.api.MetricDescriptor,
6894             com.google.api.MetricDescriptor.Builder,
6895             com.google.api.MetricDescriptorOrBuilder>
6896         metricsBuilder_;
6897 
6898     /**
6899      *
6900      *
6901      * <pre>
6902      * Defines the metrics used by this service.
6903      * </pre>
6904      *
6905      * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
6906      */
getMetricsList()6907     public java.util.List<com.google.api.MetricDescriptor> getMetricsList() {
6908       if (metricsBuilder_ == null) {
6909         return java.util.Collections.unmodifiableList(metrics_);
6910       } else {
6911         return metricsBuilder_.getMessageList();
6912       }
6913     }
6914     /**
6915      *
6916      *
6917      * <pre>
6918      * Defines the metrics used by this service.
6919      * </pre>
6920      *
6921      * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
6922      */
getMetricsCount()6923     public int getMetricsCount() {
6924       if (metricsBuilder_ == null) {
6925         return metrics_.size();
6926       } else {
6927         return metricsBuilder_.getCount();
6928       }
6929     }
6930     /**
6931      *
6932      *
6933      * <pre>
6934      * Defines the metrics used by this service.
6935      * </pre>
6936      *
6937      * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
6938      */
getMetrics(int index)6939     public com.google.api.MetricDescriptor getMetrics(int index) {
6940       if (metricsBuilder_ == null) {
6941         return metrics_.get(index);
6942       } else {
6943         return metricsBuilder_.getMessage(index);
6944       }
6945     }
6946     /**
6947      *
6948      *
6949      * <pre>
6950      * Defines the metrics used by this service.
6951      * </pre>
6952      *
6953      * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
6954      */
setMetrics(int index, com.google.api.MetricDescriptor value)6955     public Builder setMetrics(int index, com.google.api.MetricDescriptor value) {
6956       if (metricsBuilder_ == null) {
6957         if (value == null) {
6958           throw new NullPointerException();
6959         }
6960         ensureMetricsIsMutable();
6961         metrics_.set(index, value);
6962         onChanged();
6963       } else {
6964         metricsBuilder_.setMessage(index, value);
6965       }
6966       return this;
6967     }
6968     /**
6969      *
6970      *
6971      * <pre>
6972      * Defines the metrics used by this service.
6973      * </pre>
6974      *
6975      * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
6976      */
setMetrics(int index, com.google.api.MetricDescriptor.Builder builderForValue)6977     public Builder setMetrics(int index, com.google.api.MetricDescriptor.Builder builderForValue) {
6978       if (metricsBuilder_ == null) {
6979         ensureMetricsIsMutable();
6980         metrics_.set(index, builderForValue.build());
6981         onChanged();
6982       } else {
6983         metricsBuilder_.setMessage(index, builderForValue.build());
6984       }
6985       return this;
6986     }
6987     /**
6988      *
6989      *
6990      * <pre>
6991      * Defines the metrics used by this service.
6992      * </pre>
6993      *
6994      * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
6995      */
addMetrics(com.google.api.MetricDescriptor value)6996     public Builder addMetrics(com.google.api.MetricDescriptor value) {
6997       if (metricsBuilder_ == null) {
6998         if (value == null) {
6999           throw new NullPointerException();
7000         }
7001         ensureMetricsIsMutable();
7002         metrics_.add(value);
7003         onChanged();
7004       } else {
7005         metricsBuilder_.addMessage(value);
7006       }
7007       return this;
7008     }
7009     /**
7010      *
7011      *
7012      * <pre>
7013      * Defines the metrics used by this service.
7014      * </pre>
7015      *
7016      * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
7017      */
addMetrics(int index, com.google.api.MetricDescriptor value)7018     public Builder addMetrics(int index, com.google.api.MetricDescriptor value) {
7019       if (metricsBuilder_ == null) {
7020         if (value == null) {
7021           throw new NullPointerException();
7022         }
7023         ensureMetricsIsMutable();
7024         metrics_.add(index, value);
7025         onChanged();
7026       } else {
7027         metricsBuilder_.addMessage(index, value);
7028       }
7029       return this;
7030     }
7031     /**
7032      *
7033      *
7034      * <pre>
7035      * Defines the metrics used by this service.
7036      * </pre>
7037      *
7038      * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
7039      */
addMetrics(com.google.api.MetricDescriptor.Builder builderForValue)7040     public Builder addMetrics(com.google.api.MetricDescriptor.Builder builderForValue) {
7041       if (metricsBuilder_ == null) {
7042         ensureMetricsIsMutable();
7043         metrics_.add(builderForValue.build());
7044         onChanged();
7045       } else {
7046         metricsBuilder_.addMessage(builderForValue.build());
7047       }
7048       return this;
7049     }
7050     /**
7051      *
7052      *
7053      * <pre>
7054      * Defines the metrics used by this service.
7055      * </pre>
7056      *
7057      * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
7058      */
addMetrics(int index, com.google.api.MetricDescriptor.Builder builderForValue)7059     public Builder addMetrics(int index, com.google.api.MetricDescriptor.Builder builderForValue) {
7060       if (metricsBuilder_ == null) {
7061         ensureMetricsIsMutable();
7062         metrics_.add(index, builderForValue.build());
7063         onChanged();
7064       } else {
7065         metricsBuilder_.addMessage(index, builderForValue.build());
7066       }
7067       return this;
7068     }
7069     /**
7070      *
7071      *
7072      * <pre>
7073      * Defines the metrics used by this service.
7074      * </pre>
7075      *
7076      * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
7077      */
addAllMetrics( java.lang.Iterable<? extends com.google.api.MetricDescriptor> values)7078     public Builder addAllMetrics(
7079         java.lang.Iterable<? extends com.google.api.MetricDescriptor> values) {
7080       if (metricsBuilder_ == null) {
7081         ensureMetricsIsMutable();
7082         com.google.protobuf.AbstractMessageLite.Builder.addAll(values, metrics_);
7083         onChanged();
7084       } else {
7085         metricsBuilder_.addAllMessages(values);
7086       }
7087       return this;
7088     }
7089     /**
7090      *
7091      *
7092      * <pre>
7093      * Defines the metrics used by this service.
7094      * </pre>
7095      *
7096      * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
7097      */
clearMetrics()7098     public Builder clearMetrics() {
7099       if (metricsBuilder_ == null) {
7100         metrics_ = java.util.Collections.emptyList();
7101         bitField0_ = (bitField0_ & ~0x00020000);
7102         onChanged();
7103       } else {
7104         metricsBuilder_.clear();
7105       }
7106       return this;
7107     }
7108     /**
7109      *
7110      *
7111      * <pre>
7112      * Defines the metrics used by this service.
7113      * </pre>
7114      *
7115      * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
7116      */
removeMetrics(int index)7117     public Builder removeMetrics(int index) {
7118       if (metricsBuilder_ == null) {
7119         ensureMetricsIsMutable();
7120         metrics_.remove(index);
7121         onChanged();
7122       } else {
7123         metricsBuilder_.remove(index);
7124       }
7125       return this;
7126     }
7127     /**
7128      *
7129      *
7130      * <pre>
7131      * Defines the metrics used by this service.
7132      * </pre>
7133      *
7134      * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
7135      */
getMetricsBuilder(int index)7136     public com.google.api.MetricDescriptor.Builder getMetricsBuilder(int index) {
7137       return getMetricsFieldBuilder().getBuilder(index);
7138     }
7139     /**
7140      *
7141      *
7142      * <pre>
7143      * Defines the metrics used by this service.
7144      * </pre>
7145      *
7146      * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
7147      */
getMetricsOrBuilder(int index)7148     public com.google.api.MetricDescriptorOrBuilder getMetricsOrBuilder(int index) {
7149       if (metricsBuilder_ == null) {
7150         return metrics_.get(index);
7151       } else {
7152         return metricsBuilder_.getMessageOrBuilder(index);
7153       }
7154     }
7155     /**
7156      *
7157      *
7158      * <pre>
7159      * Defines the metrics used by this service.
7160      * </pre>
7161      *
7162      * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
7163      */
7164     public java.util.List<? extends com.google.api.MetricDescriptorOrBuilder>
getMetricsOrBuilderList()7165         getMetricsOrBuilderList() {
7166       if (metricsBuilder_ != null) {
7167         return metricsBuilder_.getMessageOrBuilderList();
7168       } else {
7169         return java.util.Collections.unmodifiableList(metrics_);
7170       }
7171     }
7172     /**
7173      *
7174      *
7175      * <pre>
7176      * Defines the metrics used by this service.
7177      * </pre>
7178      *
7179      * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
7180      */
addMetricsBuilder()7181     public com.google.api.MetricDescriptor.Builder addMetricsBuilder() {
7182       return getMetricsFieldBuilder()
7183           .addBuilder(com.google.api.MetricDescriptor.getDefaultInstance());
7184     }
7185     /**
7186      *
7187      *
7188      * <pre>
7189      * Defines the metrics used by this service.
7190      * </pre>
7191      *
7192      * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
7193      */
addMetricsBuilder(int index)7194     public com.google.api.MetricDescriptor.Builder addMetricsBuilder(int index) {
7195       return getMetricsFieldBuilder()
7196           .addBuilder(index, com.google.api.MetricDescriptor.getDefaultInstance());
7197     }
7198     /**
7199      *
7200      *
7201      * <pre>
7202      * Defines the metrics used by this service.
7203      * </pre>
7204      *
7205      * <code>repeated .google.api.MetricDescriptor metrics = 24;</code>
7206      */
getMetricsBuilderList()7207     public java.util.List<com.google.api.MetricDescriptor.Builder> getMetricsBuilderList() {
7208       return getMetricsFieldBuilder().getBuilderList();
7209     }
7210 
7211     private com.google.protobuf.RepeatedFieldBuilderV3<
7212             com.google.api.MetricDescriptor,
7213             com.google.api.MetricDescriptor.Builder,
7214             com.google.api.MetricDescriptorOrBuilder>
getMetricsFieldBuilder()7215         getMetricsFieldBuilder() {
7216       if (metricsBuilder_ == null) {
7217         metricsBuilder_ =
7218             new com.google.protobuf.RepeatedFieldBuilderV3<
7219                 com.google.api.MetricDescriptor,
7220                 com.google.api.MetricDescriptor.Builder,
7221                 com.google.api.MetricDescriptorOrBuilder>(
7222                 metrics_, ((bitField0_ & 0x00020000) != 0), getParentForChildren(), isClean());
7223         metrics_ = null;
7224       }
7225       return metricsBuilder_;
7226     }
7227 
7228     private java.util.List<com.google.api.MonitoredResourceDescriptor> monitoredResources_ =
7229         java.util.Collections.emptyList();
7230 
ensureMonitoredResourcesIsMutable()7231     private void ensureMonitoredResourcesIsMutable() {
7232       if (!((bitField0_ & 0x00040000) != 0)) {
7233         monitoredResources_ =
7234             new java.util.ArrayList<com.google.api.MonitoredResourceDescriptor>(
7235                 monitoredResources_);
7236         bitField0_ |= 0x00040000;
7237       }
7238     }
7239 
7240     private com.google.protobuf.RepeatedFieldBuilderV3<
7241             com.google.api.MonitoredResourceDescriptor,
7242             com.google.api.MonitoredResourceDescriptor.Builder,
7243             com.google.api.MonitoredResourceDescriptorOrBuilder>
7244         monitoredResourcesBuilder_;
7245 
7246     /**
7247      *
7248      *
7249      * <pre>
7250      * Defines the monitored resources used by this service. This is required
7251      * by the [Service.monitoring][google.api.Service.monitoring] and
7252      * [Service.logging][google.api.Service.logging] configurations.
7253      * </pre>
7254      *
7255      * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
7256      */
getMonitoredResourcesList()7257     public java.util.List<com.google.api.MonitoredResourceDescriptor> getMonitoredResourcesList() {
7258       if (monitoredResourcesBuilder_ == null) {
7259         return java.util.Collections.unmodifiableList(monitoredResources_);
7260       } else {
7261         return monitoredResourcesBuilder_.getMessageList();
7262       }
7263     }
7264     /**
7265      *
7266      *
7267      * <pre>
7268      * Defines the monitored resources used by this service. This is required
7269      * by the [Service.monitoring][google.api.Service.monitoring] and
7270      * [Service.logging][google.api.Service.logging] configurations.
7271      * </pre>
7272      *
7273      * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
7274      */
getMonitoredResourcesCount()7275     public int getMonitoredResourcesCount() {
7276       if (monitoredResourcesBuilder_ == null) {
7277         return monitoredResources_.size();
7278       } else {
7279         return monitoredResourcesBuilder_.getCount();
7280       }
7281     }
7282     /**
7283      *
7284      *
7285      * <pre>
7286      * Defines the monitored resources used by this service. This is required
7287      * by the [Service.monitoring][google.api.Service.monitoring] and
7288      * [Service.logging][google.api.Service.logging] configurations.
7289      * </pre>
7290      *
7291      * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
7292      */
getMonitoredResources(int index)7293     public com.google.api.MonitoredResourceDescriptor getMonitoredResources(int index) {
7294       if (monitoredResourcesBuilder_ == null) {
7295         return monitoredResources_.get(index);
7296       } else {
7297         return monitoredResourcesBuilder_.getMessage(index);
7298       }
7299     }
7300     /**
7301      *
7302      *
7303      * <pre>
7304      * Defines the monitored resources used by this service. This is required
7305      * by the [Service.monitoring][google.api.Service.monitoring] and
7306      * [Service.logging][google.api.Service.logging] configurations.
7307      * </pre>
7308      *
7309      * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
7310      */
setMonitoredResources( int index, com.google.api.MonitoredResourceDescriptor value)7311     public Builder setMonitoredResources(
7312         int index, com.google.api.MonitoredResourceDescriptor value) {
7313       if (monitoredResourcesBuilder_ == null) {
7314         if (value == null) {
7315           throw new NullPointerException();
7316         }
7317         ensureMonitoredResourcesIsMutable();
7318         monitoredResources_.set(index, value);
7319         onChanged();
7320       } else {
7321         monitoredResourcesBuilder_.setMessage(index, value);
7322       }
7323       return this;
7324     }
7325     /**
7326      *
7327      *
7328      * <pre>
7329      * Defines the monitored resources used by this service. This is required
7330      * by the [Service.monitoring][google.api.Service.monitoring] and
7331      * [Service.logging][google.api.Service.logging] configurations.
7332      * </pre>
7333      *
7334      * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
7335      */
setMonitoredResources( int index, com.google.api.MonitoredResourceDescriptor.Builder builderForValue)7336     public Builder setMonitoredResources(
7337         int index, com.google.api.MonitoredResourceDescriptor.Builder builderForValue) {
7338       if (monitoredResourcesBuilder_ == null) {
7339         ensureMonitoredResourcesIsMutable();
7340         monitoredResources_.set(index, builderForValue.build());
7341         onChanged();
7342       } else {
7343         monitoredResourcesBuilder_.setMessage(index, builderForValue.build());
7344       }
7345       return this;
7346     }
7347     /**
7348      *
7349      *
7350      * <pre>
7351      * Defines the monitored resources used by this service. This is required
7352      * by the [Service.monitoring][google.api.Service.monitoring] and
7353      * [Service.logging][google.api.Service.logging] configurations.
7354      * </pre>
7355      *
7356      * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
7357      */
addMonitoredResources(com.google.api.MonitoredResourceDescriptor value)7358     public Builder addMonitoredResources(com.google.api.MonitoredResourceDescriptor value) {
7359       if (monitoredResourcesBuilder_ == null) {
7360         if (value == null) {
7361           throw new NullPointerException();
7362         }
7363         ensureMonitoredResourcesIsMutable();
7364         monitoredResources_.add(value);
7365         onChanged();
7366       } else {
7367         monitoredResourcesBuilder_.addMessage(value);
7368       }
7369       return this;
7370     }
7371     /**
7372      *
7373      *
7374      * <pre>
7375      * Defines the monitored resources used by this service. This is required
7376      * by the [Service.monitoring][google.api.Service.monitoring] and
7377      * [Service.logging][google.api.Service.logging] configurations.
7378      * </pre>
7379      *
7380      * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
7381      */
addMonitoredResources( int index, com.google.api.MonitoredResourceDescriptor value)7382     public Builder addMonitoredResources(
7383         int index, com.google.api.MonitoredResourceDescriptor value) {
7384       if (monitoredResourcesBuilder_ == null) {
7385         if (value == null) {
7386           throw new NullPointerException();
7387         }
7388         ensureMonitoredResourcesIsMutable();
7389         monitoredResources_.add(index, value);
7390         onChanged();
7391       } else {
7392         monitoredResourcesBuilder_.addMessage(index, value);
7393       }
7394       return this;
7395     }
7396     /**
7397      *
7398      *
7399      * <pre>
7400      * Defines the monitored resources used by this service. This is required
7401      * by the [Service.monitoring][google.api.Service.monitoring] and
7402      * [Service.logging][google.api.Service.logging] configurations.
7403      * </pre>
7404      *
7405      * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
7406      */
addMonitoredResources( com.google.api.MonitoredResourceDescriptor.Builder builderForValue)7407     public Builder addMonitoredResources(
7408         com.google.api.MonitoredResourceDescriptor.Builder builderForValue) {
7409       if (monitoredResourcesBuilder_ == null) {
7410         ensureMonitoredResourcesIsMutable();
7411         monitoredResources_.add(builderForValue.build());
7412         onChanged();
7413       } else {
7414         monitoredResourcesBuilder_.addMessage(builderForValue.build());
7415       }
7416       return this;
7417     }
7418     /**
7419      *
7420      *
7421      * <pre>
7422      * Defines the monitored resources used by this service. This is required
7423      * by the [Service.monitoring][google.api.Service.monitoring] and
7424      * [Service.logging][google.api.Service.logging] configurations.
7425      * </pre>
7426      *
7427      * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
7428      */
addMonitoredResources( int index, com.google.api.MonitoredResourceDescriptor.Builder builderForValue)7429     public Builder addMonitoredResources(
7430         int index, com.google.api.MonitoredResourceDescriptor.Builder builderForValue) {
7431       if (monitoredResourcesBuilder_ == null) {
7432         ensureMonitoredResourcesIsMutable();
7433         monitoredResources_.add(index, builderForValue.build());
7434         onChanged();
7435       } else {
7436         monitoredResourcesBuilder_.addMessage(index, builderForValue.build());
7437       }
7438       return this;
7439     }
7440     /**
7441      *
7442      *
7443      * <pre>
7444      * Defines the monitored resources used by this service. This is required
7445      * by the [Service.monitoring][google.api.Service.monitoring] and
7446      * [Service.logging][google.api.Service.logging] configurations.
7447      * </pre>
7448      *
7449      * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
7450      */
addAllMonitoredResources( java.lang.Iterable<? extends com.google.api.MonitoredResourceDescriptor> values)7451     public Builder addAllMonitoredResources(
7452         java.lang.Iterable<? extends com.google.api.MonitoredResourceDescriptor> values) {
7453       if (monitoredResourcesBuilder_ == null) {
7454         ensureMonitoredResourcesIsMutable();
7455         com.google.protobuf.AbstractMessageLite.Builder.addAll(values, monitoredResources_);
7456         onChanged();
7457       } else {
7458         monitoredResourcesBuilder_.addAllMessages(values);
7459       }
7460       return this;
7461     }
7462     /**
7463      *
7464      *
7465      * <pre>
7466      * Defines the monitored resources used by this service. This is required
7467      * by the [Service.monitoring][google.api.Service.monitoring] and
7468      * [Service.logging][google.api.Service.logging] configurations.
7469      * </pre>
7470      *
7471      * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
7472      */
clearMonitoredResources()7473     public Builder clearMonitoredResources() {
7474       if (monitoredResourcesBuilder_ == null) {
7475         monitoredResources_ = java.util.Collections.emptyList();
7476         bitField0_ = (bitField0_ & ~0x00040000);
7477         onChanged();
7478       } else {
7479         monitoredResourcesBuilder_.clear();
7480       }
7481       return this;
7482     }
7483     /**
7484      *
7485      *
7486      * <pre>
7487      * Defines the monitored resources used by this service. This is required
7488      * by the [Service.monitoring][google.api.Service.monitoring] and
7489      * [Service.logging][google.api.Service.logging] configurations.
7490      * </pre>
7491      *
7492      * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
7493      */
removeMonitoredResources(int index)7494     public Builder removeMonitoredResources(int index) {
7495       if (monitoredResourcesBuilder_ == null) {
7496         ensureMonitoredResourcesIsMutable();
7497         monitoredResources_.remove(index);
7498         onChanged();
7499       } else {
7500         monitoredResourcesBuilder_.remove(index);
7501       }
7502       return this;
7503     }
7504     /**
7505      *
7506      *
7507      * <pre>
7508      * Defines the monitored resources used by this service. This is required
7509      * by the [Service.monitoring][google.api.Service.monitoring] and
7510      * [Service.logging][google.api.Service.logging] configurations.
7511      * </pre>
7512      *
7513      * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
7514      */
getMonitoredResourcesBuilder( int index)7515     public com.google.api.MonitoredResourceDescriptor.Builder getMonitoredResourcesBuilder(
7516         int index) {
7517       return getMonitoredResourcesFieldBuilder().getBuilder(index);
7518     }
7519     /**
7520      *
7521      *
7522      * <pre>
7523      * Defines the monitored resources used by this service. This is required
7524      * by the [Service.monitoring][google.api.Service.monitoring] and
7525      * [Service.logging][google.api.Service.logging] configurations.
7526      * </pre>
7527      *
7528      * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
7529      */
getMonitoredResourcesOrBuilder( int index)7530     public com.google.api.MonitoredResourceDescriptorOrBuilder getMonitoredResourcesOrBuilder(
7531         int index) {
7532       if (monitoredResourcesBuilder_ == null) {
7533         return monitoredResources_.get(index);
7534       } else {
7535         return monitoredResourcesBuilder_.getMessageOrBuilder(index);
7536       }
7537     }
7538     /**
7539      *
7540      *
7541      * <pre>
7542      * Defines the monitored resources used by this service. This is required
7543      * by the [Service.monitoring][google.api.Service.monitoring] and
7544      * [Service.logging][google.api.Service.logging] configurations.
7545      * </pre>
7546      *
7547      * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
7548      */
7549     public java.util.List<? extends com.google.api.MonitoredResourceDescriptorOrBuilder>
getMonitoredResourcesOrBuilderList()7550         getMonitoredResourcesOrBuilderList() {
7551       if (monitoredResourcesBuilder_ != null) {
7552         return monitoredResourcesBuilder_.getMessageOrBuilderList();
7553       } else {
7554         return java.util.Collections.unmodifiableList(monitoredResources_);
7555       }
7556     }
7557     /**
7558      *
7559      *
7560      * <pre>
7561      * Defines the monitored resources used by this service. This is required
7562      * by the [Service.monitoring][google.api.Service.monitoring] and
7563      * [Service.logging][google.api.Service.logging] configurations.
7564      * </pre>
7565      *
7566      * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
7567      */
addMonitoredResourcesBuilder()7568     public com.google.api.MonitoredResourceDescriptor.Builder addMonitoredResourcesBuilder() {
7569       return getMonitoredResourcesFieldBuilder()
7570           .addBuilder(com.google.api.MonitoredResourceDescriptor.getDefaultInstance());
7571     }
7572     /**
7573      *
7574      *
7575      * <pre>
7576      * Defines the monitored resources used by this service. This is required
7577      * by the [Service.monitoring][google.api.Service.monitoring] and
7578      * [Service.logging][google.api.Service.logging] configurations.
7579      * </pre>
7580      *
7581      * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
7582      */
addMonitoredResourcesBuilder( int index)7583     public com.google.api.MonitoredResourceDescriptor.Builder addMonitoredResourcesBuilder(
7584         int index) {
7585       return getMonitoredResourcesFieldBuilder()
7586           .addBuilder(index, com.google.api.MonitoredResourceDescriptor.getDefaultInstance());
7587     }
7588     /**
7589      *
7590      *
7591      * <pre>
7592      * Defines the monitored resources used by this service. This is required
7593      * by the [Service.monitoring][google.api.Service.monitoring] and
7594      * [Service.logging][google.api.Service.logging] configurations.
7595      * </pre>
7596      *
7597      * <code>repeated .google.api.MonitoredResourceDescriptor monitored_resources = 25;</code>
7598      */
7599     public java.util.List<com.google.api.MonitoredResourceDescriptor.Builder>
getMonitoredResourcesBuilderList()7600         getMonitoredResourcesBuilderList() {
7601       return getMonitoredResourcesFieldBuilder().getBuilderList();
7602     }
7603 
7604     private com.google.protobuf.RepeatedFieldBuilderV3<
7605             com.google.api.MonitoredResourceDescriptor,
7606             com.google.api.MonitoredResourceDescriptor.Builder,
7607             com.google.api.MonitoredResourceDescriptorOrBuilder>
getMonitoredResourcesFieldBuilder()7608         getMonitoredResourcesFieldBuilder() {
7609       if (monitoredResourcesBuilder_ == null) {
7610         monitoredResourcesBuilder_ =
7611             new com.google.protobuf.RepeatedFieldBuilderV3<
7612                 com.google.api.MonitoredResourceDescriptor,
7613                 com.google.api.MonitoredResourceDescriptor.Builder,
7614                 com.google.api.MonitoredResourceDescriptorOrBuilder>(
7615                 monitoredResources_,
7616                 ((bitField0_ & 0x00040000) != 0),
7617                 getParentForChildren(),
7618                 isClean());
7619         monitoredResources_ = null;
7620       }
7621       return monitoredResourcesBuilder_;
7622     }
7623 
7624     private com.google.api.Billing billing_;
7625     private com.google.protobuf.SingleFieldBuilderV3<
7626             com.google.api.Billing, com.google.api.Billing.Builder, com.google.api.BillingOrBuilder>
7627         billingBuilder_;
7628     /**
7629      *
7630      *
7631      * <pre>
7632      * Billing configuration.
7633      * </pre>
7634      *
7635      * <code>.google.api.Billing billing = 26;</code>
7636      *
7637      * @return Whether the billing field is set.
7638      */
hasBilling()7639     public boolean hasBilling() {
7640       return ((bitField0_ & 0x00080000) != 0);
7641     }
7642     /**
7643      *
7644      *
7645      * <pre>
7646      * Billing configuration.
7647      * </pre>
7648      *
7649      * <code>.google.api.Billing billing = 26;</code>
7650      *
7651      * @return The billing.
7652      */
getBilling()7653     public com.google.api.Billing getBilling() {
7654       if (billingBuilder_ == null) {
7655         return billing_ == null ? com.google.api.Billing.getDefaultInstance() : billing_;
7656       } else {
7657         return billingBuilder_.getMessage();
7658       }
7659     }
7660     /**
7661      *
7662      *
7663      * <pre>
7664      * Billing configuration.
7665      * </pre>
7666      *
7667      * <code>.google.api.Billing billing = 26;</code>
7668      */
setBilling(com.google.api.Billing value)7669     public Builder setBilling(com.google.api.Billing value) {
7670       if (billingBuilder_ == null) {
7671         if (value == null) {
7672           throw new NullPointerException();
7673         }
7674         billing_ = value;
7675       } else {
7676         billingBuilder_.setMessage(value);
7677       }
7678       bitField0_ |= 0x00080000;
7679       onChanged();
7680       return this;
7681     }
7682     /**
7683      *
7684      *
7685      * <pre>
7686      * Billing configuration.
7687      * </pre>
7688      *
7689      * <code>.google.api.Billing billing = 26;</code>
7690      */
setBilling(com.google.api.Billing.Builder builderForValue)7691     public Builder setBilling(com.google.api.Billing.Builder builderForValue) {
7692       if (billingBuilder_ == null) {
7693         billing_ = builderForValue.build();
7694       } else {
7695         billingBuilder_.setMessage(builderForValue.build());
7696       }
7697       bitField0_ |= 0x00080000;
7698       onChanged();
7699       return this;
7700     }
7701     /**
7702      *
7703      *
7704      * <pre>
7705      * Billing configuration.
7706      * </pre>
7707      *
7708      * <code>.google.api.Billing billing = 26;</code>
7709      */
mergeBilling(com.google.api.Billing value)7710     public Builder mergeBilling(com.google.api.Billing value) {
7711       if (billingBuilder_ == null) {
7712         if (((bitField0_ & 0x00080000) != 0)
7713             && billing_ != null
7714             && billing_ != com.google.api.Billing.getDefaultInstance()) {
7715           getBillingBuilder().mergeFrom(value);
7716         } else {
7717           billing_ = value;
7718         }
7719       } else {
7720         billingBuilder_.mergeFrom(value);
7721       }
7722       bitField0_ |= 0x00080000;
7723       onChanged();
7724       return this;
7725     }
7726     /**
7727      *
7728      *
7729      * <pre>
7730      * Billing configuration.
7731      * </pre>
7732      *
7733      * <code>.google.api.Billing billing = 26;</code>
7734      */
clearBilling()7735     public Builder clearBilling() {
7736       bitField0_ = (bitField0_ & ~0x00080000);
7737       billing_ = null;
7738       if (billingBuilder_ != null) {
7739         billingBuilder_.dispose();
7740         billingBuilder_ = null;
7741       }
7742       onChanged();
7743       return this;
7744     }
7745     /**
7746      *
7747      *
7748      * <pre>
7749      * Billing configuration.
7750      * </pre>
7751      *
7752      * <code>.google.api.Billing billing = 26;</code>
7753      */
getBillingBuilder()7754     public com.google.api.Billing.Builder getBillingBuilder() {
7755       bitField0_ |= 0x00080000;
7756       onChanged();
7757       return getBillingFieldBuilder().getBuilder();
7758     }
7759     /**
7760      *
7761      *
7762      * <pre>
7763      * Billing configuration.
7764      * </pre>
7765      *
7766      * <code>.google.api.Billing billing = 26;</code>
7767      */
getBillingOrBuilder()7768     public com.google.api.BillingOrBuilder getBillingOrBuilder() {
7769       if (billingBuilder_ != null) {
7770         return billingBuilder_.getMessageOrBuilder();
7771       } else {
7772         return billing_ == null ? com.google.api.Billing.getDefaultInstance() : billing_;
7773       }
7774     }
7775     /**
7776      *
7777      *
7778      * <pre>
7779      * Billing configuration.
7780      * </pre>
7781      *
7782      * <code>.google.api.Billing billing = 26;</code>
7783      */
7784     private com.google.protobuf.SingleFieldBuilderV3<
7785             com.google.api.Billing, com.google.api.Billing.Builder, com.google.api.BillingOrBuilder>
getBillingFieldBuilder()7786         getBillingFieldBuilder() {
7787       if (billingBuilder_ == null) {
7788         billingBuilder_ =
7789             new com.google.protobuf.SingleFieldBuilderV3<
7790                 com.google.api.Billing,
7791                 com.google.api.Billing.Builder,
7792                 com.google.api.BillingOrBuilder>(getBilling(), getParentForChildren(), isClean());
7793         billing_ = null;
7794       }
7795       return billingBuilder_;
7796     }
7797 
7798     private com.google.api.Logging logging_;
7799     private com.google.protobuf.SingleFieldBuilderV3<
7800             com.google.api.Logging, com.google.api.Logging.Builder, com.google.api.LoggingOrBuilder>
7801         loggingBuilder_;
7802     /**
7803      *
7804      *
7805      * <pre>
7806      * Logging configuration.
7807      * </pre>
7808      *
7809      * <code>.google.api.Logging logging = 27;</code>
7810      *
7811      * @return Whether the logging field is set.
7812      */
hasLogging()7813     public boolean hasLogging() {
7814       return ((bitField0_ & 0x00100000) != 0);
7815     }
7816     /**
7817      *
7818      *
7819      * <pre>
7820      * Logging configuration.
7821      * </pre>
7822      *
7823      * <code>.google.api.Logging logging = 27;</code>
7824      *
7825      * @return The logging.
7826      */
getLogging()7827     public com.google.api.Logging getLogging() {
7828       if (loggingBuilder_ == null) {
7829         return logging_ == null ? com.google.api.Logging.getDefaultInstance() : logging_;
7830       } else {
7831         return loggingBuilder_.getMessage();
7832       }
7833     }
7834     /**
7835      *
7836      *
7837      * <pre>
7838      * Logging configuration.
7839      * </pre>
7840      *
7841      * <code>.google.api.Logging logging = 27;</code>
7842      */
setLogging(com.google.api.Logging value)7843     public Builder setLogging(com.google.api.Logging value) {
7844       if (loggingBuilder_ == null) {
7845         if (value == null) {
7846           throw new NullPointerException();
7847         }
7848         logging_ = value;
7849       } else {
7850         loggingBuilder_.setMessage(value);
7851       }
7852       bitField0_ |= 0x00100000;
7853       onChanged();
7854       return this;
7855     }
7856     /**
7857      *
7858      *
7859      * <pre>
7860      * Logging configuration.
7861      * </pre>
7862      *
7863      * <code>.google.api.Logging logging = 27;</code>
7864      */
setLogging(com.google.api.Logging.Builder builderForValue)7865     public Builder setLogging(com.google.api.Logging.Builder builderForValue) {
7866       if (loggingBuilder_ == null) {
7867         logging_ = builderForValue.build();
7868       } else {
7869         loggingBuilder_.setMessage(builderForValue.build());
7870       }
7871       bitField0_ |= 0x00100000;
7872       onChanged();
7873       return this;
7874     }
7875     /**
7876      *
7877      *
7878      * <pre>
7879      * Logging configuration.
7880      * </pre>
7881      *
7882      * <code>.google.api.Logging logging = 27;</code>
7883      */
mergeLogging(com.google.api.Logging value)7884     public Builder mergeLogging(com.google.api.Logging value) {
7885       if (loggingBuilder_ == null) {
7886         if (((bitField0_ & 0x00100000) != 0)
7887             && logging_ != null
7888             && logging_ != com.google.api.Logging.getDefaultInstance()) {
7889           getLoggingBuilder().mergeFrom(value);
7890         } else {
7891           logging_ = value;
7892         }
7893       } else {
7894         loggingBuilder_.mergeFrom(value);
7895       }
7896       bitField0_ |= 0x00100000;
7897       onChanged();
7898       return this;
7899     }
7900     /**
7901      *
7902      *
7903      * <pre>
7904      * Logging configuration.
7905      * </pre>
7906      *
7907      * <code>.google.api.Logging logging = 27;</code>
7908      */
clearLogging()7909     public Builder clearLogging() {
7910       bitField0_ = (bitField0_ & ~0x00100000);
7911       logging_ = null;
7912       if (loggingBuilder_ != null) {
7913         loggingBuilder_.dispose();
7914         loggingBuilder_ = null;
7915       }
7916       onChanged();
7917       return this;
7918     }
7919     /**
7920      *
7921      *
7922      * <pre>
7923      * Logging configuration.
7924      * </pre>
7925      *
7926      * <code>.google.api.Logging logging = 27;</code>
7927      */
getLoggingBuilder()7928     public com.google.api.Logging.Builder getLoggingBuilder() {
7929       bitField0_ |= 0x00100000;
7930       onChanged();
7931       return getLoggingFieldBuilder().getBuilder();
7932     }
7933     /**
7934      *
7935      *
7936      * <pre>
7937      * Logging configuration.
7938      * </pre>
7939      *
7940      * <code>.google.api.Logging logging = 27;</code>
7941      */
getLoggingOrBuilder()7942     public com.google.api.LoggingOrBuilder getLoggingOrBuilder() {
7943       if (loggingBuilder_ != null) {
7944         return loggingBuilder_.getMessageOrBuilder();
7945       } else {
7946         return logging_ == null ? com.google.api.Logging.getDefaultInstance() : logging_;
7947       }
7948     }
7949     /**
7950      *
7951      *
7952      * <pre>
7953      * Logging configuration.
7954      * </pre>
7955      *
7956      * <code>.google.api.Logging logging = 27;</code>
7957      */
7958     private com.google.protobuf.SingleFieldBuilderV3<
7959             com.google.api.Logging, com.google.api.Logging.Builder, com.google.api.LoggingOrBuilder>
getLoggingFieldBuilder()7960         getLoggingFieldBuilder() {
7961       if (loggingBuilder_ == null) {
7962         loggingBuilder_ =
7963             new com.google.protobuf.SingleFieldBuilderV3<
7964                 com.google.api.Logging,
7965                 com.google.api.Logging.Builder,
7966                 com.google.api.LoggingOrBuilder>(getLogging(), getParentForChildren(), isClean());
7967         logging_ = null;
7968       }
7969       return loggingBuilder_;
7970     }
7971 
7972     private com.google.api.Monitoring monitoring_;
7973     private com.google.protobuf.SingleFieldBuilderV3<
7974             com.google.api.Monitoring,
7975             com.google.api.Monitoring.Builder,
7976             com.google.api.MonitoringOrBuilder>
7977         monitoringBuilder_;
7978     /**
7979      *
7980      *
7981      * <pre>
7982      * Monitoring configuration.
7983      * </pre>
7984      *
7985      * <code>.google.api.Monitoring monitoring = 28;</code>
7986      *
7987      * @return Whether the monitoring field is set.
7988      */
hasMonitoring()7989     public boolean hasMonitoring() {
7990       return ((bitField0_ & 0x00200000) != 0);
7991     }
7992     /**
7993      *
7994      *
7995      * <pre>
7996      * Monitoring configuration.
7997      * </pre>
7998      *
7999      * <code>.google.api.Monitoring monitoring = 28;</code>
8000      *
8001      * @return The monitoring.
8002      */
getMonitoring()8003     public com.google.api.Monitoring getMonitoring() {
8004       if (monitoringBuilder_ == null) {
8005         return monitoring_ == null ? com.google.api.Monitoring.getDefaultInstance() : monitoring_;
8006       } else {
8007         return monitoringBuilder_.getMessage();
8008       }
8009     }
8010     /**
8011      *
8012      *
8013      * <pre>
8014      * Monitoring configuration.
8015      * </pre>
8016      *
8017      * <code>.google.api.Monitoring monitoring = 28;</code>
8018      */
setMonitoring(com.google.api.Monitoring value)8019     public Builder setMonitoring(com.google.api.Monitoring value) {
8020       if (monitoringBuilder_ == null) {
8021         if (value == null) {
8022           throw new NullPointerException();
8023         }
8024         monitoring_ = value;
8025       } else {
8026         monitoringBuilder_.setMessage(value);
8027       }
8028       bitField0_ |= 0x00200000;
8029       onChanged();
8030       return this;
8031     }
8032     /**
8033      *
8034      *
8035      * <pre>
8036      * Monitoring configuration.
8037      * </pre>
8038      *
8039      * <code>.google.api.Monitoring monitoring = 28;</code>
8040      */
setMonitoring(com.google.api.Monitoring.Builder builderForValue)8041     public Builder setMonitoring(com.google.api.Monitoring.Builder builderForValue) {
8042       if (monitoringBuilder_ == null) {
8043         monitoring_ = builderForValue.build();
8044       } else {
8045         monitoringBuilder_.setMessage(builderForValue.build());
8046       }
8047       bitField0_ |= 0x00200000;
8048       onChanged();
8049       return this;
8050     }
8051     /**
8052      *
8053      *
8054      * <pre>
8055      * Monitoring configuration.
8056      * </pre>
8057      *
8058      * <code>.google.api.Monitoring monitoring = 28;</code>
8059      */
mergeMonitoring(com.google.api.Monitoring value)8060     public Builder mergeMonitoring(com.google.api.Monitoring value) {
8061       if (monitoringBuilder_ == null) {
8062         if (((bitField0_ & 0x00200000) != 0)
8063             && monitoring_ != null
8064             && monitoring_ != com.google.api.Monitoring.getDefaultInstance()) {
8065           getMonitoringBuilder().mergeFrom(value);
8066         } else {
8067           monitoring_ = value;
8068         }
8069       } else {
8070         monitoringBuilder_.mergeFrom(value);
8071       }
8072       bitField0_ |= 0x00200000;
8073       onChanged();
8074       return this;
8075     }
8076     /**
8077      *
8078      *
8079      * <pre>
8080      * Monitoring configuration.
8081      * </pre>
8082      *
8083      * <code>.google.api.Monitoring monitoring = 28;</code>
8084      */
clearMonitoring()8085     public Builder clearMonitoring() {
8086       bitField0_ = (bitField0_ & ~0x00200000);
8087       monitoring_ = null;
8088       if (monitoringBuilder_ != null) {
8089         monitoringBuilder_.dispose();
8090         monitoringBuilder_ = null;
8091       }
8092       onChanged();
8093       return this;
8094     }
8095     /**
8096      *
8097      *
8098      * <pre>
8099      * Monitoring configuration.
8100      * </pre>
8101      *
8102      * <code>.google.api.Monitoring monitoring = 28;</code>
8103      */
getMonitoringBuilder()8104     public com.google.api.Monitoring.Builder getMonitoringBuilder() {
8105       bitField0_ |= 0x00200000;
8106       onChanged();
8107       return getMonitoringFieldBuilder().getBuilder();
8108     }
8109     /**
8110      *
8111      *
8112      * <pre>
8113      * Monitoring configuration.
8114      * </pre>
8115      *
8116      * <code>.google.api.Monitoring monitoring = 28;</code>
8117      */
getMonitoringOrBuilder()8118     public com.google.api.MonitoringOrBuilder getMonitoringOrBuilder() {
8119       if (monitoringBuilder_ != null) {
8120         return monitoringBuilder_.getMessageOrBuilder();
8121       } else {
8122         return monitoring_ == null ? com.google.api.Monitoring.getDefaultInstance() : monitoring_;
8123       }
8124     }
8125     /**
8126      *
8127      *
8128      * <pre>
8129      * Monitoring configuration.
8130      * </pre>
8131      *
8132      * <code>.google.api.Monitoring monitoring = 28;</code>
8133      */
8134     private com.google.protobuf.SingleFieldBuilderV3<
8135             com.google.api.Monitoring,
8136             com.google.api.Monitoring.Builder,
8137             com.google.api.MonitoringOrBuilder>
getMonitoringFieldBuilder()8138         getMonitoringFieldBuilder() {
8139       if (monitoringBuilder_ == null) {
8140         monitoringBuilder_ =
8141             new com.google.protobuf.SingleFieldBuilderV3<
8142                 com.google.api.Monitoring,
8143                 com.google.api.Monitoring.Builder,
8144                 com.google.api.MonitoringOrBuilder>(
8145                 getMonitoring(), getParentForChildren(), isClean());
8146         monitoring_ = null;
8147       }
8148       return monitoringBuilder_;
8149     }
8150 
8151     private com.google.api.SystemParameters systemParameters_;
8152     private com.google.protobuf.SingleFieldBuilderV3<
8153             com.google.api.SystemParameters,
8154             com.google.api.SystemParameters.Builder,
8155             com.google.api.SystemParametersOrBuilder>
8156         systemParametersBuilder_;
8157     /**
8158      *
8159      *
8160      * <pre>
8161      * System parameter configuration.
8162      * </pre>
8163      *
8164      * <code>.google.api.SystemParameters system_parameters = 29;</code>
8165      *
8166      * @return Whether the systemParameters field is set.
8167      */
hasSystemParameters()8168     public boolean hasSystemParameters() {
8169       return ((bitField0_ & 0x00400000) != 0);
8170     }
8171     /**
8172      *
8173      *
8174      * <pre>
8175      * System parameter configuration.
8176      * </pre>
8177      *
8178      * <code>.google.api.SystemParameters system_parameters = 29;</code>
8179      *
8180      * @return The systemParameters.
8181      */
getSystemParameters()8182     public com.google.api.SystemParameters getSystemParameters() {
8183       if (systemParametersBuilder_ == null) {
8184         return systemParameters_ == null
8185             ? com.google.api.SystemParameters.getDefaultInstance()
8186             : systemParameters_;
8187       } else {
8188         return systemParametersBuilder_.getMessage();
8189       }
8190     }
8191     /**
8192      *
8193      *
8194      * <pre>
8195      * System parameter configuration.
8196      * </pre>
8197      *
8198      * <code>.google.api.SystemParameters system_parameters = 29;</code>
8199      */
setSystemParameters(com.google.api.SystemParameters value)8200     public Builder setSystemParameters(com.google.api.SystemParameters value) {
8201       if (systemParametersBuilder_ == null) {
8202         if (value == null) {
8203           throw new NullPointerException();
8204         }
8205         systemParameters_ = value;
8206       } else {
8207         systemParametersBuilder_.setMessage(value);
8208       }
8209       bitField0_ |= 0x00400000;
8210       onChanged();
8211       return this;
8212     }
8213     /**
8214      *
8215      *
8216      * <pre>
8217      * System parameter configuration.
8218      * </pre>
8219      *
8220      * <code>.google.api.SystemParameters system_parameters = 29;</code>
8221      */
setSystemParameters(com.google.api.SystemParameters.Builder builderForValue)8222     public Builder setSystemParameters(com.google.api.SystemParameters.Builder builderForValue) {
8223       if (systemParametersBuilder_ == null) {
8224         systemParameters_ = builderForValue.build();
8225       } else {
8226         systemParametersBuilder_.setMessage(builderForValue.build());
8227       }
8228       bitField0_ |= 0x00400000;
8229       onChanged();
8230       return this;
8231     }
8232     /**
8233      *
8234      *
8235      * <pre>
8236      * System parameter configuration.
8237      * </pre>
8238      *
8239      * <code>.google.api.SystemParameters system_parameters = 29;</code>
8240      */
mergeSystemParameters(com.google.api.SystemParameters value)8241     public Builder mergeSystemParameters(com.google.api.SystemParameters value) {
8242       if (systemParametersBuilder_ == null) {
8243         if (((bitField0_ & 0x00400000) != 0)
8244             && systemParameters_ != null
8245             && systemParameters_ != com.google.api.SystemParameters.getDefaultInstance()) {
8246           getSystemParametersBuilder().mergeFrom(value);
8247         } else {
8248           systemParameters_ = value;
8249         }
8250       } else {
8251         systemParametersBuilder_.mergeFrom(value);
8252       }
8253       bitField0_ |= 0x00400000;
8254       onChanged();
8255       return this;
8256     }
8257     /**
8258      *
8259      *
8260      * <pre>
8261      * System parameter configuration.
8262      * </pre>
8263      *
8264      * <code>.google.api.SystemParameters system_parameters = 29;</code>
8265      */
clearSystemParameters()8266     public Builder clearSystemParameters() {
8267       bitField0_ = (bitField0_ & ~0x00400000);
8268       systemParameters_ = null;
8269       if (systemParametersBuilder_ != null) {
8270         systemParametersBuilder_.dispose();
8271         systemParametersBuilder_ = null;
8272       }
8273       onChanged();
8274       return this;
8275     }
8276     /**
8277      *
8278      *
8279      * <pre>
8280      * System parameter configuration.
8281      * </pre>
8282      *
8283      * <code>.google.api.SystemParameters system_parameters = 29;</code>
8284      */
getSystemParametersBuilder()8285     public com.google.api.SystemParameters.Builder getSystemParametersBuilder() {
8286       bitField0_ |= 0x00400000;
8287       onChanged();
8288       return getSystemParametersFieldBuilder().getBuilder();
8289     }
8290     /**
8291      *
8292      *
8293      * <pre>
8294      * System parameter configuration.
8295      * </pre>
8296      *
8297      * <code>.google.api.SystemParameters system_parameters = 29;</code>
8298      */
getSystemParametersOrBuilder()8299     public com.google.api.SystemParametersOrBuilder getSystemParametersOrBuilder() {
8300       if (systemParametersBuilder_ != null) {
8301         return systemParametersBuilder_.getMessageOrBuilder();
8302       } else {
8303         return systemParameters_ == null
8304             ? com.google.api.SystemParameters.getDefaultInstance()
8305             : systemParameters_;
8306       }
8307     }
8308     /**
8309      *
8310      *
8311      * <pre>
8312      * System parameter configuration.
8313      * </pre>
8314      *
8315      * <code>.google.api.SystemParameters system_parameters = 29;</code>
8316      */
8317     private com.google.protobuf.SingleFieldBuilderV3<
8318             com.google.api.SystemParameters,
8319             com.google.api.SystemParameters.Builder,
8320             com.google.api.SystemParametersOrBuilder>
getSystemParametersFieldBuilder()8321         getSystemParametersFieldBuilder() {
8322       if (systemParametersBuilder_ == null) {
8323         systemParametersBuilder_ =
8324             new com.google.protobuf.SingleFieldBuilderV3<
8325                 com.google.api.SystemParameters,
8326                 com.google.api.SystemParameters.Builder,
8327                 com.google.api.SystemParametersOrBuilder>(
8328                 getSystemParameters(), getParentForChildren(), isClean());
8329         systemParameters_ = null;
8330       }
8331       return systemParametersBuilder_;
8332     }
8333 
8334     private com.google.api.SourceInfo sourceInfo_;
8335     private com.google.protobuf.SingleFieldBuilderV3<
8336             com.google.api.SourceInfo,
8337             com.google.api.SourceInfo.Builder,
8338             com.google.api.SourceInfoOrBuilder>
8339         sourceInfoBuilder_;
8340     /**
8341      *
8342      *
8343      * <pre>
8344      * Output only. The source information for this configuration if available.
8345      * </pre>
8346      *
8347      * <code>.google.api.SourceInfo source_info = 37;</code>
8348      *
8349      * @return Whether the sourceInfo field is set.
8350      */
hasSourceInfo()8351     public boolean hasSourceInfo() {
8352       return ((bitField0_ & 0x00800000) != 0);
8353     }
8354     /**
8355      *
8356      *
8357      * <pre>
8358      * Output only. The source information for this configuration if available.
8359      * </pre>
8360      *
8361      * <code>.google.api.SourceInfo source_info = 37;</code>
8362      *
8363      * @return The sourceInfo.
8364      */
getSourceInfo()8365     public com.google.api.SourceInfo getSourceInfo() {
8366       if (sourceInfoBuilder_ == null) {
8367         return sourceInfo_ == null ? com.google.api.SourceInfo.getDefaultInstance() : sourceInfo_;
8368       } else {
8369         return sourceInfoBuilder_.getMessage();
8370       }
8371     }
8372     /**
8373      *
8374      *
8375      * <pre>
8376      * Output only. The source information for this configuration if available.
8377      * </pre>
8378      *
8379      * <code>.google.api.SourceInfo source_info = 37;</code>
8380      */
setSourceInfo(com.google.api.SourceInfo value)8381     public Builder setSourceInfo(com.google.api.SourceInfo value) {
8382       if (sourceInfoBuilder_ == null) {
8383         if (value == null) {
8384           throw new NullPointerException();
8385         }
8386         sourceInfo_ = value;
8387       } else {
8388         sourceInfoBuilder_.setMessage(value);
8389       }
8390       bitField0_ |= 0x00800000;
8391       onChanged();
8392       return this;
8393     }
8394     /**
8395      *
8396      *
8397      * <pre>
8398      * Output only. The source information for this configuration if available.
8399      * </pre>
8400      *
8401      * <code>.google.api.SourceInfo source_info = 37;</code>
8402      */
setSourceInfo(com.google.api.SourceInfo.Builder builderForValue)8403     public Builder setSourceInfo(com.google.api.SourceInfo.Builder builderForValue) {
8404       if (sourceInfoBuilder_ == null) {
8405         sourceInfo_ = builderForValue.build();
8406       } else {
8407         sourceInfoBuilder_.setMessage(builderForValue.build());
8408       }
8409       bitField0_ |= 0x00800000;
8410       onChanged();
8411       return this;
8412     }
8413     /**
8414      *
8415      *
8416      * <pre>
8417      * Output only. The source information for this configuration if available.
8418      * </pre>
8419      *
8420      * <code>.google.api.SourceInfo source_info = 37;</code>
8421      */
mergeSourceInfo(com.google.api.SourceInfo value)8422     public Builder mergeSourceInfo(com.google.api.SourceInfo value) {
8423       if (sourceInfoBuilder_ == null) {
8424         if (((bitField0_ & 0x00800000) != 0)
8425             && sourceInfo_ != null
8426             && sourceInfo_ != com.google.api.SourceInfo.getDefaultInstance()) {
8427           getSourceInfoBuilder().mergeFrom(value);
8428         } else {
8429           sourceInfo_ = value;
8430         }
8431       } else {
8432         sourceInfoBuilder_.mergeFrom(value);
8433       }
8434       bitField0_ |= 0x00800000;
8435       onChanged();
8436       return this;
8437     }
8438     /**
8439      *
8440      *
8441      * <pre>
8442      * Output only. The source information for this configuration if available.
8443      * </pre>
8444      *
8445      * <code>.google.api.SourceInfo source_info = 37;</code>
8446      */
clearSourceInfo()8447     public Builder clearSourceInfo() {
8448       bitField0_ = (bitField0_ & ~0x00800000);
8449       sourceInfo_ = null;
8450       if (sourceInfoBuilder_ != null) {
8451         sourceInfoBuilder_.dispose();
8452         sourceInfoBuilder_ = null;
8453       }
8454       onChanged();
8455       return this;
8456     }
8457     /**
8458      *
8459      *
8460      * <pre>
8461      * Output only. The source information for this configuration if available.
8462      * </pre>
8463      *
8464      * <code>.google.api.SourceInfo source_info = 37;</code>
8465      */
getSourceInfoBuilder()8466     public com.google.api.SourceInfo.Builder getSourceInfoBuilder() {
8467       bitField0_ |= 0x00800000;
8468       onChanged();
8469       return getSourceInfoFieldBuilder().getBuilder();
8470     }
8471     /**
8472      *
8473      *
8474      * <pre>
8475      * Output only. The source information for this configuration if available.
8476      * </pre>
8477      *
8478      * <code>.google.api.SourceInfo source_info = 37;</code>
8479      */
getSourceInfoOrBuilder()8480     public com.google.api.SourceInfoOrBuilder getSourceInfoOrBuilder() {
8481       if (sourceInfoBuilder_ != null) {
8482         return sourceInfoBuilder_.getMessageOrBuilder();
8483       } else {
8484         return sourceInfo_ == null ? com.google.api.SourceInfo.getDefaultInstance() : sourceInfo_;
8485       }
8486     }
8487     /**
8488      *
8489      *
8490      * <pre>
8491      * Output only. The source information for this configuration if available.
8492      * </pre>
8493      *
8494      * <code>.google.api.SourceInfo source_info = 37;</code>
8495      */
8496     private com.google.protobuf.SingleFieldBuilderV3<
8497             com.google.api.SourceInfo,
8498             com.google.api.SourceInfo.Builder,
8499             com.google.api.SourceInfoOrBuilder>
getSourceInfoFieldBuilder()8500         getSourceInfoFieldBuilder() {
8501       if (sourceInfoBuilder_ == null) {
8502         sourceInfoBuilder_ =
8503             new com.google.protobuf.SingleFieldBuilderV3<
8504                 com.google.api.SourceInfo,
8505                 com.google.api.SourceInfo.Builder,
8506                 com.google.api.SourceInfoOrBuilder>(
8507                 getSourceInfo(), getParentForChildren(), isClean());
8508         sourceInfo_ = null;
8509       }
8510       return sourceInfoBuilder_;
8511     }
8512 
8513     private com.google.api.Publishing publishing_;
8514     private com.google.protobuf.SingleFieldBuilderV3<
8515             com.google.api.Publishing,
8516             com.google.api.Publishing.Builder,
8517             com.google.api.PublishingOrBuilder>
8518         publishingBuilder_;
8519     /**
8520      *
8521      *
8522      * <pre>
8523      * Settings for [Google Cloud Client
8524      * libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
8525      * generated from APIs defined as protocol buffers.
8526      * </pre>
8527      *
8528      * <code>.google.api.Publishing publishing = 45;</code>
8529      *
8530      * @return Whether the publishing field is set.
8531      */
hasPublishing()8532     public boolean hasPublishing() {
8533       return ((bitField0_ & 0x01000000) != 0);
8534     }
8535     /**
8536      *
8537      *
8538      * <pre>
8539      * Settings for [Google Cloud Client
8540      * libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
8541      * generated from APIs defined as protocol buffers.
8542      * </pre>
8543      *
8544      * <code>.google.api.Publishing publishing = 45;</code>
8545      *
8546      * @return The publishing.
8547      */
getPublishing()8548     public com.google.api.Publishing getPublishing() {
8549       if (publishingBuilder_ == null) {
8550         return publishing_ == null ? com.google.api.Publishing.getDefaultInstance() : publishing_;
8551       } else {
8552         return publishingBuilder_.getMessage();
8553       }
8554     }
8555     /**
8556      *
8557      *
8558      * <pre>
8559      * Settings for [Google Cloud Client
8560      * libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
8561      * generated from APIs defined as protocol buffers.
8562      * </pre>
8563      *
8564      * <code>.google.api.Publishing publishing = 45;</code>
8565      */
setPublishing(com.google.api.Publishing value)8566     public Builder setPublishing(com.google.api.Publishing value) {
8567       if (publishingBuilder_ == null) {
8568         if (value == null) {
8569           throw new NullPointerException();
8570         }
8571         publishing_ = value;
8572       } else {
8573         publishingBuilder_.setMessage(value);
8574       }
8575       bitField0_ |= 0x01000000;
8576       onChanged();
8577       return this;
8578     }
8579     /**
8580      *
8581      *
8582      * <pre>
8583      * Settings for [Google Cloud Client
8584      * libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
8585      * generated from APIs defined as protocol buffers.
8586      * </pre>
8587      *
8588      * <code>.google.api.Publishing publishing = 45;</code>
8589      */
setPublishing(com.google.api.Publishing.Builder builderForValue)8590     public Builder setPublishing(com.google.api.Publishing.Builder builderForValue) {
8591       if (publishingBuilder_ == null) {
8592         publishing_ = builderForValue.build();
8593       } else {
8594         publishingBuilder_.setMessage(builderForValue.build());
8595       }
8596       bitField0_ |= 0x01000000;
8597       onChanged();
8598       return this;
8599     }
8600     /**
8601      *
8602      *
8603      * <pre>
8604      * Settings for [Google Cloud Client
8605      * libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
8606      * generated from APIs defined as protocol buffers.
8607      * </pre>
8608      *
8609      * <code>.google.api.Publishing publishing = 45;</code>
8610      */
mergePublishing(com.google.api.Publishing value)8611     public Builder mergePublishing(com.google.api.Publishing value) {
8612       if (publishingBuilder_ == null) {
8613         if (((bitField0_ & 0x01000000) != 0)
8614             && publishing_ != null
8615             && publishing_ != com.google.api.Publishing.getDefaultInstance()) {
8616           getPublishingBuilder().mergeFrom(value);
8617         } else {
8618           publishing_ = value;
8619         }
8620       } else {
8621         publishingBuilder_.mergeFrom(value);
8622       }
8623       bitField0_ |= 0x01000000;
8624       onChanged();
8625       return this;
8626     }
8627     /**
8628      *
8629      *
8630      * <pre>
8631      * Settings for [Google Cloud Client
8632      * libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
8633      * generated from APIs defined as protocol buffers.
8634      * </pre>
8635      *
8636      * <code>.google.api.Publishing publishing = 45;</code>
8637      */
clearPublishing()8638     public Builder clearPublishing() {
8639       bitField0_ = (bitField0_ & ~0x01000000);
8640       publishing_ = null;
8641       if (publishingBuilder_ != null) {
8642         publishingBuilder_.dispose();
8643         publishingBuilder_ = null;
8644       }
8645       onChanged();
8646       return this;
8647     }
8648     /**
8649      *
8650      *
8651      * <pre>
8652      * Settings for [Google Cloud Client
8653      * libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
8654      * generated from APIs defined as protocol buffers.
8655      * </pre>
8656      *
8657      * <code>.google.api.Publishing publishing = 45;</code>
8658      */
getPublishingBuilder()8659     public com.google.api.Publishing.Builder getPublishingBuilder() {
8660       bitField0_ |= 0x01000000;
8661       onChanged();
8662       return getPublishingFieldBuilder().getBuilder();
8663     }
8664     /**
8665      *
8666      *
8667      * <pre>
8668      * Settings for [Google Cloud Client
8669      * libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
8670      * generated from APIs defined as protocol buffers.
8671      * </pre>
8672      *
8673      * <code>.google.api.Publishing publishing = 45;</code>
8674      */
getPublishingOrBuilder()8675     public com.google.api.PublishingOrBuilder getPublishingOrBuilder() {
8676       if (publishingBuilder_ != null) {
8677         return publishingBuilder_.getMessageOrBuilder();
8678       } else {
8679         return publishing_ == null ? com.google.api.Publishing.getDefaultInstance() : publishing_;
8680       }
8681     }
8682     /**
8683      *
8684      *
8685      * <pre>
8686      * Settings for [Google Cloud Client
8687      * libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
8688      * generated from APIs defined as protocol buffers.
8689      * </pre>
8690      *
8691      * <code>.google.api.Publishing publishing = 45;</code>
8692      */
8693     private com.google.protobuf.SingleFieldBuilderV3<
8694             com.google.api.Publishing,
8695             com.google.api.Publishing.Builder,
8696             com.google.api.PublishingOrBuilder>
getPublishingFieldBuilder()8697         getPublishingFieldBuilder() {
8698       if (publishingBuilder_ == null) {
8699         publishingBuilder_ =
8700             new com.google.protobuf.SingleFieldBuilderV3<
8701                 com.google.api.Publishing,
8702                 com.google.api.Publishing.Builder,
8703                 com.google.api.PublishingOrBuilder>(
8704                 getPublishing(), getParentForChildren(), isClean());
8705         publishing_ = null;
8706       }
8707       return publishingBuilder_;
8708     }
8709 
8710     private com.google.protobuf.UInt32Value configVersion_;
8711     private com.google.protobuf.SingleFieldBuilderV3<
8712             com.google.protobuf.UInt32Value,
8713             com.google.protobuf.UInt32Value.Builder,
8714             com.google.protobuf.UInt32ValueOrBuilder>
8715         configVersionBuilder_;
8716     /**
8717      *
8718      *
8719      * <pre>
8720      * Obsolete. Do not use.
8721      * This field has no semantic meaning. The service config compiler always
8722      * sets this field to `3`.
8723      * </pre>
8724      *
8725      * <code>.google.protobuf.UInt32Value config_version = 20;</code>
8726      *
8727      * @return Whether the configVersion field is set.
8728      */
hasConfigVersion()8729     public boolean hasConfigVersion() {
8730       return ((bitField0_ & 0x02000000) != 0);
8731     }
8732     /**
8733      *
8734      *
8735      * <pre>
8736      * Obsolete. Do not use.
8737      * This field has no semantic meaning. The service config compiler always
8738      * sets this field to `3`.
8739      * </pre>
8740      *
8741      * <code>.google.protobuf.UInt32Value config_version = 20;</code>
8742      *
8743      * @return The configVersion.
8744      */
getConfigVersion()8745     public com.google.protobuf.UInt32Value getConfigVersion() {
8746       if (configVersionBuilder_ == null) {
8747         return configVersion_ == null
8748             ? com.google.protobuf.UInt32Value.getDefaultInstance()
8749             : configVersion_;
8750       } else {
8751         return configVersionBuilder_.getMessage();
8752       }
8753     }
8754     /**
8755      *
8756      *
8757      * <pre>
8758      * Obsolete. Do not use.
8759      * This field has no semantic meaning. The service config compiler always
8760      * sets this field to `3`.
8761      * </pre>
8762      *
8763      * <code>.google.protobuf.UInt32Value config_version = 20;</code>
8764      */
setConfigVersion(com.google.protobuf.UInt32Value value)8765     public Builder setConfigVersion(com.google.protobuf.UInt32Value value) {
8766       if (configVersionBuilder_ == null) {
8767         if (value == null) {
8768           throw new NullPointerException();
8769         }
8770         configVersion_ = value;
8771       } else {
8772         configVersionBuilder_.setMessage(value);
8773       }
8774       bitField0_ |= 0x02000000;
8775       onChanged();
8776       return this;
8777     }
8778     /**
8779      *
8780      *
8781      * <pre>
8782      * Obsolete. Do not use.
8783      * This field has no semantic meaning. The service config compiler always
8784      * sets this field to `3`.
8785      * </pre>
8786      *
8787      * <code>.google.protobuf.UInt32Value config_version = 20;</code>
8788      */
setConfigVersion(com.google.protobuf.UInt32Value.Builder builderForValue)8789     public Builder setConfigVersion(com.google.protobuf.UInt32Value.Builder builderForValue) {
8790       if (configVersionBuilder_ == null) {
8791         configVersion_ = builderForValue.build();
8792       } else {
8793         configVersionBuilder_.setMessage(builderForValue.build());
8794       }
8795       bitField0_ |= 0x02000000;
8796       onChanged();
8797       return this;
8798     }
8799     /**
8800      *
8801      *
8802      * <pre>
8803      * Obsolete. Do not use.
8804      * This field has no semantic meaning. The service config compiler always
8805      * sets this field to `3`.
8806      * </pre>
8807      *
8808      * <code>.google.protobuf.UInt32Value config_version = 20;</code>
8809      */
mergeConfigVersion(com.google.protobuf.UInt32Value value)8810     public Builder mergeConfigVersion(com.google.protobuf.UInt32Value value) {
8811       if (configVersionBuilder_ == null) {
8812         if (((bitField0_ & 0x02000000) != 0)
8813             && configVersion_ != null
8814             && configVersion_ != com.google.protobuf.UInt32Value.getDefaultInstance()) {
8815           getConfigVersionBuilder().mergeFrom(value);
8816         } else {
8817           configVersion_ = value;
8818         }
8819       } else {
8820         configVersionBuilder_.mergeFrom(value);
8821       }
8822       bitField0_ |= 0x02000000;
8823       onChanged();
8824       return this;
8825     }
8826     /**
8827      *
8828      *
8829      * <pre>
8830      * Obsolete. Do not use.
8831      * This field has no semantic meaning. The service config compiler always
8832      * sets this field to `3`.
8833      * </pre>
8834      *
8835      * <code>.google.protobuf.UInt32Value config_version = 20;</code>
8836      */
clearConfigVersion()8837     public Builder clearConfigVersion() {
8838       bitField0_ = (bitField0_ & ~0x02000000);
8839       configVersion_ = null;
8840       if (configVersionBuilder_ != null) {
8841         configVersionBuilder_.dispose();
8842         configVersionBuilder_ = null;
8843       }
8844       onChanged();
8845       return this;
8846     }
8847     /**
8848      *
8849      *
8850      * <pre>
8851      * Obsolete. Do not use.
8852      * This field has no semantic meaning. The service config compiler always
8853      * sets this field to `3`.
8854      * </pre>
8855      *
8856      * <code>.google.protobuf.UInt32Value config_version = 20;</code>
8857      */
getConfigVersionBuilder()8858     public com.google.protobuf.UInt32Value.Builder getConfigVersionBuilder() {
8859       bitField0_ |= 0x02000000;
8860       onChanged();
8861       return getConfigVersionFieldBuilder().getBuilder();
8862     }
8863     /**
8864      *
8865      *
8866      * <pre>
8867      * Obsolete. Do not use.
8868      * This field has no semantic meaning. The service config compiler always
8869      * sets this field to `3`.
8870      * </pre>
8871      *
8872      * <code>.google.protobuf.UInt32Value config_version = 20;</code>
8873      */
getConfigVersionOrBuilder()8874     public com.google.protobuf.UInt32ValueOrBuilder getConfigVersionOrBuilder() {
8875       if (configVersionBuilder_ != null) {
8876         return configVersionBuilder_.getMessageOrBuilder();
8877       } else {
8878         return configVersion_ == null
8879             ? com.google.protobuf.UInt32Value.getDefaultInstance()
8880             : configVersion_;
8881       }
8882     }
8883     /**
8884      *
8885      *
8886      * <pre>
8887      * Obsolete. Do not use.
8888      * This field has no semantic meaning. The service config compiler always
8889      * sets this field to `3`.
8890      * </pre>
8891      *
8892      * <code>.google.protobuf.UInt32Value config_version = 20;</code>
8893      */
8894     private com.google.protobuf.SingleFieldBuilderV3<
8895             com.google.protobuf.UInt32Value,
8896             com.google.protobuf.UInt32Value.Builder,
8897             com.google.protobuf.UInt32ValueOrBuilder>
getConfigVersionFieldBuilder()8898         getConfigVersionFieldBuilder() {
8899       if (configVersionBuilder_ == null) {
8900         configVersionBuilder_ =
8901             new com.google.protobuf.SingleFieldBuilderV3<
8902                 com.google.protobuf.UInt32Value,
8903                 com.google.protobuf.UInt32Value.Builder,
8904                 com.google.protobuf.UInt32ValueOrBuilder>(
8905                 getConfigVersion(), getParentForChildren(), isClean());
8906         configVersion_ = null;
8907       }
8908       return configVersionBuilder_;
8909     }
8910 
8911     @java.lang.Override
setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)8912     public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) {
8913       return super.setUnknownFields(unknownFields);
8914     }
8915 
8916     @java.lang.Override
mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields)8917     public final Builder mergeUnknownFields(
8918         final com.google.protobuf.UnknownFieldSet unknownFields) {
8919       return super.mergeUnknownFields(unknownFields);
8920     }
8921 
8922     // @@protoc_insertion_point(builder_scope:google.api.Service)
8923   }
8924 
8925   // @@protoc_insertion_point(class_scope:google.api.Service)
8926   private static final com.google.api.Service DEFAULT_INSTANCE;
8927 
8928   static {
8929     DEFAULT_INSTANCE = new com.google.api.Service();
8930   }
8931 
getDefaultInstance()8932   public static com.google.api.Service getDefaultInstance() {
8933     return DEFAULT_INSTANCE;
8934   }
8935 
8936   private static final com.google.protobuf.Parser<Service> PARSER =
8937       new com.google.protobuf.AbstractParser<Service>() {
8938         @java.lang.Override
8939         public Service parsePartialFrom(
8940             com.google.protobuf.CodedInputStream input,
8941             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8942             throws com.google.protobuf.InvalidProtocolBufferException {
8943           Builder builder = newBuilder();
8944           try {
8945             builder.mergeFrom(input, extensionRegistry);
8946           } catch (com.google.protobuf.InvalidProtocolBufferException e) {
8947             throw e.setUnfinishedMessage(builder.buildPartial());
8948           } catch (com.google.protobuf.UninitializedMessageException e) {
8949             throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
8950           } catch (java.io.IOException e) {
8951             throw new com.google.protobuf.InvalidProtocolBufferException(e)
8952                 .setUnfinishedMessage(builder.buildPartial());
8953           }
8954           return builder.buildPartial();
8955         }
8956       };
8957 
parser()8958   public static com.google.protobuf.Parser<Service> parser() {
8959     return PARSER;
8960   }
8961 
8962   @java.lang.Override
getParserForType()8963   public com.google.protobuf.Parser<Service> getParserForType() {
8964     return PARSER;
8965   }
8966 
8967   @java.lang.Override
getDefaultInstanceForType()8968   public com.google.api.Service getDefaultInstanceForType() {
8969     return DEFAULT_INSTANCE;
8970   }
8971 }
8972