google-apis-cloudnumberregistry_v1alpha 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1378 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module CloudnumberregistryV1alpha
24
+
25
+ # Aggregated data for the RegistryBook.
26
+ class AggregatedData
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # Output only. Number of custom ranges in the RegistryBook.
30
+ # Corresponds to the JSON property `customRangesCount`
31
+ # @return [Fixnum]
32
+ attr_accessor :custom_ranges_count
33
+
34
+ # Output only. Number of custom realms in the RegistryBook.
35
+ # Corresponds to the JSON property `customRealmsCount`
36
+ # @return [Fixnum]
37
+ attr_accessor :custom_realms_count
38
+
39
+ # Output only. Number of discovered ranges in the RegistryBook.
40
+ # Corresponds to the JSON property `discoveredRangesCount`
41
+ # @return [Fixnum]
42
+ attr_accessor :discovered_ranges_count
43
+
44
+ # Output only. Number of discovered realms in the RegistryBook.
45
+ # Corresponds to the JSON property `discoveredRealmsCount`
46
+ # @return [Fixnum]
47
+ attr_accessor :discovered_realms_count
48
+
49
+ # Output only. Number of scopes unique to the RegistryBook.
50
+ # Corresponds to the JSON property `uniqueScopesCount`
51
+ # @return [Fixnum]
52
+ attr_accessor :unique_scopes_count
53
+
54
+ def initialize(**args)
55
+ update!(**args)
56
+ end
57
+
58
+ # Update properties of this object
59
+ def update!(**args)
60
+ @custom_ranges_count = args[:custom_ranges_count] if args.key?(:custom_ranges_count)
61
+ @custom_realms_count = args[:custom_realms_count] if args.key?(:custom_realms_count)
62
+ @discovered_ranges_count = args[:discovered_ranges_count] if args.key?(:discovered_ranges_count)
63
+ @discovered_realms_count = args[:discovered_realms_count] if args.key?(:discovered_realms_count)
64
+ @unique_scopes_count = args[:unique_scopes_count] if args.key?(:unique_scopes_count)
65
+ end
66
+ end
67
+
68
+ # Message describing Attribute object
69
+ class Attribute
70
+ include Google::Apis::Core::Hashable
71
+
72
+ # Required. Key of attribute
73
+ # Corresponds to the JSON property `key`
74
+ # @return [String]
75
+ attr_accessor :key
76
+
77
+ # Required. Value of attribute
78
+ # Corresponds to the JSON property `value`
79
+ # @return [String]
80
+ attr_accessor :value
81
+
82
+ def initialize(**args)
83
+ update!(**args)
84
+ end
85
+
86
+ # Update properties of this object
87
+ def update!(**args)
88
+ @key = args[:key] if args.key?(:key)
89
+ @value = args[:value] if args.key?(:value)
90
+ end
91
+ end
92
+
93
+ # The request message for Operations.CancelOperation.
94
+ class CancelOperationRequest
95
+ include Google::Apis::Core::Hashable
96
+
97
+ def initialize(**args)
98
+ update!(**args)
99
+ end
100
+
101
+ # Update properties of this object
102
+ def update!(**args)
103
+ end
104
+ end
105
+
106
+ # Message for response to checking the availability of IpamAdminScopes
107
+ class CheckAvailabilityIpamAdminScopesResponse
108
+ include Google::Apis::Core::Hashable
109
+
110
+ # The details of the requested scopes.
111
+ # Corresponds to the JSON property `scopeAvailabilities`
112
+ # @return [Array<Google::Apis::CloudnumberregistryV1alpha::IpamAdminScopeAvailability>]
113
+ attr_accessor :scope_availabilities
114
+
115
+ def initialize(**args)
116
+ update!(**args)
117
+ end
118
+
119
+ # Update properties of this object
120
+ def update!(**args)
121
+ @scope_availabilities = args[:scope_availabilities] if args.key?(:scope_availabilities)
122
+ end
123
+ end
124
+
125
+ # Message for cleaning up a IpamAdminScope
126
+ class CleanupIpamAdminScopeRequest
127
+ include Google::Apis::Core::Hashable
128
+
129
+ # Optional. An optional request ID to identify requests. Specify a unique
130
+ # request ID so that if you must retry your request, the server will know to
131
+ # ignore the request if it has already been completed. The server will guarantee
132
+ # that for at least 60 minutes after the first request. For example, consider a
133
+ # situation where you make an initial request and the request times out. If you
134
+ # make the request again with the same request ID, the server can check if
135
+ # original operation with the same request ID was received, and if so, will
136
+ # ignore the second request. This prevents clients from accidentally creating
137
+ # duplicate commitments. The request ID must be a valid UUID with the exception
138
+ # that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
139
+ # Corresponds to the JSON property `requestId`
140
+ # @return [String]
141
+ attr_accessor :request_id
142
+
143
+ def initialize(**args)
144
+ update!(**args)
145
+ end
146
+
147
+ # Update properties of this object
148
+ def update!(**args)
149
+ @request_id = args[:request_id] if args.key?(:request_id)
150
+ end
151
+ end
152
+
153
+ # Message describing CustomRange object
154
+ class CustomRange
155
+ include Google::Apis::Core::Hashable
156
+
157
+ # Optional. The attributes of the CustomRange.
158
+ # Corresponds to the JSON property `attributes`
159
+ # @return [Array<Google::Apis::CloudnumberregistryV1alpha::Attribute>]
160
+ attr_accessor :attributes
161
+
162
+ # Optional. Description of the CustomRange.
163
+ # Corresponds to the JSON property `description`
164
+ # @return [String]
165
+ attr_accessor :description
166
+
167
+ # Optional. The IPv4 CIDR range of the CustomRange.
168
+ # Corresponds to the JSON property `ipv4CidrRange`
169
+ # @return [String]
170
+ attr_accessor :ipv4_cidr_range
171
+
172
+ # Optional. The IPv6 CIDR range of the CustomRange.
173
+ # Corresponds to the JSON property `ipv6CidrRange`
174
+ # @return [String]
175
+ attr_accessor :ipv6_cidr_range
176
+
177
+ # Optional. Labels as key value pairs
178
+ # Corresponds to the JSON property `labels`
179
+ # @return [Hash<String,String>]
180
+ attr_accessor :labels
181
+
182
+ # Required. Identifier. name of resource
183
+ # Corresponds to the JSON property `name`
184
+ # @return [String]
185
+ attr_accessor :name
186
+
187
+ # Optional. The parent range of the CustomRange. Do not allow setting parent
188
+ # range if realm is specified. Format must follow this pattern: projects/`
189
+ # project`/locations/`location`/customRanges/`custom_range`
190
+ # Corresponds to the JSON property `parentRange`
191
+ # @return [String]
192
+ attr_accessor :parent_range
193
+
194
+ # Optional. The realm of the CustomRange. The realm must be in the same project
195
+ # as the custom range. Do not allow setting realm if parent range is specified,
196
+ # since the realm should be inherited from the parent range. Format must follow
197
+ # this pattern: projects/`project`/locations/`location`/realms/`realm`
198
+ # Corresponds to the JSON property `realm`
199
+ # @return [String]
200
+ attr_accessor :realm
201
+
202
+ # Output only. The registry book of the CustomRange. This field is inherited
203
+ # from the realm or parent range depending on which one is specified.
204
+ # Corresponds to the JSON property `registryBook`
205
+ # @return [String]
206
+ attr_accessor :registry_book
207
+
208
+ def initialize(**args)
209
+ update!(**args)
210
+ end
211
+
212
+ # Update properties of this object
213
+ def update!(**args)
214
+ @attributes = args[:attributes] if args.key?(:attributes)
215
+ @description = args[:description] if args.key?(:description)
216
+ @ipv4_cidr_range = args[:ipv4_cidr_range] if args.key?(:ipv4_cidr_range)
217
+ @ipv6_cidr_range = args[:ipv6_cidr_range] if args.key?(:ipv6_cidr_range)
218
+ @labels = args[:labels] if args.key?(:labels)
219
+ @name = args[:name] if args.key?(:name)
220
+ @parent_range = args[:parent_range] if args.key?(:parent_range)
221
+ @realm = args[:realm] if args.key?(:realm)
222
+ @registry_book = args[:registry_book] if args.key?(:registry_book)
223
+ end
224
+ end
225
+
226
+ # Message for disabling a IpamAdminScope
227
+ class DisableIpamAdminScopeRequest
228
+ include Google::Apis::Core::Hashable
229
+
230
+ # Optional. An optional request ID to identify requests. Specify a unique
231
+ # request ID so that if you must retry your request, the server will know to
232
+ # ignore the request if it has already been completed. The server will guarantee
233
+ # that for at least 60 minutes after the first request. For example, consider a
234
+ # situation where you make an initial request and the request times out. If you
235
+ # make the request again with the same request ID, the server can check if
236
+ # original operation with the same request ID was received, and if so, will
237
+ # ignore the second request. This prevents clients from accidentally creating
238
+ # duplicate commitments. The request ID must be a valid UUID with the exception
239
+ # that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
240
+ # Corresponds to the JSON property `requestId`
241
+ # @return [String]
242
+ attr_accessor :request_id
243
+
244
+ def initialize(**args)
245
+ update!(**args)
246
+ end
247
+
248
+ # Update properties of this object
249
+ def update!(**args)
250
+ @request_id = args[:request_id] if args.key?(:request_id)
251
+ end
252
+ end
253
+
254
+ # Message describing DiscoveredRange object
255
+ class DiscoveredRange
256
+ include Google::Apis::Core::Hashable
257
+
258
+ # Optional. The attributes of the DiscoveredRange.
259
+ # Corresponds to the JSON property `attributes`
260
+ # @return [Array<Google::Apis::CloudnumberregistryV1alpha::Attribute>]
261
+ attr_accessor :attributes
262
+
263
+ # Output only. If true, allow child ranges of this range to overlap with each
264
+ # other.
265
+ # Corresponds to the JSON property `childCidrOverlapAllowed`
266
+ # @return [Boolean]
267
+ attr_accessor :child_cidr_overlap_allowed
268
+ alias_method :child_cidr_overlap_allowed?, :child_cidr_overlap_allowed
269
+
270
+ # Output only. [Output only] Create time stamp
271
+ # Corresponds to the JSON property `createTime`
272
+ # @return [String]
273
+ attr_accessor :create_time
274
+
275
+ # Optional. Description of the DiscoveredRange.
276
+ # Corresponds to the JSON property `description`
277
+ # @return [String]
278
+ attr_accessor :description
279
+
280
+ # Discovery metadata of the discovered resource.
281
+ # Corresponds to the JSON property `discoveryMetadata`
282
+ # @return [Google::Apis::CloudnumberregistryV1alpha::DiscoveryMetadata]
283
+ attr_accessor :discovery_metadata
284
+
285
+ # Optional. The IPv4 CIDR range of the DiscoveredRange.
286
+ # Corresponds to the JSON property `ipv4CidrRange`
287
+ # @return [String]
288
+ attr_accessor :ipv4_cidr_range
289
+
290
+ # Optional. The IPv6 CIDR range of the DiscoveredRange.
291
+ # Corresponds to the JSON property `ipv6CidrRange`
292
+ # @return [String]
293
+ attr_accessor :ipv6_cidr_range
294
+
295
+ # Optional. Labels as key value pairs
296
+ # Corresponds to the JSON property `labels`
297
+ # @return [Hash<String,String>]
298
+ attr_accessor :labels
299
+
300
+ # Required. Identifier. Name of the DiscoveredRange.
301
+ # Corresponds to the JSON property `name`
302
+ # @return [String]
303
+ attr_accessor :name
304
+
305
+ # Optional. The parent range of the DiscoveredRange.
306
+ # Corresponds to the JSON property `parentRange`
307
+ # @return [String]
308
+ attr_accessor :parent_range
309
+
310
+ # Optional. The realm of the DiscoveredRange.
311
+ # Corresponds to the JSON property `realm`
312
+ # @return [String]
313
+ attr_accessor :realm
314
+
315
+ # Output only. The registry book of the DiscoveredRange.
316
+ # Corresponds to the JSON property `registryBook`
317
+ # @return [String]
318
+ attr_accessor :registry_book
319
+
320
+ # Output only. [Output only] Update time stamp
321
+ # Corresponds to the JSON property `updateTime`
322
+ # @return [String]
323
+ attr_accessor :update_time
324
+
325
+ def initialize(**args)
326
+ update!(**args)
327
+ end
328
+
329
+ # Update properties of this object
330
+ def update!(**args)
331
+ @attributes = args[:attributes] if args.key?(:attributes)
332
+ @child_cidr_overlap_allowed = args[:child_cidr_overlap_allowed] if args.key?(:child_cidr_overlap_allowed)
333
+ @create_time = args[:create_time] if args.key?(:create_time)
334
+ @description = args[:description] if args.key?(:description)
335
+ @discovery_metadata = args[:discovery_metadata] if args.key?(:discovery_metadata)
336
+ @ipv4_cidr_range = args[:ipv4_cidr_range] if args.key?(:ipv4_cidr_range)
337
+ @ipv6_cidr_range = args[:ipv6_cidr_range] if args.key?(:ipv6_cidr_range)
338
+ @labels = args[:labels] if args.key?(:labels)
339
+ @name = args[:name] if args.key?(:name)
340
+ @parent_range = args[:parent_range] if args.key?(:parent_range)
341
+ @realm = args[:realm] if args.key?(:realm)
342
+ @registry_book = args[:registry_book] if args.key?(:registry_book)
343
+ @update_time = args[:update_time] if args.key?(:update_time)
344
+ end
345
+ end
346
+
347
+ # Discovery metadata of the discovered resource.
348
+ class DiscoveryMetadata
349
+ include Google::Apis::Core::Hashable
350
+
351
+ # Output only. The time when the resource was created.
352
+ # Corresponds to the JSON property `createTime`
353
+ # @return [String]
354
+ attr_accessor :create_time
355
+
356
+ # Output only. The time when the event happened.
357
+ # Corresponds to the JSON property `eventTime`
358
+ # @return [String]
359
+ attr_accessor :event_time
360
+
361
+ # Output only. The resource name of the discovered resource, should be API-
362
+ # agnostic. Example: "projects/`project_number`/networks/`network_id`".
363
+ # Corresponds to the JSON property `resource`
364
+ # @return [String]
365
+ attr_accessor :resource
366
+
367
+ # Output only. The resource uri of the discovered resource.
368
+ # Corresponds to the JSON property `resourceUri`
369
+ # @return [String]
370
+ attr_accessor :resource_uri
371
+
372
+ # Output only. The canonical google.aip.dev/122 name of the source resource.
373
+ # Corresponds to the JSON property `sourceId`
374
+ # @return [String]
375
+ attr_accessor :source_id
376
+
377
+ # Output only. A single source resource can be the source of multiple CNR
378
+ # resources. This sub_id is used to distinguish between the different CNR
379
+ # resources derived from the same upstream resource. For example, a single
380
+ # subnetwork can be the source of multiple ranges, one for each protocol. In
381
+ # this case, the sub_id could be "private-ipv4" or "private-ipv6".
382
+ # Corresponds to the JSON property `sourceSubId`
383
+ # @return [String]
384
+ attr_accessor :source_sub_id
385
+
386
+ # Output only. The state of the resource.
387
+ # Corresponds to the JSON property `state`
388
+ # @return [String]
389
+ attr_accessor :state
390
+
391
+ # Output only. The time when the resource was last modified.
392
+ # Corresponds to the JSON property `updateTime`
393
+ # @return [String]
394
+ attr_accessor :update_time
395
+
396
+ def initialize(**args)
397
+ update!(**args)
398
+ end
399
+
400
+ # Update properties of this object
401
+ def update!(**args)
402
+ @create_time = args[:create_time] if args.key?(:create_time)
403
+ @event_time = args[:event_time] if args.key?(:event_time)
404
+ @resource = args[:resource] if args.key?(:resource)
405
+ @resource_uri = args[:resource_uri] if args.key?(:resource_uri)
406
+ @source_id = args[:source_id] if args.key?(:source_id)
407
+ @source_sub_id = args[:source_sub_id] if args.key?(:source_sub_id)
408
+ @state = args[:state] if args.key?(:state)
409
+ @update_time = args[:update_time] if args.key?(:update_time)
410
+ end
411
+ end
412
+
413
+ # A generic empty message that you can re-use to avoid defining duplicated empty
414
+ # messages in your APIs. A typical example is to use it as the request or the
415
+ # response type of an API method. For instance: service Foo ` rpc Bar(google.
416
+ # protobuf.Empty) returns (google.protobuf.Empty); `
417
+ class Empty
418
+ include Google::Apis::Core::Hashable
419
+
420
+ def initialize(**args)
421
+ update!(**args)
422
+ end
423
+
424
+ # Update properties of this object
425
+ def update!(**args)
426
+ end
427
+ end
428
+
429
+ # Message for the response to finding free IP ranges.
430
+ class FindCustomRangeFreeIpRangesResponse
431
+ include Google::Apis::Core::Hashable
432
+
433
+ # Output only. Free IP CIDR ranges found in the CustomRange.
434
+ # Corresponds to the JSON property `freeIpCidrRanges`
435
+ # @return [Array<String>]
436
+ attr_accessor :free_ip_cidr_ranges
437
+
438
+ def initialize(**args)
439
+ update!(**args)
440
+ end
441
+
442
+ # Update properties of this object
443
+ def update!(**args)
444
+ @free_ip_cidr_ranges = args[:free_ip_cidr_ranges] if args.key?(:free_ip_cidr_ranges)
445
+ end
446
+ end
447
+
448
+ # Message for the response to finding free IP ranges.
449
+ class FindDiscoveredRangeFreeIpRangesResponse
450
+ include Google::Apis::Core::Hashable
451
+
452
+ # Output only. Free IP CIDR ranges found in the DiscoveredRange.
453
+ # Corresponds to the JSON property `freeIpCidrRanges`
454
+ # @return [Array<String>]
455
+ attr_accessor :free_ip_cidr_ranges
456
+
457
+ def initialize(**args)
458
+ update!(**args)
459
+ end
460
+
461
+ # Update properties of this object
462
+ def update!(**args)
463
+ @free_ip_cidr_ranges = args[:free_ip_cidr_ranges] if args.key?(:free_ip_cidr_ranges)
464
+ end
465
+ end
466
+
467
+ # Message describing IpamAdminScope object
468
+ class IpamAdminScope
469
+ include Google::Apis::Core::Hashable
470
+
471
+ # Output only. [Output only] Create time stamp
472
+ # Corresponds to the JSON property `createTime`
473
+ # @return [String]
474
+ attr_accessor :create_time
475
+
476
+ # Required. Addon platforms that are enabled for this IPAM admin scope. Cloud
477
+ # Number Registry only discovers the IP addresses from the enabled platforms.
478
+ # Corresponds to the JSON property `enabledAddonPlatforms`
479
+ # @return [Array<String>]
480
+ attr_accessor :enabled_addon_platforms
481
+
482
+ # Optional. Labels as key value pairs
483
+ # Corresponds to the JSON property `labels`
484
+ # @return [Hash<String,String>]
485
+ attr_accessor :labels
486
+
487
+ # Required. Identifier. name of resource
488
+ # Corresponds to the JSON property `name`
489
+ # @return [String]
490
+ attr_accessor :name
491
+
492
+ # Required. Administrative scopes enabled for IP address discovery and
493
+ # management. For example, "organizations/1234567890". Minimum of 1 scope is
494
+ # required. In preview, only one organization scope is allowed.
495
+ # Corresponds to the JSON property `scopes`
496
+ # @return [Array<String>]
497
+ attr_accessor :scopes
498
+
499
+ # Output only. State of resource discovery pipeline.
500
+ # Corresponds to the JSON property `state`
501
+ # @return [String]
502
+ attr_accessor :state
503
+
504
+ # Output only. [Output only] Update time stamp
505
+ # Corresponds to the JSON property `updateTime`
506
+ # @return [String]
507
+ attr_accessor :update_time
508
+
509
+ def initialize(**args)
510
+ update!(**args)
511
+ end
512
+
513
+ # Update properties of this object
514
+ def update!(**args)
515
+ @create_time = args[:create_time] if args.key?(:create_time)
516
+ @enabled_addon_platforms = args[:enabled_addon_platforms] if args.key?(:enabled_addon_platforms)
517
+ @labels = args[:labels] if args.key?(:labels)
518
+ @name = args[:name] if args.key?(:name)
519
+ @scopes = args[:scopes] if args.key?(:scopes)
520
+ @state = args[:state] if args.key?(:state)
521
+ @update_time = args[:update_time] if args.key?(:update_time)
522
+ end
523
+ end
524
+
525
+ # Message for the availability of an IpamAdminScope
526
+ class IpamAdminScopeAvailability
527
+ include Google::Apis::Core::Hashable
528
+
529
+ # The admin project of the IpamAdminScope if it exists.
530
+ # Corresponds to the JSON property `adminProject`
531
+ # @return [Fixnum]
532
+ attr_accessor :admin_project
533
+
534
+ # The availability of the scope.
535
+ # Corresponds to the JSON property `availability`
536
+ # @return [String]
537
+ attr_accessor :availability
538
+
539
+ # The scope of the IpamAdminScope.
540
+ # Corresponds to the JSON property `scope`
541
+ # @return [String]
542
+ attr_accessor :scope
543
+
544
+ def initialize(**args)
545
+ update!(**args)
546
+ end
547
+
548
+ # Update properties of this object
549
+ def update!(**args)
550
+ @admin_project = args[:admin_project] if args.key?(:admin_project)
551
+ @availability = args[:availability] if args.key?(:availability)
552
+ @scope = args[:scope] if args.key?(:scope)
553
+ end
554
+ end
555
+
556
+ # Message for response to listing CustomRanges
557
+ class ListCustomRangesResponse
558
+ include Google::Apis::Core::Hashable
559
+
560
+ # The list of CustomRange
561
+ # Corresponds to the JSON property `customRanges`
562
+ # @return [Array<Google::Apis::CloudnumberregistryV1alpha::CustomRange>]
563
+ attr_accessor :custom_ranges
564
+
565
+ # A token identifying a page of results the server should return.
566
+ # Corresponds to the JSON property `nextPageToken`
567
+ # @return [String]
568
+ attr_accessor :next_page_token
569
+
570
+ # Locations that could not be reached.
571
+ # Corresponds to the JSON property `unreachable`
572
+ # @return [Array<String>]
573
+ attr_accessor :unreachable
574
+
575
+ def initialize(**args)
576
+ update!(**args)
577
+ end
578
+
579
+ # Update properties of this object
580
+ def update!(**args)
581
+ @custom_ranges = args[:custom_ranges] if args.key?(:custom_ranges)
582
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
583
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
584
+ end
585
+ end
586
+
587
+ # Message for response to listing DiscoveredRanges
588
+ class ListDiscoveredRangesResponse
589
+ include Google::Apis::Core::Hashable
590
+
591
+ # The list of DiscoveredRange
592
+ # Corresponds to the JSON property `discoveredRanges`
593
+ # @return [Array<Google::Apis::CloudnumberregistryV1alpha::DiscoveredRange>]
594
+ attr_accessor :discovered_ranges
595
+
596
+ # A token identifying a page of results the server should return.
597
+ # Corresponds to the JSON property `nextPageToken`
598
+ # @return [String]
599
+ attr_accessor :next_page_token
600
+
601
+ # Locations that could not be reached.
602
+ # Corresponds to the JSON property `unreachable`
603
+ # @return [Array<String>]
604
+ attr_accessor :unreachable
605
+
606
+ def initialize(**args)
607
+ update!(**args)
608
+ end
609
+
610
+ # Update properties of this object
611
+ def update!(**args)
612
+ @discovered_ranges = args[:discovered_ranges] if args.key?(:discovered_ranges)
613
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
614
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
615
+ end
616
+ end
617
+
618
+ # Message for response to listing ipamAdminScopes
619
+ class ListIpamAdminScopesResponse
620
+ include Google::Apis::Core::Hashable
621
+
622
+ # The list of IpamAdminScope
623
+ # Corresponds to the JSON property `ipamAdminScopes`
624
+ # @return [Array<Google::Apis::CloudnumberregistryV1alpha::IpamAdminScope>]
625
+ attr_accessor :ipam_admin_scopes
626
+
627
+ # A token identifying a page of results the server should return.
628
+ # Corresponds to the JSON property `nextPageToken`
629
+ # @return [String]
630
+ attr_accessor :next_page_token
631
+
632
+ # Locations that could not be reached.
633
+ # Corresponds to the JSON property `unreachable`
634
+ # @return [Array<String>]
635
+ attr_accessor :unreachable
636
+
637
+ def initialize(**args)
638
+ update!(**args)
639
+ end
640
+
641
+ # Update properties of this object
642
+ def update!(**args)
643
+ @ipam_admin_scopes = args[:ipam_admin_scopes] if args.key?(:ipam_admin_scopes)
644
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
645
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
646
+ end
647
+ end
648
+
649
+ # The response message for Locations.ListLocations.
650
+ class ListLocationsResponse
651
+ include Google::Apis::Core::Hashable
652
+
653
+ # A list of locations that matches the specified filter in the request.
654
+ # Corresponds to the JSON property `locations`
655
+ # @return [Array<Google::Apis::CloudnumberregistryV1alpha::Location>]
656
+ attr_accessor :locations
657
+
658
+ # The standard List next-page token.
659
+ # Corresponds to the JSON property `nextPageToken`
660
+ # @return [String]
661
+ attr_accessor :next_page_token
662
+
663
+ def initialize(**args)
664
+ update!(**args)
665
+ end
666
+
667
+ # Update properties of this object
668
+ def update!(**args)
669
+ @locations = args[:locations] if args.key?(:locations)
670
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
671
+ end
672
+ end
673
+
674
+ # The response message for Operations.ListOperations.
675
+ class ListOperationsResponse
676
+ include Google::Apis::Core::Hashable
677
+
678
+ # The standard List next-page token.
679
+ # Corresponds to the JSON property `nextPageToken`
680
+ # @return [String]
681
+ attr_accessor :next_page_token
682
+
683
+ # A list of operations that matches the specified filter in the request.
684
+ # Corresponds to the JSON property `operations`
685
+ # @return [Array<Google::Apis::CloudnumberregistryV1alpha::Operation>]
686
+ attr_accessor :operations
687
+
688
+ # Unordered list. Unreachable resources. Populated when the request sets `
689
+ # ListOperationsRequest.return_partial_success` and reads across collections.
690
+ # For example, when attempting to list all resources across all supported
691
+ # locations.
692
+ # Corresponds to the JSON property `unreachable`
693
+ # @return [Array<String>]
694
+ attr_accessor :unreachable
695
+
696
+ def initialize(**args)
697
+ update!(**args)
698
+ end
699
+
700
+ # Update properties of this object
701
+ def update!(**args)
702
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
703
+ @operations = args[:operations] if args.key?(:operations)
704
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
705
+ end
706
+ end
707
+
708
+ # Message for response to listing Realms
709
+ class ListRealmsResponse
710
+ include Google::Apis::Core::Hashable
711
+
712
+ # A token identifying a page of results the server should return.
713
+ # Corresponds to the JSON property `nextPageToken`
714
+ # @return [String]
715
+ attr_accessor :next_page_token
716
+
717
+ # The list of Realm
718
+ # Corresponds to the JSON property `realms`
719
+ # @return [Array<Google::Apis::CloudnumberregistryV1alpha::Realm>]
720
+ attr_accessor :realms
721
+
722
+ # Locations that could not be reached.
723
+ # Corresponds to the JSON property `unreachable`
724
+ # @return [Array<String>]
725
+ attr_accessor :unreachable
726
+
727
+ def initialize(**args)
728
+ update!(**args)
729
+ end
730
+
731
+ # Update properties of this object
732
+ def update!(**args)
733
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
734
+ @realms = args[:realms] if args.key?(:realms)
735
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
736
+ end
737
+ end
738
+
739
+ # Message for response to listing RegistryBooks
740
+ class ListRegistryBooksResponse
741
+ include Google::Apis::Core::Hashable
742
+
743
+ # A token identifying a page of results the server should return.
744
+ # Corresponds to the JSON property `nextPageToken`
745
+ # @return [String]
746
+ attr_accessor :next_page_token
747
+
748
+ # The list of RegistryBook
749
+ # Corresponds to the JSON property `registryBooks`
750
+ # @return [Array<Google::Apis::CloudnumberregistryV1alpha::RegistryBook>]
751
+ attr_accessor :registry_books
752
+
753
+ # Locations that could not be reached.
754
+ # Corresponds to the JSON property `unreachable`
755
+ # @return [Array<String>]
756
+ attr_accessor :unreachable
757
+
758
+ def initialize(**args)
759
+ update!(**args)
760
+ end
761
+
762
+ # Update properties of this object
763
+ def update!(**args)
764
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
765
+ @registry_books = args[:registry_books] if args.key?(:registry_books)
766
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
767
+ end
768
+ end
769
+
770
+ # A resource that represents a Google Cloud location.
771
+ class Location
772
+ include Google::Apis::Core::Hashable
773
+
774
+ # The friendly name for this location, typically a nearby city name. For example,
775
+ # "Tokyo".
776
+ # Corresponds to the JSON property `displayName`
777
+ # @return [String]
778
+ attr_accessor :display_name
779
+
780
+ # Cross-service attributes for the location. For example `"cloud.googleapis.com/
781
+ # region": "us-east1"`
782
+ # Corresponds to the JSON property `labels`
783
+ # @return [Hash<String,String>]
784
+ attr_accessor :labels
785
+
786
+ # The canonical id for this location. For example: `"us-east1"`.
787
+ # Corresponds to the JSON property `locationId`
788
+ # @return [String]
789
+ attr_accessor :location_id
790
+
791
+ # Service-specific metadata. For example the available capacity at the given
792
+ # location.
793
+ # Corresponds to the JSON property `metadata`
794
+ # @return [Hash<String,Object>]
795
+ attr_accessor :metadata
796
+
797
+ # Resource name for the location, which may vary between implementations. For
798
+ # example: `"projects/example-project/locations/us-east1"`
799
+ # Corresponds to the JSON property `name`
800
+ # @return [String]
801
+ attr_accessor :name
802
+
803
+ def initialize(**args)
804
+ update!(**args)
805
+ end
806
+
807
+ # Update properties of this object
808
+ def update!(**args)
809
+ @display_name = args[:display_name] if args.key?(:display_name)
810
+ @labels = args[:labels] if args.key?(:labels)
811
+ @location_id = args[:location_id] if args.key?(:location_id)
812
+ @metadata = args[:metadata] if args.key?(:metadata)
813
+ @name = args[:name] if args.key?(:name)
814
+ end
815
+ end
816
+
817
+ # This resource represents a long-running operation that is the result of a
818
+ # network API call.
819
+ class Operation
820
+ include Google::Apis::Core::Hashable
821
+
822
+ # If the value is `false`, it means the operation is still in progress. If `true`
823
+ # , the operation is completed, and either `error` or `response` is available.
824
+ # Corresponds to the JSON property `done`
825
+ # @return [Boolean]
826
+ attr_accessor :done
827
+ alias_method :done?, :done
828
+
829
+ # The `Status` type defines a logical error model that is suitable for different
830
+ # programming environments, including REST APIs and RPC APIs. It is used by [
831
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
832
+ # data: error code, error message, and error details. You can find out more
833
+ # about this error model and how to work with it in the [API Design Guide](https:
834
+ # //cloud.google.com/apis/design/errors).
835
+ # Corresponds to the JSON property `error`
836
+ # @return [Google::Apis::CloudnumberregistryV1alpha::Status]
837
+ attr_accessor :error
838
+
839
+ # Service-specific metadata associated with the operation. It typically contains
840
+ # progress information and common metadata such as create time. Some services
841
+ # might not provide such metadata. Any method that returns a long-running
842
+ # operation should document the metadata type, if any.
843
+ # Corresponds to the JSON property `metadata`
844
+ # @return [Hash<String,Object>]
845
+ attr_accessor :metadata
846
+
847
+ # The server-assigned name, which is only unique within the same service that
848
+ # originally returns it. If you use the default HTTP mapping, the `name` should
849
+ # be a resource name ending with `operations/`unique_id``.
850
+ # Corresponds to the JSON property `name`
851
+ # @return [String]
852
+ attr_accessor :name
853
+
854
+ # The normal, successful response of the operation. If the original method
855
+ # returns no data on success, such as `Delete`, the response is `google.protobuf.
856
+ # Empty`. If the original method is standard `Get`/`Create`/`Update`, the
857
+ # response should be the resource. For other methods, the response should have
858
+ # the type `XxxResponse`, where `Xxx` is the original method name. For example,
859
+ # if the original method name is `TakeSnapshot()`, the inferred response type is
860
+ # `TakeSnapshotResponse`.
861
+ # Corresponds to the JSON property `response`
862
+ # @return [Hash<String,Object>]
863
+ attr_accessor :response
864
+
865
+ def initialize(**args)
866
+ update!(**args)
867
+ end
868
+
869
+ # Update properties of this object
870
+ def update!(**args)
871
+ @done = args[:done] if args.key?(:done)
872
+ @error = args[:error] if args.key?(:error)
873
+ @metadata = args[:metadata] if args.key?(:metadata)
874
+ @name = args[:name] if args.key?(:name)
875
+ @response = args[:response] if args.key?(:response)
876
+ end
877
+ end
878
+
879
+ # Represents the metadata of the long-running operation.
880
+ class OperationMetadata
881
+ include Google::Apis::Core::Hashable
882
+
883
+ # Output only. API version used to start the operation.
884
+ # Corresponds to the JSON property `apiVersion`
885
+ # @return [String]
886
+ attr_accessor :api_version
887
+
888
+ # Output only. The time the operation was created.
889
+ # Corresponds to the JSON property `createTime`
890
+ # @return [String]
891
+ attr_accessor :create_time
892
+
893
+ # Output only. The time the operation finished running.
894
+ # Corresponds to the JSON property `endTime`
895
+ # @return [String]
896
+ attr_accessor :end_time
897
+
898
+ # Output only. Identifies whether the user has requested cancellation of the
899
+ # operation. Operations that have been cancelled successfully have Operation.
900
+ # error value with a google.rpc.Status.code of 1, corresponding to `Code.
901
+ # CANCELLED`.
902
+ # Corresponds to the JSON property `requestedCancellation`
903
+ # @return [Boolean]
904
+ attr_accessor :requested_cancellation
905
+ alias_method :requested_cancellation?, :requested_cancellation
906
+
907
+ # Output only. Human-readable status of the operation, if any.
908
+ # Corresponds to the JSON property `statusMessage`
909
+ # @return [String]
910
+ attr_accessor :status_message
911
+
912
+ # Output only. Server-defined resource path for the target of the operation.
913
+ # Corresponds to the JSON property `target`
914
+ # @return [String]
915
+ attr_accessor :target
916
+
917
+ # Output only. Name of the verb executed by the operation.
918
+ # Corresponds to the JSON property `verb`
919
+ # @return [String]
920
+ attr_accessor :verb
921
+
922
+ def initialize(**args)
923
+ update!(**args)
924
+ end
925
+
926
+ # Update properties of this object
927
+ def update!(**args)
928
+ @api_version = args[:api_version] if args.key?(:api_version)
929
+ @create_time = args[:create_time] if args.key?(:create_time)
930
+ @end_time = args[:end_time] if args.key?(:end_time)
931
+ @requested_cancellation = args[:requested_cancellation] if args.key?(:requested_cancellation)
932
+ @status_message = args[:status_message] if args.key?(:status_message)
933
+ @target = args[:target] if args.key?(:target)
934
+ @verb = args[:verb] if args.key?(:verb)
935
+ end
936
+ end
937
+
938
+ # Message describing either a CustomRange or a DiscoveredRange.
939
+ class Range
940
+ include Google::Apis::Core::Hashable
941
+
942
+ # Message describing CustomRange object
943
+ # Corresponds to the JSON property `customRange`
944
+ # @return [Google::Apis::CloudnumberregistryV1alpha::CustomRange]
945
+ attr_accessor :custom_range
946
+
947
+ # Message describing DiscoveredRange object
948
+ # Corresponds to the JSON property `discoveredRange`
949
+ # @return [Google::Apis::CloudnumberregistryV1alpha::DiscoveredRange]
950
+ attr_accessor :discovered_range
951
+
952
+ # Message for the utilization of an IP range
953
+ # Corresponds to the JSON property `utilization`
954
+ # @return [Google::Apis::CloudnumberregistryV1alpha::RangeUtilization]
955
+ attr_accessor :utilization
956
+
957
+ def initialize(**args)
958
+ update!(**args)
959
+ end
960
+
961
+ # Update properties of this object
962
+ def update!(**args)
963
+ @custom_range = args[:custom_range] if args.key?(:custom_range)
964
+ @discovered_range = args[:discovered_range] if args.key?(:discovered_range)
965
+ @utilization = args[:utilization] if args.key?(:utilization)
966
+ end
967
+ end
968
+
969
+ # Message for the utilization of an IP range
970
+ class RangeUtilization
971
+ include Google::Apis::Core::Hashable
972
+
973
+ # Output only. The total number of IP addresses consumed in the range.
974
+ # Corresponds to the JSON property `totalConsumed`
975
+ # @return [String]
976
+ attr_accessor :total_consumed
977
+
978
+ # Output only. The total number of IP addresses produced in the range.
979
+ # Corresponds to the JSON property `totalProduced`
980
+ # @return [String]
981
+ attr_accessor :total_produced
982
+
983
+ # Output only. The usage of the range as a percentage. This is marked as
984
+ # optional so that we have presence tracking and API responses show 0.0 instead
985
+ # of NULL.
986
+ # Corresponds to the JSON property `usage`
987
+ # @return [Float]
988
+ attr_accessor :usage
989
+
990
+ def initialize(**args)
991
+ update!(**args)
992
+ end
993
+
994
+ # Update properties of this object
995
+ def update!(**args)
996
+ @total_consumed = args[:total_consumed] if args.key?(:total_consumed)
997
+ @total_produced = args[:total_produced] if args.key?(:total_produced)
998
+ @usage = args[:usage] if args.key?(:usage)
999
+ end
1000
+ end
1001
+
1002
+ # Message describing Realm object
1003
+ class Realm
1004
+ include Google::Apis::Core::Hashable
1005
+
1006
+ # Aggregated data for the Realm.
1007
+ # Corresponds to the JSON property `aggregatedData`
1008
+ # @return [Google::Apis::CloudnumberregistryV1alpha::RealmAggregatedData]
1009
+ attr_accessor :aggregated_data
1010
+
1011
+ # Output only. [Output only] Create time stamp
1012
+ # Corresponds to the JSON property `createTime`
1013
+ # @return [String]
1014
+ attr_accessor :create_time
1015
+
1016
+ # Discovery metadata of the discovered resource.
1017
+ # Corresponds to the JSON property `discoveryMetadata`
1018
+ # @return [Google::Apis::CloudnumberregistryV1alpha::DiscoveryMetadata]
1019
+ attr_accessor :discovery_metadata
1020
+
1021
+ # Optional. IP version of the realm.
1022
+ # Corresponds to the JSON property `ipVersion`
1023
+ # @return [String]
1024
+ attr_accessor :ip_version
1025
+
1026
+ # Optional. Labels as key value pairs
1027
+ # Corresponds to the JSON property `labels`
1028
+ # @return [Hash<String,String>]
1029
+ attr_accessor :labels
1030
+
1031
+ # Required. Management type of realm.
1032
+ # Corresponds to the JSON property `managementType`
1033
+ # @return [String]
1034
+ attr_accessor :management_type
1035
+
1036
+ # Required. Identifier. Unique name/ID of the realm
1037
+ # Corresponds to the JSON property `name`
1038
+ # @return [String]
1039
+ attr_accessor :name
1040
+
1041
+ # Required. URI of the registry book that claims the realm.
1042
+ # Corresponds to the JSON property `registryBook`
1043
+ # @return [String]
1044
+ attr_accessor :registry_book
1045
+
1046
+ # Required. Traffic type of realm.
1047
+ # Corresponds to the JSON property `trafficType`
1048
+ # @return [String]
1049
+ attr_accessor :traffic_type
1050
+
1051
+ # Output only. [Output only] Update time stamp
1052
+ # Corresponds to the JSON property `updateTime`
1053
+ # @return [String]
1054
+ attr_accessor :update_time
1055
+
1056
+ def initialize(**args)
1057
+ update!(**args)
1058
+ end
1059
+
1060
+ # Update properties of this object
1061
+ def update!(**args)
1062
+ @aggregated_data = args[:aggregated_data] if args.key?(:aggregated_data)
1063
+ @create_time = args[:create_time] if args.key?(:create_time)
1064
+ @discovery_metadata = args[:discovery_metadata] if args.key?(:discovery_metadata)
1065
+ @ip_version = args[:ip_version] if args.key?(:ip_version)
1066
+ @labels = args[:labels] if args.key?(:labels)
1067
+ @management_type = args[:management_type] if args.key?(:management_type)
1068
+ @name = args[:name] if args.key?(:name)
1069
+ @registry_book = args[:registry_book] if args.key?(:registry_book)
1070
+ @traffic_type = args[:traffic_type] if args.key?(:traffic_type)
1071
+ @update_time = args[:update_time] if args.key?(:update_time)
1072
+ end
1073
+ end
1074
+
1075
+ # Aggregated data for the Realm.
1076
+ class RealmAggregatedData
1077
+ include Google::Apis::Core::Hashable
1078
+
1079
+ # Output only. Number of custom ranges in the Realm.
1080
+ # Corresponds to the JSON property `customRangesCount`
1081
+ # @return [Fixnum]
1082
+ attr_accessor :custom_ranges_count
1083
+
1084
+ # Output only. Number of discovered ranges in the Realm.
1085
+ # Corresponds to the JSON property `discoveredRangesCount`
1086
+ # @return [Fixnum]
1087
+ attr_accessor :discovered_ranges_count
1088
+
1089
+ def initialize(**args)
1090
+ update!(**args)
1091
+ end
1092
+
1093
+ # Update properties of this object
1094
+ def update!(**args)
1095
+ @custom_ranges_count = args[:custom_ranges_count] if args.key?(:custom_ranges_count)
1096
+ @discovered_ranges_count = args[:discovered_ranges_count] if args.key?(:discovered_ranges_count)
1097
+ end
1098
+ end
1099
+
1100
+ # Message describing RegistryBook object
1101
+ class RegistryBook
1102
+ include Google::Apis::Core::Hashable
1103
+
1104
+ # Aggregated data for the RegistryBook.
1105
+ # Corresponds to the JSON property `aggregatedData`
1106
+ # @return [Google::Apis::CloudnumberregistryV1alpha::AggregatedData]
1107
+ attr_accessor :aggregated_data
1108
+
1109
+ # Optional. List of scopes claimed by the RegistryBook. In Preview, Only project
1110
+ # scope is supported. Each scope is in the format of projects/`project`. Each
1111
+ # scope can only be claimed once.
1112
+ # Corresponds to the JSON property `claimedScopes`
1113
+ # @return [Array<String>]
1114
+ attr_accessor :claimed_scopes
1115
+
1116
+ # Output only. [Output only] Create time stamp
1117
+ # Corresponds to the JSON property `createTime`
1118
+ # @return [String]
1119
+ attr_accessor :create_time
1120
+
1121
+ # Output only. Whether the RegistryBook is the default one.
1122
+ # Corresponds to the JSON property `isDefault`
1123
+ # @return [Boolean]
1124
+ attr_accessor :is_default
1125
+ alias_method :is_default?, :is_default
1126
+
1127
+ # Optional. Labels as key value pairs
1128
+ # Corresponds to the JSON property `labels`
1129
+ # @return [Hash<String,String>]
1130
+ attr_accessor :labels
1131
+
1132
+ # Required. Identifier. name of resource
1133
+ # Corresponds to the JSON property `name`
1134
+ # @return [String]
1135
+ attr_accessor :name
1136
+
1137
+ # Output only. [Output only] Update time stamp
1138
+ # Corresponds to the JSON property `updateTime`
1139
+ # @return [String]
1140
+ attr_accessor :update_time
1141
+
1142
+ def initialize(**args)
1143
+ update!(**args)
1144
+ end
1145
+
1146
+ # Update properties of this object
1147
+ def update!(**args)
1148
+ @aggregated_data = args[:aggregated_data] if args.key?(:aggregated_data)
1149
+ @claimed_scopes = args[:claimed_scopes] if args.key?(:claimed_scopes)
1150
+ @create_time = args[:create_time] if args.key?(:create_time)
1151
+ @is_default = args[:is_default] if args.key?(:is_default)
1152
+ @labels = args[:labels] if args.key?(:labels)
1153
+ @name = args[:name] if args.key?(:name)
1154
+ @update_time = args[:update_time] if args.key?(:update_time)
1155
+ end
1156
+ end
1157
+
1158
+ # Message for searching IP resources
1159
+ class SearchIpResourcesRequest
1160
+ include Google::Apis::Core::Hashable
1161
+
1162
+ # Optional. Hint for how to order the results
1163
+ # Corresponds to the JSON property `orderBy`
1164
+ # @return [String]
1165
+ attr_accessor :order_by
1166
+
1167
+ # Optional. Requested page size. Server may return fewer items than requested.
1168
+ # If unspecified, server will pick an appropriate default.
1169
+ # Corresponds to the JSON property `pageSize`
1170
+ # @return [Fixnum]
1171
+ attr_accessor :page_size
1172
+
1173
+ # Optional. A token identifying a page of results the server should return.
1174
+ # Corresponds to the JSON property `pageToken`
1175
+ # @return [String]
1176
+ attr_accessor :page_token
1177
+
1178
+ # Optional. Search query. This string filters resources in an AIP-160-like
1179
+ # format. It has some limitations. You can only specify top level conjunctions
1180
+ # or attribute level negations. Each restriction can only be used once except
1181
+ # the attribute restriction. The available restrictions for ranges are: - `realm`
1182
+ # : The realm name to search in. - `ip_address`: The IP address to search for
1183
+ # within ranges. - `ip_version`: The IP version to filter by (e.g., "IPV4", "
1184
+ # IPV6"). - `parent_range`: The parent range of the range to search for. - `
1185
+ # attribute_text`: The attribute text to search for within ranges. - `attribute`:
1186
+ # The attribute key and value to filter by. The available restrictions for
1187
+ # realms are: - `ip_version`: The IP version to search for. Only one of
1188
+ # attribute_text or multiple attribute filters can be specified. Examples: - `
1189
+ # realm=test-realm` - `realm=test-realm AND ip_address=10.0.0.0` - `realm=test-
1190
+ # realm AND ip_version=IPV6` - `realm=test-realm AND attribute_text=test` - `
1191
+ # ip_address=10.0.0.0 AND attribute:(key1=value1) AND attribute:(key2=value2)` -
1192
+ # `attribute_text=test AND parent_range=projects/123/locations/global/
1193
+ # discoveredRanges/test-parent-range`
1194
+ # Corresponds to the JSON property `query`
1195
+ # @return [String]
1196
+ attr_accessor :query
1197
+
1198
+ # Optional. The type of resources to search for. If not specified, the server
1199
+ # will return ranges.
1200
+ # Corresponds to the JSON property `searchResourceTypes`
1201
+ # @return [Array<String>]
1202
+ attr_accessor :search_resource_types
1203
+
1204
+ # Optional. Whether to show the utilization of the ranges in the response.
1205
+ # Corresponds to the JSON property `showUtilization`
1206
+ # @return [Boolean]
1207
+ attr_accessor :show_utilization
1208
+ alias_method :show_utilization?, :show_utilization
1209
+
1210
+ def initialize(**args)
1211
+ update!(**args)
1212
+ end
1213
+
1214
+ # Update properties of this object
1215
+ def update!(**args)
1216
+ @order_by = args[:order_by] if args.key?(:order_by)
1217
+ @page_size = args[:page_size] if args.key?(:page_size)
1218
+ @page_token = args[:page_token] if args.key?(:page_token)
1219
+ @query = args[:query] if args.key?(:query)
1220
+ @search_resource_types = args[:search_resource_types] if args.key?(:search_resource_types)
1221
+ @show_utilization = args[:show_utilization] if args.key?(:show_utilization)
1222
+ end
1223
+ end
1224
+
1225
+ # Message for response to searching IP resources
1226
+ class SearchIpResourcesResponse
1227
+ include Google::Apis::Core::Hashable
1228
+
1229
+ # A token identifying a page of results the server should return.
1230
+ # Corresponds to the JSON property `nextPageToken`
1231
+ # @return [String]
1232
+ attr_accessor :next_page_token
1233
+
1234
+ # Deprecated: Use results field instead. The list of ranges matching the search
1235
+ # query.
1236
+ # Corresponds to the JSON property `ranges`
1237
+ # @return [Array<Google::Apis::CloudnumberregistryV1alpha::Range>]
1238
+ attr_accessor :ranges
1239
+
1240
+ # The list of results matching the search query.
1241
+ # Corresponds to the JSON property `results`
1242
+ # @return [Array<Google::Apis::CloudnumberregistryV1alpha::SearchIpResourcesResult>]
1243
+ attr_accessor :results
1244
+
1245
+ # Locations that could not be reached.
1246
+ # Corresponds to the JSON property `unreachable`
1247
+ # @return [Array<String>]
1248
+ attr_accessor :unreachable
1249
+
1250
+ def initialize(**args)
1251
+ update!(**args)
1252
+ end
1253
+
1254
+ # Update properties of this object
1255
+ def update!(**args)
1256
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1257
+ @ranges = args[:ranges] if args.key?(:ranges)
1258
+ @results = args[:results] if args.key?(:results)
1259
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
1260
+ end
1261
+ end
1262
+
1263
+ # A result matching the search query, which can be either a range or a realm.
1264
+ class SearchIpResourcesResult
1265
+ include Google::Apis::Core::Hashable
1266
+
1267
+ # Message describing either a CustomRange or a DiscoveredRange.
1268
+ # Corresponds to the JSON property `range`
1269
+ # @return [Google::Apis::CloudnumberregistryV1alpha::Range]
1270
+ attr_accessor :range
1271
+
1272
+ # Message describing Realm object
1273
+ # Corresponds to the JSON property `realm`
1274
+ # @return [Google::Apis::CloudnumberregistryV1alpha::Realm]
1275
+ attr_accessor :realm
1276
+
1277
+ def initialize(**args)
1278
+ update!(**args)
1279
+ end
1280
+
1281
+ # Update properties of this object
1282
+ def update!(**args)
1283
+ @range = args[:range] if args.key?(:range)
1284
+ @realm = args[:realm] if args.key?(:realm)
1285
+ end
1286
+ end
1287
+
1288
+ # Message for the response to getting the utilization of a CustomRange
1289
+ class ShowCustomRangeUtilizationResponse
1290
+ include Google::Apis::Core::Hashable
1291
+
1292
+ # Message describing CustomRange object
1293
+ # Corresponds to the JSON property `customRange`
1294
+ # @return [Google::Apis::CloudnumberregistryV1alpha::CustomRange]
1295
+ attr_accessor :custom_range
1296
+
1297
+ # Message for the utilization of an IP range
1298
+ # Corresponds to the JSON property `rangeUtilization`
1299
+ # @return [Google::Apis::CloudnumberregistryV1alpha::RangeUtilization]
1300
+ attr_accessor :range_utilization
1301
+
1302
+ def initialize(**args)
1303
+ update!(**args)
1304
+ end
1305
+
1306
+ # Update properties of this object
1307
+ def update!(**args)
1308
+ @custom_range = args[:custom_range] if args.key?(:custom_range)
1309
+ @range_utilization = args[:range_utilization] if args.key?(:range_utilization)
1310
+ end
1311
+ end
1312
+
1313
+ # Message for the response to getting the utilization of a DiscoveredRange
1314
+ class ShowDiscoveredRangeUtilizationResponse
1315
+ include Google::Apis::Core::Hashable
1316
+
1317
+ # Message describing DiscoveredRange object
1318
+ # Corresponds to the JSON property `discoveredRange`
1319
+ # @return [Google::Apis::CloudnumberregistryV1alpha::DiscoveredRange]
1320
+ attr_accessor :discovered_range
1321
+
1322
+ # Message for the utilization of an IP range
1323
+ # Corresponds to the JSON property `rangeUtilization`
1324
+ # @return [Google::Apis::CloudnumberregistryV1alpha::RangeUtilization]
1325
+ attr_accessor :range_utilization
1326
+
1327
+ def initialize(**args)
1328
+ update!(**args)
1329
+ end
1330
+
1331
+ # Update properties of this object
1332
+ def update!(**args)
1333
+ @discovered_range = args[:discovered_range] if args.key?(:discovered_range)
1334
+ @range_utilization = args[:range_utilization] if args.key?(:range_utilization)
1335
+ end
1336
+ end
1337
+
1338
+ # The `Status` type defines a logical error model that is suitable for different
1339
+ # programming environments, including REST APIs and RPC APIs. It is used by [
1340
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
1341
+ # data: error code, error message, and error details. You can find out more
1342
+ # about this error model and how to work with it in the [API Design Guide](https:
1343
+ # //cloud.google.com/apis/design/errors).
1344
+ class Status
1345
+ include Google::Apis::Core::Hashable
1346
+
1347
+ # The status code, which should be an enum value of google.rpc.Code.
1348
+ # Corresponds to the JSON property `code`
1349
+ # @return [Fixnum]
1350
+ attr_accessor :code
1351
+
1352
+ # A list of messages that carry the error details. There is a common set of
1353
+ # message types for APIs to use.
1354
+ # Corresponds to the JSON property `details`
1355
+ # @return [Array<Hash<String,Object>>]
1356
+ attr_accessor :details
1357
+
1358
+ # A developer-facing error message, which should be in English. Any user-facing
1359
+ # error message should be localized and sent in the google.rpc.Status.details
1360
+ # field, or localized by the client.
1361
+ # Corresponds to the JSON property `message`
1362
+ # @return [String]
1363
+ attr_accessor :message
1364
+
1365
+ def initialize(**args)
1366
+ update!(**args)
1367
+ end
1368
+
1369
+ # Update properties of this object
1370
+ def update!(**args)
1371
+ @code = args[:code] if args.key?(:code)
1372
+ @details = args[:details] if args.key?(:details)
1373
+ @message = args[:message] if args.key?(:message)
1374
+ end
1375
+ end
1376
+ end
1377
+ end
1378
+ end