Class: Google::Apis::ComputeBeta::NetworkProfileNetworkFeatures

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ NetworkProfileNetworkFeatures

Returns a new instance of NetworkProfileNetworkFeatures.



41884
41885
41886
# File 'lib/google/apis/compute_beta/classes.rb', line 41884

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


41694
41695
41696
# File 'lib/google/apis/compute_beta/classes.rb', line 41694

def address_purposes
  @address_purposes
end

#allow_address_creationString

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

Returns:

  • (String)


41699
41700
41701
# File 'lib/google/apis/compute_beta/classes.rb', line 41699

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)


41705
41706
41707
# File 'lib/google/apis/compute_beta/classes.rb', line 41705

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)


41710
41711
41712
# File 'lib/google/apis/compute_beta/classes.rb', line 41710

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)


41715
41716
41717
# File 'lib/google/apis/compute_beta/classes.rb', line 41715

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)


41720
41721
41722
# File 'lib/google/apis/compute_beta/classes.rb', line 41720

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)


41725
41726
41727
# File 'lib/google/apis/compute_beta/classes.rb', line 41725

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)


41730
41731
41732
# File 'lib/google/apis/compute_beta/classes.rb', line 41730

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)


41736
41737
41738
# File 'lib/google/apis/compute_beta/classes.rb', line 41736

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)


41741
41742
41743
# File 'lib/google/apis/compute_beta/classes.rb', line 41741

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)


41746
41747
41748
# File 'lib/google/apis/compute_beta/classes.rb', line 41746

def allow_interconnect
  @allow_interconnect
end

#allow_ip_forwardingString

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

Returns:

  • (String)


41751
41752
41753
# File 'lib/google/apis/compute_beta/classes.rb', line 41751

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)


41756
41757
41758
# File 'lib/google/apis/compute_beta/classes.rb', line 41756

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)


41761
41762
41763
# File 'lib/google/apis/compute_beta/classes.rb', line 41761

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)


41766
41767
41768
# File 'lib/google/apis/compute_beta/classes.rb', line 41766

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)


41771
41772
41773
# File 'lib/google/apis/compute_beta/classes.rb', line 41771

def allow_multicast
  @allow_multicast
end

#allow_nccString

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

Returns:

  • (String)


41776
41777
41778
# File 'lib/google/apis/compute_beta/classes.rb', line 41776

def allow_ncc
  @allow_ncc
end

#allow_network_migrationString

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

Returns:

  • (String)


41781
41782
41783
# File 'lib/google/apis/compute_beta/classes.rb', line 41781

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)


41786
41787
41788
# File 'lib/google/apis/compute_beta/classes.rb', line 41786

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)


41791
41792
41793
# File 'lib/google/apis/compute_beta/classes.rb', line 41791

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)


41796
41797
41798
# File 'lib/google/apis/compute_beta/classes.rb', line 41796

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)


41801
41802
41803
# File 'lib/google/apis/compute_beta/classes.rb', line 41801

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)


41806
41807
41808
# File 'lib/google/apis/compute_beta/classes.rb', line 41806

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)


41811
41812
41813
# File 'lib/google/apis/compute_beta/classes.rb', line 41811

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)


41816
41817
41818
# File 'lib/google/apis/compute_beta/classes.rb', line 41816

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)


41821
41822
41823
# File 'lib/google/apis/compute_beta/classes.rb', line 41821

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)


41826
41827
41828
# File 'lib/google/apis/compute_beta/classes.rb', line 41826

def allow_vpc_peering
  @allow_vpc_peering
end

#allow_vpnString

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

Returns:

  • (String)


41831
41832
41833
# File 'lib/google/apis/compute_beta/classes.rb', line 41831

def allow_vpn
  @allow_vpn
end

#firewall_policy_typesArray<String>

Corresponds to the JSON property firewallPolicyTypes

Returns:

  • (Array<String>)


41836
41837
41838
# File 'lib/google/apis/compute_beta/classes.rb', line 41836

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


41842
41843
41844
# File 'lib/google/apis/compute_beta/classes.rb', line 41842

def interface_types
  @interface_types
end

#multicastString

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

Returns:

  • (String)


41847
41848
41849
# File 'lib/google/apis/compute_beta/classes.rb', line 41847

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)


41852
41853
41854
# File 'lib/google/apis/compute_beta/classes.rb', line 41852

def predefined_network_internal_ipv6_range
  @predefined_network_internal_ipv6_range
end

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

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



41857
41858
41859
# File 'lib/google/apis/compute_beta/classes.rb', line 41857

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


41862
41863
41864
# File 'lib/google/apis/compute_beta/classes.rb', line 41862

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


41867
41868
41869
# File 'lib/google/apis/compute_beta/classes.rb', line 41867

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


41872
41873
41874
# File 'lib/google/apis/compute_beta/classes.rb', line 41872

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


41877
41878
41879
# File 'lib/google/apis/compute_beta/classes.rb', line 41877

def subnetwork_stack_types
  @subnetwork_stack_types
end

#unicastString

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

Returns:

  • (String)


41882
41883
41884
# File 'lib/google/apis/compute_beta/classes.rb', line 41882

def unicast
  @unicast
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



41889
41890
41891
41892
41893
41894
41895
41896
41897
41898
41899
41900
41901
41902
41903
41904
41905
41906
41907
41908
41909
41910
41911
41912
41913
41914
41915
41916
41917
41918
41919
41920
41921
41922
41923
41924
41925
41926
41927
41928
# File 'lib/google/apis/compute_beta/classes.rb', line 41889

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