google-apis-networkconnectivity_v1 0.24.0 → 0.26.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.
@@ -169,6 +169,135 @@ module Google
169
169
  end
170
170
  end
171
171
 
172
+ # Allow the producer to specify which consumers can connect to it.
173
+ class ConsumerPscConfig
174
+ include Google::Apis::Core::Hashable
175
+
176
+ # This is used in PSC consumer ForwardingRule to control whether the PSC
177
+ # endpoint can be accessed from another region.
178
+ # Corresponds to the JSON property `disableGlobalAccess`
179
+ # @return [Boolean]
180
+ attr_accessor :disable_global_access
181
+ alias_method :disable_global_access?, :disable_global_access
182
+
183
+ # The resource path of the consumer network where PSC connections are allowed to
184
+ # be created in. Note, this network does not need be in the ConsumerPscConfig.
185
+ # project in the case of SharedVPC. Example: projects/`projectNumOrId`/global/
186
+ # networks/`networkId`.
187
+ # Corresponds to the JSON property `network`
188
+ # @return [String]
189
+ attr_accessor :network
190
+
191
+ # The consumer project where PSC connections are allowed to be created in.
192
+ # Corresponds to the JSON property `project`
193
+ # @return [String]
194
+ attr_accessor :project
195
+
196
+ # Output only. Overall state of PSC Connections management for this consumer psc
197
+ # config.
198
+ # Corresponds to the JSON property `state`
199
+ # @return [String]
200
+ attr_accessor :state
201
+
202
+ def initialize(**args)
203
+ update!(**args)
204
+ end
205
+
206
+ # Update properties of this object
207
+ def update!(**args)
208
+ @disable_global_access = args[:disable_global_access] if args.key?(:disable_global_access)
209
+ @network = args[:network] if args.key?(:network)
210
+ @project = args[:project] if args.key?(:project)
211
+ @state = args[:state] if args.key?(:state)
212
+ end
213
+ end
214
+
215
+ # PSC connection details on consumer side.
216
+ class ConsumerPscConnection
217
+ include Google::Apis::Core::Hashable
218
+
219
+ # The `Status` type defines a logical error model that is suitable for different
220
+ # programming environments, including REST APIs and RPC APIs. It is used by [
221
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
222
+ # data: error code, error message, and error details. You can find out more
223
+ # about this error model and how to work with it in the [API Design Guide](https:
224
+ # //cloud.google.com/apis/design/errors).
225
+ # Corresponds to the JSON property `error`
226
+ # @return [Google::Apis::NetworkconnectivityV1::GoogleRpcStatus]
227
+ attr_accessor :error
228
+
229
+ # The error type indicates whether the error is consumer facing, producer facing
230
+ # or system internal.
231
+ # Corresponds to the JSON property `errorType`
232
+ # @return [String]
233
+ attr_accessor :error_type
234
+
235
+ # The URI of the consumer forwarding rule created. Example: projects/`
236
+ # projectNumOrId`/regions/us-east1/networks/`resourceId`.
237
+ # Corresponds to the JSON property `forwardingRule`
238
+ # @return [String]
239
+ attr_accessor :forwarding_rule
240
+
241
+ # The last Compute Engine operation to setup PSC connection.
242
+ # Corresponds to the JSON property `gceOperation`
243
+ # @return [String]
244
+ attr_accessor :gce_operation
245
+
246
+ # The IP literal allocated on the consumer network for the PSC forwarding rule
247
+ # that is created to connect to the producer service attachment in this service
248
+ # connection map.
249
+ # Corresponds to the JSON property `ip`
250
+ # @return [String]
251
+ attr_accessor :ip
252
+
253
+ # The consumer network whose PSC forwarding rule is connected to the service
254
+ # attachments in this service connection map. Note that the network could be on
255
+ # a different project (shared VPC).
256
+ # Corresponds to the JSON property `network`
257
+ # @return [String]
258
+ attr_accessor :network
259
+
260
+ # The consumer project whose PSC forwarding rule is connected to the service
261
+ # attachments in this service connection map.
262
+ # Corresponds to the JSON property `project`
263
+ # @return [String]
264
+ attr_accessor :project
265
+
266
+ # The PSC connection id of the PSC forwarding rule connected to the service
267
+ # attachments in this service connection map.
268
+ # Corresponds to the JSON property `pscConnectionId`
269
+ # @return [String]
270
+ attr_accessor :psc_connection_id
271
+
272
+ # The URI of a service attachment which is the target of the PSC connection.
273
+ # Corresponds to the JSON property `serviceAttachmentUri`
274
+ # @return [String]
275
+ attr_accessor :service_attachment_uri
276
+
277
+ # The state of the PSC connection.
278
+ # Corresponds to the JSON property `state`
279
+ # @return [String]
280
+ attr_accessor :state
281
+
282
+ def initialize(**args)
283
+ update!(**args)
284
+ end
285
+
286
+ # Update properties of this object
287
+ def update!(**args)
288
+ @error = args[:error] if args.key?(:error)
289
+ @error_type = args[:error_type] if args.key?(:error_type)
290
+ @forwarding_rule = args[:forwarding_rule] if args.key?(:forwarding_rule)
291
+ @gce_operation = args[:gce_operation] if args.key?(:gce_operation)
292
+ @ip = args[:ip] if args.key?(:ip)
293
+ @network = args[:network] if args.key?(:network)
294
+ @project = args[:project] if args.key?(:project)
295
+ @psc_connection_id = args[:psc_connection_id] if args.key?(:psc_connection_id)
296
+ @service_attachment_uri = args[:service_attachment_uri] if args.key?(:service_attachment_uri)
297
+ @state = args[:state] if args.key?(:state)
298
+ end
299
+ end
300
+
172
301
  # A generic empty message that you can re-use to avoid defining duplicated empty
173
302
  # messages in your APIs. A typical example is to use it as the request or the
174
303
  # response type of an API method. For instance: service Foo ` rpc Bar(google.
@@ -768,6 +897,134 @@ module Google
768
897
  end
769
898
  end
770
899
 
900
+ # Response for ListServiceClasses.
901
+ class ListServiceClassesResponse
902
+ include Google::Apis::Core::Hashable
903
+
904
+ # The next pagination token in the List response. It should be used as
905
+ # page_token for the following request. An empty value means no more result.
906
+ # Corresponds to the JSON property `nextPageToken`
907
+ # @return [String]
908
+ attr_accessor :next_page_token
909
+
910
+ # ServiceClasses to be returned.
911
+ # Corresponds to the JSON property `serviceClasses`
912
+ # @return [Array<Google::Apis::NetworkconnectivityV1::ServiceClass>]
913
+ attr_accessor :service_classes
914
+
915
+ # Locations that could not be reached.
916
+ # Corresponds to the JSON property `unreachable`
917
+ # @return [Array<String>]
918
+ attr_accessor :unreachable
919
+
920
+ def initialize(**args)
921
+ update!(**args)
922
+ end
923
+
924
+ # Update properties of this object
925
+ def update!(**args)
926
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
927
+ @service_classes = args[:service_classes] if args.key?(:service_classes)
928
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
929
+ end
930
+ end
931
+
932
+ # Response for ListServiceConnectionMaps.
933
+ class ListServiceConnectionMapsResponse
934
+ include Google::Apis::Core::Hashable
935
+
936
+ # The next pagination token in the List response. It should be used as
937
+ # page_token for the following request. An empty value means no more result.
938
+ # Corresponds to the JSON property `nextPageToken`
939
+ # @return [String]
940
+ attr_accessor :next_page_token
941
+
942
+ # ServiceConnectionMaps to be returned.
943
+ # Corresponds to the JSON property `serviceConnectionMaps`
944
+ # @return [Array<Google::Apis::NetworkconnectivityV1::ServiceConnectionMap>]
945
+ attr_accessor :service_connection_maps
946
+
947
+ # Locations that could not be reached.
948
+ # Corresponds to the JSON property `unreachable`
949
+ # @return [Array<String>]
950
+ attr_accessor :unreachable
951
+
952
+ def initialize(**args)
953
+ update!(**args)
954
+ end
955
+
956
+ # Update properties of this object
957
+ def update!(**args)
958
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
959
+ @service_connection_maps = args[:service_connection_maps] if args.key?(:service_connection_maps)
960
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
961
+ end
962
+ end
963
+
964
+ # Response for ListServiceConnectionPolicies.
965
+ class ListServiceConnectionPoliciesResponse
966
+ include Google::Apis::Core::Hashable
967
+
968
+ # The next pagination token in the List response. It should be used as
969
+ # page_token for the following request. An empty value means no more result.
970
+ # Corresponds to the JSON property `nextPageToken`
971
+ # @return [String]
972
+ attr_accessor :next_page_token
973
+
974
+ # ServiceConnectionPolicies to be returned.
975
+ # Corresponds to the JSON property `serviceConnectionPolicies`
976
+ # @return [Array<Google::Apis::NetworkconnectivityV1::ServiceConnectionPolicy>]
977
+ attr_accessor :service_connection_policies
978
+
979
+ # Locations that could not be reached.
980
+ # Corresponds to the JSON property `unreachable`
981
+ # @return [Array<String>]
982
+ attr_accessor :unreachable
983
+
984
+ def initialize(**args)
985
+ update!(**args)
986
+ end
987
+
988
+ # Update properties of this object
989
+ def update!(**args)
990
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
991
+ @service_connection_policies = args[:service_connection_policies] if args.key?(:service_connection_policies)
992
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
993
+ end
994
+ end
995
+
996
+ # Response for ListServiceConnectionTokens.
997
+ class ListServiceConnectionTokensResponse
998
+ include Google::Apis::Core::Hashable
999
+
1000
+ # The next pagination token in the List response. It should be used as
1001
+ # page_token for the following request. An empty value means no more result.
1002
+ # Corresponds to the JSON property `nextPageToken`
1003
+ # @return [String]
1004
+ attr_accessor :next_page_token
1005
+
1006
+ # ServiceConnectionTokens to be returned.
1007
+ # Corresponds to the JSON property `serviceConnectionTokens`
1008
+ # @return [Array<Google::Apis::NetworkconnectivityV1::ServiceConnectionToken>]
1009
+ attr_accessor :service_connection_tokens
1010
+
1011
+ # Locations that could not be reached.
1012
+ # Corresponds to the JSON property `unreachable`
1013
+ # @return [Array<String>]
1014
+ attr_accessor :unreachable
1015
+
1016
+ def initialize(**args)
1017
+ update!(**args)
1018
+ end
1019
+
1020
+ # Update properties of this object
1021
+ def update!(**args)
1022
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1023
+ @service_connection_tokens = args[:service_connection_tokens] if args.key?(:service_connection_tokens)
1024
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
1025
+ end
1026
+ end
1027
+
771
1028
  # The response for HubService.ListSpokes.
772
1029
  class ListSpokesResponse
773
1030
  include Google::Apis::Core::Hashable
@@ -801,7 +1058,7 @@ module Google
801
1058
  end
802
1059
  end
803
1060
 
804
- # A resource that represents Google Cloud Platform location.
1061
+ # A resource that represents a Google Cloud location.
805
1062
  class Location
806
1063
  include Google::Apis::Core::Hashable
807
1064
 
@@ -1021,6 +1278,120 @@ module Google
1021
1278
  end
1022
1279
  end
1023
1280
 
1281
+ # The PSC configurations on producer side.
1282
+ class ProducerPscConfig
1283
+ include Google::Apis::Core::Hashable
1284
+
1285
+ # The resource path of a service attachment. Example: projects/`projectNumOrId`/
1286
+ # regions/`region`/serviceAttachments/`resourceId`.
1287
+ # Corresponds to the JSON property `serviceAttachmentUri`
1288
+ # @return [String]
1289
+ attr_accessor :service_attachment_uri
1290
+
1291
+ def initialize(**args)
1292
+ update!(**args)
1293
+ end
1294
+
1295
+ # Update properties of this object
1296
+ def update!(**args)
1297
+ @service_attachment_uri = args[:service_attachment_uri] if args.key?(:service_attachment_uri)
1298
+ end
1299
+ end
1300
+
1301
+ # Configuration used for Private Service Connect connections. Used when
1302
+ # Infrastructure is PSC.
1303
+ class PscConfig
1304
+ include Google::Apis::Core::Hashable
1305
+
1306
+ # Max number of PSC connections for this policy.
1307
+ # Corresponds to the JSON property `limit`
1308
+ # @return [Fixnum]
1309
+ attr_accessor :limit
1310
+
1311
+ # The resource paths of subnetworks to use for IP address management. Example:
1312
+ # projects/`projectNumOrId`/regions/`region`/subnetworks/`resourceId`.
1313
+ # Corresponds to the JSON property `subnetworks`
1314
+ # @return [Array<String>]
1315
+ attr_accessor :subnetworks
1316
+
1317
+ def initialize(**args)
1318
+ update!(**args)
1319
+ end
1320
+
1321
+ # Update properties of this object
1322
+ def update!(**args)
1323
+ @limit = args[:limit] if args.key?(:limit)
1324
+ @subnetworks = args[:subnetworks] if args.key?(:subnetworks)
1325
+ end
1326
+ end
1327
+
1328
+ # Information about a specific Private Service Connect connection.
1329
+ class PscConnection
1330
+ include Google::Apis::Core::Hashable
1331
+
1332
+ # The resource reference of the consumer address.
1333
+ # Corresponds to the JSON property `consumerAddress`
1334
+ # @return [String]
1335
+ attr_accessor :consumer_address
1336
+
1337
+ # The resource reference of the PSC Forwarding Rule within the consumer VPC.
1338
+ # Corresponds to the JSON property `consumerForwardingRule`
1339
+ # @return [String]
1340
+ attr_accessor :consumer_forwarding_rule
1341
+
1342
+ # The project where the PSC connection is created.
1343
+ # Corresponds to the JSON property `consumerTargetProject`
1344
+ # @return [String]
1345
+ attr_accessor :consumer_target_project
1346
+
1347
+ # The `Status` type defines a logical error model that is suitable for different
1348
+ # programming environments, including REST APIs and RPC APIs. It is used by [
1349
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
1350
+ # data: error code, error message, and error details. You can find out more
1351
+ # about this error model and how to work with it in the [API Design Guide](https:
1352
+ # //cloud.google.com/apis/design/errors).
1353
+ # Corresponds to the JSON property `error`
1354
+ # @return [Google::Apis::NetworkconnectivityV1::GoogleRpcStatus]
1355
+ attr_accessor :error
1356
+
1357
+ # The error type indicates whether the error is consumer facing, producer facing
1358
+ # or system internal.
1359
+ # Corresponds to the JSON property `errorType`
1360
+ # @return [String]
1361
+ attr_accessor :error_type
1362
+
1363
+ # The last Compute Engine operation to setup PSC connection.
1364
+ # Corresponds to the JSON property `gceOperation`
1365
+ # @return [String]
1366
+ attr_accessor :gce_operation
1367
+
1368
+ # The PSC connection id of the PSC forwarding rule.
1369
+ # Corresponds to the JSON property `pscConnectionId`
1370
+ # @return [String]
1371
+ attr_accessor :psc_connection_id
1372
+
1373
+ # State of the PSC Connection
1374
+ # Corresponds to the JSON property `state`
1375
+ # @return [String]
1376
+ attr_accessor :state
1377
+
1378
+ def initialize(**args)
1379
+ update!(**args)
1380
+ end
1381
+
1382
+ # Update properties of this object
1383
+ def update!(**args)
1384
+ @consumer_address = args[:consumer_address] if args.key?(:consumer_address)
1385
+ @consumer_forwarding_rule = args[:consumer_forwarding_rule] if args.key?(:consumer_forwarding_rule)
1386
+ @consumer_target_project = args[:consumer_target_project] if args.key?(:consumer_target_project)
1387
+ @error = args[:error] if args.key?(:error)
1388
+ @error_type = args[:error_type] if args.key?(:error_type)
1389
+ @gce_operation = args[:gce_operation] if args.key?(:gce_operation)
1390
+ @psc_connection_id = args[:psc_connection_id] if args.key?(:psc_connection_id)
1391
+ @state = args[:state] if args.key?(:state)
1392
+ end
1393
+ end
1394
+
1024
1395
  # A router appliance instance is a Compute Engine virtual machine (VM) instance
1025
1396
  # that acts as a BGP speaker. A router appliance instance is specified by the
1026
1397
  # URI of the VM and the internal IP address of one of the VM's network
@@ -1080,6 +1451,301 @@ module Google
1080
1451
  end
1081
1452
  end
1082
1453
 
1454
+ # The ServiceClass resource. Next id: 8
1455
+ class ServiceClass
1456
+ include Google::Apis::Core::Hashable
1457
+
1458
+ # Output only. Time when the ServiceClass was created.
1459
+ # Corresponds to the JSON property `createTime`
1460
+ # @return [String]
1461
+ attr_accessor :create_time
1462
+
1463
+ # A description of this resource.
1464
+ # Corresponds to the JSON property `description`
1465
+ # @return [String]
1466
+ attr_accessor :description
1467
+
1468
+ # User-defined labels.
1469
+ # Corresponds to the JSON property `labels`
1470
+ # @return [Hash<String,String>]
1471
+ attr_accessor :labels
1472
+
1473
+ # Immutable. The name of a ServiceClass resource. Format: projects/`project`/
1474
+ # locations/`location`/serviceClasses/`service_class` See: https://google.aip.
1475
+ # dev/122#fields-representing-resource-names
1476
+ # Corresponds to the JSON property `name`
1477
+ # @return [String]
1478
+ attr_accessor :name
1479
+
1480
+ # Output only. The generated service class name. Use this name to refer to the
1481
+ # Service class in Service Connection Maps and Service Connection Policies.
1482
+ # Corresponds to the JSON property `serviceClass`
1483
+ # @return [String]
1484
+ attr_accessor :service_class
1485
+
1486
+ # Output only. URIs of all Service Connection Maps using this service class.
1487
+ # Corresponds to the JSON property `serviceConnectionMaps`
1488
+ # @return [Array<String>]
1489
+ attr_accessor :service_connection_maps
1490
+
1491
+ # Output only. Time when the ServiceClass was updated.
1492
+ # Corresponds to the JSON property `updateTime`
1493
+ # @return [String]
1494
+ attr_accessor :update_time
1495
+
1496
+ def initialize(**args)
1497
+ update!(**args)
1498
+ end
1499
+
1500
+ # Update properties of this object
1501
+ def update!(**args)
1502
+ @create_time = args[:create_time] if args.key?(:create_time)
1503
+ @description = args[:description] if args.key?(:description)
1504
+ @labels = args[:labels] if args.key?(:labels)
1505
+ @name = args[:name] if args.key?(:name)
1506
+ @service_class = args[:service_class] if args.key?(:service_class)
1507
+ @service_connection_maps = args[:service_connection_maps] if args.key?(:service_connection_maps)
1508
+ @update_time = args[:update_time] if args.key?(:update_time)
1509
+ end
1510
+ end
1511
+
1512
+ # The ServiceConnectionMap resource. Next id: 14
1513
+ class ServiceConnectionMap
1514
+ include Google::Apis::Core::Hashable
1515
+
1516
+ # The PSC configurations on consumer side.
1517
+ # Corresponds to the JSON property `consumerPscConfigs`
1518
+ # @return [Array<Google::Apis::NetworkconnectivityV1::ConsumerPscConfig>]
1519
+ attr_accessor :consumer_psc_configs
1520
+
1521
+ # Output only. PSC connection details on consumer side.
1522
+ # Corresponds to the JSON property `consumerPscConnections`
1523
+ # @return [Array<Google::Apis::NetworkconnectivityV1::ConsumerPscConnection>]
1524
+ attr_accessor :consumer_psc_connections
1525
+
1526
+ # Output only. Time when the ServiceConnectionMap was created.
1527
+ # Corresponds to the JSON property `createTime`
1528
+ # @return [String]
1529
+ attr_accessor :create_time
1530
+
1531
+ # A description of this resource.
1532
+ # Corresponds to the JSON property `description`
1533
+ # @return [String]
1534
+ attr_accessor :description
1535
+
1536
+ # Output only. The infrastructure used for connections between consumers/
1537
+ # producers.
1538
+ # Corresponds to the JSON property `infrastructure`
1539
+ # @return [String]
1540
+ attr_accessor :infrastructure
1541
+
1542
+ # User-defined labels.
1543
+ # Corresponds to the JSON property `labels`
1544
+ # @return [Hash<String,String>]
1545
+ attr_accessor :labels
1546
+
1547
+ # Immutable. The name of a ServiceConnectionMap. Format: projects/`project`/
1548
+ # locations/`location`/serviceConnectionMaps/`service_connection_map` See: https:
1549
+ # //google.aip.dev/122#fields-representing-resource-names
1550
+ # Corresponds to the JSON property `name`
1551
+ # @return [String]
1552
+ attr_accessor :name
1553
+
1554
+ # The PSC configurations on producer side.
1555
+ # Corresponds to the JSON property `producerPscConfigs`
1556
+ # @return [Array<Google::Apis::NetworkconnectivityV1::ProducerPscConfig>]
1557
+ attr_accessor :producer_psc_configs
1558
+
1559
+ # The service class identifier this ServiceConnectionMap is for. The user of
1560
+ # ServiceConnectionMap create API needs to have networkconnecitivty.
1561
+ # serviceclasses.use iam permission for the service class.
1562
+ # Corresponds to the JSON property `serviceClass`
1563
+ # @return [String]
1564
+ attr_accessor :service_class
1565
+
1566
+ # Output only. The service class uri this ServiceConnectionMap is for.
1567
+ # Corresponds to the JSON property `serviceClassUri`
1568
+ # @return [String]
1569
+ attr_accessor :service_class_uri
1570
+
1571
+ # The token provided by the consumer. This token authenticates that the consumer
1572
+ # can create a connecton within the specified project and network.
1573
+ # Corresponds to the JSON property `token`
1574
+ # @return [String]
1575
+ attr_accessor :token
1576
+
1577
+ # Output only. Time when the ServiceConnectionMap was updated.
1578
+ # Corresponds to the JSON property `updateTime`
1579
+ # @return [String]
1580
+ attr_accessor :update_time
1581
+
1582
+ def initialize(**args)
1583
+ update!(**args)
1584
+ end
1585
+
1586
+ # Update properties of this object
1587
+ def update!(**args)
1588
+ @consumer_psc_configs = args[:consumer_psc_configs] if args.key?(:consumer_psc_configs)
1589
+ @consumer_psc_connections = args[:consumer_psc_connections] if args.key?(:consumer_psc_connections)
1590
+ @create_time = args[:create_time] if args.key?(:create_time)
1591
+ @description = args[:description] if args.key?(:description)
1592
+ @infrastructure = args[:infrastructure] if args.key?(:infrastructure)
1593
+ @labels = args[:labels] if args.key?(:labels)
1594
+ @name = args[:name] if args.key?(:name)
1595
+ @producer_psc_configs = args[:producer_psc_configs] if args.key?(:producer_psc_configs)
1596
+ @service_class = args[:service_class] if args.key?(:service_class)
1597
+ @service_class_uri = args[:service_class_uri] if args.key?(:service_class_uri)
1598
+ @token = args[:token] if args.key?(:token)
1599
+ @update_time = args[:update_time] if args.key?(:update_time)
1600
+ end
1601
+ end
1602
+
1603
+ # The ServiceConnectionPolicy resource. Next id: 11
1604
+ class ServiceConnectionPolicy
1605
+ include Google::Apis::Core::Hashable
1606
+
1607
+ # Output only. Time when the ServiceConnectionMap was created.
1608
+ # Corresponds to the JSON property `createTime`
1609
+ # @return [String]
1610
+ attr_accessor :create_time
1611
+
1612
+ # A description of this resource.
1613
+ # Corresponds to the JSON property `description`
1614
+ # @return [String]
1615
+ attr_accessor :description
1616
+
1617
+ # Output only. The type of underlying resources used to create the connection.
1618
+ # Corresponds to the JSON property `infrastructure`
1619
+ # @return [String]
1620
+ attr_accessor :infrastructure
1621
+
1622
+ # User-defined labels.
1623
+ # Corresponds to the JSON property `labels`
1624
+ # @return [Hash<String,String>]
1625
+ attr_accessor :labels
1626
+
1627
+ # Immutable. The name of a ServiceConnectionPolicy. Format: projects/`project`/
1628
+ # locations/`location`/serviceConnectionPolicies/`service_connection_policy` See:
1629
+ # https://google.aip.dev/122#fields-representing-resource-names
1630
+ # Corresponds to the JSON property `name`
1631
+ # @return [String]
1632
+ attr_accessor :name
1633
+
1634
+ # The resource path of the consumer network. Example: - projects/`projectNumOrId`
1635
+ # /global/networks/`resourceId`.
1636
+ # Corresponds to the JSON property `network`
1637
+ # @return [String]
1638
+ attr_accessor :network
1639
+
1640
+ # Configuration used for Private Service Connect connections. Used when
1641
+ # Infrastructure is PSC.
1642
+ # Corresponds to the JSON property `pscConfig`
1643
+ # @return [Google::Apis::NetworkconnectivityV1::PscConfig]
1644
+ attr_accessor :psc_config
1645
+
1646
+ # Output only. [Output only] Information about each Private Service Connect
1647
+ # connection.
1648
+ # Corresponds to the JSON property `pscConnections`
1649
+ # @return [Array<Google::Apis::NetworkconnectivityV1::PscConnection>]
1650
+ attr_accessor :psc_connections
1651
+
1652
+ # The service class identifier for which this ServiceConnectionPolicy is for.
1653
+ # The service class identifier is a unique, symbolic representation of a
1654
+ # ServiceClass. It is provided by the Service Producer. Google services have a
1655
+ # prefix of gcp. For example, gcp-cloud-sql. 3rd party services do not. For
1656
+ # example, test-service-a3dfcx.
1657
+ # Corresponds to the JSON property `serviceClass`
1658
+ # @return [String]
1659
+ attr_accessor :service_class
1660
+
1661
+ # Output only. Time when the ServiceConnectionMap was updated.
1662
+ # Corresponds to the JSON property `updateTime`
1663
+ # @return [String]
1664
+ attr_accessor :update_time
1665
+
1666
+ def initialize(**args)
1667
+ update!(**args)
1668
+ end
1669
+
1670
+ # Update properties of this object
1671
+ def update!(**args)
1672
+ @create_time = args[:create_time] if args.key?(:create_time)
1673
+ @description = args[:description] if args.key?(:description)
1674
+ @infrastructure = args[:infrastructure] if args.key?(:infrastructure)
1675
+ @labels = args[:labels] if args.key?(:labels)
1676
+ @name = args[:name] if args.key?(:name)
1677
+ @network = args[:network] if args.key?(:network)
1678
+ @psc_config = args[:psc_config] if args.key?(:psc_config)
1679
+ @psc_connections = args[:psc_connections] if args.key?(:psc_connections)
1680
+ @service_class = args[:service_class] if args.key?(:service_class)
1681
+ @update_time = args[:update_time] if args.key?(:update_time)
1682
+ end
1683
+ end
1684
+
1685
+ # The ServiceConnectionToken resource. Next id: 9
1686
+ class ServiceConnectionToken
1687
+ include Google::Apis::Core::Hashable
1688
+
1689
+ # Output only. Time when the ServiceConnectionToken was created.
1690
+ # Corresponds to the JSON property `createTime`
1691
+ # @return [String]
1692
+ attr_accessor :create_time
1693
+
1694
+ # A description of this resource.
1695
+ # Corresponds to the JSON property `description`
1696
+ # @return [String]
1697
+ attr_accessor :description
1698
+
1699
+ # Output only. The time to which this token is valid.
1700
+ # Corresponds to the JSON property `expireTime`
1701
+ # @return [String]
1702
+ attr_accessor :expire_time
1703
+
1704
+ # User-defined labels.
1705
+ # Corresponds to the JSON property `labels`
1706
+ # @return [Hash<String,String>]
1707
+ attr_accessor :labels
1708
+
1709
+ # Immutable. The name of a ServiceConnectionToken. Format: projects/`project`/
1710
+ # locations/`location`/ServiceConnectionTokens/`service_connection_token` See:
1711
+ # https://google.aip.dev/122#fields-representing-resource-names
1712
+ # Corresponds to the JSON property `name`
1713
+ # @return [String]
1714
+ attr_accessor :name
1715
+
1716
+ # The resource path of the network associated with this token. Example: projects/
1717
+ # `projectNumOrId`/global/networks/`resourceId`.
1718
+ # Corresponds to the JSON property `network`
1719
+ # @return [String]
1720
+ attr_accessor :network
1721
+
1722
+ # Output only. The token generated by Automation.
1723
+ # Corresponds to the JSON property `token`
1724
+ # @return [String]
1725
+ attr_accessor :token
1726
+
1727
+ # Output only. Time when the ServiceConnectionToken was updated.
1728
+ # Corresponds to the JSON property `updateTime`
1729
+ # @return [String]
1730
+ attr_accessor :update_time
1731
+
1732
+ def initialize(**args)
1733
+ update!(**args)
1734
+ end
1735
+
1736
+ # Update properties of this object
1737
+ def update!(**args)
1738
+ @create_time = args[:create_time] if args.key?(:create_time)
1739
+ @description = args[:description] if args.key?(:description)
1740
+ @expire_time = args[:expire_time] if args.key?(:expire_time)
1741
+ @labels = args[:labels] if args.key?(:labels)
1742
+ @name = args[:name] if args.key?(:name)
1743
+ @network = args[:network] if args.key?(:network)
1744
+ @token = args[:token] if args.key?(:token)
1745
+ @update_time = args[:update_time] if args.key?(:update_time)
1746
+ end
1747
+ end
1748
+
1083
1749
  # Request message for `SetIamPolicy` method.
1084
1750
  class SetIamPolicyRequest
1085
1751
  include Google::Apis::Core::Hashable