google-apis-networkconnectivity_v1 0.24.0 → 0.26.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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