Class: Google::Apis::NetworkconnectivityV1::Spoke

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/networkconnectivity_v1/classes.rb,
lib/google/apis/networkconnectivity_v1/representations.rb,
lib/google/apis/networkconnectivity_v1/representations.rb

Overview

A Network Connectivity Center spoke represents one or more network connectivity resources. When you create a spoke, you associate it with a hub. You must also identify a value for exactly one of the following fields: * linked_vpn_tunnels * linked_interconnect_attachments * linked_router_appliance_instances * linked_vpc_network

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Spoke

Returns a new instance of Spoke.



3358
3359
3360
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 3358

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

Instance Attribute Details

#create_timeString

Output only. The time the spoke was created. Corresponds to the JSON property createTime

Returns:

  • (String)


3265
3266
3267
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 3265

def create_time
  @create_time
end

#descriptionString

An optional description of the spoke. Corresponds to the JSON property description

Returns:

  • (String)


3270
3271
3272
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 3270

def description
  @description
end

#groupString

Optional. The name of the group that this spoke is associated with. Corresponds to the JSON property group

Returns:

  • (String)


3275
3276
3277
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 3275

def group
  @group
end

#hubString

Immutable. The name of the hub that this spoke is attached to. Corresponds to the JSON property hub

Returns:

  • (String)


3280
3281
3282
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 3280

def hub
  @hub
end

#labelsHash<String,String>

Optional labels in key-value pair format. For more information about labels, see Requirements for labels. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


3287
3288
3289
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 3287

def labels
  @labels
end

#linked_interconnect_attachmentsGoogle::Apis::NetworkconnectivityV1::LinkedInterconnectAttachments

A collection of VLAN attachment resources. These resources should be redundant attachments that all advertise the same prefixes to Google Cloud. Alternatively, in active/passive configurations, all attachments should be capable of advertising the same prefixes. Corresponds to the JSON property linkedInterconnectAttachments



3295
3296
3297
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 3295

def linked_interconnect_attachments
  @linked_interconnect_attachments
end

#linked_producer_vpc_networkGoogle::Apis::NetworkconnectivityV1::LinkedProducerVpcNetwork

Next ID: 7 Corresponds to the JSON property linkedProducerVpcNetwork



3300
3301
3302
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 3300

def linked_producer_vpc_network
  @linked_producer_vpc_network
end

#linked_router_appliance_instancesGoogle::Apis::NetworkconnectivityV1::LinkedRouterApplianceInstances

A collection of router appliance instances. If you configure multiple router appliance instances to receive data from the same set of sites outside of Google Cloud, we recommend that you associate those instances with the same spoke. Corresponds to the JSON property linkedRouterApplianceInstances



3308
3309
3310
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 3308

def linked_router_appliance_instances
  @linked_router_appliance_instances
end

#linked_vpc_networkGoogle::Apis::NetworkconnectivityV1::LinkedVpcNetwork

An existing VPC network. Corresponds to the JSON property linkedVpcNetwork



3313
3314
3315
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 3313

def linked_vpc_network
  @linked_vpc_network
end

#linked_vpn_tunnelsGoogle::Apis::NetworkconnectivityV1::LinkedVpnTunnels

A collection of Cloud VPN tunnel resources. These resources should be redundant HA VPN tunnels that all advertise the same prefixes to Google Cloud. Alternatively, in a passive/active configuration, all tunnels should be capable of advertising the same prefixes. Corresponds to the JSON property linkedVpnTunnels



3321
3322
3323
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 3321

def linked_vpn_tunnels
  @linked_vpn_tunnels
end

#nameString

Immutable. The name of the spoke. Spoke names must be unique. They use the following form: projects/project_number/locations/region/spokes/spoke_id Corresponds to the JSON property name

Returns:

  • (String)


3328
3329
3330
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 3328

def name
  @name
end

#reasonsArray<Google::Apis::NetworkconnectivityV1::StateReason>

Output only. The reasons for current state of the spoke. Only present when the spoke is in the INACTIVE state. Corresponds to the JSON property reasons



3334
3335
3336
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 3334

def reasons
  @reasons
end

#spoke_typeString

Output only. The type of resource associated with the spoke. Corresponds to the JSON property spokeType

Returns:

  • (String)


3339
3340
3341
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 3339

def spoke_type
  @spoke_type
end

#stateString

Output only. The current lifecycle state of this spoke. Corresponds to the JSON property state

Returns:

  • (String)


3344
3345
3346
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 3344

def state
  @state
end

#unique_idString

Output only. The Google-generated UUID for the spoke. This value is unique across all spoke resources. If a spoke is deleted and another with the same name is created, the new spoke is assigned a different unique_id. Corresponds to the JSON property uniqueId

Returns:

  • (String)


3351
3352
3353
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 3351

def unique_id
  @unique_id
end

#update_timeString

Output only. The time the spoke was last updated. Corresponds to the JSON property updateTime

Returns:

  • (String)


3356
3357
3358
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 3356

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 3363

def update!(**args)
  @create_time = args[:create_time] if args.key?(:create_time)
  @description = args[:description] if args.key?(:description)
  @group = args[:group] if args.key?(:group)
  @hub = args[:hub] if args.key?(:hub)
  @labels = args[:labels] if args.key?(:labels)
  @linked_interconnect_attachments = args[:linked_interconnect_attachments] if args.key?(:linked_interconnect_attachments)
  @linked_producer_vpc_network = args[:linked_producer_vpc_network] if args.key?(:linked_producer_vpc_network)
  @linked_router_appliance_instances = args[:linked_router_appliance_instances] if args.key?(:linked_router_appliance_instances)
  @linked_vpc_network = args[:linked_vpc_network] if args.key?(:linked_vpc_network)
  @linked_vpn_tunnels = args[:linked_vpn_tunnels] if args.key?(:linked_vpn_tunnels)
  @name = args[:name] if args.key?(:name)
  @reasons = args[:reasons] if args.key?(:reasons)
  @spoke_type = args[:spoke_type] if args.key?(:spoke_type)
  @state = args[:state] if args.key?(:state)
  @unique_id = args[:unique_id] if args.key?(:unique_id)
  @update_time = args[:update_time] if args.key?(:update_time)
end