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