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.



30266
30267
30268
# File 'lib/google/apis/compute_alpha/classes.rb', line 30266

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


30152
30153
30154
# File 'lib/google/apis/compute_alpha/classes.rb', line 30152

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)


30157
30158
30159
# File 'lib/google/apis/compute_alpha/classes.rb', line 30157

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)


30162
30163
30164
# File 'lib/google/apis/compute_alpha/classes.rb', line 30162

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)


30167
30168
30169
# File 'lib/google/apis/compute_alpha/classes.rb', line 30167

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)


30172
30173
30174
# File 'lib/google/apis/compute_alpha/classes.rb', line 30172

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)


30177
30178
30179
# File 'lib/google/apis/compute_alpha/classes.rb', line 30177

def allow_cloud_router
  @allow_cloud_router
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)


30183
30184
30185
# File 'lib/google/apis/compute_alpha/classes.rb', line 30183

def allow_external_ip_access
  @allow_external_ip_access
end

#allow_interconnectString

Specifies whether Cloud Interconnect creation is allowed. Corresponds to the JSON property allowInterconnect

Returns:

  • (String)


30188
30189
30190
# File 'lib/google/apis/compute_alpha/classes.rb', line 30188

def allow_interconnect
  @allow_interconnect
end

#allow_load_balancingString

Specifies whether cloud load balancing is allowed. Corresponds to the JSON property allowLoadBalancing

Returns:

  • (String)


30193
30194
30195
# File 'lib/google/apis/compute_alpha/classes.rb', line 30193

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)


30198
30199
30200
# File 'lib/google/apis/compute_alpha/classes.rb', line 30198

def allow_multi_nic_in_same_network
  @allow_multi_nic_in_same_network
end

#allow_packet_mirroringString

Specifies whether Packet Mirroring 1.0 is supported. Corresponds to the JSON property allowPacketMirroring

Returns:

  • (String)


30203
30204
30205
# File 'lib/google/apis/compute_alpha/classes.rb', line 30203

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)


30208
30209
30210
# File 'lib/google/apis/compute_alpha/classes.rb', line 30208

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)


30213
30214
30215
# File 'lib/google/apis/compute_alpha/classes.rb', line 30213

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)


30218
30219
30220
# File 'lib/google/apis/compute_alpha/classes.rb', line 30218

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)


30223
30224
30225
# File 'lib/google/apis/compute_alpha/classes.rb', line 30223

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)


30228
30229
30230
# File 'lib/google/apis/compute_alpha/classes.rb', line 30228

def allow_sub_interfaces
  @allow_sub_interfaces
end

#allow_vpc_peeringString

Specifies whether VPC peering is allowed. Corresponds to the JSON property allowVpcPeering

Returns:

  • (String)


30233
30234
30235
# File 'lib/google/apis/compute_alpha/classes.rb', line 30233

def allow_vpc_peering
  @allow_vpc_peering
end

#allow_vpnString

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

Returns:

  • (String)


30238
30239
30240
# File 'lib/google/apis/compute_alpha/classes.rb', line 30238

def allow_vpn
  @allow_vpn
end

#allowed_subnet_purposesArray<String>

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

Returns:

  • (Array<String>)


30243
30244
30245
# File 'lib/google/apis/compute_alpha/classes.rb', line 30243

def allowed_subnet_purposes
  @allowed_subnet_purposes
end

#allowed_subnet_stack_typesArray<String>

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

Returns:

  • (Array<String>)


30248
30249
30250
# File 'lib/google/apis/compute_alpha/classes.rb', line 30248

def allowed_subnet_stack_types
  @allowed_subnet_stack_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>)


30254
30255
30256
# File 'lib/google/apis/compute_alpha/classes.rb', line 30254

def interface_types
  @interface_types
end

#multicastString

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

Returns:

  • (String)


30259
30260
30261
# File 'lib/google/apis/compute_alpha/classes.rb', line 30259

def multicast
  @multicast
end

#unicastString

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

Returns:

  • (String)


30264
30265
30266
# File 'lib/google/apis/compute_alpha/classes.rb', line 30264

def unicast
  @unicast
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



30271
30272
30273
30274
30275
30276
30277
30278
30279
30280
30281
30282
30283
30284
30285
30286
30287
30288
30289
30290
30291
30292
30293
30294
30295
# File 'lib/google/apis/compute_alpha/classes.rb', line 30271

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_external_ip_access = args[:allow_external_ip_access] if args.key?(:allow_external_ip_access)
  @allow_interconnect = args[:allow_interconnect] if args.key?(:allow_interconnect)
  @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_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_peering = args[:allow_vpc_peering] if args.key?(:allow_vpc_peering)
  @allow_vpn = args[:allow_vpn] if args.key?(:allow_vpn)
  @allowed_subnet_purposes = args[:allowed_subnet_purposes] if args.key?(:allowed_subnet_purposes)
  @allowed_subnet_stack_types = args[:allowed_subnet_stack_types] if args.key?(:allowed_subnet_stack_types)
  @interface_types = args[:interface_types] if args.key?(:interface_types)
  @multicast = args[:multicast] if args.key?(:multicast)
  @unicast = args[:unicast] if args.key?(:unicast)
end