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