Class: Google::Apis::ComputeAlpha::NetworkProfileNetworkFeatures

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ NetworkProfileNetworkFeatures

Returns a new instance of NetworkProfileNetworkFeatures.



30584
30585
30586
# File 'lib/google/apis/compute_alpha/classes.rb', line 30584

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


30470
30471
30472
# File 'lib/google/apis/compute_alpha/classes.rb', line 30470

def address_purposes
  @address_purposes
end

#allow_alias_ip_rangesString

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

Returns:

  • (String)


30475
30476
30477
# File 'lib/google/apis/compute_alpha/classes.rb', line 30475

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)


30480
30481
30482
# File 'lib/google/apis/compute_alpha/classes.rb', line 30480

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)


30485
30486
30487
# File 'lib/google/apis/compute_alpha/classes.rb', line 30485

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)


30490
30491
30492
# File 'lib/google/apis/compute_alpha/classes.rb', line 30490

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)


30495
30496
30497
# File 'lib/google/apis/compute_alpha/classes.rb', line 30495

def allow_cloud_router
  @allow_cloud_router
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)


30501
30502
30503
# File 'lib/google/apis/compute_alpha/classes.rb', line 30501

def allow_external_ip_access
  @allow_external_ip_access
end

#allow_interconnectString

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

Returns:

  • (String)


30506
30507
30508
# File 'lib/google/apis/compute_alpha/classes.rb', line 30506

def allow_interconnect
  @allow_interconnect
end

#allow_load_balancingString

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

Returns:

  • (String)


30511
30512
30513
# File 'lib/google/apis/compute_alpha/classes.rb', line 30511

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)


30516
30517
30518
# File 'lib/google/apis/compute_alpha/classes.rb', line 30516

def allow_multi_nic_in_same_network
  @allow_multi_nic_in_same_network
end

#allow_packet_mirroringString

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

Returns:

  • (String)


30521
30522
30523
# File 'lib/google/apis/compute_alpha/classes.rb', line 30521

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)


30526
30527
30528
# File 'lib/google/apis/compute_alpha/classes.rb', line 30526

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)


30531
30532
30533
# File 'lib/google/apis/compute_alpha/classes.rb', line 30531

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)


30536
30537
30538
# File 'lib/google/apis/compute_alpha/classes.rb', line 30536

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)


30541
30542
30543
# File 'lib/google/apis/compute_alpha/classes.rb', line 30541

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)


30546
30547
30548
# File 'lib/google/apis/compute_alpha/classes.rb', line 30546

def allow_sub_interfaces
  @allow_sub_interfaces
end

#allow_vpc_peeringString

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

Returns:

  • (String)


30551
30552
30553
# File 'lib/google/apis/compute_alpha/classes.rb', line 30551

def allow_vpc_peering
  @allow_vpc_peering
end

#allow_vpnString

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

Returns:

  • (String)


30556
30557
30558
# File 'lib/google/apis/compute_alpha/classes.rb', line 30556

def allow_vpn
  @allow_vpn
end

#allowed_subnet_purposesArray<String>

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

Returns:

  • (Array<String>)


30561
30562
30563
# File 'lib/google/apis/compute_alpha/classes.rb', line 30561

def allowed_subnet_purposes
  @allowed_subnet_purposes
end

#allowed_subnet_stack_typesArray<String>

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

Returns:

  • (Array<String>)


30566
30567
30568
# File 'lib/google/apis/compute_alpha/classes.rb', line 30566

def allowed_subnet_stack_types
  @allowed_subnet_stack_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>)


30572
30573
30574
# File 'lib/google/apis/compute_alpha/classes.rb', line 30572

def interface_types
  @interface_types
end

#multicastString

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

Returns:

  • (String)


30577
30578
30579
# File 'lib/google/apis/compute_alpha/classes.rb', line 30577

def multicast
  @multicast
end

#unicastString

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

Returns:

  • (String)


30582
30583
30584
# File 'lib/google/apis/compute_alpha/classes.rb', line 30582

def unicast
  @unicast
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



30589
30590
30591
30592
30593
30594
30595
30596
30597
30598
30599
30600
30601
30602
30603
30604
30605
30606
30607
30608
30609
30610
30611
30612
30613
# File 'lib/google/apis/compute_alpha/classes.rb', line 30589

def update!(**args)
  @address_purposes = args[:address_purposes] if args.key?(:address_purposes)
  @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_external_ip_access = args[:allow_external_ip_access] if args.key?(:allow_external_ip_access)
  @allow_interconnect = args[:allow_interconnect] if args.key?(:allow_interconnect)
  @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_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_vpc_peering = args[:allow_vpc_peering] if args.key?(:allow_vpc_peering)
  @allow_vpn = args[:allow_vpn] if args.key?(:allow_vpn)
  @allowed_subnet_purposes = args[:allowed_subnet_purposes] if args.key?(:allowed_subnet_purposes)
  @allowed_subnet_stack_types = args[:allowed_subnet_stack_types] if args.key?(:allowed_subnet_stack_types)
  @interface_types = args[:interface_types] if args.key?(:interface_types)
  @multicast = args[:multicast] if args.key?(:multicast)
  @unicast = args[:unicast] if args.key?(:unicast)
end