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



18106
18107
18108
# File 'generated/google/apis/compute_beta/classes.rb', line 18106

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 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)


18074
18075
18076
# File 'generated/google/apis/compute_beta/classes.rb', line 18074

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 at most one linked resource and it could either be a VPN Tunnel or an interconnect attachment. Corresponds to the JSON property linkedInterconnectAttachment

Returns:

  • (String)


18081
18082
18083
# File 'generated/google/apis/compute_beta/classes.rb', line 18081

def linked_interconnect_attachment
  @linked_interconnect_attachment
end

#linked_vpn_tunnelString

URI of the linked VPN tunnel. It must be in the same region as the router. Each interface can have at most one linked resource and it could either be a VPN Tunnel or an interconnect attachment. Corresponds to the JSON property linkedVpnTunnel

Returns:

  • (String)


18088
18089
18090
# File 'generated/google/apis/compute_beta/classes.rb', line 18088

def linked_vpn_tunnel
  @linked_vpn_tunnel
end

#management_typeString

[Output Only] Type of how the resource/configuration of the interface is managed. MANAGED_BY_USER is the default value; MANAGED_BY_ATTACHMENT represents an interface that is automatically created for PARTNER type interconnectAttachment, Google will automatically create/update/delete this type of interface when the PARTNER interconnectAttachment is created/ provisioned/deleted. Corresponds to the JSON property managementType

Returns:

  • (String)


18098
18099
18100
# File 'generated/google/apis/compute_beta/classes.rb', line 18098

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)


18104
18105
18106
# File 'generated/google/apis/compute_beta/classes.rb', line 18104

def name
  @name
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



18111
18112
18113
18114
18115
18116
18117
# File 'generated/google/apis/compute_beta/classes.rb', line 18111

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