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



22683
22684
22685
# File 'generated/google/apis/compute_beta/classes.rb', line 22683

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)


22651
22652
22653
# File 'generated/google/apis/compute_beta/classes.rb', line 22651

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)


22658
22659
22660
# File 'generated/google/apis/compute_beta/classes.rb', line 22658

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)


22665
22666
22667
# File 'generated/google/apis/compute_beta/classes.rb', line 22665

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)


22675
22676
22677
# File 'generated/google/apis/compute_beta/classes.rb', line 22675

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)


22681
22682
22683
# File 'generated/google/apis/compute_beta/classes.rb', line 22681

def name
  @name
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



22688
22689
22690
22691
22692
22693
22694
# File 'generated/google/apis/compute_beta/classes.rb', line 22688

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