aws-sdk-cleanrooms 1.1.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8a02a5c9d66486070f74e2d618cfba27382ea98982aaebf0f4eb02dd81d85c96
4
- data.tar.gz: 1ef28a3e388354b6e0c7ed884b7bb34dee44e330fa7a879e996570f6f3be4cda
3
+ metadata.gz: d52e093072f749e31d4cfeaa4285aa418ba41e2cd305d3c75518fa0f36e8a37d
4
+ data.tar.gz: eefbe0826fd2c7e877a987bea2b928c5c419a271c1e78315ab8781fb445f294a
5
5
  SHA512:
6
- metadata.gz: fadaceb36b36c35dd31da11dfb22ebf947bf28af66405c7ea74671b88b5b6de47e1f181b64b1f57a9d5ca41f813141d7be6c0a02a704a41f56ce4f1324c28a67
7
- data.tar.gz: 352febed9e126733fbb08dda30f5b404ea69fa34c1130da46aaa778ae7225f6fec12409d4563d56eeeb8af3e2fc2ee2e33295b5070e61b58db6536e12a520f49
6
+ metadata.gz: b4e4474bff138cdd4f4cdff68627caa11d244bdb84799d83af55efc8e0d718df6bd83310a7d5e894f14340807f6f8ec64281f774ccdc2a2c98062023f3847bb0
7
+ data.tar.gz: '082f95aa0812d811670a6eab8dee108015b07439b51d5940c206eb4dff4866c160445901df41ece019cc39cf588fd31ac20883e5d3d58091f9f7e1e501e578e6'
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.2.0 (2023-03-21)
5
+ ------------------
6
+
7
+ * Feature - GA Release of AWS Clean Rooms, Added Tagging Functionality
8
+
4
9
  1.1.0 (2023-01-18)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.1.0
1
+ 1.2.0
@@ -450,6 +450,12 @@ module Aws::CleanRooms
450
450
  # An indicator as to whether query logging has been enabled or disabled
451
451
  # for the collaboration.
452
452
  #
453
+ # @option params [Hash<String,String>] :tags
454
+ # An optional label that you can assign to a resource when you create
455
+ # it. Each tag consists of a key and an optional value, both of which
456
+ # you define. When you use tagging, you can also use tag-based access
457
+ # control in IAM policies to control access to this resource.
458
+ #
453
459
  # @return [Types::CreateCollaborationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
454
460
  #
455
461
  # * {Types::CreateCollaborationOutput#collaboration #collaboration} => Types::Collaboration
@@ -475,6 +481,9 @@ module Aws::CleanRooms
475
481
  # preserve_nulls: false, # required
476
482
  # },
477
483
  # query_log_status: "ENABLED", # required, accepts ENABLED, DISABLED
484
+ # tags: {
485
+ # "TagKey" => "TagValue",
486
+ # },
478
487
  # })
479
488
  #
480
489
  # @example Response structure
@@ -524,6 +533,12 @@ module Aws::CleanRooms
524
533
  # The analysis method for the configured tables. The only valid value is
525
534
  # currently `DIRECT\_QUERY`.
526
535
  #
536
+ # @option params [Hash<String,String>] :tags
537
+ # An optional label that you can assign to a resource when you create
538
+ # it. Each tag consists of a key and an optional value, both of which
539
+ # you define. When you use tagging, you can also use tag-based access
540
+ # control in IAM policies to control access to this resource.
541
+ #
527
542
  # @return [Types::CreateConfiguredTableOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
528
543
  #
529
544
  # * {Types::CreateConfiguredTableOutput#configured_table #configured_table} => Types::ConfiguredTable
@@ -541,6 +556,9 @@ module Aws::CleanRooms
541
556
  # },
542
557
  # allowed_columns: ["ColumnName"], # required
543
558
  # analysis_method: "DIRECT_QUERY", # required, accepts DIRECT_QUERY
559
+ # tags: {
560
+ # "TagKey" => "TagValue",
561
+ # },
544
562
  # })
545
563
  #
546
564
  # @example Response structure
@@ -678,6 +696,12 @@ module Aws::CleanRooms
678
696
  # The service will assume this role to access catalog metadata and query
679
697
  # the table.
680
698
  #
699
+ # @option params [Hash<String,String>] :tags
700
+ # An optional label that you can assign to a resource when you create
701
+ # it. Each tag consists of a key and an optional value, both of which
702
+ # you define. When you use tagging, you can also use tag-based access
703
+ # control in IAM policies to control access to this resource.
704
+ #
681
705
  # @return [Types::CreateConfiguredTableAssociationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
682
706
  #
683
707
  # * {Types::CreateConfiguredTableAssociationOutput#configured_table_association #configured_table_association} => Types::ConfiguredTableAssociation
@@ -690,6 +714,9 @@ module Aws::CleanRooms
690
714
  # membership_identifier: "MembershipIdentifier", # required
691
715
  # configured_table_identifier: "ConfiguredTableIdentifier", # required
692
716
  # role_arn: "RoleArn", # required
717
+ # tags: {
718
+ # "TagKey" => "TagValue",
719
+ # },
693
720
  # })
694
721
  #
695
722
  # @example Response structure
@@ -725,6 +752,12 @@ module Aws::CleanRooms
725
752
  # An indicator as to whether query logging has been enabled or disabled
726
753
  # for the collaboration.
727
754
  #
755
+ # @option params [Hash<String,String>] :tags
756
+ # An optional label that you can assign to a resource when you create
757
+ # it. Each tag consists of a key and an optional value, both of which
758
+ # you define. When you use tagging, you can also use tag-based access
759
+ # control in IAM policies to control access to this resource.
760
+ #
728
761
  # @return [Types::CreateMembershipOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
729
762
  #
730
763
  # * {Types::CreateMembershipOutput#membership #membership} => Types::Membership
@@ -734,6 +767,9 @@ module Aws::CleanRooms
734
767
  # resp = client.create_membership({
735
768
  # collaboration_identifier: "CollaborationIdentifier", # required
736
769
  # query_log_status: "ENABLED", # required, accepts ENABLED, DISABLED
770
+ # tags: {
771
+ # "TagKey" => "TagValue",
772
+ # },
737
773
  # })
738
774
  #
739
775
  # @example Response structure
@@ -1656,6 +1692,36 @@ module Aws::CleanRooms
1656
1692
  req.send_request(options)
1657
1693
  end
1658
1694
 
1695
+ # Lists all of the tags that have been added to a resource.
1696
+ #
1697
+ # @option params [required, String] :resource_arn
1698
+ # The Amazon Resource Name (ARN) associated with the resource you want
1699
+ # to list tags on.
1700
+ #
1701
+ # @return [Types::ListTagsForResourceOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1702
+ #
1703
+ # * {Types::ListTagsForResourceOutput#tags #tags} => Hash&lt;String,String&gt;
1704
+ #
1705
+ # @example Request syntax with placeholder values
1706
+ #
1707
+ # resp = client.list_tags_for_resource({
1708
+ # resource_arn: "CleanroomsArn", # required
1709
+ # })
1710
+ #
1711
+ # @example Response structure
1712
+ #
1713
+ # resp.tags #=> Hash
1714
+ # resp.tags["TagKey"] #=> String
1715
+ #
1716
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListTagsForResource AWS API Documentation
1717
+ #
1718
+ # @overload list_tags_for_resource(params = {})
1719
+ # @param [Hash] params ({})
1720
+ def list_tags_for_resource(params = {}, options = {})
1721
+ req = build_request(:list_tags_for_resource, params)
1722
+ req.send_request(options)
1723
+ end
1724
+
1659
1725
  # Creates a protected query that is started by AWS Clean Rooms.
1660
1726
  #
1661
1727
  # @option params [required, String] :type
@@ -1719,6 +1785,62 @@ module Aws::CleanRooms
1719
1785
  req.send_request(options)
1720
1786
  end
1721
1787
 
1788
+ # Tags a resource.
1789
+ #
1790
+ # @option params [required, String] :resource_arn
1791
+ # The Amazon Resource Name (ARN) associated with the resource you want
1792
+ # to tag.
1793
+ #
1794
+ # @option params [required, Hash<String,String>] :tags
1795
+ # A map of objects specifying each key name and value.
1796
+ #
1797
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1798
+ #
1799
+ # @example Request syntax with placeholder values
1800
+ #
1801
+ # resp = client.tag_resource({
1802
+ # resource_arn: "CleanroomsArn", # required
1803
+ # tags: { # required
1804
+ # "TagKey" => "TagValue",
1805
+ # },
1806
+ # })
1807
+ #
1808
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/TagResource AWS API Documentation
1809
+ #
1810
+ # @overload tag_resource(params = {})
1811
+ # @param [Hash] params ({})
1812
+ def tag_resource(params = {}, options = {})
1813
+ req = build_request(:tag_resource, params)
1814
+ req.send_request(options)
1815
+ end
1816
+
1817
+ # Removes a tag or list of tags from a resource.
1818
+ #
1819
+ # @option params [required, String] :resource_arn
1820
+ # The Amazon Resource Name (ARN) associated with the resource you want
1821
+ # to remove the tag from.
1822
+ #
1823
+ # @option params [required, Array<String>] :tag_keys
1824
+ # A list of key names of tags to be removed.
1825
+ #
1826
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1827
+ #
1828
+ # @example Request syntax with placeholder values
1829
+ #
1830
+ # resp = client.untag_resource({
1831
+ # resource_arn: "CleanroomsArn", # required
1832
+ # tag_keys: ["TagKey"], # required
1833
+ # })
1834
+ #
1835
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/UntagResource AWS API Documentation
1836
+ #
1837
+ # @overload untag_resource(params = {})
1838
+ # @param [Hash] params ({})
1839
+ def untag_resource(params = {}, options = {})
1840
+ req = build_request(:untag_resource, params)
1841
+ req.send_request(options)
1842
+ end
1843
+
1722
1844
  # Updates collaboration metadata and can only be called by the
1723
1845
  # collaboration owner.
1724
1846
  #
@@ -2069,7 +2191,7 @@ module Aws::CleanRooms
2069
2191
  params: params,
2070
2192
  config: config)
2071
2193
  context[:gem_name] = 'aws-sdk-cleanrooms'
2072
- context[:gem_version] = '1.1.0'
2194
+ context[:gem_version] = '1.2.0'
2073
2195
  Seahorse::Client::Request.new(handlers, context)
2074
2196
  end
2075
2197
 
@@ -41,6 +41,7 @@ module Aws::CleanRooms
41
41
  BatchGetSchemaInput = Shapes::StructureShape.new(name: 'BatchGetSchemaInput')
42
42
  BatchGetSchemaOutput = Shapes::StructureShape.new(name: 'BatchGetSchemaOutput')
43
43
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
44
+ CleanroomsArn = Shapes::StringShape.new(name: 'CleanroomsArn')
44
45
  Collaboration = Shapes::StructureShape.new(name: 'Collaboration')
45
46
  CollaborationArn = Shapes::StringShape.new(name: 'CollaborationArn')
46
47
  CollaborationDescription = Shapes::StringShape.new(name: 'CollaborationDescription')
@@ -131,6 +132,8 @@ module Aws::CleanRooms
131
132
  ListProtectedQueriesOutput = Shapes::StructureShape.new(name: 'ListProtectedQueriesOutput')
132
133
  ListSchemasInput = Shapes::StructureShape.new(name: 'ListSchemasInput')
133
134
  ListSchemasOutput = Shapes::StructureShape.new(name: 'ListSchemasOutput')
135
+ ListTagsForResourceInput = Shapes::StructureShape.new(name: 'ListTagsForResourceInput')
136
+ ListTagsForResourceOutput = Shapes::StructureShape.new(name: 'ListTagsForResourceOutput')
134
137
  Long = Shapes::IntegerShape.new(name: 'Long')
135
138
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
136
139
  MemberAbilities = Shapes::ListShape.new(name: 'MemberAbilities')
@@ -184,10 +187,18 @@ module Aws::CleanRooms
184
187
  TableAliasList = Shapes::ListShape.new(name: 'TableAliasList')
185
188
  TableDescription = Shapes::StringShape.new(name: 'TableDescription')
186
189
  TableReference = Shapes::UnionShape.new(name: 'TableReference')
190
+ TagKey = Shapes::StringShape.new(name: 'TagKey')
191
+ TagKeys = Shapes::ListShape.new(name: 'TagKeys')
192
+ TagMap = Shapes::MapShape.new(name: 'TagMap')
193
+ TagResourceInput = Shapes::StructureShape.new(name: 'TagResourceInput')
194
+ TagResourceOutput = Shapes::StructureShape.new(name: 'TagResourceOutput')
195
+ TagValue = Shapes::StringShape.new(name: 'TagValue')
187
196
  TargetProtectedQueryStatus = Shapes::StringShape.new(name: 'TargetProtectedQueryStatus')
188
197
  ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
189
198
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
190
199
  UUID = Shapes::StringShape.new(name: 'UUID')
200
+ UntagResourceInput = Shapes::StructureShape.new(name: 'UntagResourceInput')
201
+ UntagResourceOutput = Shapes::StructureShape.new(name: 'UntagResourceOutput')
191
202
  UpdateCollaborationInput = Shapes::StructureShape.new(name: 'UpdateCollaborationInput')
192
203
  UpdateCollaborationOutput = Shapes::StructureShape.new(name: 'UpdateCollaborationOutput')
193
204
  UpdateConfiguredTableAnalysisRuleInput = Shapes::StructureShape.new(name: 'UpdateConfiguredTableAnalysisRuleInput')
@@ -401,6 +412,7 @@ module Aws::CleanRooms
401
412
  CreateCollaborationInput.add_member(:creator_display_name, Shapes::ShapeRef.new(shape: DisplayName, required: true, location_name: "creatorDisplayName"))
402
413
  CreateCollaborationInput.add_member(:data_encryption_metadata, Shapes::ShapeRef.new(shape: DataEncryptionMetadata, location_name: "dataEncryptionMetadata"))
403
414
  CreateCollaborationInput.add_member(:query_log_status, Shapes::ShapeRef.new(shape: CollaborationQueryLogStatus, required: true, location_name: "queryLogStatus"))
415
+ CreateCollaborationInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
404
416
  CreateCollaborationInput.struct_class = Types::CreateCollaborationInput
405
417
 
406
418
  CreateCollaborationOutput.add_member(:collaboration, Shapes::ShapeRef.new(shape: Collaboration, required: true, location_name: "collaboration"))
@@ -419,6 +431,7 @@ module Aws::CleanRooms
419
431
  CreateConfiguredTableAssociationInput.add_member(:membership_identifier, Shapes::ShapeRef.new(shape: MembershipIdentifier, required: true, location: "uri", location_name: "membershipIdentifier"))
420
432
  CreateConfiguredTableAssociationInput.add_member(:configured_table_identifier, Shapes::ShapeRef.new(shape: ConfiguredTableIdentifier, required: true, location_name: "configuredTableIdentifier"))
421
433
  CreateConfiguredTableAssociationInput.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, required: true, location_name: "roleArn"))
434
+ CreateConfiguredTableAssociationInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
422
435
  CreateConfiguredTableAssociationInput.struct_class = Types::CreateConfiguredTableAssociationInput
423
436
 
424
437
  CreateConfiguredTableAssociationOutput.add_member(:configured_table_association, Shapes::ShapeRef.new(shape: ConfiguredTableAssociation, required: true, location_name: "configuredTableAssociation"))
@@ -429,6 +442,7 @@ module Aws::CleanRooms
429
442
  CreateConfiguredTableInput.add_member(:table_reference, Shapes::ShapeRef.new(shape: TableReference, required: true, location_name: "tableReference"))
430
443
  CreateConfiguredTableInput.add_member(:allowed_columns, Shapes::ShapeRef.new(shape: AllowedColumnList, required: true, location_name: "allowedColumns"))
431
444
  CreateConfiguredTableInput.add_member(:analysis_method, Shapes::ShapeRef.new(shape: AnalysisMethod, required: true, location_name: "analysisMethod"))
445
+ CreateConfiguredTableInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
432
446
  CreateConfiguredTableInput.struct_class = Types::CreateConfiguredTableInput
433
447
 
434
448
  CreateConfiguredTableOutput.add_member(:configured_table, Shapes::ShapeRef.new(shape: ConfiguredTable, required: true, location_name: "configuredTable"))
@@ -436,6 +450,7 @@ module Aws::CleanRooms
436
450
 
437
451
  CreateMembershipInput.add_member(:collaboration_identifier, Shapes::ShapeRef.new(shape: CollaborationIdentifier, required: true, location_name: "collaborationIdentifier"))
438
452
  CreateMembershipInput.add_member(:query_log_status, Shapes::ShapeRef.new(shape: MembershipQueryLogStatus, required: true, location_name: "queryLogStatus"))
453
+ CreateMembershipInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
439
454
  CreateMembershipInput.struct_class = Types::CreateMembershipInput
440
455
 
441
456
  CreateMembershipOutput.add_member(:membership, Shapes::ShapeRef.new(shape: Membership, required: true, location_name: "membership"))
@@ -605,6 +620,12 @@ module Aws::CleanRooms
605
620
  ListSchemasOutput.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "nextToken"))
606
621
  ListSchemasOutput.struct_class = Types::ListSchemasOutput
607
622
 
623
+ ListTagsForResourceInput.add_member(:resource_arn, Shapes::ShapeRef.new(shape: CleanroomsArn, required: true, location: "uri", location_name: "resourceArn"))
624
+ ListTagsForResourceInput.struct_class = Types::ListTagsForResourceInput
625
+
626
+ ListTagsForResourceOutput.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, required: true, location_name: "tags"))
627
+ ListTagsForResourceOutput.struct_class = Types::ListTagsForResourceOutput
628
+
608
629
  MemberAbilities.member = Shapes::ShapeRef.new(shape: MemberAbility)
609
630
 
610
631
  MemberList.member = Shapes::ShapeRef.new(shape: MemberSpecification)
@@ -770,9 +791,26 @@ module Aws::CleanRooms
770
791
  TableReference.add_member_subclass(:unknown, Types::TableReference::Unknown)
771
792
  TableReference.struct_class = Types::TableReference
772
793
 
794
+ TagKeys.member = Shapes::ShapeRef.new(shape: TagKey)
795
+
796
+ TagMap.key = Shapes::ShapeRef.new(shape: TagKey)
797
+ TagMap.value = Shapes::ShapeRef.new(shape: TagValue)
798
+
799
+ TagResourceInput.add_member(:resource_arn, Shapes::ShapeRef.new(shape: CleanroomsArn, required: true, location: "uri", location_name: "resourceArn"))
800
+ TagResourceInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, required: true, location_name: "tags"))
801
+ TagResourceInput.struct_class = Types::TagResourceInput
802
+
803
+ TagResourceOutput.struct_class = Types::TagResourceOutput
804
+
773
805
  ThrottlingException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "message"))
774
806
  ThrottlingException.struct_class = Types::ThrottlingException
775
807
 
808
+ UntagResourceInput.add_member(:resource_arn, Shapes::ShapeRef.new(shape: CleanroomsArn, required: true, location: "uri", location_name: "resourceArn"))
809
+ UntagResourceInput.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeys, required: true, location: "querystring", location_name: "tagKeys"))
810
+ UntagResourceInput.struct_class = Types::UntagResourceInput
811
+
812
+ UntagResourceOutput.struct_class = Types::UntagResourceOutput
813
+
776
814
  UpdateCollaborationInput.add_member(:collaboration_identifier, Shapes::ShapeRef.new(shape: CollaborationIdentifier, required: true, location: "uri", location_name: "collaborationIdentifier"))
777
815
  UpdateCollaborationInput.add_member(:name, Shapes::ShapeRef.new(shape: CollaborationName, location_name: "name"))
778
816
  UpdateCollaborationInput.add_member(:description, Shapes::ShapeRef.new(shape: CollaborationDescription, location_name: "description"))
@@ -1144,6 +1182,7 @@ module Aws::CleanRooms
1144
1182
  o.http_request_uri = "/memberships/{membershipIdentifier}/configuredTableAssociations"
1145
1183
  o.input = Shapes::ShapeRef.new(shape: ListConfiguredTableAssociationsInput)
1146
1184
  o.output = Shapes::ShapeRef.new(shape: ListConfiguredTableAssociationsOutput)
1185
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1147
1186
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1148
1187
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1149
1188
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
@@ -1217,6 +1256,7 @@ module Aws::CleanRooms
1217
1256
  o.http_request_uri = "/memberships/{membershipIdentifier}/protectedQueries"
1218
1257
  o.input = Shapes::ShapeRef.new(shape: ListProtectedQueriesInput)
1219
1258
  o.output = Shapes::ShapeRef.new(shape: ListProtectedQueriesOutput)
1259
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1220
1260
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1221
1261
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1222
1262
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
@@ -1248,6 +1288,16 @@ module Aws::CleanRooms
1248
1288
  )
1249
1289
  end)
1250
1290
 
1291
+ api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
1292
+ o.name = "ListTagsForResource"
1293
+ o.http_method = "GET"
1294
+ o.http_request_uri = "/tags/{resourceArn}"
1295
+ o.input = Shapes::ShapeRef.new(shape: ListTagsForResourceInput)
1296
+ o.output = Shapes::ShapeRef.new(shape: ListTagsForResourceOutput)
1297
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1298
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1299
+ end)
1300
+
1251
1301
  api.add_operation(:start_protected_query, Seahorse::Model::Operation.new.tap do |o|
1252
1302
  o.name = "StartProtectedQuery"
1253
1303
  o.http_method = "POST"
@@ -1262,6 +1312,26 @@ module Aws::CleanRooms
1262
1312
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1263
1313
  end)
1264
1314
 
1315
+ api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
1316
+ o.name = "TagResource"
1317
+ o.http_method = "POST"
1318
+ o.http_request_uri = "/tags/{resourceArn}"
1319
+ o.input = Shapes::ShapeRef.new(shape: TagResourceInput)
1320
+ o.output = Shapes::ShapeRef.new(shape: TagResourceOutput)
1321
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1322
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1323
+ end)
1324
+
1325
+ api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o|
1326
+ o.name = "UntagResource"
1327
+ o.http_method = "DELETE"
1328
+ o.http_request_uri = "/tags/{resourceArn}"
1329
+ o.input = Shapes::ShapeRef.new(shape: UntagResourceInput)
1330
+ o.output = Shapes::ShapeRef.new(shape: UntagResourceOutput)
1331
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1332
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1333
+ end)
1334
+
1265
1335
  api.add_operation(:update_collaboration, Seahorse::Model::Operation.new.tap do |o|
1266
1336
  o.name = "UpdateCollaboration"
1267
1337
  o.http_method = "PATCH"
@@ -50,9 +50,6 @@ module Aws::CleanRooms
50
50
 
51
51
  def initialize(options = {})
52
52
  self[:region] = options[:region]
53
- if self[:region].nil?
54
- raise ArgumentError, "Missing required EndpointParameter: :region"
55
- end
56
53
  self[:use_dual_stack] = options[:use_dual_stack]
57
54
  self[:use_dual_stack] = false if self[:use_dual_stack].nil?
58
55
  if self[:use_dual_stack].nil?
@@ -14,36 +14,39 @@ module Aws::CleanRooms
14
14
  use_dual_stack = parameters.use_dual_stack
15
15
  use_fips = parameters.use_fips
16
16
  endpoint = parameters.endpoint
17
- if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
18
- if Aws::Endpoints::Matchers.set?(endpoint)
19
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
20
- raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
21
- end
22
- if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
23
- raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
24
- end
25
- return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
26
- end
27
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
28
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
29
- return Aws::Endpoints::Endpoint.new(url: "https://cleanrooms-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
30
- end
31
- raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
32
- end
17
+ if Aws::Endpoints::Matchers.set?(endpoint)
33
18
  if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
34
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
35
- return Aws::Endpoints::Endpoint.new(url: "https://cleanrooms-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
36
- end
37
- raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
19
+ raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
38
20
  end
39
21
  if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
40
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
41
- return Aws::Endpoints::Endpoint.new(url: "https://cleanrooms.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
22
+ raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
23
+ end
24
+ return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
25
+ end
26
+ if Aws::Endpoints::Matchers.set?(region)
27
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
28
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
29
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
30
+ return Aws::Endpoints::Endpoint.new(url: "https://cleanrooms-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
31
+ end
32
+ raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
+ end
34
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
35
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
36
+ return Aws::Endpoints::Endpoint.new(url: "https://cleanrooms-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
37
+ end
38
+ raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
39
+ end
40
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
41
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
42
+ return Aws::Endpoints::Endpoint.new(url: "https://cleanrooms.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
43
+ end
44
+ raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
42
45
  end
43
- raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
46
+ return Aws::Endpoints::Endpoint.new(url: "https://cleanrooms.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
44
47
  end
45
- return Aws::Endpoints::Endpoint.new(url: "https://cleanrooms.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
46
48
  end
49
+ raise ArgumentError, "Invalid Configuration: Missing Region"
47
50
  raise ArgumentError, 'No endpoint could be resolved'
48
51
 
49
52
  end
@@ -389,6 +389,20 @@ module Aws::CleanRooms
389
389
  end
390
390
  end
391
391
 
392
+ class ListTagsForResource
393
+ def self.build(context)
394
+ unless context.config.regional_endpoint
395
+ endpoint = context.config.endpoint.to_s
396
+ end
397
+ Aws::CleanRooms::EndpointParameters.new(
398
+ region: context.config.region,
399
+ use_dual_stack: context.config.use_dualstack_endpoint,
400
+ use_fips: context.config.use_fips_endpoint,
401
+ endpoint: endpoint,
402
+ )
403
+ end
404
+ end
405
+
392
406
  class StartProtectedQuery
393
407
  def self.build(context)
394
408
  unless context.config.regional_endpoint
@@ -403,6 +417,34 @@ module Aws::CleanRooms
403
417
  end
404
418
  end
405
419
 
420
+ class TagResource
421
+ def self.build(context)
422
+ unless context.config.regional_endpoint
423
+ endpoint = context.config.endpoint.to_s
424
+ end
425
+ Aws::CleanRooms::EndpointParameters.new(
426
+ region: context.config.region,
427
+ use_dual_stack: context.config.use_dualstack_endpoint,
428
+ use_fips: context.config.use_fips_endpoint,
429
+ endpoint: endpoint,
430
+ )
431
+ end
432
+ end
433
+
434
+ class UntagResource
435
+ def self.build(context)
436
+ unless context.config.regional_endpoint
437
+ endpoint = context.config.endpoint.to_s
438
+ end
439
+ Aws::CleanRooms::EndpointParameters.new(
440
+ region: context.config.region,
441
+ use_dual_stack: context.config.use_dualstack_endpoint,
442
+ use_fips: context.config.use_fips_endpoint,
443
+ endpoint: endpoint,
444
+ )
445
+ end
446
+ end
447
+
406
448
  class UpdateCollaboration
407
449
  def self.build(context)
408
450
  unless context.config.regional_endpoint
@@ -110,8 +110,14 @@ module Aws::CleanRooms
110
110
  Aws::CleanRooms::Endpoints::ListProtectedQueries.build(context)
111
111
  when :list_schemas
112
112
  Aws::CleanRooms::Endpoints::ListSchemas.build(context)
113
+ when :list_tags_for_resource
114
+ Aws::CleanRooms::Endpoints::ListTagsForResource.build(context)
113
115
  when :start_protected_query
114
116
  Aws::CleanRooms::Endpoints::StartProtectedQuery.build(context)
117
+ when :tag_resource
118
+ Aws::CleanRooms::Endpoints::TagResource.build(context)
119
+ when :untag_resource
120
+ Aws::CleanRooms::Endpoints::UntagResource.build(context)
115
121
  when :update_collaboration
116
122
  Aws::CleanRooms::Endpoints::UpdateCollaboration.build(context)
117
123
  when :update_configured_table
@@ -854,6 +854,13 @@ module Aws::CleanRooms
854
854
  # disabled for the collaboration.
855
855
  # @return [String]
856
856
  #
857
+ # @!attribute [rw] tags
858
+ # An optional label that you can assign to a resource when you create
859
+ # it. Each tag consists of a key and an optional value, both of which
860
+ # you define. When you use tagging, you can also use tag-based access
861
+ # control in IAM policies to control access to this resource.
862
+ # @return [Hash<String,String>]
863
+ #
857
864
  # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/CreateCollaborationInput AWS API Documentation
858
865
  #
859
866
  class CreateCollaborationInput < Struct.new(
@@ -863,7 +870,8 @@ module Aws::CleanRooms
863
870
  :creator_member_abilities,
864
871
  :creator_display_name,
865
872
  :data_encryption_metadata,
866
- :query_log_status)
873
+ :query_log_status,
874
+ :tags)
867
875
  SENSITIVE = []
868
876
  include Aws::Structure
869
877
  end
@@ -940,6 +948,13 @@ module Aws::CleanRooms
940
948
  # query the table.
941
949
  # @return [String]
942
950
  #
951
+ # @!attribute [rw] tags
952
+ # An optional label that you can assign to a resource when you create
953
+ # it. Each tag consists of a key and an optional value, both of which
954
+ # you define. When you use tagging, you can also use tag-based access
955
+ # control in IAM policies to control access to this resource.
956
+ # @return [Hash<String,String>]
957
+ #
943
958
  # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/CreateConfiguredTableAssociationInput AWS API Documentation
944
959
  #
945
960
  class CreateConfiguredTableAssociationInput < Struct.new(
@@ -947,7 +962,8 @@ module Aws::CleanRooms
947
962
  :description,
948
963
  :membership_identifier,
949
964
  :configured_table_identifier,
950
- :role_arn)
965
+ :role_arn,
966
+ :tags)
951
967
  SENSITIVE = []
952
968
  include Aws::Structure
953
969
  end
@@ -986,6 +1002,13 @@ module Aws::CleanRooms
986
1002
  # is currently `DIRECT\_QUERY`.
987
1003
  # @return [String]
988
1004
  #
1005
+ # @!attribute [rw] tags
1006
+ # An optional label that you can assign to a resource when you create
1007
+ # it. Each tag consists of a key and an optional value, both of which
1008
+ # you define. When you use tagging, you can also use tag-based access
1009
+ # control in IAM policies to control access to this resource.
1010
+ # @return [Hash<String,String>]
1011
+ #
989
1012
  # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/CreateConfiguredTableInput AWS API Documentation
990
1013
  #
991
1014
  class CreateConfiguredTableInput < Struct.new(
@@ -993,7 +1016,8 @@ module Aws::CleanRooms
993
1016
  :description,
994
1017
  :table_reference,
995
1018
  :allowed_columns,
996
- :analysis_method)
1019
+ :analysis_method,
1020
+ :tags)
997
1021
  SENSITIVE = []
998
1022
  include Aws::Structure
999
1023
  end
@@ -1019,11 +1043,19 @@ module Aws::CleanRooms
1019
1043
  # disabled for the collaboration.
1020
1044
  # @return [String]
1021
1045
  #
1046
+ # @!attribute [rw] tags
1047
+ # An optional label that you can assign to a resource when you create
1048
+ # it. Each tag consists of a key and an optional value, both of which
1049
+ # you define. When you use tagging, you can also use tag-based access
1050
+ # control in IAM policies to control access to this resource.
1051
+ # @return [Hash<String,String>]
1052
+ #
1022
1053
  # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/CreateMembershipInput AWS API Documentation
1023
1054
  #
1024
1055
  class CreateMembershipInput < Struct.new(
1025
1056
  :collaboration_identifier,
1026
- :query_log_status)
1057
+ :query_log_status,
1058
+ :tags)
1027
1059
  SENSITIVE = []
1028
1060
  include Aws::Structure
1029
1061
  end
@@ -1757,6 +1789,31 @@ module Aws::CleanRooms
1757
1789
  include Aws::Structure
1758
1790
  end
1759
1791
 
1792
+ # @!attribute [rw] resource_arn
1793
+ # The Amazon Resource Name (ARN) associated with the resource you want
1794
+ # to list tags on.
1795
+ # @return [String]
1796
+ #
1797
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListTagsForResourceInput AWS API Documentation
1798
+ #
1799
+ class ListTagsForResourceInput < Struct.new(
1800
+ :resource_arn)
1801
+ SENSITIVE = []
1802
+ include Aws::Structure
1803
+ end
1804
+
1805
+ # @!attribute [rw] tags
1806
+ # A map of objects specifying each key name and value.
1807
+ # @return [Hash<String,String>]
1808
+ #
1809
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/ListTagsForResourceOutput AWS API Documentation
1810
+ #
1811
+ class ListTagsForResourceOutput < Struct.new(
1812
+ :tags)
1813
+ SENSITIVE = []
1814
+ include Aws::Structure
1815
+ end
1816
+
1760
1817
  # Basic metadata used to construct a new member.
1761
1818
  #
1762
1819
  # @!attribute [rw] account_id
@@ -2258,7 +2315,7 @@ module Aws::CleanRooms
2258
2315
  # @return [Array<Types::Column>]
2259
2316
  #
2260
2317
  # @!attribute [rw] partition_keys
2261
- # The partition keys for the data set underlying this schema.
2318
+ # The partition keys for the dataset underlying this schema.
2262
2319
  # @return [Array<Types::Column>]
2263
2320
  #
2264
2321
  # @!attribute [rw] analysis_rule_types
@@ -2443,7 +2500,7 @@ module Aws::CleanRooms
2443
2500
  include Aws::Structure
2444
2501
  end
2445
2502
 
2446
- # A pointer to the data set that underlies this table. Currently, this
2503
+ # A pointer to the dataset that underlies this table. Currently, this
2447
2504
  # can only be an AWS Glue table.
2448
2505
  #
2449
2506
  # @note TableReference is a union - when making an API calls you must set exactly one of the members.
@@ -2468,6 +2525,28 @@ module Aws::CleanRooms
2468
2525
  class Unknown < TableReference; end
2469
2526
  end
2470
2527
 
2528
+ # @!attribute [rw] resource_arn
2529
+ # The Amazon Resource Name (ARN) associated with the resource you want
2530
+ # to tag.
2531
+ # @return [String]
2532
+ #
2533
+ # @!attribute [rw] tags
2534
+ # A map of objects specifying each key name and value.
2535
+ # @return [Hash<String,String>]
2536
+ #
2537
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/TagResourceInput AWS API Documentation
2538
+ #
2539
+ class TagResourceInput < Struct.new(
2540
+ :resource_arn,
2541
+ :tags)
2542
+ SENSITIVE = []
2543
+ include Aws::Structure
2544
+ end
2545
+
2546
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/TagResourceOutput AWS API Documentation
2547
+ #
2548
+ class TagResourceOutput < Aws::EmptyStructure; end
2549
+
2471
2550
  # Request was denied due to request throttling.
2472
2551
  #
2473
2552
  # @!attribute [rw] message
@@ -2481,6 +2560,28 @@ module Aws::CleanRooms
2481
2560
  include Aws::Structure
2482
2561
  end
2483
2562
 
2563
+ # @!attribute [rw] resource_arn
2564
+ # The Amazon Resource Name (ARN) associated with the resource you want
2565
+ # to remove the tag from.
2566
+ # @return [String]
2567
+ #
2568
+ # @!attribute [rw] tag_keys
2569
+ # A list of key names of tags to be removed.
2570
+ # @return [Array<String>]
2571
+ #
2572
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/UntagResourceInput AWS API Documentation
2573
+ #
2574
+ class UntagResourceInput < Struct.new(
2575
+ :resource_arn,
2576
+ :tag_keys)
2577
+ SENSITIVE = []
2578
+ include Aws::Structure
2579
+ end
2580
+
2581
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanrooms-2022-02-17/UntagResourceOutput AWS API Documentation
2582
+ #
2583
+ class UntagResourceOutput < Aws::EmptyStructure; end
2584
+
2484
2585
  # @!attribute [rw] collaboration_identifier
2485
2586
  # The identifier for the collaboration.
2486
2587
  # @return [String]
@@ -53,6 +53,6 @@ require_relative 'aws-sdk-cleanrooms/customizations'
53
53
  # @!group service
54
54
  module Aws::CleanRooms
55
55
 
56
- GEM_VERSION = '1.1.0'
56
+ GEM_VERSION = '1.2.0'
57
57
 
58
58
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-cleanrooms
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-01-18 00:00:00.000000000 Z
11
+ date: 2023-03-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core