Class: Google::Apis::ComputeV1::NetworkProfileNetworkFeatures

Inherits:
Object
  • Object
show all
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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ NetworkProfileNetworkFeatures

Returns a new instance of NetworkProfileNetworkFeatures.



37468
37469
37470
# File 'lib/google/apis/compute_v1/classes.rb', line 37468

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

Instance Attribute Details

#address_purposesArray<String>

Specifies what address purposes are supported. If empty, all address purposes are supported. Corresponds to the JSON property addressPurposes

Returns:

  • (Array<String>)


37278
37279
37280
# File 'lib/google/apis/compute_v1/classes.rb', line 37278

def address_purposes
  @address_purposes
end

#allow_address_creationString

Specifies whether address creation is allowed. Corresponds to the JSON property allowAddressCreation

Returns:

  • (String)


37283
37284
37285
# File 'lib/google/apis/compute_v1/classes.rb', line 37283

def allow_address_creation
  @allow_address_creation
end

#allow_alias_ip_rangesString

Specifies whether alias IP ranges (and secondary address ranges) are allowed. Corresponds to the JSON property allowAliasIpRanges

Returns:

  • (String)


37289
37290
37291
# File 'lib/google/apis/compute_v1/classes.rb', line 37289

def allow_alias_ip_ranges
  @allow_alias_ip_ranges
end

#allow_auto_mode_subnetString

Specifies whether auto mode subnet creation is allowed. Corresponds to the JSON property allowAutoModeSubnet

Returns:

  • (String)


37294
37295
37296
# File 'lib/google/apis/compute_v1/classes.rb', line 37294

def allow_auto_mode_subnet
  @allow_auto_mode_subnet
end

#allow_class_d_firewallsString

Specifies whether firewalls for Class D address ranges are supported. Corresponds to the JSON property allowClassDFirewalls

Returns:

  • (String)


37299
37300
37301
# File 'lib/google/apis/compute_v1/classes.rb', line 37299

def allow_class_d_firewalls
  @allow_class_d_firewalls
end

#allow_cloud_natString

Specifies whether cloud NAT creation is allowed. Corresponds to the JSON property allowCloudNat

Returns:

  • (String)


37304
37305
37306
# File 'lib/google/apis/compute_v1/classes.rb', line 37304

def allow_cloud_nat
  @allow_cloud_nat
end

#allow_cloud_routerString

Specifies whether cloud router creation is allowed. Corresponds to the JSON property allowCloudRouter

Returns:

  • (String)


37309
37310
37311
# File 'lib/google/apis/compute_v1/classes.rb', line 37309

def allow_cloud_router
  @allow_cloud_router
end

#allow_default_nic_attachmentString

Specifies whether default NIC attachment is allowed. Corresponds to the JSON property allowDefaultNicAttachment

Returns:

  • (String)


37314
37315
37316
# File 'lib/google/apis/compute_v1/classes.rb', line 37314

def allow_default_nic_attachment
  @allow_default_nic_attachment
end

#allow_external_ip_accessString

Specifies whether VMs are allowed to have external IP access on network interfaces connected to this VPC. Corresponds to the JSON property allowExternalIpAccess

Returns:

  • (String)


37320
37321
37322
# File 'lib/google/apis/compute_v1/classes.rb', line 37320

def allow_external_ip_access
  @allow_external_ip_access
end

#allow_firewall_policyString

Specifies whether firewall policy can be attached to the network. Corresponds to the JSON property allowFirewallPolicy

Returns:

  • (String)


37325
37326
37327
# File 'lib/google/apis/compute_v1/classes.rb', line 37325

def allow_firewall_policy
  @allow_firewall_policy
end

#allow_interconnectString

Specifies whether Cloud Interconnect creation is allowed. Corresponds to the JSON property allowInterconnect

Returns:

  • (String)


37330
37331
37332
# File 'lib/google/apis/compute_v1/classes.rb', line 37330

def allow_interconnect
  @allow_interconnect
end

#allow_ip_forwardingString

Specifies whether IP forwarding is allowed. Corresponds to the JSON property allowIpForwarding

Returns:

  • (String)


37335
37336
37337
# File 'lib/google/apis/compute_v1/classes.rb', line 37335

def allow_ip_forwarding
  @allow_ip_forwarding
end

#allow_load_balancingString

Specifies whether cloud load balancing is allowed. Corresponds to the JSON property allowLoadBalancing

Returns:

  • (String)


37340
37341
37342
# File 'lib/google/apis/compute_v1/classes.rb', line 37340

def allow_load_balancing
  @allow_load_balancing
end

#allow_multi_nic_in_same_networkString

Specifies whether multi-nic in the same network is allowed. Corresponds to the JSON property allowMultiNicInSameNetwork

Returns:

  • (String)


37345
37346
37347
# File 'lib/google/apis/compute_v1/classes.rb', line 37345

def allow_multi_nic_in_same_network
  @allow_multi_nic_in_same_network
end

#allow_multi_nic_in_same_subnetworkString

Specifies whether multi-nic in the same subnetwork is allowed. Corresponds to the JSON property allowMultiNicInSameSubnetwork

Returns:

  • (String)


37350
37351
37352
# File 'lib/google/apis/compute_v1/classes.rb', line 37350

def allow_multi_nic_in_same_subnetwork
  @allow_multi_nic_in_same_subnetwork
end

#allow_multicastString

Specifies whether multicast is allowed. Corresponds to the JSON property allowMulticast

Returns:

  • (String)


37355
37356
37357
# File 'lib/google/apis/compute_v1/classes.rb', line 37355

def allow_multicast
  @allow_multicast
end

#allow_nccString

Specifies whether NCC is allowed. Corresponds to the JSON property allowNcc

Returns:

  • (String)


37360
37361
37362
# File 'lib/google/apis/compute_v1/classes.rb', line 37360

def allow_ncc
  @allow_ncc
end

#allow_network_migrationString

Specifies whether VM network migration is allowed. Corresponds to the JSON property allowNetworkMigration

Returns:

  • (String)


37365
37366
37367
# File 'lib/google/apis/compute_v1/classes.rb', line 37365

def allow_network_migration
  @allow_network_migration
end

#allow_packet_mirroringString

Specifies whether Packet Mirroring 1.0 is supported. Corresponds to the JSON property allowPacketMirroring

Returns:

  • (String)


37370
37371
37372
# File 'lib/google/apis/compute_v1/classes.rb', line 37370

def allow_packet_mirroring
  @allow_packet_mirroring
end

#allow_private_google_accessString

Specifies whether private Google access is allowed. Corresponds to the JSON property allowPrivateGoogleAccess

Returns:

  • (String)


37375
37376
37377
# File 'lib/google/apis/compute_v1/classes.rb', line 37375

def allow_private_google_access
  @allow_private_google_access
end

#allow_pscString

Specifies whether PSC creation is allowed. Corresponds to the JSON property allowPsc

Returns:

  • (String)


37380
37381
37382
# File 'lib/google/apis/compute_v1/classes.rb', line 37380

def allow_psc
  @allow_psc
end

#allow_same_network_unicastString

Specifies whether unicast within the same network is allowed. Corresponds to the JSON property allowSameNetworkUnicast

Returns:

  • (String)


37385
37386
37387
# File 'lib/google/apis/compute_v1/classes.rb', line 37385

def allow_same_network_unicast
  @allow_same_network_unicast
end

#allow_static_routesString

Specifies whether static route creation is allowed. Corresponds to the JSON property allowStaticRoutes

Returns:

  • (String)


37390
37391
37392
# File 'lib/google/apis/compute_v1/classes.rb', line 37390

def allow_static_routes
  @allow_static_routes
end

#allow_sub_interfacesString

Specifies whether sub interfaces are allowed. Corresponds to the JSON property allowSubInterfaces

Returns:

  • (String)


37395
37396
37397
# File 'lib/google/apis/compute_v1/classes.rb', line 37395

def allow_sub_interfaces
  @allow_sub_interfaces
end

#allow_subnetwork_creationString

Specifies whether subnetwork creation is allowed. Corresponds to the JSON property allowSubnetworkCreation

Returns:

  • (String)


37400
37401
37402
# File 'lib/google/apis/compute_v1/classes.rb', line 37400

def allow_subnetwork_creation
  @allow_subnetwork_creation
end

#allow_vpc_firewall_rulesString

Specifies whether VPC firewall rules can be created under the network. Corresponds to the JSON property allowVpcFirewallRules

Returns:

  • (String)


37405
37406
37407
# File 'lib/google/apis/compute_v1/classes.rb', line 37405

def allow_vpc_firewall_rules
  @allow_vpc_firewall_rules
end

#allow_vpc_peeringString

Specifies whether VPC peering is allowed. Corresponds to the JSON property allowVpcPeering

Returns:

  • (String)


37410
37411
37412
# File 'lib/google/apis/compute_v1/classes.rb', line 37410

def allow_vpc_peering
  @allow_vpc_peering
end

#allow_vpnString

Specifies whether VPN creation is allowed. Corresponds to the JSON property allowVpn

Returns:

  • (String)


37415
37416
37417
# File 'lib/google/apis/compute_v1/classes.rb', line 37415

def allow_vpn
  @allow_vpn
end

#firewall_policy_typesArray<String>

Corresponds to the JSON property firewallPolicyTypes

Returns:

  • (Array<String>)


37420
37421
37422
# File 'lib/google/apis/compute_v1/classes.rb', line 37420

def firewall_policy_types
  @firewall_policy_types
end

#interface_typesArray<String>

If set, limits the interface types that the network supports. If empty, all interface types are supported. Corresponds to the JSON property interfaceTypes

Returns:

  • (Array<String>)


37426
37427
37428
# File 'lib/google/apis/compute_v1/classes.rb', line 37426

def interface_types
  @interface_types
end

#multicastString

Specifies which type of multicast is supported. Corresponds to the JSON property multicast

Returns:

  • (String)


37431
37432
37433
# File 'lib/google/apis/compute_v1/classes.rb', line 37431

def multicast
  @multicast
end

#predefined_network_internal_ipv6_rangeString

Specifies a predefined internal IPv6 range for the network. Corresponds to the JSON property predefinedNetworkInternalIpv6Range

Returns:

  • (String)


37436
37437
37438
# File 'lib/google/apis/compute_v1/classes.rb', line 37436

def predefined_network_internal_ipv6_range
  @predefined_network_internal_ipv6_range
end

#predefined_subnetwork_rangesArray<Google::Apis::ComputeV1::NetworkProfileNetworkFeaturesPredefinedSubnetworkRange>

Predefined subnetwork ranges for the network. Corresponds to the JSON property predefinedSubnetworkRanges



37441
37442
37443
# File 'lib/google/apis/compute_v1/classes.rb', line 37441

def predefined_subnetwork_ranges
  @predefined_subnetwork_ranges
end

#subnet_purposesArray<String>

Specifies which subnetwork purposes are supported. Corresponds to the JSON property subnetPurposes

Returns:

  • (Array<String>)


37446
37447
37448
# File 'lib/google/apis/compute_v1/classes.rb', line 37446

def subnet_purposes
  @subnet_purposes
end

#subnet_stack_typesArray<String>

Specifies which subnetwork stack types are supported. Corresponds to the JSON property subnetStackTypes

Returns:

  • (Array<String>)


37451
37452
37453
# File 'lib/google/apis/compute_v1/classes.rb', line 37451

def subnet_stack_types
  @subnet_stack_types
end

#subnetwork_purposesArray<String>

Output only. Specifies which subnetwork purposes are supported. Corresponds to the JSON property subnetworkPurposes

Returns:

  • (Array<String>)


37456
37457
37458
# File 'lib/google/apis/compute_v1/classes.rb', line 37456

def subnetwork_purposes
  @subnetwork_purposes
end

#subnetwork_stack_typesArray<String>

Output only. Specifies which subnetwork stack types are supported. Corresponds to the JSON property subnetworkStackTypes

Returns:

  • (Array<String>)


37461
37462
37463
# File 'lib/google/apis/compute_v1/classes.rb', line 37461

def subnetwork_stack_types
  @subnetwork_stack_types
end

#unicastString

Specifies which type of unicast is supported. Corresponds to the JSON property unicast

Returns:

  • (String)


37466
37467
37468
# File 'lib/google/apis/compute_v1/classes.rb', line 37466

def unicast
  @unicast
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



37473
37474
37475
37476
37477
37478
37479
37480
37481
37482
37483
37484
37485
37486
37487
37488
37489
37490
37491
37492
37493
37494
37495
37496
37497
37498
37499
37500
37501
37502
37503
37504
37505
37506
37507
37508
37509
37510
37511
37512
# File 'lib/google/apis/compute_v1/classes.rb', line 37473

def update!(**args)
  @address_purposes = args[:address_purposes] if args.key?(:address_purposes)
  @allow_address_creation = args[:allow_address_creation] if args.key?(:allow_address_creation)
  @allow_alias_ip_ranges = args[:allow_alias_ip_ranges] if args.key?(:allow_alias_ip_ranges)
  @allow_auto_mode_subnet = args[:allow_auto_mode_subnet] if args.key?(:allow_auto_mode_subnet)
  @allow_class_d_firewalls = args[:allow_class_d_firewalls] if args.key?(:allow_class_d_firewalls)
  @allow_cloud_nat = args[:allow_cloud_nat] if args.key?(:allow_cloud_nat)
  @allow_cloud_router = args[:allow_cloud_router] if args.key?(:allow_cloud_router)
  @allow_default_nic_attachment = args[:allow_default_nic_attachment] if args.key?(:allow_default_nic_attachment)
  @allow_external_ip_access = args[:allow_external_ip_access] if args.key?(:allow_external_ip_access)
  @allow_firewall_policy = args[:allow_firewall_policy] if args.key?(:allow_firewall_policy)
  @allow_interconnect = args[:allow_interconnect] if args.key?(:allow_interconnect)
  @allow_ip_forwarding = args[:allow_ip_forwarding] if args.key?(:allow_ip_forwarding)
  @allow_load_balancing = args[:allow_load_balancing] if args.key?(:allow_load_balancing)
  @allow_multi_nic_in_same_network = args[:allow_multi_nic_in_same_network] if args.key?(:allow_multi_nic_in_same_network)
  @allow_multi_nic_in_same_subnetwork = args[:allow_multi_nic_in_same_subnetwork] if args.key?(:allow_multi_nic_in_same_subnetwork)
  @allow_multicast = args[:allow_multicast] if args.key?(:allow_multicast)
  @allow_ncc = args[:allow_ncc] if args.key?(:allow_ncc)
  @allow_network_migration = args[:allow_network_migration] if args.key?(:allow_network_migration)
  @allow_packet_mirroring = args[:allow_packet_mirroring] if args.key?(:allow_packet_mirroring)
  @allow_private_google_access = args[:allow_private_google_access] if args.key?(:allow_private_google_access)
  @allow_psc = args[:allow_psc] if args.key?(:allow_psc)
  @allow_same_network_unicast = args[:allow_same_network_unicast] if args.key?(:allow_same_network_unicast)
  @allow_static_routes = args[:allow_static_routes] if args.key?(:allow_static_routes)
  @allow_sub_interfaces = args[:allow_sub_interfaces] if args.key?(:allow_sub_interfaces)
  @allow_subnetwork_creation = args[:allow_subnetwork_creation] if args.key?(:allow_subnetwork_creation)
  @allow_vpc_firewall_rules = args[:allow_vpc_firewall_rules] if args.key?(:allow_vpc_firewall_rules)
  @allow_vpc_peering = args[:allow_vpc_peering] if args.key?(:allow_vpc_peering)
  @allow_vpn = args[:allow_vpn] if args.key?(:allow_vpn)
  @firewall_policy_types = args[:firewall_policy_types] if args.key?(:firewall_policy_types)
  @interface_types = args[:interface_types] if args.key?(:interface_types)
  @multicast = args[:multicast] if args.key?(:multicast)
  @predefined_network_internal_ipv6_range = args[:predefined_network_internal_ipv6_range] if args.key?(:predefined_network_internal_ipv6_range)
  @predefined_subnetwork_ranges = args[:predefined_subnetwork_ranges] if args.key?(:predefined_subnetwork_ranges)
  @subnet_purposes = args[:subnet_purposes] if args.key?(:subnet_purposes)
  @subnet_stack_types = args[:subnet_stack_types] if args.key?(:subnet_stack_types)
  @subnetwork_purposes = args[:subnetwork_purposes] if args.key?(:subnetwork_purposes)
  @subnetwork_stack_types = args[:subnetwork_stack_types] if args.key?(:subnetwork_stack_types)
  @unicast = args[:unicast] if args.key?(:unicast)
end