• 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  * </pre>
26  *
27  * Protobuf type {@code google.cloud.compute.v1.RouterInterface}
28  */
29 public final class RouterInterface extends com.google.protobuf.GeneratedMessageV3
30     implements
31     // @@protoc_insertion_point(message_implements:google.cloud.compute.v1.RouterInterface)
32     RouterInterfaceOrBuilder {
33   private static final long serialVersionUID = 0L;
34   // Use RouterInterface.newBuilder() to construct.
RouterInterface(com.google.protobuf.GeneratedMessageV3.Builder<?> builder)35   private RouterInterface(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
36     super(builder);
37   }
38 
RouterInterface()39   private RouterInterface() {
40     ipRange_ = "";
41     linkedInterconnectAttachment_ = "";
42     linkedVpnTunnel_ = "";
43     managementType_ = "";
44     name_ = "";
45     privateIpAddress_ = "";
46     redundantInterface_ = "";
47     subnetwork_ = "";
48   }
49 
50   @java.lang.Override
51   @SuppressWarnings({"unused"})
newInstance(UnusedPrivateParameter unused)52   protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
53     return new RouterInterface();
54   }
55 
56   @java.lang.Override
getUnknownFields()57   public final com.google.protobuf.UnknownFieldSet getUnknownFields() {
58     return this.unknownFields;
59   }
60 
getDescriptor()61   public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
62     return com.google.cloud.compute.v1.Compute
63         .internal_static_google_cloud_compute_v1_RouterInterface_descriptor;
64   }
65 
66   @java.lang.Override
67   protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()68       internalGetFieldAccessorTable() {
69     return com.google.cloud.compute.v1.Compute
70         .internal_static_google_cloud_compute_v1_RouterInterface_fieldAccessorTable
71         .ensureFieldAccessorsInitialized(
72             com.google.cloud.compute.v1.RouterInterface.class,
73             com.google.cloud.compute.v1.RouterInterface.Builder.class);
74   }
75 
76   /**
77    *
78    *
79    * <pre>
80    * [Output Only] The resource that configures and manages this interface. - MANAGED_BY_USER is the default value and can be managed directly by users. - MANAGED_BY_ATTACHMENT is an interface that is configured and managed by Cloud Interconnect, specifically, by an InterconnectAttachment of type PARTNER. Google automatically creates, updates, and deletes this type of interface when the PARTNER InterconnectAttachment is created, updated, or deleted.
81    * </pre>
82    *
83    * Protobuf enum {@code google.cloud.compute.v1.RouterInterface.ManagementType}
84    */
85   public enum ManagementType implements com.google.protobuf.ProtocolMessageEnum {
86     /**
87      *
88      *
89      * <pre>
90      * A value indicating that the enum field is not set.
91      * </pre>
92      *
93      * <code>UNDEFINED_MANAGEMENT_TYPE = 0;</code>
94      */
95     UNDEFINED_MANAGEMENT_TYPE(0),
96     /**
97      *
98      *
99      * <pre>
100      * The interface is automatically created for PARTNER type InterconnectAttachment, Google will automatically create/update/delete this interface when the PARTNER InterconnectAttachment is created/provisioned/deleted. This type of interface cannot be manually managed by user.
101      * </pre>
102      *
103      * <code>MANAGED_BY_ATTACHMENT = 458926411;</code>
104      */
105     MANAGED_BY_ATTACHMENT(458926411),
106     /**
107      *
108      *
109      * <pre>
110      * Default value, the interface is manually created and managed by user.
111      * </pre>
112      *
113      * <code>MANAGED_BY_USER = 317294067;</code>
114      */
115     MANAGED_BY_USER(317294067),
116     UNRECOGNIZED(-1),
117     ;
118 
119     /**
120      *
121      *
122      * <pre>
123      * A value indicating that the enum field is not set.
124      * </pre>
125      *
126      * <code>UNDEFINED_MANAGEMENT_TYPE = 0;</code>
127      */
128     public static final int UNDEFINED_MANAGEMENT_TYPE_VALUE = 0;
129     /**
130      *
131      *
132      * <pre>
133      * The interface is automatically created for PARTNER type InterconnectAttachment, Google will automatically create/update/delete this interface when the PARTNER InterconnectAttachment is created/provisioned/deleted. This type of interface cannot be manually managed by user.
134      * </pre>
135      *
136      * <code>MANAGED_BY_ATTACHMENT = 458926411;</code>
137      */
138     public static final int MANAGED_BY_ATTACHMENT_VALUE = 458926411;
139     /**
140      *
141      *
142      * <pre>
143      * Default value, the interface is manually created and managed by user.
144      * </pre>
145      *
146      * <code>MANAGED_BY_USER = 317294067;</code>
147      */
148     public static final int MANAGED_BY_USER_VALUE = 317294067;
149 
getNumber()150     public final int getNumber() {
151       if (this == UNRECOGNIZED) {
152         throw new java.lang.IllegalArgumentException(
153             "Can't get the number of an unknown enum value.");
154       }
155       return value;
156     }
157 
158     /**
159      * @param value The numeric wire value of the corresponding enum entry.
160      * @return The enum associated with the given numeric wire value.
161      * @deprecated Use {@link #forNumber(int)} instead.
162      */
163     @java.lang.Deprecated
valueOf(int value)164     public static ManagementType valueOf(int value) {
165       return forNumber(value);
166     }
167 
168     /**
169      * @param value The numeric wire value of the corresponding enum entry.
170      * @return The enum associated with the given numeric wire value.
171      */
forNumber(int value)172     public static ManagementType forNumber(int value) {
173       switch (value) {
174         case 0:
175           return UNDEFINED_MANAGEMENT_TYPE;
176         case 458926411:
177           return MANAGED_BY_ATTACHMENT;
178         case 317294067:
179           return MANAGED_BY_USER;
180         default:
181           return null;
182       }
183     }
184 
internalGetValueMap()185     public static com.google.protobuf.Internal.EnumLiteMap<ManagementType> internalGetValueMap() {
186       return internalValueMap;
187     }
188 
189     private static final com.google.protobuf.Internal.EnumLiteMap<ManagementType> internalValueMap =
190         new com.google.protobuf.Internal.EnumLiteMap<ManagementType>() {
191           public ManagementType findValueByNumber(int number) {
192             return ManagementType.forNumber(number);
193           }
194         };
195 
getValueDescriptor()196     public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() {
197       if (this == UNRECOGNIZED) {
198         throw new java.lang.IllegalStateException(
199             "Can't get the descriptor of an unrecognized enum value.");
200       }
201       return getDescriptor().getValues().get(ordinal());
202     }
203 
getDescriptorForType()204     public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() {
205       return getDescriptor();
206     }
207 
getDescriptor()208     public static final com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() {
209       return com.google.cloud.compute.v1.RouterInterface.getDescriptor().getEnumTypes().get(0);
210     }
211 
212     private static final ManagementType[] VALUES = values();
213 
valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc)214     public static ManagementType valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
215       if (desc.getType() != getDescriptor()) {
216         throw new java.lang.IllegalArgumentException("EnumValueDescriptor is not for this type.");
217       }
218       if (desc.getIndex() == -1) {
219         return UNRECOGNIZED;
220       }
221       return VALUES[desc.getIndex()];
222     }
223 
224     private final int value;
225 
ManagementType(int value)226     private ManagementType(int value) {
227       this.value = value;
228     }
229 
230     // @@protoc_insertion_point(enum_scope:google.cloud.compute.v1.RouterInterface.ManagementType)
231   }
232 
233   private int bitField0_;
234   public static final int IP_RANGE_FIELD_NUMBER = 145092645;
235 
236   @SuppressWarnings("serial")
237   private volatile java.lang.Object ipRange_ = "";
238   /**
239    *
240    *
241    * <pre>
242    * IP address and range of the interface. The IP range must be in the RFC3927 link-local IP address space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface.
243    * </pre>
244    *
245    * <code>optional string ip_range = 145092645;</code>
246    *
247    * @return Whether the ipRange field is set.
248    */
249   @java.lang.Override
hasIpRange()250   public boolean hasIpRange() {
251     return ((bitField0_ & 0x00000001) != 0);
252   }
253   /**
254    *
255    *
256    * <pre>
257    * IP address and range of the interface. The IP range must be in the RFC3927 link-local IP address space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface.
258    * </pre>
259    *
260    * <code>optional string ip_range = 145092645;</code>
261    *
262    * @return The ipRange.
263    */
264   @java.lang.Override
getIpRange()265   public java.lang.String getIpRange() {
266     java.lang.Object ref = ipRange_;
267     if (ref instanceof java.lang.String) {
268       return (java.lang.String) ref;
269     } else {
270       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
271       java.lang.String s = bs.toStringUtf8();
272       ipRange_ = s;
273       return s;
274     }
275   }
276   /**
277    *
278    *
279    * <pre>
280    * IP address and range of the interface. The IP range must be in the RFC3927 link-local IP address space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface.
281    * </pre>
282    *
283    * <code>optional string ip_range = 145092645;</code>
284    *
285    * @return The bytes for ipRange.
286    */
287   @java.lang.Override
getIpRangeBytes()288   public com.google.protobuf.ByteString getIpRangeBytes() {
289     java.lang.Object ref = ipRange_;
290     if (ref instanceof java.lang.String) {
291       com.google.protobuf.ByteString b =
292           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
293       ipRange_ = b;
294       return b;
295     } else {
296       return (com.google.protobuf.ByteString) ref;
297     }
298   }
299 
300   public static final int LINKED_INTERCONNECT_ATTACHMENT_FIELD_NUMBER = 501085518;
301 
302   @SuppressWarnings("serial")
303   private volatile java.lang.Object linkedInterconnectAttachment_ = "";
304   /**
305    *
306    *
307    * <pre>
308    * URI of the linked Interconnect attachment. It must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.
309    * </pre>
310    *
311    * <code>optional string linked_interconnect_attachment = 501085518;</code>
312    *
313    * @return Whether the linkedInterconnectAttachment field is set.
314    */
315   @java.lang.Override
hasLinkedInterconnectAttachment()316   public boolean hasLinkedInterconnectAttachment() {
317     return ((bitField0_ & 0x00000002) != 0);
318   }
319   /**
320    *
321    *
322    * <pre>
323    * URI of the linked Interconnect attachment. It must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.
324    * </pre>
325    *
326    * <code>optional string linked_interconnect_attachment = 501085518;</code>
327    *
328    * @return The linkedInterconnectAttachment.
329    */
330   @java.lang.Override
getLinkedInterconnectAttachment()331   public java.lang.String getLinkedInterconnectAttachment() {
332     java.lang.Object ref = linkedInterconnectAttachment_;
333     if (ref instanceof java.lang.String) {
334       return (java.lang.String) ref;
335     } else {
336       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
337       java.lang.String s = bs.toStringUtf8();
338       linkedInterconnectAttachment_ = s;
339       return s;
340     }
341   }
342   /**
343    *
344    *
345    * <pre>
346    * URI of the linked Interconnect attachment. It must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.
347    * </pre>
348    *
349    * <code>optional string linked_interconnect_attachment = 501085518;</code>
350    *
351    * @return The bytes for linkedInterconnectAttachment.
352    */
353   @java.lang.Override
getLinkedInterconnectAttachmentBytes()354   public com.google.protobuf.ByteString getLinkedInterconnectAttachmentBytes() {
355     java.lang.Object ref = linkedInterconnectAttachment_;
356     if (ref instanceof java.lang.String) {
357       com.google.protobuf.ByteString b =
358           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
359       linkedInterconnectAttachment_ = b;
360       return b;
361     } else {
362       return (com.google.protobuf.ByteString) ref;
363     }
364   }
365 
366   public static final int LINKED_VPN_TUNNEL_FIELD_NUMBER = 352296953;
367 
368   @SuppressWarnings("serial")
369   private volatile java.lang.Object linkedVpnTunnel_ = "";
370   /**
371    *
372    *
373    * <pre>
374    * URI of the linked VPN tunnel, which must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.
375    * </pre>
376    *
377    * <code>optional string linked_vpn_tunnel = 352296953;</code>
378    *
379    * @return Whether the linkedVpnTunnel field is set.
380    */
381   @java.lang.Override
hasLinkedVpnTunnel()382   public boolean hasLinkedVpnTunnel() {
383     return ((bitField0_ & 0x00000004) != 0);
384   }
385   /**
386    *
387    *
388    * <pre>
389    * URI of the linked VPN tunnel, which must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.
390    * </pre>
391    *
392    * <code>optional string linked_vpn_tunnel = 352296953;</code>
393    *
394    * @return The linkedVpnTunnel.
395    */
396   @java.lang.Override
getLinkedVpnTunnel()397   public java.lang.String getLinkedVpnTunnel() {
398     java.lang.Object ref = linkedVpnTunnel_;
399     if (ref instanceof java.lang.String) {
400       return (java.lang.String) ref;
401     } else {
402       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
403       java.lang.String s = bs.toStringUtf8();
404       linkedVpnTunnel_ = s;
405       return s;
406     }
407   }
408   /**
409    *
410    *
411    * <pre>
412    * URI of the linked VPN tunnel, which must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.
413    * </pre>
414    *
415    * <code>optional string linked_vpn_tunnel = 352296953;</code>
416    *
417    * @return The bytes for linkedVpnTunnel.
418    */
419   @java.lang.Override
getLinkedVpnTunnelBytes()420   public com.google.protobuf.ByteString getLinkedVpnTunnelBytes() {
421     java.lang.Object ref = linkedVpnTunnel_;
422     if (ref instanceof java.lang.String) {
423       com.google.protobuf.ByteString b =
424           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
425       linkedVpnTunnel_ = b;
426       return b;
427     } else {
428       return (com.google.protobuf.ByteString) ref;
429     }
430   }
431 
432   public static final int MANAGEMENT_TYPE_FIELD_NUMBER = 173703606;
433 
434   @SuppressWarnings("serial")
435   private volatile java.lang.Object managementType_ = "";
436   /**
437    *
438    *
439    * <pre>
440    * [Output Only] The resource that configures and manages this interface. - MANAGED_BY_USER is the default value and can be managed directly by users. - MANAGED_BY_ATTACHMENT is an interface that is configured and managed by Cloud Interconnect, specifically, by an InterconnectAttachment of type PARTNER. Google automatically creates, updates, and deletes this type of interface when the PARTNER InterconnectAttachment is created, updated, or deleted.
441    * Check the ManagementType enum for the list of possible values.
442    * </pre>
443    *
444    * <code>optional string management_type = 173703606;</code>
445    *
446    * @return Whether the managementType field is set.
447    */
448   @java.lang.Override
hasManagementType()449   public boolean hasManagementType() {
450     return ((bitField0_ & 0x00000008) != 0);
451   }
452   /**
453    *
454    *
455    * <pre>
456    * [Output Only] The resource that configures and manages this interface. - MANAGED_BY_USER is the default value and can be managed directly by users. - MANAGED_BY_ATTACHMENT is an interface that is configured and managed by Cloud Interconnect, specifically, by an InterconnectAttachment of type PARTNER. Google automatically creates, updates, and deletes this type of interface when the PARTNER InterconnectAttachment is created, updated, or deleted.
457    * Check the ManagementType enum for the list of possible values.
458    * </pre>
459    *
460    * <code>optional string management_type = 173703606;</code>
461    *
462    * @return The managementType.
463    */
464   @java.lang.Override
getManagementType()465   public java.lang.String getManagementType() {
466     java.lang.Object ref = managementType_;
467     if (ref instanceof java.lang.String) {
468       return (java.lang.String) ref;
469     } else {
470       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
471       java.lang.String s = bs.toStringUtf8();
472       managementType_ = s;
473       return s;
474     }
475   }
476   /**
477    *
478    *
479    * <pre>
480    * [Output Only] The resource that configures and manages this interface. - MANAGED_BY_USER is the default value and can be managed directly by users. - MANAGED_BY_ATTACHMENT is an interface that is configured and managed by Cloud Interconnect, specifically, by an InterconnectAttachment of type PARTNER. Google automatically creates, updates, and deletes this type of interface when the PARTNER InterconnectAttachment is created, updated, or deleted.
481    * Check the ManagementType enum for the list of possible values.
482    * </pre>
483    *
484    * <code>optional string management_type = 173703606;</code>
485    *
486    * @return The bytes for managementType.
487    */
488   @java.lang.Override
getManagementTypeBytes()489   public com.google.protobuf.ByteString getManagementTypeBytes() {
490     java.lang.Object ref = managementType_;
491     if (ref instanceof java.lang.String) {
492       com.google.protobuf.ByteString b =
493           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
494       managementType_ = b;
495       return b;
496     } else {
497       return (com.google.protobuf.ByteString) ref;
498     }
499   }
500 
501   public static final int NAME_FIELD_NUMBER = 3373707;
502 
503   @SuppressWarnings("serial")
504   private volatile java.lang.Object name_ = "";
505   /**
506    *
507    *
508    * <pre>
509    * Name of this interface entry. 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.
510    * </pre>
511    *
512    * <code>optional string name = 3373707;</code>
513    *
514    * @return Whether the name field is set.
515    */
516   @java.lang.Override
hasName()517   public boolean hasName() {
518     return ((bitField0_ & 0x00000010) != 0);
519   }
520   /**
521    *
522    *
523    * <pre>
524    * Name of this interface entry. 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.
525    * </pre>
526    *
527    * <code>optional string name = 3373707;</code>
528    *
529    * @return The name.
530    */
531   @java.lang.Override
getName()532   public java.lang.String getName() {
533     java.lang.Object ref = name_;
534     if (ref instanceof java.lang.String) {
535       return (java.lang.String) ref;
536     } else {
537       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
538       java.lang.String s = bs.toStringUtf8();
539       name_ = s;
540       return s;
541     }
542   }
543   /**
544    *
545    *
546    * <pre>
547    * Name of this interface entry. 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.
548    * </pre>
549    *
550    * <code>optional string name = 3373707;</code>
551    *
552    * @return The bytes for name.
553    */
554   @java.lang.Override
getNameBytes()555   public com.google.protobuf.ByteString getNameBytes() {
556     java.lang.Object ref = name_;
557     if (ref instanceof java.lang.String) {
558       com.google.protobuf.ByteString b =
559           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
560       name_ = b;
561       return b;
562     } else {
563       return (com.google.protobuf.ByteString) ref;
564     }
565   }
566 
567   public static final int PRIVATE_IP_ADDRESS_FIELD_NUMBER = 100854040;
568 
569   @SuppressWarnings("serial")
570   private volatile java.lang.Object privateIpAddress_ = "";
571   /**
572    *
573    *
574    * <pre>
575    * The regional private internal IP address that is used to establish BGP sessions to a VM instance acting as a third-party Router Appliance, such as a Next Gen Firewall, a Virtual Router, or an SD-WAN VM.
576    * </pre>
577    *
578    * <code>optional string private_ip_address = 100854040;</code>
579    *
580    * @return Whether the privateIpAddress field is set.
581    */
582   @java.lang.Override
hasPrivateIpAddress()583   public boolean hasPrivateIpAddress() {
584     return ((bitField0_ & 0x00000020) != 0);
585   }
586   /**
587    *
588    *
589    * <pre>
590    * The regional private internal IP address that is used to establish BGP sessions to a VM instance acting as a third-party Router Appliance, such as a Next Gen Firewall, a Virtual Router, or an SD-WAN VM.
591    * </pre>
592    *
593    * <code>optional string private_ip_address = 100854040;</code>
594    *
595    * @return The privateIpAddress.
596    */
597   @java.lang.Override
getPrivateIpAddress()598   public java.lang.String getPrivateIpAddress() {
599     java.lang.Object ref = privateIpAddress_;
600     if (ref instanceof java.lang.String) {
601       return (java.lang.String) ref;
602     } else {
603       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
604       java.lang.String s = bs.toStringUtf8();
605       privateIpAddress_ = s;
606       return s;
607     }
608   }
609   /**
610    *
611    *
612    * <pre>
613    * The regional private internal IP address that is used to establish BGP sessions to a VM instance acting as a third-party Router Appliance, such as a Next Gen Firewall, a Virtual Router, or an SD-WAN VM.
614    * </pre>
615    *
616    * <code>optional string private_ip_address = 100854040;</code>
617    *
618    * @return The bytes for privateIpAddress.
619    */
620   @java.lang.Override
getPrivateIpAddressBytes()621   public com.google.protobuf.ByteString getPrivateIpAddressBytes() {
622     java.lang.Object ref = privateIpAddress_;
623     if (ref instanceof java.lang.String) {
624       com.google.protobuf.ByteString b =
625           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
626       privateIpAddress_ = b;
627       return b;
628     } else {
629       return (com.google.protobuf.ByteString) ref;
630     }
631   }
632 
633   public static final int REDUNDANT_INTERFACE_FIELD_NUMBER = 523187303;
634 
635   @SuppressWarnings("serial")
636   private volatile java.lang.Object redundantInterface_ = "";
637   /**
638    *
639    *
640    * <pre>
641    * Name of the interface that will be redundant with the current interface you are creating. The redundantInterface must belong to the same Cloud Router as the interface here. To establish the BGP session to a Router Appliance VM, you must create two BGP peers. The two BGP peers must be attached to two separate interfaces that are redundant with each other. The redundant_interface must be 1-63 characters long, and comply with RFC1035. Specifically, the redundant_interface 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.
642    * </pre>
643    *
644    * <code>optional string redundant_interface = 523187303;</code>
645    *
646    * @return Whether the redundantInterface field is set.
647    */
648   @java.lang.Override
hasRedundantInterface()649   public boolean hasRedundantInterface() {
650     return ((bitField0_ & 0x00000040) != 0);
651   }
652   /**
653    *
654    *
655    * <pre>
656    * Name of the interface that will be redundant with the current interface you are creating. The redundantInterface must belong to the same Cloud Router as the interface here. To establish the BGP session to a Router Appliance VM, you must create two BGP peers. The two BGP peers must be attached to two separate interfaces that are redundant with each other. The redundant_interface must be 1-63 characters long, and comply with RFC1035. Specifically, the redundant_interface 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.
657    * </pre>
658    *
659    * <code>optional string redundant_interface = 523187303;</code>
660    *
661    * @return The redundantInterface.
662    */
663   @java.lang.Override
getRedundantInterface()664   public java.lang.String getRedundantInterface() {
665     java.lang.Object ref = redundantInterface_;
666     if (ref instanceof java.lang.String) {
667       return (java.lang.String) ref;
668     } else {
669       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
670       java.lang.String s = bs.toStringUtf8();
671       redundantInterface_ = s;
672       return s;
673     }
674   }
675   /**
676    *
677    *
678    * <pre>
679    * Name of the interface that will be redundant with the current interface you are creating. The redundantInterface must belong to the same Cloud Router as the interface here. To establish the BGP session to a Router Appliance VM, you must create two BGP peers. The two BGP peers must be attached to two separate interfaces that are redundant with each other. The redundant_interface must be 1-63 characters long, and comply with RFC1035. Specifically, the redundant_interface 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.
680    * </pre>
681    *
682    * <code>optional string redundant_interface = 523187303;</code>
683    *
684    * @return The bytes for redundantInterface.
685    */
686   @java.lang.Override
getRedundantInterfaceBytes()687   public com.google.protobuf.ByteString getRedundantInterfaceBytes() {
688     java.lang.Object ref = redundantInterface_;
689     if (ref instanceof java.lang.String) {
690       com.google.protobuf.ByteString b =
691           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
692       redundantInterface_ = b;
693       return b;
694     } else {
695       return (com.google.protobuf.ByteString) ref;
696     }
697   }
698 
699   public static final int SUBNETWORK_FIELD_NUMBER = 307827694;
700 
701   @SuppressWarnings("serial")
702   private volatile java.lang.Object subnetwork_ = "";
703   /**
704    *
705    *
706    * <pre>
707    * The URI of the subnetwork resource that this interface belongs to, which must be in the same region as the Cloud Router. When you establish a BGP session to a VM instance using this interface, the VM instance must belong to the same subnetwork as the subnetwork specified here.
708    * </pre>
709    *
710    * <code>optional string subnetwork = 307827694;</code>
711    *
712    * @return Whether the subnetwork field is set.
713    */
714   @java.lang.Override
hasSubnetwork()715   public boolean hasSubnetwork() {
716     return ((bitField0_ & 0x00000080) != 0);
717   }
718   /**
719    *
720    *
721    * <pre>
722    * The URI of the subnetwork resource that this interface belongs to, which must be in the same region as the Cloud Router. When you establish a BGP session to a VM instance using this interface, the VM instance must belong to the same subnetwork as the subnetwork specified here.
723    * </pre>
724    *
725    * <code>optional string subnetwork = 307827694;</code>
726    *
727    * @return The subnetwork.
728    */
729   @java.lang.Override
getSubnetwork()730   public java.lang.String getSubnetwork() {
731     java.lang.Object ref = subnetwork_;
732     if (ref instanceof java.lang.String) {
733       return (java.lang.String) ref;
734     } else {
735       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
736       java.lang.String s = bs.toStringUtf8();
737       subnetwork_ = s;
738       return s;
739     }
740   }
741   /**
742    *
743    *
744    * <pre>
745    * The URI of the subnetwork resource that this interface belongs to, which must be in the same region as the Cloud Router. When you establish a BGP session to a VM instance using this interface, the VM instance must belong to the same subnetwork as the subnetwork specified here.
746    * </pre>
747    *
748    * <code>optional string subnetwork = 307827694;</code>
749    *
750    * @return The bytes for subnetwork.
751    */
752   @java.lang.Override
getSubnetworkBytes()753   public com.google.protobuf.ByteString getSubnetworkBytes() {
754     java.lang.Object ref = subnetwork_;
755     if (ref instanceof java.lang.String) {
756       com.google.protobuf.ByteString b =
757           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
758       subnetwork_ = b;
759       return b;
760     } else {
761       return (com.google.protobuf.ByteString) ref;
762     }
763   }
764 
765   private byte memoizedIsInitialized = -1;
766 
767   @java.lang.Override
isInitialized()768   public final boolean isInitialized() {
769     byte isInitialized = memoizedIsInitialized;
770     if (isInitialized == 1) return true;
771     if (isInitialized == 0) return false;
772 
773     memoizedIsInitialized = 1;
774     return true;
775   }
776 
777   @java.lang.Override
writeTo(com.google.protobuf.CodedOutputStream output)778   public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
779     if (((bitField0_ & 0x00000010) != 0)) {
780       com.google.protobuf.GeneratedMessageV3.writeString(output, 3373707, name_);
781     }
782     if (((bitField0_ & 0x00000020) != 0)) {
783       com.google.protobuf.GeneratedMessageV3.writeString(output, 100854040, privateIpAddress_);
784     }
785     if (((bitField0_ & 0x00000001) != 0)) {
786       com.google.protobuf.GeneratedMessageV3.writeString(output, 145092645, ipRange_);
787     }
788     if (((bitField0_ & 0x00000008) != 0)) {
789       com.google.protobuf.GeneratedMessageV3.writeString(output, 173703606, managementType_);
790     }
791     if (((bitField0_ & 0x00000080) != 0)) {
792       com.google.protobuf.GeneratedMessageV3.writeString(output, 307827694, subnetwork_);
793     }
794     if (((bitField0_ & 0x00000004) != 0)) {
795       com.google.protobuf.GeneratedMessageV3.writeString(output, 352296953, linkedVpnTunnel_);
796     }
797     if (((bitField0_ & 0x00000002) != 0)) {
798       com.google.protobuf.GeneratedMessageV3.writeString(
799           output, 501085518, linkedInterconnectAttachment_);
800     }
801     if (((bitField0_ & 0x00000040) != 0)) {
802       com.google.protobuf.GeneratedMessageV3.writeString(output, 523187303, redundantInterface_);
803     }
804     getUnknownFields().writeTo(output);
805   }
806 
807   @java.lang.Override
getSerializedSize()808   public int getSerializedSize() {
809     int size = memoizedSize;
810     if (size != -1) return size;
811 
812     size = 0;
813     if (((bitField0_ & 0x00000010) != 0)) {
814       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3373707, name_);
815     }
816     if (((bitField0_ & 0x00000020) != 0)) {
817       size +=
818           com.google.protobuf.GeneratedMessageV3.computeStringSize(100854040, privateIpAddress_);
819     }
820     if (((bitField0_ & 0x00000001) != 0)) {
821       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(145092645, ipRange_);
822     }
823     if (((bitField0_ & 0x00000008) != 0)) {
824       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(173703606, managementType_);
825     }
826     if (((bitField0_ & 0x00000080) != 0)) {
827       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(307827694, subnetwork_);
828     }
829     if (((bitField0_ & 0x00000004) != 0)) {
830       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(352296953, linkedVpnTunnel_);
831     }
832     if (((bitField0_ & 0x00000002) != 0)) {
833       size +=
834           com.google.protobuf.GeneratedMessageV3.computeStringSize(
835               501085518, linkedInterconnectAttachment_);
836     }
837     if (((bitField0_ & 0x00000040) != 0)) {
838       size +=
839           com.google.protobuf.GeneratedMessageV3.computeStringSize(523187303, redundantInterface_);
840     }
841     size += getUnknownFields().getSerializedSize();
842     memoizedSize = size;
843     return size;
844   }
845 
846   @java.lang.Override
equals(final java.lang.Object obj)847   public boolean equals(final java.lang.Object obj) {
848     if (obj == this) {
849       return true;
850     }
851     if (!(obj instanceof com.google.cloud.compute.v1.RouterInterface)) {
852       return super.equals(obj);
853     }
854     com.google.cloud.compute.v1.RouterInterface other =
855         (com.google.cloud.compute.v1.RouterInterface) obj;
856 
857     if (hasIpRange() != other.hasIpRange()) return false;
858     if (hasIpRange()) {
859       if (!getIpRange().equals(other.getIpRange())) return false;
860     }
861     if (hasLinkedInterconnectAttachment() != other.hasLinkedInterconnectAttachment()) return false;
862     if (hasLinkedInterconnectAttachment()) {
863       if (!getLinkedInterconnectAttachment().equals(other.getLinkedInterconnectAttachment()))
864         return false;
865     }
866     if (hasLinkedVpnTunnel() != other.hasLinkedVpnTunnel()) return false;
867     if (hasLinkedVpnTunnel()) {
868       if (!getLinkedVpnTunnel().equals(other.getLinkedVpnTunnel())) return false;
869     }
870     if (hasManagementType() != other.hasManagementType()) return false;
871     if (hasManagementType()) {
872       if (!getManagementType().equals(other.getManagementType())) return false;
873     }
874     if (hasName() != other.hasName()) return false;
875     if (hasName()) {
876       if (!getName().equals(other.getName())) return false;
877     }
878     if (hasPrivateIpAddress() != other.hasPrivateIpAddress()) return false;
879     if (hasPrivateIpAddress()) {
880       if (!getPrivateIpAddress().equals(other.getPrivateIpAddress())) return false;
881     }
882     if (hasRedundantInterface() != other.hasRedundantInterface()) return false;
883     if (hasRedundantInterface()) {
884       if (!getRedundantInterface().equals(other.getRedundantInterface())) return false;
885     }
886     if (hasSubnetwork() != other.hasSubnetwork()) return false;
887     if (hasSubnetwork()) {
888       if (!getSubnetwork().equals(other.getSubnetwork())) return false;
889     }
890     if (!getUnknownFields().equals(other.getUnknownFields())) return false;
891     return true;
892   }
893 
894   @java.lang.Override
hashCode()895   public int hashCode() {
896     if (memoizedHashCode != 0) {
897       return memoizedHashCode;
898     }
899     int hash = 41;
900     hash = (19 * hash) + getDescriptor().hashCode();
901     if (hasIpRange()) {
902       hash = (37 * hash) + IP_RANGE_FIELD_NUMBER;
903       hash = (53 * hash) + getIpRange().hashCode();
904     }
905     if (hasLinkedInterconnectAttachment()) {
906       hash = (37 * hash) + LINKED_INTERCONNECT_ATTACHMENT_FIELD_NUMBER;
907       hash = (53 * hash) + getLinkedInterconnectAttachment().hashCode();
908     }
909     if (hasLinkedVpnTunnel()) {
910       hash = (37 * hash) + LINKED_VPN_TUNNEL_FIELD_NUMBER;
911       hash = (53 * hash) + getLinkedVpnTunnel().hashCode();
912     }
913     if (hasManagementType()) {
914       hash = (37 * hash) + MANAGEMENT_TYPE_FIELD_NUMBER;
915       hash = (53 * hash) + getManagementType().hashCode();
916     }
917     if (hasName()) {
918       hash = (37 * hash) + NAME_FIELD_NUMBER;
919       hash = (53 * hash) + getName().hashCode();
920     }
921     if (hasPrivateIpAddress()) {
922       hash = (37 * hash) + PRIVATE_IP_ADDRESS_FIELD_NUMBER;
923       hash = (53 * hash) + getPrivateIpAddress().hashCode();
924     }
925     if (hasRedundantInterface()) {
926       hash = (37 * hash) + REDUNDANT_INTERFACE_FIELD_NUMBER;
927       hash = (53 * hash) + getRedundantInterface().hashCode();
928     }
929     if (hasSubnetwork()) {
930       hash = (37 * hash) + SUBNETWORK_FIELD_NUMBER;
931       hash = (53 * hash) + getSubnetwork().hashCode();
932     }
933     hash = (29 * hash) + getUnknownFields().hashCode();
934     memoizedHashCode = hash;
935     return hash;
936   }
937 
parseFrom(java.nio.ByteBuffer data)938   public static com.google.cloud.compute.v1.RouterInterface parseFrom(java.nio.ByteBuffer data)
939       throws com.google.protobuf.InvalidProtocolBufferException {
940     return PARSER.parseFrom(data);
941   }
942 
parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)943   public static com.google.cloud.compute.v1.RouterInterface parseFrom(
944       java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
945       throws com.google.protobuf.InvalidProtocolBufferException {
946     return PARSER.parseFrom(data, extensionRegistry);
947   }
948 
parseFrom( com.google.protobuf.ByteString data)949   public static com.google.cloud.compute.v1.RouterInterface parseFrom(
950       com.google.protobuf.ByteString data)
951       throws com.google.protobuf.InvalidProtocolBufferException {
952     return PARSER.parseFrom(data);
953   }
954 
parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)955   public static com.google.cloud.compute.v1.RouterInterface parseFrom(
956       com.google.protobuf.ByteString data,
957       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
958       throws com.google.protobuf.InvalidProtocolBufferException {
959     return PARSER.parseFrom(data, extensionRegistry);
960   }
961 
parseFrom(byte[] data)962   public static com.google.cloud.compute.v1.RouterInterface parseFrom(byte[] data)
963       throws com.google.protobuf.InvalidProtocolBufferException {
964     return PARSER.parseFrom(data);
965   }
966 
parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)967   public static com.google.cloud.compute.v1.RouterInterface parseFrom(
968       byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
969       throws com.google.protobuf.InvalidProtocolBufferException {
970     return PARSER.parseFrom(data, extensionRegistry);
971   }
972 
parseFrom(java.io.InputStream input)973   public static com.google.cloud.compute.v1.RouterInterface parseFrom(java.io.InputStream input)
974       throws java.io.IOException {
975     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
976   }
977 
parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)978   public static com.google.cloud.compute.v1.RouterInterface parseFrom(
979       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
980       throws java.io.IOException {
981     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
982         PARSER, input, extensionRegistry);
983   }
984 
parseDelimitedFrom( java.io.InputStream input)985   public static com.google.cloud.compute.v1.RouterInterface parseDelimitedFrom(
986       java.io.InputStream input) throws java.io.IOException {
987     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
988   }
989 
parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)990   public static com.google.cloud.compute.v1.RouterInterface parseDelimitedFrom(
991       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
992       throws java.io.IOException {
993     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(
994         PARSER, input, extensionRegistry);
995   }
996 
parseFrom( com.google.protobuf.CodedInputStream input)997   public static com.google.cloud.compute.v1.RouterInterface parseFrom(
998       com.google.protobuf.CodedInputStream input) throws java.io.IOException {
999     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
1000   }
1001 
parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1002   public static com.google.cloud.compute.v1.RouterInterface parseFrom(
1003       com.google.protobuf.CodedInputStream input,
1004       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1005       throws java.io.IOException {
1006     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
1007         PARSER, input, extensionRegistry);
1008   }
1009 
1010   @java.lang.Override
newBuilderForType()1011   public Builder newBuilderForType() {
1012     return newBuilder();
1013   }
1014 
newBuilder()1015   public static Builder newBuilder() {
1016     return DEFAULT_INSTANCE.toBuilder();
1017   }
1018 
newBuilder(com.google.cloud.compute.v1.RouterInterface prototype)1019   public static Builder newBuilder(com.google.cloud.compute.v1.RouterInterface prototype) {
1020     return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
1021   }
1022 
1023   @java.lang.Override
toBuilder()1024   public Builder toBuilder() {
1025     return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
1026   }
1027 
1028   @java.lang.Override
newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)1029   protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
1030     Builder builder = new Builder(parent);
1031     return builder;
1032   }
1033   /**
1034    *
1035    *
1036    * <pre>
1037    * </pre>
1038    *
1039    * Protobuf type {@code google.cloud.compute.v1.RouterInterface}
1040    */
1041   public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder>
1042       implements
1043       // @@protoc_insertion_point(builder_implements:google.cloud.compute.v1.RouterInterface)
1044       com.google.cloud.compute.v1.RouterInterfaceOrBuilder {
getDescriptor()1045     public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
1046       return com.google.cloud.compute.v1.Compute
1047           .internal_static_google_cloud_compute_v1_RouterInterface_descriptor;
1048     }
1049 
1050     @java.lang.Override
1051     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()1052         internalGetFieldAccessorTable() {
1053       return com.google.cloud.compute.v1.Compute
1054           .internal_static_google_cloud_compute_v1_RouterInterface_fieldAccessorTable
1055           .ensureFieldAccessorsInitialized(
1056               com.google.cloud.compute.v1.RouterInterface.class,
1057               com.google.cloud.compute.v1.RouterInterface.Builder.class);
1058     }
1059 
1060     // Construct using com.google.cloud.compute.v1.RouterInterface.newBuilder()
Builder()1061     private Builder() {}
1062 
Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)1063     private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
1064       super(parent);
1065     }
1066 
1067     @java.lang.Override
clear()1068     public Builder clear() {
1069       super.clear();
1070       bitField0_ = 0;
1071       ipRange_ = "";
1072       linkedInterconnectAttachment_ = "";
1073       linkedVpnTunnel_ = "";
1074       managementType_ = "";
1075       name_ = "";
1076       privateIpAddress_ = "";
1077       redundantInterface_ = "";
1078       subnetwork_ = "";
1079       return this;
1080     }
1081 
1082     @java.lang.Override
getDescriptorForType()1083     public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() {
1084       return com.google.cloud.compute.v1.Compute
1085           .internal_static_google_cloud_compute_v1_RouterInterface_descriptor;
1086     }
1087 
1088     @java.lang.Override
getDefaultInstanceForType()1089     public com.google.cloud.compute.v1.RouterInterface getDefaultInstanceForType() {
1090       return com.google.cloud.compute.v1.RouterInterface.getDefaultInstance();
1091     }
1092 
1093     @java.lang.Override
build()1094     public com.google.cloud.compute.v1.RouterInterface build() {
1095       com.google.cloud.compute.v1.RouterInterface result = buildPartial();
1096       if (!result.isInitialized()) {
1097         throw newUninitializedMessageException(result);
1098       }
1099       return result;
1100     }
1101 
1102     @java.lang.Override
buildPartial()1103     public com.google.cloud.compute.v1.RouterInterface buildPartial() {
1104       com.google.cloud.compute.v1.RouterInterface result =
1105           new com.google.cloud.compute.v1.RouterInterface(this);
1106       if (bitField0_ != 0) {
1107         buildPartial0(result);
1108       }
1109       onBuilt();
1110       return result;
1111     }
1112 
buildPartial0(com.google.cloud.compute.v1.RouterInterface result)1113     private void buildPartial0(com.google.cloud.compute.v1.RouterInterface result) {
1114       int from_bitField0_ = bitField0_;
1115       int to_bitField0_ = 0;
1116       if (((from_bitField0_ & 0x00000001) != 0)) {
1117         result.ipRange_ = ipRange_;
1118         to_bitField0_ |= 0x00000001;
1119       }
1120       if (((from_bitField0_ & 0x00000002) != 0)) {
1121         result.linkedInterconnectAttachment_ = linkedInterconnectAttachment_;
1122         to_bitField0_ |= 0x00000002;
1123       }
1124       if (((from_bitField0_ & 0x00000004) != 0)) {
1125         result.linkedVpnTunnel_ = linkedVpnTunnel_;
1126         to_bitField0_ |= 0x00000004;
1127       }
1128       if (((from_bitField0_ & 0x00000008) != 0)) {
1129         result.managementType_ = managementType_;
1130         to_bitField0_ |= 0x00000008;
1131       }
1132       if (((from_bitField0_ & 0x00000010) != 0)) {
1133         result.name_ = name_;
1134         to_bitField0_ |= 0x00000010;
1135       }
1136       if (((from_bitField0_ & 0x00000020) != 0)) {
1137         result.privateIpAddress_ = privateIpAddress_;
1138         to_bitField0_ |= 0x00000020;
1139       }
1140       if (((from_bitField0_ & 0x00000040) != 0)) {
1141         result.redundantInterface_ = redundantInterface_;
1142         to_bitField0_ |= 0x00000040;
1143       }
1144       if (((from_bitField0_ & 0x00000080) != 0)) {
1145         result.subnetwork_ = subnetwork_;
1146         to_bitField0_ |= 0x00000080;
1147       }
1148       result.bitField0_ |= to_bitField0_;
1149     }
1150 
1151     @java.lang.Override
clone()1152     public Builder clone() {
1153       return super.clone();
1154     }
1155 
1156     @java.lang.Override
setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)1157     public Builder setField(
1158         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
1159       return super.setField(field, value);
1160     }
1161 
1162     @java.lang.Override
clearField(com.google.protobuf.Descriptors.FieldDescriptor field)1163     public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) {
1164       return super.clearField(field);
1165     }
1166 
1167     @java.lang.Override
clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)1168     public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) {
1169       return super.clearOneof(oneof);
1170     }
1171 
1172     @java.lang.Override
setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)1173     public Builder setRepeatedField(
1174         com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) {
1175       return super.setRepeatedField(field, index, value);
1176     }
1177 
1178     @java.lang.Override
addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)1179     public Builder addRepeatedField(
1180         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
1181       return super.addRepeatedField(field, value);
1182     }
1183 
1184     @java.lang.Override
mergeFrom(com.google.protobuf.Message other)1185     public Builder mergeFrom(com.google.protobuf.Message other) {
1186       if (other instanceof com.google.cloud.compute.v1.RouterInterface) {
1187         return mergeFrom((com.google.cloud.compute.v1.RouterInterface) other);
1188       } else {
1189         super.mergeFrom(other);
1190         return this;
1191       }
1192     }
1193 
mergeFrom(com.google.cloud.compute.v1.RouterInterface other)1194     public Builder mergeFrom(com.google.cloud.compute.v1.RouterInterface other) {
1195       if (other == com.google.cloud.compute.v1.RouterInterface.getDefaultInstance()) return this;
1196       if (other.hasIpRange()) {
1197         ipRange_ = other.ipRange_;
1198         bitField0_ |= 0x00000001;
1199         onChanged();
1200       }
1201       if (other.hasLinkedInterconnectAttachment()) {
1202         linkedInterconnectAttachment_ = other.linkedInterconnectAttachment_;
1203         bitField0_ |= 0x00000002;
1204         onChanged();
1205       }
1206       if (other.hasLinkedVpnTunnel()) {
1207         linkedVpnTunnel_ = other.linkedVpnTunnel_;
1208         bitField0_ |= 0x00000004;
1209         onChanged();
1210       }
1211       if (other.hasManagementType()) {
1212         managementType_ = other.managementType_;
1213         bitField0_ |= 0x00000008;
1214         onChanged();
1215       }
1216       if (other.hasName()) {
1217         name_ = other.name_;
1218         bitField0_ |= 0x00000010;
1219         onChanged();
1220       }
1221       if (other.hasPrivateIpAddress()) {
1222         privateIpAddress_ = other.privateIpAddress_;
1223         bitField0_ |= 0x00000020;
1224         onChanged();
1225       }
1226       if (other.hasRedundantInterface()) {
1227         redundantInterface_ = other.redundantInterface_;
1228         bitField0_ |= 0x00000040;
1229         onChanged();
1230       }
1231       if (other.hasSubnetwork()) {
1232         subnetwork_ = other.subnetwork_;
1233         bitField0_ |= 0x00000080;
1234         onChanged();
1235       }
1236       this.mergeUnknownFields(other.getUnknownFields());
1237       onChanged();
1238       return this;
1239     }
1240 
1241     @java.lang.Override
isInitialized()1242     public final boolean isInitialized() {
1243       return true;
1244     }
1245 
1246     @java.lang.Override
mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1247     public Builder mergeFrom(
1248         com.google.protobuf.CodedInputStream input,
1249         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1250         throws java.io.IOException {
1251       if (extensionRegistry == null) {
1252         throw new java.lang.NullPointerException();
1253       }
1254       try {
1255         boolean done = false;
1256         while (!done) {
1257           int tag = input.readTag();
1258           switch (tag) {
1259             case 0:
1260               done = true;
1261               break;
1262             case 26989658:
1263               {
1264                 name_ = input.readStringRequireUtf8();
1265                 bitField0_ |= 0x00000010;
1266                 break;
1267               } // case 26989658
1268             case 806832322:
1269               {
1270                 privateIpAddress_ = input.readStringRequireUtf8();
1271                 bitField0_ |= 0x00000020;
1272                 break;
1273               } // case 806832322
1274             case 1160741162:
1275               {
1276                 ipRange_ = input.readStringRequireUtf8();
1277                 bitField0_ |= 0x00000001;
1278                 break;
1279               } // case 1160741162
1280             case 1389628850:
1281               {
1282                 managementType_ = input.readStringRequireUtf8();
1283                 bitField0_ |= 0x00000008;
1284                 break;
1285               } // case 1389628850
1286             case -1832345742:
1287               {
1288                 subnetwork_ = input.readStringRequireUtf8();
1289                 bitField0_ |= 0x00000080;
1290                 break;
1291               } // case -1832345742
1292             case -1476591670:
1293               {
1294                 linkedVpnTunnel_ = input.readStringRequireUtf8();
1295                 bitField0_ |= 0x00000004;
1296                 break;
1297               } // case -1476591670
1298             case -286283150:
1299               {
1300                 linkedInterconnectAttachment_ = input.readStringRequireUtf8();
1301                 bitField0_ |= 0x00000002;
1302                 break;
1303               } // case -286283150
1304             case -109468870:
1305               {
1306                 redundantInterface_ = input.readStringRequireUtf8();
1307                 bitField0_ |= 0x00000040;
1308                 break;
1309               } // case -109468870
1310             default:
1311               {
1312                 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
1313                   done = true; // was an endgroup tag
1314                 }
1315                 break;
1316               } // default:
1317           } // switch (tag)
1318         } // while (!done)
1319       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1320         throw e.unwrapIOException();
1321       } finally {
1322         onChanged();
1323       } // finally
1324       return this;
1325     }
1326 
1327     private int bitField0_;
1328 
1329     private java.lang.Object ipRange_ = "";
1330     /**
1331      *
1332      *
1333      * <pre>
1334      * IP address and range of the interface. The IP range must be in the RFC3927 link-local IP address space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface.
1335      * </pre>
1336      *
1337      * <code>optional string ip_range = 145092645;</code>
1338      *
1339      * @return Whether the ipRange field is set.
1340      */
hasIpRange()1341     public boolean hasIpRange() {
1342       return ((bitField0_ & 0x00000001) != 0);
1343     }
1344     /**
1345      *
1346      *
1347      * <pre>
1348      * IP address and range of the interface. The IP range must be in the RFC3927 link-local IP address space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface.
1349      * </pre>
1350      *
1351      * <code>optional string ip_range = 145092645;</code>
1352      *
1353      * @return The ipRange.
1354      */
getIpRange()1355     public java.lang.String getIpRange() {
1356       java.lang.Object ref = ipRange_;
1357       if (!(ref instanceof java.lang.String)) {
1358         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1359         java.lang.String s = bs.toStringUtf8();
1360         ipRange_ = s;
1361         return s;
1362       } else {
1363         return (java.lang.String) ref;
1364       }
1365     }
1366     /**
1367      *
1368      *
1369      * <pre>
1370      * IP address and range of the interface. The IP range must be in the RFC3927 link-local IP address space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface.
1371      * </pre>
1372      *
1373      * <code>optional string ip_range = 145092645;</code>
1374      *
1375      * @return The bytes for ipRange.
1376      */
getIpRangeBytes()1377     public com.google.protobuf.ByteString getIpRangeBytes() {
1378       java.lang.Object ref = ipRange_;
1379       if (ref instanceof String) {
1380         com.google.protobuf.ByteString b =
1381             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1382         ipRange_ = b;
1383         return b;
1384       } else {
1385         return (com.google.protobuf.ByteString) ref;
1386       }
1387     }
1388     /**
1389      *
1390      *
1391      * <pre>
1392      * IP address and range of the interface. The IP range must be in the RFC3927 link-local IP address space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface.
1393      * </pre>
1394      *
1395      * <code>optional string ip_range = 145092645;</code>
1396      *
1397      * @param value The ipRange to set.
1398      * @return This builder for chaining.
1399      */
setIpRange(java.lang.String value)1400     public Builder setIpRange(java.lang.String value) {
1401       if (value == null) {
1402         throw new NullPointerException();
1403       }
1404       ipRange_ = value;
1405       bitField0_ |= 0x00000001;
1406       onChanged();
1407       return this;
1408     }
1409     /**
1410      *
1411      *
1412      * <pre>
1413      * IP address and range of the interface. The IP range must be in the RFC3927 link-local IP address space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface.
1414      * </pre>
1415      *
1416      * <code>optional string ip_range = 145092645;</code>
1417      *
1418      * @return This builder for chaining.
1419      */
clearIpRange()1420     public Builder clearIpRange() {
1421       ipRange_ = getDefaultInstance().getIpRange();
1422       bitField0_ = (bitField0_ & ~0x00000001);
1423       onChanged();
1424       return this;
1425     }
1426     /**
1427      *
1428      *
1429      * <pre>
1430      * IP address and range of the interface. The IP range must be in the RFC3927 link-local IP address space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface.
1431      * </pre>
1432      *
1433      * <code>optional string ip_range = 145092645;</code>
1434      *
1435      * @param value The bytes for ipRange to set.
1436      * @return This builder for chaining.
1437      */
setIpRangeBytes(com.google.protobuf.ByteString value)1438     public Builder setIpRangeBytes(com.google.protobuf.ByteString value) {
1439       if (value == null) {
1440         throw new NullPointerException();
1441       }
1442       checkByteStringIsUtf8(value);
1443       ipRange_ = value;
1444       bitField0_ |= 0x00000001;
1445       onChanged();
1446       return this;
1447     }
1448 
1449     private java.lang.Object linkedInterconnectAttachment_ = "";
1450     /**
1451      *
1452      *
1453      * <pre>
1454      * URI of the linked Interconnect attachment. It must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.
1455      * </pre>
1456      *
1457      * <code>optional string linked_interconnect_attachment = 501085518;</code>
1458      *
1459      * @return Whether the linkedInterconnectAttachment field is set.
1460      */
hasLinkedInterconnectAttachment()1461     public boolean hasLinkedInterconnectAttachment() {
1462       return ((bitField0_ & 0x00000002) != 0);
1463     }
1464     /**
1465      *
1466      *
1467      * <pre>
1468      * URI of the linked Interconnect attachment. It must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.
1469      * </pre>
1470      *
1471      * <code>optional string linked_interconnect_attachment = 501085518;</code>
1472      *
1473      * @return The linkedInterconnectAttachment.
1474      */
getLinkedInterconnectAttachment()1475     public java.lang.String getLinkedInterconnectAttachment() {
1476       java.lang.Object ref = linkedInterconnectAttachment_;
1477       if (!(ref instanceof java.lang.String)) {
1478         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1479         java.lang.String s = bs.toStringUtf8();
1480         linkedInterconnectAttachment_ = s;
1481         return s;
1482       } else {
1483         return (java.lang.String) ref;
1484       }
1485     }
1486     /**
1487      *
1488      *
1489      * <pre>
1490      * URI of the linked Interconnect attachment. It must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.
1491      * </pre>
1492      *
1493      * <code>optional string linked_interconnect_attachment = 501085518;</code>
1494      *
1495      * @return The bytes for linkedInterconnectAttachment.
1496      */
getLinkedInterconnectAttachmentBytes()1497     public com.google.protobuf.ByteString getLinkedInterconnectAttachmentBytes() {
1498       java.lang.Object ref = linkedInterconnectAttachment_;
1499       if (ref instanceof String) {
1500         com.google.protobuf.ByteString b =
1501             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1502         linkedInterconnectAttachment_ = b;
1503         return b;
1504       } else {
1505         return (com.google.protobuf.ByteString) ref;
1506       }
1507     }
1508     /**
1509      *
1510      *
1511      * <pre>
1512      * URI of the linked Interconnect attachment. It must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.
1513      * </pre>
1514      *
1515      * <code>optional string linked_interconnect_attachment = 501085518;</code>
1516      *
1517      * @param value The linkedInterconnectAttachment to set.
1518      * @return This builder for chaining.
1519      */
setLinkedInterconnectAttachment(java.lang.String value)1520     public Builder setLinkedInterconnectAttachment(java.lang.String value) {
1521       if (value == null) {
1522         throw new NullPointerException();
1523       }
1524       linkedInterconnectAttachment_ = value;
1525       bitField0_ |= 0x00000002;
1526       onChanged();
1527       return this;
1528     }
1529     /**
1530      *
1531      *
1532      * <pre>
1533      * URI of the linked Interconnect attachment. It must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.
1534      * </pre>
1535      *
1536      * <code>optional string linked_interconnect_attachment = 501085518;</code>
1537      *
1538      * @return This builder for chaining.
1539      */
clearLinkedInterconnectAttachment()1540     public Builder clearLinkedInterconnectAttachment() {
1541       linkedInterconnectAttachment_ = getDefaultInstance().getLinkedInterconnectAttachment();
1542       bitField0_ = (bitField0_ & ~0x00000002);
1543       onChanged();
1544       return this;
1545     }
1546     /**
1547      *
1548      *
1549      * <pre>
1550      * URI of the linked Interconnect attachment. It must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.
1551      * </pre>
1552      *
1553      * <code>optional string linked_interconnect_attachment = 501085518;</code>
1554      *
1555      * @param value The bytes for linkedInterconnectAttachment to set.
1556      * @return This builder for chaining.
1557      */
setLinkedInterconnectAttachmentBytes(com.google.protobuf.ByteString value)1558     public Builder setLinkedInterconnectAttachmentBytes(com.google.protobuf.ByteString value) {
1559       if (value == null) {
1560         throw new NullPointerException();
1561       }
1562       checkByteStringIsUtf8(value);
1563       linkedInterconnectAttachment_ = value;
1564       bitField0_ |= 0x00000002;
1565       onChanged();
1566       return this;
1567     }
1568 
1569     private java.lang.Object linkedVpnTunnel_ = "";
1570     /**
1571      *
1572      *
1573      * <pre>
1574      * URI of the linked VPN tunnel, which must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.
1575      * </pre>
1576      *
1577      * <code>optional string linked_vpn_tunnel = 352296953;</code>
1578      *
1579      * @return Whether the linkedVpnTunnel field is set.
1580      */
hasLinkedVpnTunnel()1581     public boolean hasLinkedVpnTunnel() {
1582       return ((bitField0_ & 0x00000004) != 0);
1583     }
1584     /**
1585      *
1586      *
1587      * <pre>
1588      * URI of the linked VPN tunnel, which must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.
1589      * </pre>
1590      *
1591      * <code>optional string linked_vpn_tunnel = 352296953;</code>
1592      *
1593      * @return The linkedVpnTunnel.
1594      */
getLinkedVpnTunnel()1595     public java.lang.String getLinkedVpnTunnel() {
1596       java.lang.Object ref = linkedVpnTunnel_;
1597       if (!(ref instanceof java.lang.String)) {
1598         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1599         java.lang.String s = bs.toStringUtf8();
1600         linkedVpnTunnel_ = s;
1601         return s;
1602       } else {
1603         return (java.lang.String) ref;
1604       }
1605     }
1606     /**
1607      *
1608      *
1609      * <pre>
1610      * URI of the linked VPN tunnel, which must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.
1611      * </pre>
1612      *
1613      * <code>optional string linked_vpn_tunnel = 352296953;</code>
1614      *
1615      * @return The bytes for linkedVpnTunnel.
1616      */
getLinkedVpnTunnelBytes()1617     public com.google.protobuf.ByteString getLinkedVpnTunnelBytes() {
1618       java.lang.Object ref = linkedVpnTunnel_;
1619       if (ref instanceof String) {
1620         com.google.protobuf.ByteString b =
1621             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1622         linkedVpnTunnel_ = b;
1623         return b;
1624       } else {
1625         return (com.google.protobuf.ByteString) ref;
1626       }
1627     }
1628     /**
1629      *
1630      *
1631      * <pre>
1632      * URI of the linked VPN tunnel, which must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.
1633      * </pre>
1634      *
1635      * <code>optional string linked_vpn_tunnel = 352296953;</code>
1636      *
1637      * @param value The linkedVpnTunnel to set.
1638      * @return This builder for chaining.
1639      */
setLinkedVpnTunnel(java.lang.String value)1640     public Builder setLinkedVpnTunnel(java.lang.String value) {
1641       if (value == null) {
1642         throw new NullPointerException();
1643       }
1644       linkedVpnTunnel_ = value;
1645       bitField0_ |= 0x00000004;
1646       onChanged();
1647       return this;
1648     }
1649     /**
1650      *
1651      *
1652      * <pre>
1653      * URI of the linked VPN tunnel, which must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.
1654      * </pre>
1655      *
1656      * <code>optional string linked_vpn_tunnel = 352296953;</code>
1657      *
1658      * @return This builder for chaining.
1659      */
clearLinkedVpnTunnel()1660     public Builder clearLinkedVpnTunnel() {
1661       linkedVpnTunnel_ = getDefaultInstance().getLinkedVpnTunnel();
1662       bitField0_ = (bitField0_ & ~0x00000004);
1663       onChanged();
1664       return this;
1665     }
1666     /**
1667      *
1668      *
1669      * <pre>
1670      * URI of the linked VPN tunnel, which must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.
1671      * </pre>
1672      *
1673      * <code>optional string linked_vpn_tunnel = 352296953;</code>
1674      *
1675      * @param value The bytes for linkedVpnTunnel to set.
1676      * @return This builder for chaining.
1677      */
setLinkedVpnTunnelBytes(com.google.protobuf.ByteString value)1678     public Builder setLinkedVpnTunnelBytes(com.google.protobuf.ByteString value) {
1679       if (value == null) {
1680         throw new NullPointerException();
1681       }
1682       checkByteStringIsUtf8(value);
1683       linkedVpnTunnel_ = value;
1684       bitField0_ |= 0x00000004;
1685       onChanged();
1686       return this;
1687     }
1688 
1689     private java.lang.Object managementType_ = "";
1690     /**
1691      *
1692      *
1693      * <pre>
1694      * [Output Only] The resource that configures and manages this interface. - MANAGED_BY_USER is the default value and can be managed directly by users. - MANAGED_BY_ATTACHMENT is an interface that is configured and managed by Cloud Interconnect, specifically, by an InterconnectAttachment of type PARTNER. Google automatically creates, updates, and deletes this type of interface when the PARTNER InterconnectAttachment is created, updated, or deleted.
1695      * Check the ManagementType enum for the list of possible values.
1696      * </pre>
1697      *
1698      * <code>optional string management_type = 173703606;</code>
1699      *
1700      * @return Whether the managementType field is set.
1701      */
hasManagementType()1702     public boolean hasManagementType() {
1703       return ((bitField0_ & 0x00000008) != 0);
1704     }
1705     /**
1706      *
1707      *
1708      * <pre>
1709      * [Output Only] The resource that configures and manages this interface. - MANAGED_BY_USER is the default value and can be managed directly by users. - MANAGED_BY_ATTACHMENT is an interface that is configured and managed by Cloud Interconnect, specifically, by an InterconnectAttachment of type PARTNER. Google automatically creates, updates, and deletes this type of interface when the PARTNER InterconnectAttachment is created, updated, or deleted.
1710      * Check the ManagementType enum for the list of possible values.
1711      * </pre>
1712      *
1713      * <code>optional string management_type = 173703606;</code>
1714      *
1715      * @return The managementType.
1716      */
getManagementType()1717     public java.lang.String getManagementType() {
1718       java.lang.Object ref = managementType_;
1719       if (!(ref instanceof java.lang.String)) {
1720         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1721         java.lang.String s = bs.toStringUtf8();
1722         managementType_ = s;
1723         return s;
1724       } else {
1725         return (java.lang.String) ref;
1726       }
1727     }
1728     /**
1729      *
1730      *
1731      * <pre>
1732      * [Output Only] The resource that configures and manages this interface. - MANAGED_BY_USER is the default value and can be managed directly by users. - MANAGED_BY_ATTACHMENT is an interface that is configured and managed by Cloud Interconnect, specifically, by an InterconnectAttachment of type PARTNER. Google automatically creates, updates, and deletes this type of interface when the PARTNER InterconnectAttachment is created, updated, or deleted.
1733      * Check the ManagementType enum for the list of possible values.
1734      * </pre>
1735      *
1736      * <code>optional string management_type = 173703606;</code>
1737      *
1738      * @return The bytes for managementType.
1739      */
getManagementTypeBytes()1740     public com.google.protobuf.ByteString getManagementTypeBytes() {
1741       java.lang.Object ref = managementType_;
1742       if (ref instanceof String) {
1743         com.google.protobuf.ByteString b =
1744             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1745         managementType_ = b;
1746         return b;
1747       } else {
1748         return (com.google.protobuf.ByteString) ref;
1749       }
1750     }
1751     /**
1752      *
1753      *
1754      * <pre>
1755      * [Output Only] The resource that configures and manages this interface. - MANAGED_BY_USER is the default value and can be managed directly by users. - MANAGED_BY_ATTACHMENT is an interface that is configured and managed by Cloud Interconnect, specifically, by an InterconnectAttachment of type PARTNER. Google automatically creates, updates, and deletes this type of interface when the PARTNER InterconnectAttachment is created, updated, or deleted.
1756      * Check the ManagementType enum for the list of possible values.
1757      * </pre>
1758      *
1759      * <code>optional string management_type = 173703606;</code>
1760      *
1761      * @param value The managementType to set.
1762      * @return This builder for chaining.
1763      */
setManagementType(java.lang.String value)1764     public Builder setManagementType(java.lang.String value) {
1765       if (value == null) {
1766         throw new NullPointerException();
1767       }
1768       managementType_ = value;
1769       bitField0_ |= 0x00000008;
1770       onChanged();
1771       return this;
1772     }
1773     /**
1774      *
1775      *
1776      * <pre>
1777      * [Output Only] The resource that configures and manages this interface. - MANAGED_BY_USER is the default value and can be managed directly by users. - MANAGED_BY_ATTACHMENT is an interface that is configured and managed by Cloud Interconnect, specifically, by an InterconnectAttachment of type PARTNER. Google automatically creates, updates, and deletes this type of interface when the PARTNER InterconnectAttachment is created, updated, or deleted.
1778      * Check the ManagementType enum for the list of possible values.
1779      * </pre>
1780      *
1781      * <code>optional string management_type = 173703606;</code>
1782      *
1783      * @return This builder for chaining.
1784      */
clearManagementType()1785     public Builder clearManagementType() {
1786       managementType_ = getDefaultInstance().getManagementType();
1787       bitField0_ = (bitField0_ & ~0x00000008);
1788       onChanged();
1789       return this;
1790     }
1791     /**
1792      *
1793      *
1794      * <pre>
1795      * [Output Only] The resource that configures and manages this interface. - MANAGED_BY_USER is the default value and can be managed directly by users. - MANAGED_BY_ATTACHMENT is an interface that is configured and managed by Cloud Interconnect, specifically, by an InterconnectAttachment of type PARTNER. Google automatically creates, updates, and deletes this type of interface when the PARTNER InterconnectAttachment is created, updated, or deleted.
1796      * Check the ManagementType enum for the list of possible values.
1797      * </pre>
1798      *
1799      * <code>optional string management_type = 173703606;</code>
1800      *
1801      * @param value The bytes for managementType to set.
1802      * @return This builder for chaining.
1803      */
setManagementTypeBytes(com.google.protobuf.ByteString value)1804     public Builder setManagementTypeBytes(com.google.protobuf.ByteString value) {
1805       if (value == null) {
1806         throw new NullPointerException();
1807       }
1808       checkByteStringIsUtf8(value);
1809       managementType_ = value;
1810       bitField0_ |= 0x00000008;
1811       onChanged();
1812       return this;
1813     }
1814 
1815     private java.lang.Object name_ = "";
1816     /**
1817      *
1818      *
1819      * <pre>
1820      * Name of this interface entry. 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.
1821      * </pre>
1822      *
1823      * <code>optional string name = 3373707;</code>
1824      *
1825      * @return Whether the name field is set.
1826      */
hasName()1827     public boolean hasName() {
1828       return ((bitField0_ & 0x00000010) != 0);
1829     }
1830     /**
1831      *
1832      *
1833      * <pre>
1834      * Name of this interface entry. 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.
1835      * </pre>
1836      *
1837      * <code>optional string name = 3373707;</code>
1838      *
1839      * @return The name.
1840      */
getName()1841     public java.lang.String getName() {
1842       java.lang.Object ref = name_;
1843       if (!(ref instanceof java.lang.String)) {
1844         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1845         java.lang.String s = bs.toStringUtf8();
1846         name_ = s;
1847         return s;
1848       } else {
1849         return (java.lang.String) ref;
1850       }
1851     }
1852     /**
1853      *
1854      *
1855      * <pre>
1856      * Name of this interface entry. 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.
1857      * </pre>
1858      *
1859      * <code>optional string name = 3373707;</code>
1860      *
1861      * @return The bytes for name.
1862      */
getNameBytes()1863     public com.google.protobuf.ByteString getNameBytes() {
1864       java.lang.Object ref = name_;
1865       if (ref instanceof String) {
1866         com.google.protobuf.ByteString b =
1867             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1868         name_ = b;
1869         return b;
1870       } else {
1871         return (com.google.protobuf.ByteString) ref;
1872       }
1873     }
1874     /**
1875      *
1876      *
1877      * <pre>
1878      * Name of this interface entry. 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.
1879      * </pre>
1880      *
1881      * <code>optional string name = 3373707;</code>
1882      *
1883      * @param value The name to set.
1884      * @return This builder for chaining.
1885      */
setName(java.lang.String value)1886     public Builder setName(java.lang.String value) {
1887       if (value == null) {
1888         throw new NullPointerException();
1889       }
1890       name_ = value;
1891       bitField0_ |= 0x00000010;
1892       onChanged();
1893       return this;
1894     }
1895     /**
1896      *
1897      *
1898      * <pre>
1899      * Name of this interface entry. 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.
1900      * </pre>
1901      *
1902      * <code>optional string name = 3373707;</code>
1903      *
1904      * @return This builder for chaining.
1905      */
clearName()1906     public Builder clearName() {
1907       name_ = getDefaultInstance().getName();
1908       bitField0_ = (bitField0_ & ~0x00000010);
1909       onChanged();
1910       return this;
1911     }
1912     /**
1913      *
1914      *
1915      * <pre>
1916      * Name of this interface entry. 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.
1917      * </pre>
1918      *
1919      * <code>optional string name = 3373707;</code>
1920      *
1921      * @param value The bytes for name to set.
1922      * @return This builder for chaining.
1923      */
setNameBytes(com.google.protobuf.ByteString value)1924     public Builder setNameBytes(com.google.protobuf.ByteString value) {
1925       if (value == null) {
1926         throw new NullPointerException();
1927       }
1928       checkByteStringIsUtf8(value);
1929       name_ = value;
1930       bitField0_ |= 0x00000010;
1931       onChanged();
1932       return this;
1933     }
1934 
1935     private java.lang.Object privateIpAddress_ = "";
1936     /**
1937      *
1938      *
1939      * <pre>
1940      * The regional private internal IP address that is used to establish BGP sessions to a VM instance acting as a third-party Router Appliance, such as a Next Gen Firewall, a Virtual Router, or an SD-WAN VM.
1941      * </pre>
1942      *
1943      * <code>optional string private_ip_address = 100854040;</code>
1944      *
1945      * @return Whether the privateIpAddress field is set.
1946      */
hasPrivateIpAddress()1947     public boolean hasPrivateIpAddress() {
1948       return ((bitField0_ & 0x00000020) != 0);
1949     }
1950     /**
1951      *
1952      *
1953      * <pre>
1954      * The regional private internal IP address that is used to establish BGP sessions to a VM instance acting as a third-party Router Appliance, such as a Next Gen Firewall, a Virtual Router, or an SD-WAN VM.
1955      * </pre>
1956      *
1957      * <code>optional string private_ip_address = 100854040;</code>
1958      *
1959      * @return The privateIpAddress.
1960      */
getPrivateIpAddress()1961     public java.lang.String getPrivateIpAddress() {
1962       java.lang.Object ref = privateIpAddress_;
1963       if (!(ref instanceof java.lang.String)) {
1964         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1965         java.lang.String s = bs.toStringUtf8();
1966         privateIpAddress_ = s;
1967         return s;
1968       } else {
1969         return (java.lang.String) ref;
1970       }
1971     }
1972     /**
1973      *
1974      *
1975      * <pre>
1976      * The regional private internal IP address that is used to establish BGP sessions to a VM instance acting as a third-party Router Appliance, such as a Next Gen Firewall, a Virtual Router, or an SD-WAN VM.
1977      * </pre>
1978      *
1979      * <code>optional string private_ip_address = 100854040;</code>
1980      *
1981      * @return The bytes for privateIpAddress.
1982      */
getPrivateIpAddressBytes()1983     public com.google.protobuf.ByteString getPrivateIpAddressBytes() {
1984       java.lang.Object ref = privateIpAddress_;
1985       if (ref instanceof String) {
1986         com.google.protobuf.ByteString b =
1987             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1988         privateIpAddress_ = b;
1989         return b;
1990       } else {
1991         return (com.google.protobuf.ByteString) ref;
1992       }
1993     }
1994     /**
1995      *
1996      *
1997      * <pre>
1998      * The regional private internal IP address that is used to establish BGP sessions to a VM instance acting as a third-party Router Appliance, such as a Next Gen Firewall, a Virtual Router, or an SD-WAN VM.
1999      * </pre>
2000      *
2001      * <code>optional string private_ip_address = 100854040;</code>
2002      *
2003      * @param value The privateIpAddress to set.
2004      * @return This builder for chaining.
2005      */
setPrivateIpAddress(java.lang.String value)2006     public Builder setPrivateIpAddress(java.lang.String value) {
2007       if (value == null) {
2008         throw new NullPointerException();
2009       }
2010       privateIpAddress_ = value;
2011       bitField0_ |= 0x00000020;
2012       onChanged();
2013       return this;
2014     }
2015     /**
2016      *
2017      *
2018      * <pre>
2019      * The regional private internal IP address that is used to establish BGP sessions to a VM instance acting as a third-party Router Appliance, such as a Next Gen Firewall, a Virtual Router, or an SD-WAN VM.
2020      * </pre>
2021      *
2022      * <code>optional string private_ip_address = 100854040;</code>
2023      *
2024      * @return This builder for chaining.
2025      */
clearPrivateIpAddress()2026     public Builder clearPrivateIpAddress() {
2027       privateIpAddress_ = getDefaultInstance().getPrivateIpAddress();
2028       bitField0_ = (bitField0_ & ~0x00000020);
2029       onChanged();
2030       return this;
2031     }
2032     /**
2033      *
2034      *
2035      * <pre>
2036      * The regional private internal IP address that is used to establish BGP sessions to a VM instance acting as a third-party Router Appliance, such as a Next Gen Firewall, a Virtual Router, or an SD-WAN VM.
2037      * </pre>
2038      *
2039      * <code>optional string private_ip_address = 100854040;</code>
2040      *
2041      * @param value The bytes for privateIpAddress to set.
2042      * @return This builder for chaining.
2043      */
setPrivateIpAddressBytes(com.google.protobuf.ByteString value)2044     public Builder setPrivateIpAddressBytes(com.google.protobuf.ByteString value) {
2045       if (value == null) {
2046         throw new NullPointerException();
2047       }
2048       checkByteStringIsUtf8(value);
2049       privateIpAddress_ = value;
2050       bitField0_ |= 0x00000020;
2051       onChanged();
2052       return this;
2053     }
2054 
2055     private java.lang.Object redundantInterface_ = "";
2056     /**
2057      *
2058      *
2059      * <pre>
2060      * Name of the interface that will be redundant with the current interface you are creating. The redundantInterface must belong to the same Cloud Router as the interface here. To establish the BGP session to a Router Appliance VM, you must create two BGP peers. The two BGP peers must be attached to two separate interfaces that are redundant with each other. The redundant_interface must be 1-63 characters long, and comply with RFC1035. Specifically, the redundant_interface 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.
2061      * </pre>
2062      *
2063      * <code>optional string redundant_interface = 523187303;</code>
2064      *
2065      * @return Whether the redundantInterface field is set.
2066      */
hasRedundantInterface()2067     public boolean hasRedundantInterface() {
2068       return ((bitField0_ & 0x00000040) != 0);
2069     }
2070     /**
2071      *
2072      *
2073      * <pre>
2074      * Name of the interface that will be redundant with the current interface you are creating. The redundantInterface must belong to the same Cloud Router as the interface here. To establish the BGP session to a Router Appliance VM, you must create two BGP peers. The two BGP peers must be attached to two separate interfaces that are redundant with each other. The redundant_interface must be 1-63 characters long, and comply with RFC1035. Specifically, the redundant_interface 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.
2075      * </pre>
2076      *
2077      * <code>optional string redundant_interface = 523187303;</code>
2078      *
2079      * @return The redundantInterface.
2080      */
getRedundantInterface()2081     public java.lang.String getRedundantInterface() {
2082       java.lang.Object ref = redundantInterface_;
2083       if (!(ref instanceof java.lang.String)) {
2084         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
2085         java.lang.String s = bs.toStringUtf8();
2086         redundantInterface_ = s;
2087         return s;
2088       } else {
2089         return (java.lang.String) ref;
2090       }
2091     }
2092     /**
2093      *
2094      *
2095      * <pre>
2096      * Name of the interface that will be redundant with the current interface you are creating. The redundantInterface must belong to the same Cloud Router as the interface here. To establish the BGP session to a Router Appliance VM, you must create two BGP peers. The two BGP peers must be attached to two separate interfaces that are redundant with each other. The redundant_interface must be 1-63 characters long, and comply with RFC1035. Specifically, the redundant_interface 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.
2097      * </pre>
2098      *
2099      * <code>optional string redundant_interface = 523187303;</code>
2100      *
2101      * @return The bytes for redundantInterface.
2102      */
getRedundantInterfaceBytes()2103     public com.google.protobuf.ByteString getRedundantInterfaceBytes() {
2104       java.lang.Object ref = redundantInterface_;
2105       if (ref instanceof String) {
2106         com.google.protobuf.ByteString b =
2107             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
2108         redundantInterface_ = b;
2109         return b;
2110       } else {
2111         return (com.google.protobuf.ByteString) ref;
2112       }
2113     }
2114     /**
2115      *
2116      *
2117      * <pre>
2118      * Name of the interface that will be redundant with the current interface you are creating. The redundantInterface must belong to the same Cloud Router as the interface here. To establish the BGP session to a Router Appliance VM, you must create two BGP peers. The two BGP peers must be attached to two separate interfaces that are redundant with each other. The redundant_interface must be 1-63 characters long, and comply with RFC1035. Specifically, the redundant_interface 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.
2119      * </pre>
2120      *
2121      * <code>optional string redundant_interface = 523187303;</code>
2122      *
2123      * @param value The redundantInterface to set.
2124      * @return This builder for chaining.
2125      */
setRedundantInterface(java.lang.String value)2126     public Builder setRedundantInterface(java.lang.String value) {
2127       if (value == null) {
2128         throw new NullPointerException();
2129       }
2130       redundantInterface_ = value;
2131       bitField0_ |= 0x00000040;
2132       onChanged();
2133       return this;
2134     }
2135     /**
2136      *
2137      *
2138      * <pre>
2139      * Name of the interface that will be redundant with the current interface you are creating. The redundantInterface must belong to the same Cloud Router as the interface here. To establish the BGP session to a Router Appliance VM, you must create two BGP peers. The two BGP peers must be attached to two separate interfaces that are redundant with each other. The redundant_interface must be 1-63 characters long, and comply with RFC1035. Specifically, the redundant_interface 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.
2140      * </pre>
2141      *
2142      * <code>optional string redundant_interface = 523187303;</code>
2143      *
2144      * @return This builder for chaining.
2145      */
clearRedundantInterface()2146     public Builder clearRedundantInterface() {
2147       redundantInterface_ = getDefaultInstance().getRedundantInterface();
2148       bitField0_ = (bitField0_ & ~0x00000040);
2149       onChanged();
2150       return this;
2151     }
2152     /**
2153      *
2154      *
2155      * <pre>
2156      * Name of the interface that will be redundant with the current interface you are creating. The redundantInterface must belong to the same Cloud Router as the interface here. To establish the BGP session to a Router Appliance VM, you must create two BGP peers. The two BGP peers must be attached to two separate interfaces that are redundant with each other. The redundant_interface must be 1-63 characters long, and comply with RFC1035. Specifically, the redundant_interface 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.
2157      * </pre>
2158      *
2159      * <code>optional string redundant_interface = 523187303;</code>
2160      *
2161      * @param value The bytes for redundantInterface to set.
2162      * @return This builder for chaining.
2163      */
setRedundantInterfaceBytes(com.google.protobuf.ByteString value)2164     public Builder setRedundantInterfaceBytes(com.google.protobuf.ByteString value) {
2165       if (value == null) {
2166         throw new NullPointerException();
2167       }
2168       checkByteStringIsUtf8(value);
2169       redundantInterface_ = value;
2170       bitField0_ |= 0x00000040;
2171       onChanged();
2172       return this;
2173     }
2174 
2175     private java.lang.Object subnetwork_ = "";
2176     /**
2177      *
2178      *
2179      * <pre>
2180      * The URI of the subnetwork resource that this interface belongs to, which must be in the same region as the Cloud Router. When you establish a BGP session to a VM instance using this interface, the VM instance must belong to the same subnetwork as the subnetwork specified here.
2181      * </pre>
2182      *
2183      * <code>optional string subnetwork = 307827694;</code>
2184      *
2185      * @return Whether the subnetwork field is set.
2186      */
hasSubnetwork()2187     public boolean hasSubnetwork() {
2188       return ((bitField0_ & 0x00000080) != 0);
2189     }
2190     /**
2191      *
2192      *
2193      * <pre>
2194      * The URI of the subnetwork resource that this interface belongs to, which must be in the same region as the Cloud Router. When you establish a BGP session to a VM instance using this interface, the VM instance must belong to the same subnetwork as the subnetwork specified here.
2195      * </pre>
2196      *
2197      * <code>optional string subnetwork = 307827694;</code>
2198      *
2199      * @return The subnetwork.
2200      */
getSubnetwork()2201     public java.lang.String getSubnetwork() {
2202       java.lang.Object ref = subnetwork_;
2203       if (!(ref instanceof java.lang.String)) {
2204         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
2205         java.lang.String s = bs.toStringUtf8();
2206         subnetwork_ = s;
2207         return s;
2208       } else {
2209         return (java.lang.String) ref;
2210       }
2211     }
2212     /**
2213      *
2214      *
2215      * <pre>
2216      * The URI of the subnetwork resource that this interface belongs to, which must be in the same region as the Cloud Router. When you establish a BGP session to a VM instance using this interface, the VM instance must belong to the same subnetwork as the subnetwork specified here.
2217      * </pre>
2218      *
2219      * <code>optional string subnetwork = 307827694;</code>
2220      *
2221      * @return The bytes for subnetwork.
2222      */
getSubnetworkBytes()2223     public com.google.protobuf.ByteString getSubnetworkBytes() {
2224       java.lang.Object ref = subnetwork_;
2225       if (ref instanceof String) {
2226         com.google.protobuf.ByteString b =
2227             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
2228         subnetwork_ = b;
2229         return b;
2230       } else {
2231         return (com.google.protobuf.ByteString) ref;
2232       }
2233     }
2234     /**
2235      *
2236      *
2237      * <pre>
2238      * The URI of the subnetwork resource that this interface belongs to, which must be in the same region as the Cloud Router. When you establish a BGP session to a VM instance using this interface, the VM instance must belong to the same subnetwork as the subnetwork specified here.
2239      * </pre>
2240      *
2241      * <code>optional string subnetwork = 307827694;</code>
2242      *
2243      * @param value The subnetwork to set.
2244      * @return This builder for chaining.
2245      */
setSubnetwork(java.lang.String value)2246     public Builder setSubnetwork(java.lang.String value) {
2247       if (value == null) {
2248         throw new NullPointerException();
2249       }
2250       subnetwork_ = value;
2251       bitField0_ |= 0x00000080;
2252       onChanged();
2253       return this;
2254     }
2255     /**
2256      *
2257      *
2258      * <pre>
2259      * The URI of the subnetwork resource that this interface belongs to, which must be in the same region as the Cloud Router. When you establish a BGP session to a VM instance using this interface, the VM instance must belong to the same subnetwork as the subnetwork specified here.
2260      * </pre>
2261      *
2262      * <code>optional string subnetwork = 307827694;</code>
2263      *
2264      * @return This builder for chaining.
2265      */
clearSubnetwork()2266     public Builder clearSubnetwork() {
2267       subnetwork_ = getDefaultInstance().getSubnetwork();
2268       bitField0_ = (bitField0_ & ~0x00000080);
2269       onChanged();
2270       return this;
2271     }
2272     /**
2273      *
2274      *
2275      * <pre>
2276      * The URI of the subnetwork resource that this interface belongs to, which must be in the same region as the Cloud Router. When you establish a BGP session to a VM instance using this interface, the VM instance must belong to the same subnetwork as the subnetwork specified here.
2277      * </pre>
2278      *
2279      * <code>optional string subnetwork = 307827694;</code>
2280      *
2281      * @param value The bytes for subnetwork to set.
2282      * @return This builder for chaining.
2283      */
setSubnetworkBytes(com.google.protobuf.ByteString value)2284     public Builder setSubnetworkBytes(com.google.protobuf.ByteString value) {
2285       if (value == null) {
2286         throw new NullPointerException();
2287       }
2288       checkByteStringIsUtf8(value);
2289       subnetwork_ = value;
2290       bitField0_ |= 0x00000080;
2291       onChanged();
2292       return this;
2293     }
2294 
2295     @java.lang.Override
setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)2296     public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) {
2297       return super.setUnknownFields(unknownFields);
2298     }
2299 
2300     @java.lang.Override
mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields)2301     public final Builder mergeUnknownFields(
2302         final com.google.protobuf.UnknownFieldSet unknownFields) {
2303       return super.mergeUnknownFields(unknownFields);
2304     }
2305 
2306     // @@protoc_insertion_point(builder_scope:google.cloud.compute.v1.RouterInterface)
2307   }
2308 
2309   // @@protoc_insertion_point(class_scope:google.cloud.compute.v1.RouterInterface)
2310   private static final com.google.cloud.compute.v1.RouterInterface DEFAULT_INSTANCE;
2311 
2312   static {
2313     DEFAULT_INSTANCE = new com.google.cloud.compute.v1.RouterInterface();
2314   }
2315 
getDefaultInstance()2316   public static com.google.cloud.compute.v1.RouterInterface getDefaultInstance() {
2317     return DEFAULT_INSTANCE;
2318   }
2319 
2320   private static final com.google.protobuf.Parser<RouterInterface> PARSER =
2321       new com.google.protobuf.AbstractParser<RouterInterface>() {
2322         @java.lang.Override
2323         public RouterInterface parsePartialFrom(
2324             com.google.protobuf.CodedInputStream input,
2325             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2326             throws com.google.protobuf.InvalidProtocolBufferException {
2327           Builder builder = newBuilder();
2328           try {
2329             builder.mergeFrom(input, extensionRegistry);
2330           } catch (com.google.protobuf.InvalidProtocolBufferException e) {
2331             throw e.setUnfinishedMessage(builder.buildPartial());
2332           } catch (com.google.protobuf.UninitializedMessageException e) {
2333             throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
2334           } catch (java.io.IOException e) {
2335             throw new com.google.protobuf.InvalidProtocolBufferException(e)
2336                 .setUnfinishedMessage(builder.buildPartial());
2337           }
2338           return builder.buildPartial();
2339         }
2340       };
2341 
parser()2342   public static com.google.protobuf.Parser<RouterInterface> parser() {
2343     return PARSER;
2344   }
2345 
2346   @java.lang.Override
getParserForType()2347   public com.google.protobuf.Parser<RouterInterface> getParserForType() {
2348     return PARSER;
2349   }
2350 
2351   @java.lang.Override
getDefaultInstanceForType()2352   public com.google.cloud.compute.v1.RouterInterface getDefaultInstanceForType() {
2353     return DEFAULT_INSTANCE;
2354   }
2355 }
2356