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