Class: Google::Apis::ComputeV1::NetworkProfileNetworkFeatures

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ NetworkProfileNetworkFeatures

Returns a new instance of NetworkProfileNetworkFeatures.



38260
38261
38262
# File 'lib/google/apis/compute_v1/classes.rb', line 38260

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


38070
38071
38072
# File 'lib/google/apis/compute_v1/classes.rb', line 38070

def address_purposes
  @address_purposes
end

#allow_address_creationString

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

Returns:

  • (String)


38075
38076
38077
# File 'lib/google/apis/compute_v1/classes.rb', line 38075

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)


38081
38082
38083
# File 'lib/google/apis/compute_v1/classes.rb', line 38081

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)


38086
38087
38088
# File 'lib/google/apis/compute_v1/classes.rb', line 38086

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)


38091
38092
38093
# File 'lib/google/apis/compute_v1/classes.rb', line 38091

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)


38096
38097
38098
# File 'lib/google/apis/compute_v1/classes.rb', line 38096

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)


38101
38102
38103
# File 'lib/google/apis/compute_v1/classes.rb', line 38101

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)


38106
38107
38108
# File 'lib/google/apis/compute_v1/classes.rb', line 38106

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)


38112
38113
38114
# File 'lib/google/apis/compute_v1/classes.rb', line 38112

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)


38117
38118
38119
# File 'lib/google/apis/compute_v1/classes.rb', line 38117

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)


38122
38123
38124
# File 'lib/google/apis/compute_v1/classes.rb', line 38122

def allow_interconnect
  @allow_interconnect
end

#allow_ip_forwardingString

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

Returns:

  • (String)


38127
38128
38129
# File 'lib/google/apis/compute_v1/classes.rb', line 38127

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)


38132
38133
38134
# File 'lib/google/apis/compute_v1/classes.rb', line 38132

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)


38137
38138
38139
# File 'lib/google/apis/compute_v1/classes.rb', line 38137

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)


38142
38143
38144
# File 'lib/google/apis/compute_v1/classes.rb', line 38142

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)


38147
38148
38149
# File 'lib/google/apis/compute_v1/classes.rb', line 38147

def allow_multicast
  @allow_multicast
end

#allow_nccString

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

Returns:

  • (String)


38152
38153
38154
# File 'lib/google/apis/compute_v1/classes.rb', line 38152

def allow_ncc
  @allow_ncc
end

#allow_network_migrationString

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

Returns:

  • (String)


38157
38158
38159
# File 'lib/google/apis/compute_v1/classes.rb', line 38157

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)


38162
38163
38164
# File 'lib/google/apis/compute_v1/classes.rb', line 38162

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)


38167
38168
38169
# File 'lib/google/apis/compute_v1/classes.rb', line 38167

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)


38172
38173
38174
# File 'lib/google/apis/compute_v1/classes.rb', line 38172

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)


38177
38178
38179
# File 'lib/google/apis/compute_v1/classes.rb', line 38177

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)


38182
38183
38184
# File 'lib/google/apis/compute_v1/classes.rb', line 38182

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)


38187
38188
38189
# File 'lib/google/apis/compute_v1/classes.rb', line 38187

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)


38192
38193
38194
# File 'lib/google/apis/compute_v1/classes.rb', line 38192

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)


38197
38198
38199
# File 'lib/google/apis/compute_v1/classes.rb', line 38197

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)


38202
38203
38204
# File 'lib/google/apis/compute_v1/classes.rb', line 38202

def allow_vpc_peering
  @allow_vpc_peering
end

#allow_vpnString

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

Returns:

  • (String)


38207
38208
38209
# File 'lib/google/apis/compute_v1/classes.rb', line 38207

def allow_vpn
  @allow_vpn
end

#firewall_policy_typesArray<String>

Corresponds to the JSON property firewallPolicyTypes

Returns:

  • (Array<String>)


38212
38213
38214
# File 'lib/google/apis/compute_v1/classes.rb', line 38212

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


38218
38219
38220
# File 'lib/google/apis/compute_v1/classes.rb', line 38218

def interface_types
  @interface_types
end

#multicastString

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

Returns:

  • (String)


38223
38224
38225
# File 'lib/google/apis/compute_v1/classes.rb', line 38223

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)


38228
38229
38230
# File 'lib/google/apis/compute_v1/classes.rb', line 38228

def predefined_network_internal_ipv6_range
  @predefined_network_internal_ipv6_range
end

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

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



38233
38234
38235
# File 'lib/google/apis/compute_v1/classes.rb', line 38233

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


38238
38239
38240
# File 'lib/google/apis/compute_v1/classes.rb', line 38238

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


38243
38244
38245
# File 'lib/google/apis/compute_v1/classes.rb', line 38243

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


38248
38249
38250
# File 'lib/google/apis/compute_v1/classes.rb', line 38248

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


38253
38254
38255
# File 'lib/google/apis/compute_v1/classes.rb', line 38253

def subnetwork_stack_types
  @subnetwork_stack_types
end

#unicastString

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

Returns:

  • (String)


38258
38259
38260
# File 'lib/google/apis/compute_v1/classes.rb', line 38258

def unicast
  @unicast
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



38265
38266
38267
38268
38269
38270
38271
38272
38273
38274
38275
38276
38277
38278
38279
38280
38281
38282
38283
38284
38285
38286
38287
38288
38289
38290
38291
38292
38293
38294
38295
38296
38297
38298
38299
38300
38301
38302
38303
38304
# File 'lib/google/apis/compute_v1/classes.rb', line 38265

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