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.



46808
46809
46810
# File 'lib/google/apis/compute_alpha/classes.rb', line 46808

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


46618
46619
46620
# File 'lib/google/apis/compute_alpha/classes.rb', line 46618

def address_purposes
  @address_purposes
end

#allow_address_creationString

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

Returns:

  • (String)


46623
46624
46625
# File 'lib/google/apis/compute_alpha/classes.rb', line 46623

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)


46629
46630
46631
# File 'lib/google/apis/compute_alpha/classes.rb', line 46629

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)


46634
46635
46636
# File 'lib/google/apis/compute_alpha/classes.rb', line 46634

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)


46639
46640
46641
# File 'lib/google/apis/compute_alpha/classes.rb', line 46639

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)


46644
46645
46646
# File 'lib/google/apis/compute_alpha/classes.rb', line 46644

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)


46649
46650
46651
# File 'lib/google/apis/compute_alpha/classes.rb', line 46649

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)


46654
46655
46656
# File 'lib/google/apis/compute_alpha/classes.rb', line 46654

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)


46660
46661
46662
# File 'lib/google/apis/compute_alpha/classes.rb', line 46660

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)


46665
46666
46667
# File 'lib/google/apis/compute_alpha/classes.rb', line 46665

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)


46670
46671
46672
# File 'lib/google/apis/compute_alpha/classes.rb', line 46670

def allow_interconnect
  @allow_interconnect
end

#allow_ip_forwardingString

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

Returns:

  • (String)


46675
46676
46677
# File 'lib/google/apis/compute_alpha/classes.rb', line 46675

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)


46680
46681
46682
# File 'lib/google/apis/compute_alpha/classes.rb', line 46680

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)


46685
46686
46687
# File 'lib/google/apis/compute_alpha/classes.rb', line 46685

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)


46690
46691
46692
# File 'lib/google/apis/compute_alpha/classes.rb', line 46690

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)


46695
46696
46697
# File 'lib/google/apis/compute_alpha/classes.rb', line 46695

def allow_multicast
  @allow_multicast
end

#allow_nccString

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

Returns:

  • (String)


46700
46701
46702
# File 'lib/google/apis/compute_alpha/classes.rb', line 46700

def allow_ncc
  @allow_ncc
end

#allow_network_migrationString

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

Returns:

  • (String)


46705
46706
46707
# File 'lib/google/apis/compute_alpha/classes.rb', line 46705

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)


46710
46711
46712
# File 'lib/google/apis/compute_alpha/classes.rb', line 46710

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)


46715
46716
46717
# File 'lib/google/apis/compute_alpha/classes.rb', line 46715

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)


46720
46721
46722
# File 'lib/google/apis/compute_alpha/classes.rb', line 46720

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)


46725
46726
46727
# File 'lib/google/apis/compute_alpha/classes.rb', line 46725

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)


46730
46731
46732
# File 'lib/google/apis/compute_alpha/classes.rb', line 46730

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)


46735
46736
46737
# File 'lib/google/apis/compute_alpha/classes.rb', line 46735

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)


46740
46741
46742
# File 'lib/google/apis/compute_alpha/classes.rb', line 46740

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)


46745
46746
46747
# File 'lib/google/apis/compute_alpha/classes.rb', line 46745

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)


46750
46751
46752
# File 'lib/google/apis/compute_alpha/classes.rb', line 46750

def allow_vpc_peering
  @allow_vpc_peering
end

#allow_vpnString

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

Returns:

  • (String)


46755
46756
46757
# File 'lib/google/apis/compute_alpha/classes.rb', line 46755

def allow_vpn
  @allow_vpn
end

#firewall_policy_typesArray<String>

Corresponds to the JSON property firewallPolicyTypes

Returns:

  • (Array<String>)


46760
46761
46762
# File 'lib/google/apis/compute_alpha/classes.rb', line 46760

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


46766
46767
46768
# File 'lib/google/apis/compute_alpha/classes.rb', line 46766

def interface_types
  @interface_types
end

#multicastString

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

Returns:

  • (String)


46771
46772
46773
# File 'lib/google/apis/compute_alpha/classes.rb', line 46771

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)


46776
46777
46778
# File 'lib/google/apis/compute_alpha/classes.rb', line 46776

def predefined_network_internal_ipv6_range
  @predefined_network_internal_ipv6_range
end

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

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



46781
46782
46783
# File 'lib/google/apis/compute_alpha/classes.rb', line 46781

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


46786
46787
46788
# File 'lib/google/apis/compute_alpha/classes.rb', line 46786

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


46791
46792
46793
# File 'lib/google/apis/compute_alpha/classes.rb', line 46791

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


46796
46797
46798
# File 'lib/google/apis/compute_alpha/classes.rb', line 46796

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


46801
46802
46803
# File 'lib/google/apis/compute_alpha/classes.rb', line 46801

def subnetwork_stack_types
  @subnetwork_stack_types
end

#unicastString

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

Returns:

  • (String)


46806
46807
46808
# File 'lib/google/apis/compute_alpha/classes.rb', line 46806

def unicast
  @unicast
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



46813
46814
46815
46816
46817
46818
46819
46820
46821
46822
46823
46824
46825
46826
46827
46828
46829
46830
46831
46832
46833
46834
46835
46836
46837
46838
46839
46840
46841
46842
46843
46844
46845
46846
46847
46848
46849
46850
46851
46852
# File 'lib/google/apis/compute_alpha/classes.rb', line 46813

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