Class: Google::Apis::ComputeV1::RouterInterface

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
generated/google/apis/compute_v1/classes.rb,
generated/google/apis/compute_v1/representations.rb,
generated/google/apis/compute_v1/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.



23231
23232
23233
# File 'generated/google/apis/compute_v1/classes.rb', line 23231

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)


23195
23196
23197
# File 'generated/google/apis/compute_v1/classes.rb', line 23195

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)


23202
23203
23204
# File 'generated/google/apis/compute_v1/classes.rb', line 23202

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)


23209
23210
23211
# File 'generated/google/apis/compute_v1/classes.rb', line 23209

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)


23219
23220
23221
# File 'generated/google/apis/compute_v1/classes.rb', line 23219

def management_type
  @management_type
end

#nameString

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

Returns:

  • (String)


23229
23230
23231
# File 'generated/google/apis/compute_v1/classes.rb', line 23229

def name
  @name
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



23236
23237
23238
23239
23240
23241
23242
# File 'generated/google/apis/compute_v1/classes.rb', line 23236

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