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.



39750
39751
39752
# File 'lib/google/apis/compute_alpha/classes.rb', line 39750

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


39596
39597
39598
# File 'lib/google/apis/compute_alpha/classes.rb', line 39596

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)


39601
39602
39603
# File 'lib/google/apis/compute_alpha/classes.rb', line 39601

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)


39606
39607
39608
# File 'lib/google/apis/compute_alpha/classes.rb', line 39606

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)


39611
39612
39613
# File 'lib/google/apis/compute_alpha/classes.rb', line 39611

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)


39616
39617
39618
# File 'lib/google/apis/compute_alpha/classes.rb', line 39616

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)


39621
39622
39623
# File 'lib/google/apis/compute_alpha/classes.rb', line 39621

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)


39626
39627
39628
# File 'lib/google/apis/compute_alpha/classes.rb', line 39626

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)


39632
39633
39634
# File 'lib/google/apis/compute_alpha/classes.rb', line 39632

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)


39637
39638
39639
# File 'lib/google/apis/compute_alpha/classes.rb', line 39637

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)


39642
39643
39644
# File 'lib/google/apis/compute_alpha/classes.rb', line 39642

def allow_interconnect
  @allow_interconnect
end

#allow_ip_forwardingString

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

Returns:

  • (String)


39647
39648
39649
# File 'lib/google/apis/compute_alpha/classes.rb', line 39647

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)


39652
39653
39654
# File 'lib/google/apis/compute_alpha/classes.rb', line 39652

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)


39657
39658
39659
# File 'lib/google/apis/compute_alpha/classes.rb', line 39657

def allow_multi_nic_in_same_network
  @allow_multi_nic_in_same_network
end

#allow_nccString

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

Returns:

  • (String)


39662
39663
39664
# File 'lib/google/apis/compute_alpha/classes.rb', line 39662

def allow_ncc
  @allow_ncc
end

#allow_network_migrationString

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

Returns:

  • (String)


39667
39668
39669
# File 'lib/google/apis/compute_alpha/classes.rb', line 39667

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)


39672
39673
39674
# File 'lib/google/apis/compute_alpha/classes.rb', line 39672

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)


39677
39678
39679
# File 'lib/google/apis/compute_alpha/classes.rb', line 39677

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)


39682
39683
39684
# File 'lib/google/apis/compute_alpha/classes.rb', line 39682

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)


39687
39688
39689
# File 'lib/google/apis/compute_alpha/classes.rb', line 39687

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)


39692
39693
39694
# File 'lib/google/apis/compute_alpha/classes.rb', line 39692

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)


39697
39698
39699
# File 'lib/google/apis/compute_alpha/classes.rb', line 39697

def allow_sub_interfaces
  @allow_sub_interfaces
end

#allow_vpc_firewall_rulesString

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

Returns:

  • (String)


39702
39703
39704
# File 'lib/google/apis/compute_alpha/classes.rb', line 39702

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)


39707
39708
39709
# File 'lib/google/apis/compute_alpha/classes.rb', line 39707

def allow_vpc_peering
  @allow_vpc_peering
end

#allow_vpnString

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

Returns:

  • (String)


39712
39713
39714
# File 'lib/google/apis/compute_alpha/classes.rb', line 39712

def allow_vpn
  @allow_vpn
end

#firewall_policy_typesArray<String>

Corresponds to the JSON property firewallPolicyTypes

Returns:

  • (Array<String>)


39717
39718
39719
# File 'lib/google/apis/compute_alpha/classes.rb', line 39717

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


39723
39724
39725
# File 'lib/google/apis/compute_alpha/classes.rb', line 39723

def interface_types
  @interface_types
end

#subnet_purposesArray<String>

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

Returns:

  • (Array<String>)


39728
39729
39730
# File 'lib/google/apis/compute_alpha/classes.rb', line 39728

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


39733
39734
39735
# File 'lib/google/apis/compute_alpha/classes.rb', line 39733

def subnet_stack_types
  @subnet_stack_types
end

#subnetwork_purposesArray<String>

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

Returns:

  • (Array<String>)


39738
39739
39740
# File 'lib/google/apis/compute_alpha/classes.rb', line 39738

def subnetwork_purposes
  @subnetwork_purposes
end

#subnetwork_stack_typesArray<String>

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

Returns:

  • (Array<String>)


39743
39744
39745
# File 'lib/google/apis/compute_alpha/classes.rb', line 39743

def subnetwork_stack_types
  @subnetwork_stack_types
end

#unicastString

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

Returns:

  • (String)


39748
39749
39750
# File 'lib/google/apis/compute_alpha/classes.rb', line 39748

def unicast
  @unicast
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



39755
39756
39757
39758
39759
39760
39761
39762
39763
39764
39765
39766
39767
39768
39769
39770
39771
39772
39773
39774
39775
39776
39777
39778
39779
39780
39781
39782
39783
39784
39785
39786
39787
# File 'lib/google/apis/compute_alpha/classes.rb', line 39755

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