Class: Google::Apis::NetworkconnectivityV1alpha1::InternalRange
- Inherits:
-
Object
- Object
- Google::Apis::NetworkconnectivityV1alpha1::InternalRange
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/networkconnectivity_v1alpha1/classes.rb,
lib/google/apis/networkconnectivity_v1alpha1/representations.rb,
lib/google/apis/networkconnectivity_v1alpha1/representations.rb
Overview
The internal range resource for IPAM operations within a VPC network. Used to represent a private address range along with behavioral characterstics of that range (its usage and peering behavior). Networking resources can link to this range if they are created as belonging to it.
Instance Attribute Summary collapse
-
#create_time ⇒ String
Time when the internal range was created.
-
#description ⇒ String
A description of this resource.
-
#ip_cidr_range ⇒ String
IP range that this internal range defines.
-
#labels ⇒ Hash<String,String>
User-defined labels.
-
#name ⇒ String
Immutable.
-
#network ⇒ String
The URL or resource ID of the network in which to reserve the internal range.
-
#overlaps ⇒ Array<String>
Optional.
-
#peering ⇒ String
The type of peering set for this internal range.
-
#prefix_length ⇒ Fixnum
An alternative to ip_cidr_range.
-
#target_cidr_range ⇒ Array<String>
Optional.
-
#update_time ⇒ String
Time when the internal range was updated.
-
#usage ⇒ String
The type of usage set for this internal range.
-
#users ⇒ Array<String>
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ InternalRange
constructor
A new instance of InternalRange.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ InternalRange
Returns a new instance of InternalRange.
539 540 541 |
# File 'lib/google/apis/networkconnectivity_v1alpha1/classes.rb', line 539 def initialize(**args) update!(**args) end |
Instance Attribute Details
#create_time ⇒ String
Time when the internal range was created.
Corresponds to the JSON property createTime
459 460 461 |
# File 'lib/google/apis/networkconnectivity_v1alpha1/classes.rb', line 459 def create_time @create_time end |
#description ⇒ String
A description of this resource.
Corresponds to the JSON property description
464 465 466 |
# File 'lib/google/apis/networkconnectivity_v1alpha1/classes.rb', line 464 def description @description end |
#ip_cidr_range ⇒ String
IP range that this internal range defines.
Corresponds to the JSON property ipCidrRange
469 470 471 |
# File 'lib/google/apis/networkconnectivity_v1alpha1/classes.rb', line 469 def ip_cidr_range @ip_cidr_range end |
#labels ⇒ Hash<String,String>
User-defined labels.
Corresponds to the JSON property labels
474 475 476 |
# File 'lib/google/apis/networkconnectivity_v1alpha1/classes.rb', line 474 def labels @labels end |
#name ⇒ String
Immutable. The name of an internal range. Format: projects/project/locations/
location/internalRanges/internal_range See: https://google.aip.dev/122#
fields-representing-resource-names
Corresponds to the JSON property name
481 482 483 |
# File 'lib/google/apis/networkconnectivity_v1alpha1/classes.rb', line 481 def name @name end |
#network ⇒ String
The URL or resource ID of the network in which to reserve the internal range.
The network cannot be deleted if there are any reserved internal ranges
referring to it. Legacy networks are not supported. This can only be specified
for a global internal address. Example: - URL: /compute/v1/projects/project/
global/networks/resourceId - ID: network123
Corresponds to the JSON property network
490 491 492 |
# File 'lib/google/apis/networkconnectivity_v1alpha1/classes.rb', line 490 def network @network end |
#overlaps ⇒ Array<String>
Optional. Types of resources that are allowed to overlap with the current
internal range.
Corresponds to the JSON property overlaps
496 497 498 |
# File 'lib/google/apis/networkconnectivity_v1alpha1/classes.rb', line 496 def overlaps @overlaps end |
#peering ⇒ String
The type of peering set for this internal range.
Corresponds to the JSON property peering
501 502 503 |
# File 'lib/google/apis/networkconnectivity_v1alpha1/classes.rb', line 501 def peering @peering end |
#prefix_length ⇒ Fixnum
An alternative to ip_cidr_range. Can be set when trying to create a
reservation that automatically finds a free range of the given size. If both
ip_cidr_range and prefix_length are set, there is an error if the range sizes
do not match. Can also be used during updates to change the range size.
Corresponds to the JSON property prefixLength
509 510 511 |
# File 'lib/google/apis/networkconnectivity_v1alpha1/classes.rb', line 509 def prefix_length @prefix_length end |
#target_cidr_range ⇒ Array<String>
Optional. Can be set to narrow down or pick a different address space while
searching for a free range. If not set, defaults to the "10.0.0.0/8" address
space. This can be used to search in other rfc-1918 address spaces like "172.
16.0.0/12" and "192.168.0.0/16" or non-rfc-1918 address spaces used in the VPC.
Corresponds to the JSON property targetCidrRange
517 518 519 |
# File 'lib/google/apis/networkconnectivity_v1alpha1/classes.rb', line 517 def target_cidr_range @target_cidr_range end |
#update_time ⇒ String
Time when the internal range was updated.
Corresponds to the JSON property updateTime
522 523 524 |
# File 'lib/google/apis/networkconnectivity_v1alpha1/classes.rb', line 522 def update_time @update_time end |
#usage ⇒ String
The type of usage set for this internal range.
Corresponds to the JSON property usage
527 528 529 |
# File 'lib/google/apis/networkconnectivity_v1alpha1/classes.rb', line 527 def usage @usage end |
#users ⇒ Array<String>
Output only. The list of resources that refer to this internal range.
Resources that use the internal range for their range allocation are referred
to as users of the range. Other resources mark themselves as users while doing
so by creating a reference to this internal range. Having a user, based on
this reference, prevents deletion of the internal range that is referred to.
Can be empty.
Corresponds to the JSON property users
537 538 539 |
# File 'lib/google/apis/networkconnectivity_v1alpha1/classes.rb', line 537 def users @users end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 |
# File 'lib/google/apis/networkconnectivity_v1alpha1/classes.rb', line 544 def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @description = args[:description] if args.key?(:description) @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range) @labels = args[:labels] if args.key?(:labels) @name = args[:name] if args.key?(:name) @network = args[:network] if args.key?(:network) @overlaps = args[:overlaps] if args.key?(:overlaps) @peering = args[:peering] if args.key?(:peering) @prefix_length = args[:prefix_length] if args.key?(:prefix_length) @target_cidr_range = args[:target_cidr_range] if args.key?(:target_cidr_range) @update_time = args[:update_time] if args.key?(:update_time) @usage = args[:usage] if args.key?(:usage) @users = args[:users] if args.key?(:users) end |