Class: Google::Apis::ComputeBeta::RouterInterface

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
generated/google/apis/compute_beta/classes.rb,
generated/google/apis/compute_beta/representations.rb,
generated/google/apis/compute_beta/representations.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Google::Apis::Core::JsonObjectSupport

#to_json

Methods included from Google::Apis::Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ RouterInterface

Returns a new instance of RouterInterface



22553
22554
22555
# File 'generated/google/apis/compute_beta/classes.rb', line 22553

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#ip_rangeString

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. Corresponds to the JSON property ipRange

Returns:

  • (String)


22521
22522
22523
# File 'generated/google/apis/compute_beta/classes.rb', line 22521

def ip_range
  @ip_range
end

#linked_interconnect_attachmentString

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 either be a VPN tunnel or an Interconnect attachment. Corresponds to the JSON property linkedInterconnectAttachment

Returns:

  • (String)


22528
22529
22530
# File 'generated/google/apis/compute_beta/classes.rb', line 22528

def linked_interconnect_attachment
  @linked_interconnect_attachment
end

#linked_vpn_tunnelString

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 either a VPN tunnel or an Interconnect attachment. Corresponds to the JSON property linkedVpnTunnel

Returns:

  • (String)


22535
22536
22537
# File 'generated/google/apis/compute_beta/classes.rb', line 22535

def linked_vpn_tunnel
  @linked_vpn_tunnel
end

#management_typeString

[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. Corresponds to the JSON property managementType

Returns:

  • (String)


22545
22546
22547
# File 'generated/google/apis/compute_beta/classes.rb', line 22545

def management_type
  @management_type
end

#nameString

Name of this interface entry. The name must be 1-63 characters long and comply with RFC1035. Corresponds to the JSON property name

Returns:

  • (String)


22551
22552
22553
# File 'generated/google/apis/compute_beta/classes.rb', line 22551

def name
  @name
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



22558
22559
22560
22561
22562
22563
22564
# File 'generated/google/apis/compute_beta/classes.rb', line 22558

def update!(**args)
  @ip_range = args[:ip_range] if args.key?(:ip_range)
  @linked_interconnect_attachment = args[:linked_interconnect_attachment] if args.key?(:linked_interconnect_attachment)
  @linked_vpn_tunnel = args[:linked_vpn_tunnel] if args.key?(:linked_vpn_tunnel)
  @management_type = args[:management_type] if args.key?(:management_type)
  @name = args[:name] if args.key?(:name)
end