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.



41043
41044
41045
# File 'lib/google/apis/compute_beta/classes.rb', line 41043

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


40853
40854
40855
# File 'lib/google/apis/compute_beta/classes.rb', line 40853

def address_purposes
  @address_purposes
end

#allow_address_creationString

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

Returns:

  • (String)


40858
40859
40860
# File 'lib/google/apis/compute_beta/classes.rb', line 40858

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)


40864
40865
40866
# File 'lib/google/apis/compute_beta/classes.rb', line 40864

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)


40869
40870
40871
# File 'lib/google/apis/compute_beta/classes.rb', line 40869

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)


40874
40875
40876
# File 'lib/google/apis/compute_beta/classes.rb', line 40874

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)


40879
40880
40881
# File 'lib/google/apis/compute_beta/classes.rb', line 40879

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)


40884
40885
40886
# File 'lib/google/apis/compute_beta/classes.rb', line 40884

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)


40889
40890
40891
# File 'lib/google/apis/compute_beta/classes.rb', line 40889

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)


40895
40896
40897
# File 'lib/google/apis/compute_beta/classes.rb', line 40895

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)


40900
40901
40902
# File 'lib/google/apis/compute_beta/classes.rb', line 40900

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)


40905
40906
40907
# File 'lib/google/apis/compute_beta/classes.rb', line 40905

def allow_interconnect
  @allow_interconnect
end

#allow_ip_forwardingString

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

Returns:

  • (String)


40910
40911
40912
# File 'lib/google/apis/compute_beta/classes.rb', line 40910

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)


40915
40916
40917
# File 'lib/google/apis/compute_beta/classes.rb', line 40915

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)


40920
40921
40922
# File 'lib/google/apis/compute_beta/classes.rb', line 40920

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)


40925
40926
40927
# File 'lib/google/apis/compute_beta/classes.rb', line 40925

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)


40930
40931
40932
# File 'lib/google/apis/compute_beta/classes.rb', line 40930

def allow_multicast
  @allow_multicast
end

#allow_nccString

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

Returns:

  • (String)


40935
40936
40937
# File 'lib/google/apis/compute_beta/classes.rb', line 40935

def allow_ncc
  @allow_ncc
end

#allow_network_migrationString

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

Returns:

  • (String)


40940
40941
40942
# File 'lib/google/apis/compute_beta/classes.rb', line 40940

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)


40945
40946
40947
# File 'lib/google/apis/compute_beta/classes.rb', line 40945

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)


40950
40951
40952
# File 'lib/google/apis/compute_beta/classes.rb', line 40950

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)


40955
40956
40957
# File 'lib/google/apis/compute_beta/classes.rb', line 40955

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)


40960
40961
40962
# File 'lib/google/apis/compute_beta/classes.rb', line 40960

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)


40965
40966
40967
# File 'lib/google/apis/compute_beta/classes.rb', line 40965

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)


40970
40971
40972
# File 'lib/google/apis/compute_beta/classes.rb', line 40970

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)


40975
40976
40977
# File 'lib/google/apis/compute_beta/classes.rb', line 40975

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)


40980
40981
40982
# File 'lib/google/apis/compute_beta/classes.rb', line 40980

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)


40985
40986
40987
# File 'lib/google/apis/compute_beta/classes.rb', line 40985

def allow_vpc_peering
  @allow_vpc_peering
end

#allow_vpnString

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

Returns:

  • (String)


40990
40991
40992
# File 'lib/google/apis/compute_beta/classes.rb', line 40990

def allow_vpn
  @allow_vpn
end

#firewall_policy_typesArray<String>

Corresponds to the JSON property firewallPolicyTypes

Returns:

  • (Array<String>)


40995
40996
40997
# File 'lib/google/apis/compute_beta/classes.rb', line 40995

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


41001
41002
41003
# File 'lib/google/apis/compute_beta/classes.rb', line 41001

def interface_types
  @interface_types
end

#multicastString

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

Returns:

  • (String)


41006
41007
41008
# File 'lib/google/apis/compute_beta/classes.rb', line 41006

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)


41011
41012
41013
# File 'lib/google/apis/compute_beta/classes.rb', line 41011

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



41016
41017
41018
# File 'lib/google/apis/compute_beta/classes.rb', line 41016

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


41021
41022
41023
# File 'lib/google/apis/compute_beta/classes.rb', line 41021

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


41026
41027
41028
# File 'lib/google/apis/compute_beta/classes.rb', line 41026

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


41031
41032
41033
# File 'lib/google/apis/compute_beta/classes.rb', line 41031

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


41036
41037
41038
# File 'lib/google/apis/compute_beta/classes.rb', line 41036

def subnetwork_stack_types
  @subnetwork_stack_types
end

#unicastString

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

Returns:

  • (String)


41041
41042
41043
# File 'lib/google/apis/compute_beta/classes.rb', line 41041

def unicast
  @unicast
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



41048
41049
41050
41051
41052
41053
41054
41055
41056
41057
41058
41059
41060
41061
41062
41063
41064
41065
41066
41067
41068
41069
41070
41071
41072
41073
41074
41075
41076
41077
41078
41079
41080
41081
41082
41083
41084
41085
41086
41087
# File 'lib/google/apis/compute_beta/classes.rb', line 41048

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