Class: Google::Apis::ComputeBeta::InterconnectAttachment
- Inherits:
-
Object
- Object
- Google::Apis::ComputeBeta::InterconnectAttachment
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_beta/classes.rb,
lib/google/apis/compute_beta/representations.rb,
lib/google/apis/compute_beta/representations.rb
Overview
Represents an Interconnect Attachment (VLAN) resource. You can use Interconnect attachments (VLANS) to connect your Virtual Private Cloud networks to your on-premises networks through an Interconnect. For more information, read Creating VLAN Attachments.
Instance Attribute Summary collapse
-
#admin_enabled ⇒ Boolean
(also: #admin_enabled?)
Determines whether this Attachment will carry packets.
-
#bandwidth ⇒ String
Provisioned bandwidth capacity for the interconnect attachment.
-
#candidate_ipv6_subnets ⇒ Array<String>
This field is not available.
-
#candidate_subnets ⇒ Array<String>
Up to 16 candidate prefixes that can be used to restrict the allocation of cloudRouterIpAddress and customerRouterIpAddress for this attachment.
-
#cloud_router_ip_address ⇒ String
[Output Only] IPv4 address + prefix length to be configured on Cloud Router Interface for this interconnect attachment.
-
#cloud_router_ipv6_address ⇒ String
[Output Only] IPv6 address + prefix length to be configured on Cloud Router Interface for this interconnect attachment.
-
#cloud_router_ipv6_interface_id ⇒ String
This field is not available.
-
#configuration_constraints ⇒ Google::Apis::ComputeBeta::InterconnectAttachmentConfigurationConstraints
[Output Only] Constraints for this attachment, if any.
-
#creation_timestamp ⇒ String
[Output Only] Creation timestamp in RFC3339 text format.
-
#customer_router_ip_address ⇒ String
[Output Only] IPv4 address + prefix length to be configured on the customer router subinterface for this interconnect attachment.
-
#customer_router_ipv6_address ⇒ String
[Output Only] IPv6 address + prefix length to be configured on the customer router subinterface for this interconnect attachment.
-
#customer_router_ipv6_interface_id ⇒ String
This field is not available.
-
#dataplane_version ⇒ Fixnum
[Output Only] Dataplane version for this InterconnectAttachment.
-
#description ⇒ String
An optional description of this resource.
-
#edge_availability_domain ⇒ String
Desired availability domain for the attachment.
-
#encryption ⇒ String
Indicates the user-supplied encryption option of this VLAN attachment ( interconnectAttachment).
-
#google_reference_id ⇒ String
[Output Only] Google reference ID, to be used when raising support tickets with Google or otherwise to debug backend connectivity issues.
-
#id ⇒ Fixnum
[Output Only] The unique identifier for the resource.
-
#interconnect ⇒ String
URL of the underlying Interconnect object that this attachment's traffic will traverse through.
-
#ipsec_internal_addresses ⇒ Array<String>
A list of URLs of addresses that have been reserved for the VLAN attachment.
-
#kind ⇒ String
[Output Only] Type of the resource.
-
#label_fingerprint ⇒ String
A fingerprint for the labels being applied to this InterconnectAttachment, which is essentially a hash of the labels set used for optimistic locking.
-
#labels ⇒ Hash<String,String>
Labels for this resource.
-
#mtu ⇒ Fixnum
Maximum Transmission Unit (MTU), in bytes, of packets passing through this interconnect attachment.
-
#name ⇒ String
Name of the resource.
-
#operational_status ⇒ String
[Output Only] The current status of whether or not this interconnect attachment is functional, which can take one of the following values: - OS_ACTIVE: The attachment has been turned up and is ready to use.
-
#pairing_key ⇒ String
[Output only for type PARTNER. Input only for PARTNER_PROVIDER. Not present for DEDICATED].
-
#partner_asn ⇒ Fixnum
Optional BGP ASN for the router supplied by a Layer 3 Partner if they configured BGP on behalf of the customer.
-
#partner_metadata ⇒ Google::Apis::ComputeBeta::InterconnectAttachmentPartnerMetadata
Informational metadata about Partner attachments from Partners to display to customers.
-
#private_interconnect_info ⇒ Google::Apis::ComputeBeta::InterconnectAttachmentPrivateInfo
Information for an interconnect attachment when this belongs to an interconnect of type DEDICATED.
-
#region ⇒ String
[Output Only] URL of the region where the regional interconnect attachment resides.
-
#remote_service ⇒ String
[Output Only] If the attachment is on a Cross-Cloud Interconnect connection, this field contains the interconnect's remote location service provider.
-
#router ⇒ String
URL of the Cloud Router to be used for dynamic routing.
-
#satisfies_pzs ⇒ Boolean
(also: #satisfies_pzs?)
[Output Only] Reserved for future use.
-
#self_link ⇒ String
[Output Only] Server-defined URL for the resource.
-
#stack_type ⇒ String
The stack type for this interconnect attachment to identify whether the IPv6 feature is enabled or not.
-
#state ⇒ String
[Output Only] The current state of this attachment's functionality.
-
#subnet_length ⇒ Fixnum
Length of the IPv4 subnet mask.
-
#type ⇒ String
The type of interconnect attachment this is, which can take one of the following values: - DEDICATED: an attachment to a Dedicated Interconnect.
-
#vlan_tag8021q ⇒ Fixnum
The IEEE 802.1Q VLAN tag for this attachment, in the range 2-4093.
Instance Method Summary collapse
-
#initialize(**args) ⇒ InterconnectAttachment
constructor
A new instance of InterconnectAttachment.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ InterconnectAttachment
Returns a new instance of InterconnectAttachment.
19449 19450 19451 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19449 def initialize(**args) update!(**args) end |
Instance Attribute Details
#admin_enabled ⇒ Boolean Also known as: admin_enabled?
Determines whether this Attachment will carry packets. Not present for
PARTNER_PROVIDER.
Corresponds to the JSON property adminEnabled
19132 19133 19134 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19132 def admin_enabled @admin_enabled end |
#bandwidth ⇒ String
Provisioned bandwidth capacity for the interconnect attachment. For
attachments of type DEDICATED, the user can set the bandwidth. For attachments
of type PARTNER, the Google Partner that is operating the interconnect must
set the bandwidth. Output only for PARTNER type, mutable for PARTNER_PROVIDER
and DEDICATED, and can take one of the following values: - BPS_50M: 50 Mbit/s -
BPS_100M: 100 Mbit/s - BPS_200M: 200 Mbit/s - BPS_300M: 300 Mbit/s - BPS_400M:
400 Mbit/s - BPS_500M: 500 Mbit/s - BPS_1G: 1 Gbit/s - BPS_2G: 2 Gbit/s -
BPS_5G: 5 Gbit/s - BPS_10G: 10 Gbit/s - BPS_20G: 20 Gbit/s - BPS_50G: 50 Gbit/
s
Corresponds to the JSON property bandwidth
19146 19147 19148 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19146 def bandwidth @bandwidth end |
#candidate_ipv6_subnets ⇒ Array<String>
This field is not available.
Corresponds to the JSON property candidateIpv6Subnets
19151 19152 19153 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19151 def candidate_ipv6_subnets @candidate_ipv6_subnets end |
#candidate_subnets ⇒ Array<String>
Up to 16 candidate prefixes that can be used to restrict the allocation of
cloudRouterIpAddress and customerRouterIpAddress for this attachment. All
prefixes must be within link-local address space (169.254.0.0/16) and must be /
29 or shorter (/28, /27, etc). Google will attempt to select an unused /29
from the supplied candidate prefix(es). The request will fail if all possible /
29s are in use on Google's edge. If not supplied, Google will randomly select
an unused /29 from all of link-local space.
Corresponds to the JSON property candidateSubnets
19162 19163 19164 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19162 def candidate_subnets @candidate_subnets end |
#cloud_router_ip_address ⇒ String
[Output Only] IPv4 address + prefix length to be configured on Cloud Router
Interface for this interconnect attachment.
Corresponds to the JSON property cloudRouterIpAddress
19168 19169 19170 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19168 def cloud_router_ip_address @cloud_router_ip_address end |
#cloud_router_ipv6_address ⇒ String
[Output Only] IPv6 address + prefix length to be configured on Cloud Router
Interface for this interconnect attachment.
Corresponds to the JSON property cloudRouterIpv6Address
19174 19175 19176 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19174 def cloud_router_ipv6_address @cloud_router_ipv6_address end |
#cloud_router_ipv6_interface_id ⇒ String
This field is not available.
Corresponds to the JSON property cloudRouterIpv6InterfaceId
19179 19180 19181 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19179 def cloud_router_ipv6_interface_id @cloud_router_ipv6_interface_id end |
#configuration_constraints ⇒ Google::Apis::ComputeBeta::InterconnectAttachmentConfigurationConstraints
[Output Only] Constraints for this attachment, if any. The attachment does not
work if these constraints are not met.
Corresponds to the JSON property configurationConstraints
19185 19186 19187 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19185 def configuration_constraints @configuration_constraints end |
#creation_timestamp ⇒ String
[Output Only] Creation timestamp in RFC3339 text format.
Corresponds to the JSON property creationTimestamp
19190 19191 19192 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19190 def @creation_timestamp end |
#customer_router_ip_address ⇒ String
[Output Only] IPv4 address + prefix length to be configured on the customer
router subinterface for this interconnect attachment.
Corresponds to the JSON property customerRouterIpAddress
19196 19197 19198 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19196 def customer_router_ip_address @customer_router_ip_address end |
#customer_router_ipv6_address ⇒ String
[Output Only] IPv6 address + prefix length to be configured on the customer
router subinterface for this interconnect attachment.
Corresponds to the JSON property customerRouterIpv6Address
19202 19203 19204 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19202 def customer_router_ipv6_address @customer_router_ipv6_address end |
#customer_router_ipv6_interface_id ⇒ String
This field is not available.
Corresponds to the JSON property customerRouterIpv6InterfaceId
19207 19208 19209 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19207 def customer_router_ipv6_interface_id @customer_router_ipv6_interface_id end |
#dataplane_version ⇒ Fixnum
[Output Only] Dataplane version for this InterconnectAttachment. This field is
only present for Dataplane version 2 and higher. Absence of this field in the
API output indicates that the Dataplane is version 1.
Corresponds to the JSON property dataplaneVersion
19214 19215 19216 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19214 def dataplane_version @dataplane_version end |
#description ⇒ String
An optional description of this resource.
Corresponds to the JSON property description
19219 19220 19221 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19219 def description @description end |
#edge_availability_domain ⇒ String
Desired availability domain for the attachment. Only available for type
PARTNER, at creation time, and can take one of the following values: -
AVAILABILITY_DOMAIN_ANY - AVAILABILITY_DOMAIN_1 - AVAILABILITY_DOMAIN_2 For
improved reliability, customers should configure a pair of attachments, one
per availability domain. The selected availability domain will be provided to
the Partner via the pairing key, so that the provisioned circuit will lie in
the specified domain. If not specified, the value will default to
AVAILABILITY_DOMAIN_ANY.
Corresponds to the JSON property edgeAvailabilityDomain
19231 19232 19233 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19231 def edge_availability_domain @edge_availability_domain end |
#encryption ⇒ String
Indicates the user-supplied encryption option of this VLAN attachment (
interconnectAttachment). Can only be specified at attachment creation for
PARTNER or DEDICATED attachments. Possible values are: - NONE - This is the
default value, which means that the VLAN attachment carries unencrypted
traffic. VMs are able to send traffic to, or receive traffic from, such a VLAN
attachment. - IPSEC - The VLAN attachment carries only encrypted traffic that
is encrypted by an IPsec device, such as an HA VPN gateway or third-party
IPsec VPN. VMs cannot directly send traffic to, or receive traffic from, such
a VLAN attachment. To use HA VPN over Cloud Interconnect, the VLAN
attachment must be created with this option.
Corresponds to the JSON property encryption
19245 19246 19247 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19245 def encryption @encryption end |
#google_reference_id ⇒ String
[Output Only] Google reference ID, to be used when raising support tickets
with Google or otherwise to debug backend connectivity issues. [Deprecated]
This field is not used.
Corresponds to the JSON property googleReferenceId
19252 19253 19254 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19252 def google_reference_id @google_reference_id end |
#id ⇒ Fixnum
[Output Only] The unique identifier for the resource. This identifier is
defined by the server.
Corresponds to the JSON property id
19258 19259 19260 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19258 def id @id end |
#interconnect ⇒ String
URL of the underlying Interconnect object that this attachment's traffic will
traverse through.
Corresponds to the JSON property interconnect
19264 19265 19266 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19264 def interconnect @interconnect end |
#ipsec_internal_addresses ⇒ Array<String>
A list of URLs of addresses that have been reserved for the VLAN attachment.
Used only for the VLAN attachment that has the encryption option as IPSEC. The
addresses must be regional internal IP address ranges. When creating an HA VPN
gateway over the VLAN attachment, if the attachment is configured to use a
regional internal IP address, then the VPN gateway's IP address is allocated
from the IP address range specified here. For example, if the HA VPN gateway's
interface 0 is paired to this VLAN attachment, then a regional internal IP
address for the VPN gateway interface 0 will be allocated from the IP address
specified for this VLAN attachment. If this field is not specified when
creating the VLAN attachment, then later on when creating an HA VPN gateway on
this VLAN attachment, the HA VPN gateway's IP address is allocated from the
regional external IP address pool.
Corresponds to the JSON property ipsecInternalAddresses
19280 19281 19282 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19280 def ipsec_internal_addresses @ipsec_internal_addresses end |
#kind ⇒ String
[Output Only] Type of the resource. Always compute#interconnectAttachment for
interconnect attachments.
Corresponds to the JSON property kind
19286 19287 19288 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19286 def kind @kind end |
#label_fingerprint ⇒ String
A fingerprint for the labels being applied to this InterconnectAttachment,
which is essentially a hash of the labels set used for optimistic locking. The
fingerprint is initially generated by Compute Engine and changes after every
request to modify or update labels. You must always provide an up-to-date
fingerprint hash in order to update or change labels, otherwise the request
will fail with error 412 conditionNotMet. To see the latest fingerprint, make
a get() request to retrieve an InterconnectAttachment.
Corresponds to the JSON property labelFingerprint
NOTE: Values are automatically base64 encoded/decoded in the client library.
19298 19299 19300 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19298 def label_fingerprint @label_fingerprint end |
#labels ⇒ Hash<String,String>
Labels for this resource. These can only be added or modified by the setLabels
method. Each label key/value pair must comply with RFC1035. Label values may
be empty.
Corresponds to the JSON property labels
19305 19306 19307 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19305 def labels @labels end |
#mtu ⇒ Fixnum
Maximum Transmission Unit (MTU), in bytes, of packets passing through this
interconnect attachment. Only 1440 and 1500 are allowed. If not specified, the
value will default to 1440.
Corresponds to the JSON property mtu
19312 19313 19314 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19312 def mtu @mtu end |
#name ⇒ String
Name of the resource. Provided by the client when the resource is created. The
name must be 1-63 characters long, and comply with RFC1035. Specifically, the
name must be 1-63 characters long and match the regular expression [a-z]([-a-
z0-9]*[a-z0-9])?
which means the first character must be a lowercase letter,
and all following characters must be a dash, lowercase letter, or digit,
except the last character, which cannot be a dash.
Corresponds to the JSON property name
19322 19323 19324 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19322 def name @name end |
#operational_status ⇒ String
[Output Only] The current status of whether or not this interconnect
attachment is functional, which can take one of the following values: -
OS_ACTIVE: The attachment has been turned up and is ready to use. -
OS_UNPROVISIONED: The attachment is not ready to use yet, because turnup is
not complete.
Corresponds to the JSON property operationalStatus
19331 19332 19333 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19331 def operational_status @operational_status end |
#pairing_key ⇒ String
[Output only for type PARTNER. Input only for PARTNER_PROVIDER. Not present
for DEDICATED]. The opaque identifier of an PARTNER attachment used to
initiate provisioning with a selected partner. Of the form "XXXXX/region/
domain"
Corresponds to the JSON property pairingKey
19339 19340 19341 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19339 def pairing_key @pairing_key end |
#partner_asn ⇒ Fixnum
Optional BGP ASN for the router supplied by a Layer 3 Partner if they
configured BGP on behalf of the customer. Output only for PARTNER type, input
only for PARTNER_PROVIDER, not available for DEDICATED.
Corresponds to the JSON property partnerAsn
19346 19347 19348 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19346 def partner_asn @partner_asn end |
#partner_metadata ⇒ Google::Apis::ComputeBeta::InterconnectAttachmentPartnerMetadata
Informational metadata about Partner attachments from Partners to display to
customers. These fields are propagated from PARTNER_PROVIDER attachments to
their corresponding PARTNER attachments.
Corresponds to the JSON property partnerMetadata
19353 19354 19355 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19353 def @partner_metadata end |
#private_interconnect_info ⇒ Google::Apis::ComputeBeta::InterconnectAttachmentPrivateInfo
Information for an interconnect attachment when this belongs to an
interconnect of type DEDICATED.
Corresponds to the JSON property privateInterconnectInfo
19359 19360 19361 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19359 def private_interconnect_info @private_interconnect_info end |
#region ⇒ String
[Output Only] URL of the region where the regional interconnect attachment
resides. You must specify this field as part of the HTTP request URL. It is
not settable as a field in the request body.
Corresponds to the JSON property region
19366 19367 19368 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19366 def region @region end |
#remote_service ⇒ String
[Output Only] If the attachment is on a Cross-Cloud Interconnect connection,
this field contains the interconnect's remote location service provider.
Example values: "Amazon Web Services" "Microsoft Azure". The field is set only
for attachments on Cross-Cloud Interconnect connections. Its value is copied
from the InterconnectRemoteLocation remoteService field.
Corresponds to the JSON property remoteService
19375 19376 19377 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19375 def remote_service @remote_service end |
#router ⇒ String
URL of the Cloud Router to be used for dynamic routing. This router must be in
the same region as this InterconnectAttachment. The InterconnectAttachment
will automatically connect the Interconnect to the network & region within
which the Cloud Router is configured.
Corresponds to the JSON property router
19383 19384 19385 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19383 def router @router end |
#satisfies_pzs ⇒ Boolean Also known as: satisfies_pzs?
[Output Only] Reserved for future use.
Corresponds to the JSON property satisfiesPzs
19388 19389 19390 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19388 def satisfies_pzs @satisfies_pzs end |
#self_link ⇒ String
[Output Only] Server-defined URL for the resource.
Corresponds to the JSON property selfLink
19394 19395 19396 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19394 def self_link @self_link end |
#stack_type ⇒ String
The stack type for this interconnect attachment to identify whether the IPv6
feature is enabled or not. If not specified, IPV4_ONLY will be used. This
field can be both set at interconnect attachments creation and update
interconnect attachment operations.
Corresponds to the JSON property stackType
19402 19403 19404 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19402 def stack_type @stack_type end |
#state ⇒ String
[Output Only] The current state of this attachment's functionality. Enum
values ACTIVE and UNPROVISIONED are shared by DEDICATED/PRIVATE, PARTNER, and
PARTNER_PROVIDER interconnect attachments, while enum values PENDING_PARTNER,
PARTNER_REQUEST_RECEIVED, and PENDING_CUSTOMER are used for only PARTNER and
PARTNER_PROVIDER interconnect attachments. This state can take one of the
following values: - ACTIVE: The attachment has been turned up and is ready to
use. - UNPROVISIONED: The attachment is not ready to use yet, because turnup
is not complete. - PENDING_PARTNER: A newly-created PARTNER attachment that
has not yet been configured on the Partner side. - PARTNER_REQUEST_RECEIVED: A
PARTNER attachment is in the process of provisioning after a PARTNER_PROVIDER
attachment was created that references it. - PENDING_CUSTOMER: A PARTNER or
PARTNER_PROVIDER attachment that is waiting for a customer to activate it. -
DEFUNCT: The attachment was deleted externally and is no longer functional.
This could be because the associated Interconnect was removed, or because the
other side of a Partner attachment was deleted.
Corresponds to the JSON property state
19421 19422 19423 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19421 def state @state end |
#subnet_length ⇒ Fixnum
Length of the IPv4 subnet mask. Allowed values: - 29 (default) - 30 The
default value is 29, except for Cross-Cloud Interconnect connections that use
an InterconnectRemoteLocation with a constraints.subnetLengthRange.min equal
to 30. For example, connections that use an Azure remote location fall into
this category. In these cases, the default value is 30, and requesting 29
returns an error. Where both 29 and 30 are allowed, 29 is preferred, because
it gives Google Cloud Support more debugging visibility.
Corresponds to the JSON property subnetLength
19432 19433 19434 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19432 def subnet_length @subnet_length end |
#type ⇒ String
The type of interconnect attachment this is, which can take one of the
following values: - DEDICATED: an attachment to a Dedicated Interconnect. -
PARTNER: an attachment to a Partner Interconnect, created by the customer. -
PARTNER_PROVIDER: an attachment to a Partner Interconnect, created by the
partner.
Corresponds to the JSON property type
19441 19442 19443 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19441 def type @type end |
#vlan_tag8021q ⇒ Fixnum
The IEEE 802.1Q VLAN tag for this attachment, in the range 2-4093. Only
specified at creation time.
Corresponds to the JSON property vlanTag8021q
19447 19448 19449 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19447 def vlan_tag8021q @vlan_tag8021q end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
19454 19455 19456 19457 19458 19459 19460 19461 19462 19463 19464 19465 19466 19467 19468 19469 19470 19471 19472 19473 19474 19475 19476 19477 19478 19479 19480 19481 19482 19483 19484 19485 19486 19487 19488 19489 19490 19491 19492 19493 19494 19495 |
# File 'lib/google/apis/compute_beta/classes.rb', line 19454 def update!(**args) @admin_enabled = args[:admin_enabled] if args.key?(:admin_enabled) @bandwidth = args[:bandwidth] if args.key?(:bandwidth) @candidate_ipv6_subnets = args[:candidate_ipv6_subnets] if args.key?(:candidate_ipv6_subnets) @candidate_subnets = args[:candidate_subnets] if args.key?(:candidate_subnets) @cloud_router_ip_address = args[:cloud_router_ip_address] if args.key?(:cloud_router_ip_address) @cloud_router_ipv6_address = args[:cloud_router_ipv6_address] if args.key?(:cloud_router_ipv6_address) @cloud_router_ipv6_interface_id = args[:cloud_router_ipv6_interface_id] if args.key?(:cloud_router_ipv6_interface_id) @configuration_constraints = args[:configuration_constraints] if args.key?(:configuration_constraints) @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) @customer_router_ip_address = args[:customer_router_ip_address] if args.key?(:customer_router_ip_address) @customer_router_ipv6_address = args[:customer_router_ipv6_address] if args.key?(:customer_router_ipv6_address) @customer_router_ipv6_interface_id = args[:customer_router_ipv6_interface_id] if args.key?(:customer_router_ipv6_interface_id) @dataplane_version = args[:dataplane_version] if args.key?(:dataplane_version) @description = args[:description] if args.key?(:description) @edge_availability_domain = args[:edge_availability_domain] if args.key?(:edge_availability_domain) @encryption = args[:encryption] if args.key?(:encryption) @google_reference_id = args[:google_reference_id] if args.key?(:google_reference_id) @id = args[:id] if args.key?(:id) @interconnect = args[:interconnect] if args.key?(:interconnect) @ipsec_internal_addresses = args[:ipsec_internal_addresses] if args.key?(:ipsec_internal_addresses) @kind = args[:kind] if args.key?(:kind) @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint) @labels = args[:labels] if args.key?(:labels) @mtu = args[:mtu] if args.key?(:mtu) @name = args[:name] if args.key?(:name) @operational_status = args[:operational_status] if args.key?(:operational_status) @pairing_key = args[:pairing_key] if args.key?(:pairing_key) @partner_asn = args[:partner_asn] if args.key?(:partner_asn) @partner_metadata = args[:partner_metadata] if args.key?(:partner_metadata) @private_interconnect_info = args[:private_interconnect_info] if args.key?(:private_interconnect_info) @region = args[:region] if args.key?(:region) @remote_service = args[:remote_service] if args.key?(:remote_service) @router = args[:router] if args.key?(:router) @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs) @self_link = args[:self_link] if args.key?(:self_link) @stack_type = args[:stack_type] if args.key?(:stack_type) @state = args[:state] if args.key?(:state) @subnet_length = args[:subnet_length] if args.key?(:subnet_length) @type = args[:type] if args.key?(:type) @vlan_tag8021q = args[:vlan_tag8021q] if args.key?(:vlan_tag8021q) end |