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