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