Class: Google::Apis::ComputeV1::Router
- Inherits:
-
Object
- Object
- Google::Apis::ComputeV1::Router
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_v1/classes.rb,
lib/google/apis/compute_v1/representations.rb,
lib/google/apis/compute_v1/representations.rb
Overview
Represents a Cloud Router resource. For more information about Cloud Router, read the Cloud Router overview.
Instance Attribute Summary collapse
-
#bgp ⇒ Google::Apis::ComputeV1::RouterBgp
BGP information specific to this router.
-
#bgp_peers ⇒ Array<Google::Apis::ComputeV1::RouterBgpPeer>
BGP information that must be configured into the routing stack to establish BGP peering.
-
#creation_timestamp ⇒ String
[Output Only] Creation timestamp in RFC3339 text format.
-
#description ⇒ String
An optional description of this resource.
-
#encrypted_interconnect_router ⇒ Boolean
(also: #encrypted_interconnect_router?)
Indicates if a router is dedicated for use with encrypted VLAN attachments ( interconnectAttachments).
-
#id ⇒ Fixnum
[Output Only] The unique identifier for the resource.
-
#interfaces ⇒ Array<Google::Apis::ComputeV1::RouterInterface>
Router interfaces.
-
#kind ⇒ String
[Output Only] Type of resource.
-
#md5_authentication_keys ⇒ Array<Google::Apis::ComputeV1::RouterMd5AuthenticationKey>
Keys used for MD5 authentication.
-
#name ⇒ String
Name of the resource.
-
#nats ⇒ Array<Google::Apis::ComputeV1::RouterNat>
A list of NAT services created in this router.
-
#network ⇒ String
URI of the network to which this router belongs.
-
#region ⇒ String
[Output Only] URI of the region where the router resides.
-
#self_link ⇒ String
[Output Only] Server-defined URL for the resource.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Router
constructor
A new instance of Router.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Router
Returns a new instance of Router.
32722 32723 32724 |
# File 'lib/google/apis/compute_v1/classes.rb', line 32722 def initialize(**args) update!(**args) end |
Instance Attribute Details
#bgp ⇒ Google::Apis::ComputeV1::RouterBgp
BGP information specific to this router.
Corresponds to the JSON property bgp
32638 32639 32640 |
# File 'lib/google/apis/compute_v1/classes.rb', line 32638 def bgp @bgp end |
#bgp_peers ⇒ Array<Google::Apis::ComputeV1::RouterBgpPeer>
BGP information that must be configured into the routing stack to establish
BGP peering. This information must specify the peer ASN and either the
interface name, IP address, or peer IP address. Please refer to RFC4273.
Corresponds to the JSON property bgpPeers
32645 32646 32647 |
# File 'lib/google/apis/compute_v1/classes.rb', line 32645 def bgp_peers @bgp_peers end |
#creation_timestamp ⇒ String
[Output Only] Creation timestamp in RFC3339 text format.
Corresponds to the JSON property creationTimestamp
32650 32651 32652 |
# File 'lib/google/apis/compute_v1/classes.rb', line 32650 def @creation_timestamp end |
#description ⇒ String
An optional description of this resource. Provide this property when you
create the resource.
Corresponds to the JSON property description
32656 32657 32658 |
# File 'lib/google/apis/compute_v1/classes.rb', line 32656 def description @description end |
#encrypted_interconnect_router ⇒ Boolean Also known as: encrypted_interconnect_router?
Indicates if a router is dedicated for use with encrypted VLAN attachments (
interconnectAttachments).
Corresponds to the JSON property encryptedInterconnectRouter
32662 32663 32664 |
# File 'lib/google/apis/compute_v1/classes.rb', line 32662 def encrypted_interconnect_router @encrypted_interconnect_router end |
#id ⇒ Fixnum
[Output Only] The unique identifier for the resource. This identifier is
defined by the server.
Corresponds to the JSON property id
32669 32670 32671 |
# File 'lib/google/apis/compute_v1/classes.rb', line 32669 def id @id end |
#interfaces ⇒ Array<Google::Apis::ComputeV1::RouterInterface>
Router interfaces. To create a BGP peer that uses a router interface, the
interface must have one of the following fields specified: - linkedVpnTunnel -
linkedInterconnectAttachment - subnetwork You can create a router interface
without any of these fields specified. However, you cannot create a BGP peer
that uses that interface.
Corresponds to the JSON property interfaces
32678 32679 32680 |
# File 'lib/google/apis/compute_v1/classes.rb', line 32678 def interfaces @interfaces end |
#kind ⇒ String
[Output Only] Type of resource. Always compute#router for routers.
Corresponds to the JSON property kind
32683 32684 32685 |
# File 'lib/google/apis/compute_v1/classes.rb', line 32683 def kind @kind end |
#md5_authentication_keys ⇒ Array<Google::Apis::ComputeV1::RouterMd5AuthenticationKey>
Keys used for MD5 authentication.
Corresponds to the JSON property md5AuthenticationKeys
32688 32689 32690 |
# File 'lib/google/apis/compute_v1/classes.rb', line 32688 def md5_authentication_keys @md5_authentication_keys 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
32698 32699 32700 |
# File 'lib/google/apis/compute_v1/classes.rb', line 32698 def name @name end |
#nats ⇒ Array<Google::Apis::ComputeV1::RouterNat>
A list of NAT services created in this router.
Corresponds to the JSON property nats
32703 32704 32705 |
# File 'lib/google/apis/compute_v1/classes.rb', line 32703 def nats @nats end |
#network ⇒ String
URI of the network to which this router belongs.
Corresponds to the JSON property network
32708 32709 32710 |
# File 'lib/google/apis/compute_v1/classes.rb', line 32708 def network @network end |
#region ⇒ String
[Output Only] URI of the region where the router 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
32715 32716 32717 |
# File 'lib/google/apis/compute_v1/classes.rb', line 32715 def region @region end |
#self_link ⇒ String
[Output Only] Server-defined URL for the resource.
Corresponds to the JSON property selfLink
32720 32721 32722 |
# File 'lib/google/apis/compute_v1/classes.rb', line 32720 def self_link @self_link end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
32727 32728 32729 32730 32731 32732 32733 32734 32735 32736 32737 32738 32739 32740 32741 32742 |
# File 'lib/google/apis/compute_v1/classes.rb', line 32727 def update!(**args) @bgp = args[:bgp] if args.key?(:bgp) @bgp_peers = args[:bgp_peers] if args.key?(:bgp_peers) @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) @description = args[:description] if args.key?(:description) @encrypted_interconnect_router = args[:encrypted_interconnect_router] if args.key?(:encrypted_interconnect_router) @id = args[:id] if args.key?(:id) @interfaces = args[:interfaces] if args.key?(:interfaces) @kind = args[:kind] if args.key?(:kind) @md5_authentication_keys = args[:md5_authentication_keys] if args.key?(:md5_authentication_keys) @name = args[:name] if args.key?(:name) @nats = args[:nats] if args.key?(:nats) @network = args[:network] if args.key?(:network) @region = args[:region] if args.key?(:region) @self_link = args[:self_link] if args.key?(:self_link) end |