aws-sdk-dsql 1.7.0 → 1.9.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3291563dc8b970c9f7f0c11e1b9cca68e27ab119db5643e9ad082100cae6d31e
4
- data.tar.gz: e0aa1f8c90785e0ee96cb007ebc75914dd7982a8fccb308456391a2584f3d608
3
+ metadata.gz: 3ecc5074f03f4e0faedcc34bf17cb86ddd965c9e3bd2a708889069febcdf20c3
4
+ data.tar.gz: d5c32129b43da188c45c1db729dd314d7ce2f537627d130358edcd318af55a61
5
5
  SHA512:
6
- metadata.gz: 5076a36189099de2a589fb123e65c25a8b3edf33b7e10590d20d051a830a8694082d6962d01ec2af1e33ddd2ed68df4c0c8684cb0da6818e81c51ea7b6615a70
7
- data.tar.gz: a334e501c779a38940382749b9ea5fa31fcb168cbef331ca929063c6a612d31699ccf76d49d1dc6c4a2dd850968229b5dc2a5ede18d257ffca3cdf1e5a9d2bf8
6
+ metadata.gz: 9944304dbdbd74326ee6542be90a0d80847c3bdbbabcf40e252e4341918342d64e1edb0854a9c3e1b7170f388d41b8adfc242fc87946003026c06eb1d634fe00
7
+ data.tar.gz: 890c6e9e99a0e15931bfc378914394141b1a7c116f02cf4a949d5cfede982159afbcb84dd14452aceb4e80f259d39946b16e33ce8e16f6387fcf38fac2560ff1
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.9.0 (2025-05-19)
5
+ ------------------
6
+
7
+ * Feature - CreateMultiRegionCluster and DeleteMultiRegionCluster APIs removed
8
+
9
+ 1.8.0 (2025-05-13)
10
+ ------------------
11
+
12
+ * Feature - CreateMultiRegionClusters and DeleteMultiRegionClusters APIs marked as deprecated. Introduced new multi-Region clusters creation experience through multiRegionProperties parameter in CreateCluster API.
13
+
4
14
  1.7.0 (2025-05-12)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.7.0
1
+ 1.9.0
@@ -469,7 +469,65 @@ module Aws::DSQL
469
469
 
470
470
  # @!group API Operations
471
471
 
472
- # Creates a cluster in Amazon Aurora DSQL.
472
+ # The CreateCluster API allows you to create both single-region clusters
473
+ # and multi-Region clusters. With the addition of the
474
+ # *multiRegionProperties* parameter, you can create a cluster with
475
+ # witness Region support and establish peer relationships with clusters
476
+ # in other Regions during creation.
477
+ #
478
+ # <note markdown="1"> Creating multi-Region clusters requires additional IAM permissions
479
+ # beyond those needed for single-Region clusters, as detailed in the
480
+ # **Required permissions** section below.
481
+ #
482
+ # </note>
483
+ #
484
+ # **Required permissions**
485
+ #
486
+ # dsql:CreateCluster
487
+ #
488
+ # : Required to create a cluster.
489
+ #
490
+ # Resources: `arn:aws:dsql:region:account-id:cluster/*`
491
+ #
492
+ # dsql:TagResource
493
+ #
494
+ # : Permission to add tags to a resource.
495
+ #
496
+ # Resources: `arn:aws:dsql:region:account-id:cluster/*`
497
+ #
498
+ # dsql:PutMultiRegionProperties
499
+ #
500
+ # : Permission to configure multi-region properties for a cluster.
501
+ #
502
+ # Resources: `arn:aws:dsql:region:account-id:cluster/*`
503
+ #
504
+ # dsql:AddPeerCluster
505
+ #
506
+ # : When specifying `multiRegionProperties.clusters`, permission to add
507
+ # peer clusters.
508
+ #
509
+ # Resources:
510
+ #
511
+ # * Local cluster: `arn:aws:dsql:region:account-id:cluster/*`
512
+ #
513
+ # * Each peer cluster: exact ARN of each specified peer cluster
514
+ #
515
+ # dsql:PutWitnessRegion
516
+ #
517
+ # : When specifying `multiRegionProperties.witnessRegion`, permission to
518
+ # set a witness Region. This permission is checked both in the cluster
519
+ # Region and in the witness Region.
520
+ #
521
+ # Resources: `arn:aws:dsql:region:account-id:cluster/*`
522
+ #
523
+ # Condition Keys: `dsql:WitnessRegion` (matching the specified witness
524
+ # region)
525
+ #
526
+ # * The witness Region specified in
527
+ # `multiRegionProperties.witnessRegion` cannot be the same as the
528
+ # cluster's Region.
529
+ #
530
+ # ^
473
531
  #
474
532
  # @option params [Boolean] :deletion_protection_enabled
475
533
  # If enabled, you can't delete your cluster. You must first disable
@@ -492,12 +550,17 @@ module Aws::DSQL
492
550
  # **A suitable default value is auto-generated.** You should normally
493
551
  # not need to pass this option.**
494
552
  #
553
+ # @option params [Types::MultiRegionProperties] :multi_region_properties
554
+ # The configuration settings when creating a multi-Region cluster,
555
+ # including the witness region and linked cluster properties.
556
+ #
495
557
  # @return [Types::CreateClusterOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
496
558
  #
497
559
  # * {Types::CreateClusterOutput#identifier #identifier} => String
498
560
  # * {Types::CreateClusterOutput#arn #arn} => String
499
561
  # * {Types::CreateClusterOutput#status #status} => String
500
562
  # * {Types::CreateClusterOutput#creation_time #creation_time} => Time
563
+ # * {Types::CreateClusterOutput#multi_region_properties #multi_region_properties} => Types::MultiRegionProperties
501
564
  # * {Types::CreateClusterOutput#deletion_protection_enabled #deletion_protection_enabled} => Boolean
502
565
  #
503
566
  #
@@ -518,14 +581,21 @@ module Aws::DSQL
518
581
  # "TagKey" => "TagValue",
519
582
  # },
520
583
  # client_token: "ClientToken",
584
+ # multi_region_properties: {
585
+ # witness_region: "Region",
586
+ # clusters: ["ClusterArn"],
587
+ # },
521
588
  # })
522
589
  #
523
590
  # @example Response structure
524
591
  #
525
592
  # resp.identifier #=> String
526
593
  # resp.arn #=> String
527
- # resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED"
594
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "IDLE", "INACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED", "PENDING_SETUP", "PENDING_DELETE"
528
595
  # resp.creation_time #=> Time
596
+ # resp.multi_region_properties.witness_region #=> String
597
+ # resp.multi_region_properties.clusters #=> Array
598
+ # resp.multi_region_properties.clusters[0] #=> String
529
599
  # resp.deletion_protection_enabled #=> Boolean
530
600
  #
531
601
  # @see http://docs.aws.amazon.com/goto/WebAPI/dsql-2018-05-10/CreateCluster AWS API Documentation
@@ -537,89 +607,6 @@ module Aws::DSQL
537
607
  req.send_request(options)
538
608
  end
539
609
 
540
- # Creates multi-Region clusters in Amazon Aurora DSQL. Multi-Region
541
- # clusters require a linked Region list, which is an array of the
542
- # Regions in which you want to create linked clusters. Multi-Region
543
- # clusters require a witness Region, which participates in quorum in
544
- # failure scenarios.
545
- #
546
- # @option params [required, Array<String>] :linked_region_list
547
- # An array of the Regions in which you want to create additional
548
- # clusters.
549
- #
550
- # @option params [Hash<String,Types::LinkedClusterProperties>] :cluster_properties
551
- # A mapping of properties to use when creating linked clusters.
552
- #
553
- # @option params [required, String] :witness_region
554
- # The witness Region of multi-Region clusters.
555
- #
556
- # @option params [String] :client_token
557
- # A unique, case-sensitive identifier that you provide to ensure the
558
- # idempotency of the request. Idempotency ensures that an API request
559
- # completes only once. With an idempotent request, if the original
560
- # request completes successfully. The subsequent retries with the same
561
- # client token return the result from the original successful request
562
- # and they have no additional effect.
563
- #
564
- # If you don't specify a client token, the Amazon Web Services SDK
565
- # automatically generates one.
566
- #
567
- # **A suitable default value is auto-generated.** You should normally
568
- # not need to pass this option.**
569
- #
570
- # @return [Types::CreateMultiRegionClustersOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
571
- #
572
- # * {Types::CreateMultiRegionClustersOutput#linked_cluster_arns #linked_cluster_arns} => Array&lt;String&gt;
573
- #
574
- #
575
- # @example Example: Create Multi Region Clusters
576
- #
577
- # resp = client.create_multi_region_clusters({
578
- # linked_region_list: [
579
- # "us-east-1",
580
- # "us-east-2",
581
- # ],
582
- # witness_region: "us-west-2",
583
- # })
584
- #
585
- # resp.to_h outputs the following:
586
- # {
587
- # linked_cluster_arns: [
588
- # "arn:aws:dsql:us-east-1:111122223333:cluster/abcdefghijklmnopqrst12345",
589
- # "arn:aws:dsql:us-east-2:111122223333:cluster/klmnopqrstuvwxyzabcd54321",
590
- # ],
591
- # }
592
- #
593
- # @example Request syntax with placeholder values
594
- #
595
- # resp = client.create_multi_region_clusters({
596
- # linked_region_list: ["Region"], # required
597
- # cluster_properties: {
598
- # "Region" => {
599
- # deletion_protection_enabled: false,
600
- # tags: {
601
- # "TagKey" => "TagValue",
602
- # },
603
- # },
604
- # },
605
- # witness_region: "Region", # required
606
- # client_token: "ClientToken",
607
- # })
608
- #
609
- # @example Response structure
610
- #
611
- # resp.linked_cluster_arns #=> Array
612
- # resp.linked_cluster_arns[0] #=> String
613
- #
614
- # @see http://docs.aws.amazon.com/goto/WebAPI/dsql-2018-05-10/CreateMultiRegionClusters AWS API Documentation
615
- #
616
- # @overload create_multi_region_clusters(params = {})
617
- # @param [Hash] params ({})
618
- def create_multi_region_clusters(params = {}, options = {})
619
- req = build_request(:create_multi_region_clusters, params)
620
- req.send_request(options)
621
- end
622
-
623
610
  # Deletes a cluster in Amazon Aurora DSQL.
624
611
  #
625
612
  # @option params [required, String] :identifier
@@ -645,7 +632,6 @@ module Aws::DSQL
645
632
  # * {Types::DeleteClusterOutput#arn #arn} => String
646
633
  # * {Types::DeleteClusterOutput#status #status} => String
647
634
  # * {Types::DeleteClusterOutput#creation_time #creation_time} => Time
648
- # * {Types::DeleteClusterOutput#deletion_protection_enabled #deletion_protection_enabled} => Boolean
649
635
  #
650
636
  #
651
637
  # @example Example: Delete Cluster
@@ -665,9 +651,8 @@ module Aws::DSQL
665
651
  #
666
652
  # resp.identifier #=> String
667
653
  # resp.arn #=> String
668
- # resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED"
654
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "IDLE", "INACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED", "PENDING_SETUP", "PENDING_DELETE"
669
655
  # resp.creation_time #=> Time
670
- # resp.deletion_protection_enabled #=> Boolean
671
656
  #
672
657
  # @see http://docs.aws.amazon.com/goto/WebAPI/dsql-2018-05-10/DeleteCluster AWS API Documentation
673
658
  #
@@ -678,54 +663,6 @@ module Aws::DSQL
678
663
  req.send_request(options)
679
664
  end
680
665
 
681
- # Deletes a multi-Region cluster in Amazon Aurora DSQL.
682
- #
683
- # @option params [required, Array<String>] :linked_cluster_arns
684
- # The ARNs of the clusters linked to the cluster you want to delete.
685
- # also deletes these clusters as part of the operation.
686
- #
687
- # @option params [String] :client_token
688
- # A unique, case-sensitive identifier that you provide to ensure the
689
- # idempotency of the request. Idempotency ensures that an API request
690
- # completes only once. With an idempotent request, if the original
691
- # request completes successfully. The subsequent retries with the same
692
- # client token return the result from the original successful request
693
- # and they have no additional effect.
694
- #
695
- # If you don't specify a client token, the Amazon Web Services SDK
696
- # automatically generates one.
697
- #
698
- # **A suitable default value is auto-generated.** You should normally
699
- # not need to pass this option.**
700
- #
701
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
702
- #
703
- #
704
- # @example Example: Delete Multi Region Clusters
705
- #
706
- # resp = client.delete_multi_region_clusters({
707
- # linked_cluster_arns: [
708
- # "arn:aws:dsql:us-east-1:111122223333:cluster/abcdefghijklmnopqrst12345",
709
- # "arn:aws:dsql:us-east-2:111122223333:cluster/klmnopqrstuvwxyzabcd54321",
710
- # ],
711
- # })
712
- #
713
- # @example Request syntax with placeholder values
714
- #
715
- # resp = client.delete_multi_region_clusters({
716
- # linked_cluster_arns: ["ClusterArn"], # required
717
- # client_token: "ClientToken",
718
- # })
719
- #
720
- # @see http://docs.aws.amazon.com/goto/WebAPI/dsql-2018-05-10/DeleteMultiRegionClusters AWS API Documentation
721
- #
722
- # @overload delete_multi_region_clusters(params = {})
723
- # @param [Hash] params ({})
724
- def delete_multi_region_clusters(params = {}, options = {})
725
- req = build_request(:delete_multi_region_clusters, params)
726
- req.send_request(options)
727
- end
728
-
729
666
  # Retrieves information about a cluster.
730
667
  #
731
668
  # @option params [required, String] :identifier
@@ -738,8 +675,8 @@ module Aws::DSQL
738
675
  # * {Types::GetClusterOutput#status #status} => String
739
676
  # * {Types::GetClusterOutput#creation_time #creation_time} => Time
740
677
  # * {Types::GetClusterOutput#deletion_protection_enabled #deletion_protection_enabled} => Boolean
741
- # * {Types::GetClusterOutput#witness_region #witness_region} => String
742
- # * {Types::GetClusterOutput#linked_cluster_arns #linked_cluster_arns} => Array&lt;String&gt;
678
+ # * {Types::GetClusterOutput#multi_region_properties #multi_region_properties} => Types::MultiRegionProperties
679
+ # * {Types::GetClusterOutput#tags #tags} => Hash&lt;String,String&gt;
743
680
  #
744
681
  #
745
682
  # @example Example: Get Cluster
@@ -758,12 +695,14 @@ module Aws::DSQL
758
695
  #
759
696
  # resp.identifier #=> String
760
697
  # resp.arn #=> String
761
- # resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED"
698
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "IDLE", "INACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED", "PENDING_SETUP", "PENDING_DELETE"
762
699
  # resp.creation_time #=> Time
763
700
  # resp.deletion_protection_enabled #=> Boolean
764
- # resp.witness_region #=> String
765
- # resp.linked_cluster_arns #=> Array
766
- # resp.linked_cluster_arns[0] #=> String
701
+ # resp.multi_region_properties.witness_region #=> String
702
+ # resp.multi_region_properties.clusters #=> Array
703
+ # resp.multi_region_properties.clusters[0] #=> String
704
+ # resp.tags #=> Hash
705
+ # resp.tags["TagKey"] #=> String
767
706
  #
768
707
  #
769
708
  # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
@@ -974,7 +913,80 @@ module Aws::DSQL
974
913
  req.send_request(options)
975
914
  end
976
915
 
977
- # Updates a cluster.
916
+ # The *UpdateCluster* API allows you to modify both single-Region and
917
+ # multi-Region cluster configurations. With the *multiRegionProperties*
918
+ # parameter, you can add or modify witness Region support and manage
919
+ # peer relationships with clusters in other Regions.
920
+ #
921
+ # <note markdown="1"> Note that updating multi-region clusters requires additional IAM
922
+ # permissions beyond those needed for standard cluster updates, as
923
+ # detailed in the Permissions section.
924
+ #
925
+ # </note>
926
+ #
927
+ # **Required permissions**
928
+ #
929
+ # dsql:UpdateCluster
930
+ #
931
+ # : Permission to update a DSQL cluster.
932
+ #
933
+ # Resources: `arn:aws:dsql:region:account-id:cluster/cluster-id `
934
+ # ^
935
+ #
936
+ # dsql:PutMultiRegionProperties
937
+ #
938
+ # : Permission to configure multi-Region properties for a cluster.
939
+ #
940
+ # Resources: `arn:aws:dsql:region:account-id:cluster/cluster-id `
941
+ # ^
942
+ #
943
+ # dsql:GetCluster
944
+ #
945
+ # : Permission to retrieve cluster information.
946
+ #
947
+ # Resources: `arn:aws:dsql:region:account-id:cluster/cluster-id `
948
+ #
949
+ # dsql:AddPeerCluster
950
+ #
951
+ # : Permission to add peer clusters.
952
+ #
953
+ # Resources:
954
+ #
955
+ # * Local cluster: `arn:aws:dsql:region:account-id:cluster/cluster-id
956
+ # `
957
+ #
958
+ # * Each peer cluster: exact ARN of each specified peer cluster
959
+ #
960
+ # dsql:RemovePeerCluster
961
+ #
962
+ # : Permission to remove peer clusters. The *dsql:RemovePeerCluster*
963
+ # permission uses a wildcard ARN pattern to simplify permission
964
+ # management during updates.
965
+ #
966
+ # Resources: `arn:aws:dsql:*:account-id:cluster/*`
967
+ # ^
968
+ #
969
+ # dsql:PutWitnessRegion
970
+ #
971
+ # : Permission to set a witness Region.
972
+ #
973
+ # Resources: `arn:aws:dsql:region:account-id:cluster/cluster-id `
974
+ #
975
+ # Condition Keys: dsql:WitnessRegion (matching the specified witness
976
+ # Region)
977
+ #
978
+ # **This permission is checked both in the cluster Region and in the
979
+ # witness Region.**
980
+ #
981
+ # * The witness region specified in
982
+ # `multiRegionProperties.witnessRegion` cannot be the same as the
983
+ # cluster's Region.
984
+ #
985
+ # * When updating clusters with peer relationships, permissions are
986
+ # checked for both adding and removing peers.
987
+ #
988
+ # * The `dsql:RemovePeerCluster` permission uses a wildcard ARN pattern
989
+ # to simplify permission management during updates.
978
990
  #
979
991
  # @option params [required, String] :identifier
980
992
  # The ID of the cluster you want to update.
@@ -996,15 +1008,16 @@ module Aws::DSQL
996
1008
  # **A suitable default value is auto-generated.** You should normally
997
1009
  # not need to pass this option.**
998
1010
  #
1011
+ # @option params [Types::MultiRegionProperties] :multi_region_properties
1012
+ # The new multi-Region cluster configuration settings to be applied
1013
+ # during an update operation.
1014
+ #
999
1015
  # @return [Types::UpdateClusterOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1000
1016
  #
1001
1017
  # * {Types::UpdateClusterOutput#identifier #identifier} => String
1002
1018
  # * {Types::UpdateClusterOutput#arn #arn} => String
1003
1019
  # * {Types::UpdateClusterOutput#status #status} => String
1004
1020
  # * {Types::UpdateClusterOutput#creation_time #creation_time} => Time
1005
- # * {Types::UpdateClusterOutput#deletion_protection_enabled #deletion_protection_enabled} => Boolean
1006
- # * {Types::UpdateClusterOutput#witness_region #witness_region} => String
1007
- # * {Types::UpdateClusterOutput#linked_cluster_arns #linked_cluster_arns} => Array&lt;String&gt;
1008
1021
  #
1009
1022
  #
1010
1023
  # @example Example: Update Cluster
@@ -1020,18 +1033,18 @@ module Aws::DSQL
1020
1033
  # identifier: "ClusterId", # required
1021
1034
  # deletion_protection_enabled: false,
1022
1035
  # client_token: "ClientToken",
1036
+ # multi_region_properties: {
1037
+ # witness_region: "Region",
1038
+ # clusters: ["ClusterArn"],
1039
+ # },
1023
1040
  # })
1024
1041
  #
1025
1042
  # @example Response structure
1026
1043
  #
1027
1044
  # resp.identifier #=> String
1028
1045
  # resp.arn #=> String
1029
- # resp.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED"
1046
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "IDLE", "INACTIVE", "UPDATING", "DELETING", "DELETED", "FAILED", "PENDING_SETUP", "PENDING_DELETE"
1030
1047
  # resp.creation_time #=> Time
1031
- # resp.deletion_protection_enabled #=> Boolean
1032
- # resp.witness_region #=> String
1033
- # resp.linked_cluster_arns #=> Array
1034
- # resp.linked_cluster_arns[0] #=> String
1035
1048
  #
1036
1049
  # @see http://docs.aws.amazon.com/goto/WebAPI/dsql-2018-05-10/UpdateCluster AWS API Documentation
1037
1050
  #
@@ -1060,7 +1073,7 @@ module Aws::DSQL
1060
1073
  tracer: tracer
1061
1074
  )
1062
1075
  context[:gem_name] = 'aws-sdk-dsql'
1063
- context[:gem_version] = '1.7.0'
1076
+ context[:gem_version] = '1.9.0'
1064
1077
  Seahorse::Client::Request.new(handlers, context)
1065
1078
  end
1066
1079
 
@@ -22,17 +22,13 @@ module Aws::DSQL
22
22
  ClusterCreationTime = Shapes::TimestampShape.new(name: 'ClusterCreationTime')
23
23
  ClusterId = Shapes::StringShape.new(name: 'ClusterId')
24
24
  ClusterList = Shapes::ListShape.new(name: 'ClusterList')
25
- ClusterPropertyMap = Shapes::MapShape.new(name: 'ClusterPropertyMap')
26
25
  ClusterStatus = Shapes::StringShape.new(name: 'ClusterStatus')
27
26
  ClusterSummary = Shapes::StructureShape.new(name: 'ClusterSummary')
28
27
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
29
28
  CreateClusterInput = Shapes::StructureShape.new(name: 'CreateClusterInput')
30
29
  CreateClusterOutput = Shapes::StructureShape.new(name: 'CreateClusterOutput')
31
- CreateMultiRegionClustersInput = Shapes::StructureShape.new(name: 'CreateMultiRegionClustersInput')
32
- CreateMultiRegionClustersOutput = Shapes::StructureShape.new(name: 'CreateMultiRegionClustersOutput')
33
30
  DeleteClusterInput = Shapes::StructureShape.new(name: 'DeleteClusterInput')
34
31
  DeleteClusterOutput = Shapes::StructureShape.new(name: 'DeleteClusterOutput')
35
- DeleteMultiRegionClustersInput = Shapes::StructureShape.new(name: 'DeleteMultiRegionClustersInput')
36
32
  DeletionProtectionEnabled = Shapes::BooleanShape.new(name: 'DeletionProtectionEnabled')
37
33
  GetClusterInput = Shapes::StructureShape.new(name: 'GetClusterInput')
38
34
  GetClusterOutput = Shapes::StructureShape.new(name: 'GetClusterOutput')
@@ -40,15 +36,14 @@ module Aws::DSQL
40
36
  GetVpcEndpointServiceNameOutput = Shapes::StructureShape.new(name: 'GetVpcEndpointServiceNameOutput')
41
37
  Integer = Shapes::IntegerShape.new(name: 'Integer')
42
38
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
43
- LinkedClusterProperties = Shapes::StructureShape.new(name: 'LinkedClusterProperties')
44
39
  ListClustersInput = Shapes::StructureShape.new(name: 'ListClustersInput')
45
40
  ListClustersOutput = Shapes::StructureShape.new(name: 'ListClustersOutput')
46
41
  ListTagsForResourceInput = Shapes::StructureShape.new(name: 'ListTagsForResourceInput')
47
42
  ListTagsForResourceOutput = Shapes::StructureShape.new(name: 'ListTagsForResourceOutput')
48
43
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
44
+ MultiRegionProperties = Shapes::StructureShape.new(name: 'MultiRegionProperties')
49
45
  NextToken = Shapes::StringShape.new(name: 'NextToken')
50
46
  Region = Shapes::StringShape.new(name: 'Region')
51
- RegionList = Shapes::ListShape.new(name: 'RegionList')
52
47
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
53
48
  ServiceName = Shapes::StringShape.new(name: 'ServiceName')
54
49
  ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
@@ -74,9 +69,6 @@ module Aws::DSQL
74
69
 
75
70
  ClusterList.member = Shapes::ShapeRef.new(shape: ClusterSummary)
76
71
 
77
- ClusterPropertyMap.key = Shapes::ShapeRef.new(shape: Region)
78
- ClusterPropertyMap.value = Shapes::ShapeRef.new(shape: LinkedClusterProperties)
79
-
80
72
  ClusterSummary.add_member(:identifier, Shapes::ShapeRef.new(shape: ClusterId, required: true, location_name: "identifier"))
81
73
  ClusterSummary.add_member(:arn, Shapes::ShapeRef.new(shape: ClusterArn, required: true, location_name: "arn"))
82
74
  ClusterSummary.struct_class = Types::ClusterSummary
@@ -89,24 +81,17 @@ module Aws::DSQL
89
81
  CreateClusterInput.add_member(:deletion_protection_enabled, Shapes::ShapeRef.new(shape: DeletionProtectionEnabled, location_name: "deletionProtectionEnabled"))
90
82
  CreateClusterInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
91
83
  CreateClusterInput.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location_name: "clientToken", metadata: {"idempotencyToken" => true}))
84
+ CreateClusterInput.add_member(:multi_region_properties, Shapes::ShapeRef.new(shape: MultiRegionProperties, location_name: "multiRegionProperties"))
92
85
  CreateClusterInput.struct_class = Types::CreateClusterInput
93
86
 
94
87
  CreateClusterOutput.add_member(:identifier, Shapes::ShapeRef.new(shape: ClusterId, required: true, location_name: "identifier"))
95
88
  CreateClusterOutput.add_member(:arn, Shapes::ShapeRef.new(shape: ClusterArn, required: true, location_name: "arn"))
96
89
  CreateClusterOutput.add_member(:status, Shapes::ShapeRef.new(shape: ClusterStatus, required: true, location_name: "status"))
97
90
  CreateClusterOutput.add_member(:creation_time, Shapes::ShapeRef.new(shape: ClusterCreationTime, required: true, location_name: "creationTime"))
91
+ CreateClusterOutput.add_member(:multi_region_properties, Shapes::ShapeRef.new(shape: MultiRegionProperties, location_name: "multiRegionProperties"))
98
92
  CreateClusterOutput.add_member(:deletion_protection_enabled, Shapes::ShapeRef.new(shape: DeletionProtectionEnabled, required: true, location_name: "deletionProtectionEnabled"))
99
93
  CreateClusterOutput.struct_class = Types::CreateClusterOutput
100
94
 
101
- CreateMultiRegionClustersInput.add_member(:linked_region_list, Shapes::ShapeRef.new(shape: RegionList, required: true, location_name: "linkedRegionList"))
102
- CreateMultiRegionClustersInput.add_member(:cluster_properties, Shapes::ShapeRef.new(shape: ClusterPropertyMap, location_name: "clusterProperties"))
103
- CreateMultiRegionClustersInput.add_member(:witness_region, Shapes::ShapeRef.new(shape: Region, required: true, location_name: "witnessRegion"))
104
- CreateMultiRegionClustersInput.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location_name: "clientToken", metadata: {"idempotencyToken" => true}))
105
- CreateMultiRegionClustersInput.struct_class = Types::CreateMultiRegionClustersInput
106
-
107
- CreateMultiRegionClustersOutput.add_member(:linked_cluster_arns, Shapes::ShapeRef.new(shape: ClusterArnList, required: true, location_name: "linkedClusterArns"))
108
- CreateMultiRegionClustersOutput.struct_class = Types::CreateMultiRegionClustersOutput
109
-
110
95
  DeleteClusterInput.add_member(:identifier, Shapes::ShapeRef.new(shape: ClusterId, required: true, location: "uri", location_name: "identifier"))
111
96
  DeleteClusterInput.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location: "querystring", location_name: "client-token", metadata: {"idempotencyToken" => true}))
112
97
  DeleteClusterInput.struct_class = Types::DeleteClusterInput
@@ -115,13 +100,8 @@ module Aws::DSQL
115
100
  DeleteClusterOutput.add_member(:arn, Shapes::ShapeRef.new(shape: ClusterArn, required: true, location_name: "arn"))
116
101
  DeleteClusterOutput.add_member(:status, Shapes::ShapeRef.new(shape: ClusterStatus, required: true, location_name: "status"))
117
102
  DeleteClusterOutput.add_member(:creation_time, Shapes::ShapeRef.new(shape: ClusterCreationTime, required: true, location_name: "creationTime"))
118
- DeleteClusterOutput.add_member(:deletion_protection_enabled, Shapes::ShapeRef.new(shape: DeletionProtectionEnabled, required: true, location_name: "deletionProtectionEnabled"))
119
103
  DeleteClusterOutput.struct_class = Types::DeleteClusterOutput
120
104
 
121
- DeleteMultiRegionClustersInput.add_member(:linked_cluster_arns, Shapes::ShapeRef.new(shape: ClusterArnList, required: true, location: "querystring", location_name: "linked-cluster-arns"))
122
- DeleteMultiRegionClustersInput.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location: "querystring", location_name: "client-token", metadata: {"idempotencyToken" => true}))
123
- DeleteMultiRegionClustersInput.struct_class = Types::DeleteMultiRegionClustersInput
124
-
125
105
  GetClusterInput.add_member(:identifier, Shapes::ShapeRef.new(shape: ClusterId, required: true, location: "uri", location_name: "identifier"))
126
106
  GetClusterInput.struct_class = Types::GetClusterInput
127
107
 
@@ -130,8 +110,8 @@ module Aws::DSQL
130
110
  GetClusterOutput.add_member(:status, Shapes::ShapeRef.new(shape: ClusterStatus, required: true, location_name: "status"))
131
111
  GetClusterOutput.add_member(:creation_time, Shapes::ShapeRef.new(shape: ClusterCreationTime, required: true, location_name: "creationTime"))
132
112
  GetClusterOutput.add_member(:deletion_protection_enabled, Shapes::ShapeRef.new(shape: DeletionProtectionEnabled, required: true, location_name: "deletionProtectionEnabled"))
133
- GetClusterOutput.add_member(:witness_region, Shapes::ShapeRef.new(shape: Region, location_name: "witnessRegion"))
134
- GetClusterOutput.add_member(:linked_cluster_arns, Shapes::ShapeRef.new(shape: ClusterArnList, location_name: "linkedClusterArns"))
113
+ GetClusterOutput.add_member(:multi_region_properties, Shapes::ShapeRef.new(shape: MultiRegionProperties, location_name: "multiRegionProperties"))
114
+ GetClusterOutput.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
135
115
  GetClusterOutput.struct_class = Types::GetClusterOutput
136
116
 
137
117
  GetVpcEndpointServiceNameInput.add_member(:identifier, Shapes::ShapeRef.new(shape: ClusterId, required: true, location: "uri", location_name: "identifier"))
@@ -144,10 +124,6 @@ module Aws::DSQL
144
124
  InternalServerException.add_member(:retry_after_seconds, Shapes::ShapeRef.new(shape: Integer, location: "header", location_name: "Retry-After"))
145
125
  InternalServerException.struct_class = Types::InternalServerException
146
126
 
147
- LinkedClusterProperties.add_member(:deletion_protection_enabled, Shapes::ShapeRef.new(shape: DeletionProtectionEnabled, location_name: "deletionProtectionEnabled"))
148
- LinkedClusterProperties.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
149
- LinkedClusterProperties.struct_class = Types::LinkedClusterProperties
150
-
151
127
  ListClustersInput.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "max-results"))
152
128
  ListClustersInput.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "next-token"))
153
129
  ListClustersInput.struct_class = Types::ListClustersInput
@@ -162,7 +138,9 @@ module Aws::DSQL
162
138
  ListTagsForResourceOutput.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
163
139
  ListTagsForResourceOutput.struct_class = Types::ListTagsForResourceOutput
164
140
 
165
- RegionList.member = Shapes::ShapeRef.new(shape: Region)
141
+ MultiRegionProperties.add_member(:witness_region, Shapes::ShapeRef.new(shape: Region, location_name: "witnessRegion"))
142
+ MultiRegionProperties.add_member(:clusters, Shapes::ShapeRef.new(shape: ClusterArnList, location_name: "clusters"))
143
+ MultiRegionProperties.struct_class = Types::MultiRegionProperties
166
144
 
167
145
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
168
146
  ResourceNotFoundException.add_member(:resource_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "resourceId"))
@@ -198,15 +176,13 @@ module Aws::DSQL
198
176
  UpdateClusterInput.add_member(:identifier, Shapes::ShapeRef.new(shape: ClusterId, required: true, location: "uri", location_name: "identifier"))
199
177
  UpdateClusterInput.add_member(:deletion_protection_enabled, Shapes::ShapeRef.new(shape: DeletionProtectionEnabled, location_name: "deletionProtectionEnabled"))
200
178
  UpdateClusterInput.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location_name: "clientToken", metadata: {"idempotencyToken" => true}))
179
+ UpdateClusterInput.add_member(:multi_region_properties, Shapes::ShapeRef.new(shape: MultiRegionProperties, location_name: "multiRegionProperties"))
201
180
  UpdateClusterInput.struct_class = Types::UpdateClusterInput
202
181
 
203
182
  UpdateClusterOutput.add_member(:identifier, Shapes::ShapeRef.new(shape: ClusterId, required: true, location_name: "identifier"))
204
183
  UpdateClusterOutput.add_member(:arn, Shapes::ShapeRef.new(shape: ClusterArn, required: true, location_name: "arn"))
205
184
  UpdateClusterOutput.add_member(:status, Shapes::ShapeRef.new(shape: ClusterStatus, required: true, location_name: "status"))
206
185
  UpdateClusterOutput.add_member(:creation_time, Shapes::ShapeRef.new(shape: ClusterCreationTime, required: true, location_name: "creationTime"))
207
- UpdateClusterOutput.add_member(:deletion_protection_enabled, Shapes::ShapeRef.new(shape: DeletionProtectionEnabled, required: true, location_name: "deletionProtectionEnabled"))
208
- UpdateClusterOutput.add_member(:witness_region, Shapes::ShapeRef.new(shape: Region, location_name: "witnessRegion"))
209
- UpdateClusterOutput.add_member(:linked_cluster_arns, Shapes::ShapeRef.new(shape: ClusterArnList, location_name: "linkedClusterArns"))
210
186
  UpdateClusterOutput.struct_class = Types::UpdateClusterOutput
211
187
 
212
188
  ValidationException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
@@ -247,22 +223,8 @@ module Aws::DSQL
247
223
  o.output = Shapes::ShapeRef.new(shape: CreateClusterOutput)
248
224
  o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
249
225
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
250
- o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
251
226
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
252
- o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
253
- o.errors << Shapes::ShapeRef.new(shape: ConflictException)
254
- end)
255
-
256
- api.add_operation(:create_multi_region_clusters, Seahorse::Model::Operation.new.tap do |o|
257
- o.name = "CreateMultiRegionClusters"
258
- o.http_method = "POST"
259
- o.http_request_uri = "/multi-region-clusters"
260
- o.input = Shapes::ShapeRef.new(shape: CreateMultiRegionClustersInput)
261
- o.output = Shapes::ShapeRef.new(shape: CreateMultiRegionClustersOutput)
262
- o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
263
- o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
264
227
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
265
- o.errors << Shapes::ShapeRef.new(shape: ValidationException)
266
228
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
267
229
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
268
230
  end)
@@ -281,20 +243,6 @@ module Aws::DSQL
281
243
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
282
244
  end)
283
245
 
284
- api.add_operation(:delete_multi_region_clusters, Seahorse::Model::Operation.new.tap do |o|
285
- o.name = "DeleteMultiRegionClusters"
286
- o.http_method = "DELETE"
287
- o.http_request_uri = "/multi-region-clusters"
288
- o.input = Shapes::ShapeRef.new(shape: DeleteMultiRegionClustersInput)
289
- o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
290
- o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
291
- o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
292
- o.errors << Shapes::ShapeRef.new(shape: ValidationException)
293
- o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
294
- o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
295
- o.errors << Shapes::ShapeRef.new(shape: ConflictException)
296
- end)
297
-
298
246
  api.add_operation(:get_cluster, Seahorse::Model::Operation.new.tap do |o|
299
247
  o.name = "GetCluster"
300
248
  o.http_method = "GET"
@@ -387,8 +335,8 @@ module Aws::DSQL
387
335
  o.input = Shapes::ShapeRef.new(shape: UpdateClusterInput)
388
336
  o.output = Shapes::ShapeRef.new(shape: UpdateClusterOutput)
389
337
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
390
- o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
391
338
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
339
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
392
340
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
393
341
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
394
342
  o.errors << Shapes::ShapeRef.new(shape: ConflictException)
@@ -89,17 +89,23 @@ module Aws::DSQL
89
89
  # not need to pass this option.
90
90
  # @return [String]
91
91
  #
92
+ # @!attribute [rw] multi_region_properties
93
+ # The configuration settings when creating a multi-Region cluster,
94
+ # including the witness region and linked cluster properties.
95
+ # @return [Types::MultiRegionProperties]
96
+ #
92
97
  # @see http://docs.aws.amazon.com/goto/WebAPI/dsql-2018-05-10/CreateClusterInput AWS API Documentation
93
98
  #
94
99
  class CreateClusterInput < Struct.new(
95
100
  :deletion_protection_enabled,
96
101
  :tags,
97
- :client_token)
102
+ :client_token,
103
+ :multi_region_properties)
98
104
  SENSITIVE = []
99
105
  include Aws::Structure
100
106
  end
101
107
 
102
- # Output Mixin
108
+ # The output of a created cluster.
103
109
  #
104
110
  # @!attribute [rw] identifier
105
111
  # The ID of the created cluster.
@@ -117,6 +123,11 @@ module Aws::DSQL
117
123
  # The time of when created the cluster.
118
124
  # @return [Time]
119
125
  #
126
+ # @!attribute [rw] multi_region_properties
127
+ # The multi-Region cluster configuration details that were set during
128
+ # cluster creation
129
+ # @return [Types::MultiRegionProperties]
130
+ #
120
131
  # @!attribute [rw] deletion_protection_enabled
121
132
  # Whether deletion protection is enabled on this cluster.
122
133
  # @return [Boolean]
@@ -128,62 +139,12 @@ module Aws::DSQL
128
139
  :arn,
129
140
  :status,
130
141
  :creation_time,
142
+ :multi_region_properties,
131
143
  :deletion_protection_enabled)
132
144
  SENSITIVE = []
133
145
  include Aws::Structure
134
146
  end
135
147
 
136
- # @!attribute [rw] linked_region_list
137
- # An array of the Regions in which you want to create additional
138
- # clusters.
139
- # @return [Array<String>]
140
- #
141
- # @!attribute [rw] cluster_properties
142
- # A mapping of properties to use when creating linked clusters.
143
- # @return [Hash<String,Types::LinkedClusterProperties>]
144
- #
145
- # @!attribute [rw] witness_region
146
- # The witness Region of multi-Region clusters.
147
- # @return [String]
148
- #
149
- # @!attribute [rw] client_token
150
- # A unique, case-sensitive identifier that you provide to ensure the
151
- # idempotency of the request. Idempotency ensures that an API request
152
- # completes only once. With an idempotent request, if the original
153
- # request completes successfully. The subsequent retries with the same
154
- # client token return the result from the original successful request
155
- # and they have no additional effect.
156
- #
157
- # If you don't specify a client token, the Amazon Web Services SDK
158
- # automatically generates one.
159
- #
160
- # **A suitable default value is auto-generated.** You should normally
161
- # not need to pass this option.
162
- # @return [String]
163
- #
164
- # @see http://docs.aws.amazon.com/goto/WebAPI/dsql-2018-05-10/CreateMultiRegionClustersInput AWS API Documentation
165
- #
166
- class CreateMultiRegionClustersInput < Struct.new(
167
- :linked_region_list,
168
- :cluster_properties,
169
- :witness_region,
170
- :client_token)
171
- SENSITIVE = []
172
- include Aws::Structure
173
- end
174
-
175
- # @!attribute [rw] linked_cluster_arns
176
- # An array that contains the ARNs of all linked clusters.
177
- # @return [Array<String>]
178
- #
179
- # @see http://docs.aws.amazon.com/goto/WebAPI/dsql-2018-05-10/CreateMultiRegionClustersOutput AWS API Documentation
180
- #
181
- class CreateMultiRegionClustersOutput < Struct.new(
182
- :linked_cluster_arns)
183
- SENSITIVE = []
184
- include Aws::Structure
185
- end
186
-
187
148
  # @!attribute [rw] identifier
188
149
  # The ID of the cluster to delete.
189
150
  # @return [String]
@@ -212,7 +173,7 @@ module Aws::DSQL
212
173
  include Aws::Structure
213
174
  end
214
175
 
215
- # Output Mixin
176
+ # The output from a deleted cluster.
216
177
  #
217
178
  # @!attribute [rw] identifier
218
179
  # The ID of the deleted cluster.
@@ -230,47 +191,13 @@ module Aws::DSQL
230
191
  # The time of when the cluster was created.
231
192
  # @return [Time]
232
193
  #
233
- # @!attribute [rw] deletion_protection_enabled
234
- # Specifies whether deletion protection was enabled on the cluster.
235
- # @return [Boolean]
236
- #
237
194
  # @see http://docs.aws.amazon.com/goto/WebAPI/dsql-2018-05-10/DeleteClusterOutput AWS API Documentation
238
195
  #
239
196
  class DeleteClusterOutput < Struct.new(
240
197
  :identifier,
241
198
  :arn,
242
199
  :status,
243
- :creation_time,
244
- :deletion_protection_enabled)
245
- SENSITIVE = []
246
- include Aws::Structure
247
- end
248
-
249
- # @!attribute [rw] linked_cluster_arns
250
- # The ARNs of the clusters linked to the cluster you want to delete.
251
- # also deletes these clusters as part of the operation.
252
- # @return [Array<String>]
253
- #
254
- # @!attribute [rw] client_token
255
- # A unique, case-sensitive identifier that you provide to ensure the
256
- # idempotency of the request. Idempotency ensures that an API request
257
- # completes only once. With an idempotent request, if the original
258
- # request completes successfully. The subsequent retries with the same
259
- # client token return the result from the original successful request
260
- # and they have no additional effect.
261
- #
262
- # If you don't specify a client token, the Amazon Web Services SDK
263
- # automatically generates one.
264
- #
265
- # **A suitable default value is auto-generated.** You should normally
266
- # not need to pass this option.
267
- # @return [String]
268
- #
269
- # @see http://docs.aws.amazon.com/goto/WebAPI/dsql-2018-05-10/DeleteMultiRegionClustersInput AWS API Documentation
270
- #
271
- class DeleteMultiRegionClustersInput < Struct.new(
272
- :linked_cluster_arns,
273
- :client_token)
200
+ :creation_time)
274
201
  SENSITIVE = []
275
202
  include Aws::Structure
276
203
  end
@@ -287,7 +214,7 @@ module Aws::DSQL
287
214
  include Aws::Structure
288
215
  end
289
216
 
290
- # Output Mixin
217
+ # The output of a cluster.
291
218
  #
292
219
  # @!attribute [rw] identifier
293
220
  # The ID of the retrieved cluster.
@@ -309,14 +236,14 @@ module Aws::DSQL
309
236
  # Whether deletion protection is enabled in this cluster.
310
237
  # @return [Boolean]
311
238
  #
312
- # @!attribute [rw] witness_region
313
- # The witness Region of the cluster. Applicable only for multi-Region
314
- # clusters.
315
- # @return [String]
239
+ # @!attribute [rw] multi_region_properties
240
+ # Returns the current multi-Region cluster configuration, including
241
+ # witness region and linked cluster information.
242
+ # @return [Types::MultiRegionProperties]
316
243
  #
317
- # @!attribute [rw] linked_cluster_arns
318
- # The ARNs of the clusters linked to the retrieved cluster.
319
- # @return [Array<String>]
244
+ # @!attribute [rw] tags
245
+ # Map of tags.
246
+ # @return [Hash<String,String>]
320
247
  #
321
248
  # @see http://docs.aws.amazon.com/goto/WebAPI/dsql-2018-05-10/GetClusterOutput AWS API Documentation
322
249
  #
@@ -326,8 +253,8 @@ module Aws::DSQL
326
253
  :status,
327
254
  :creation_time,
328
255
  :deletion_protection_enabled,
329
- :witness_region,
330
- :linked_cluster_arns)
256
+ :multi_region_properties,
257
+ :tags)
331
258
  SENSITIVE = []
332
259
  include Aws::Structure
333
260
  end
@@ -375,25 +302,6 @@ module Aws::DSQL
375
302
  include Aws::Structure
376
303
  end
377
304
 
378
- # Properties of linked clusters.
379
- #
380
- # @!attribute [rw] deletion_protection_enabled
381
- # Whether deletion protection is enabled.
382
- # @return [Boolean]
383
- #
384
- # @!attribute [rw] tags
385
- # A map of key and value pairs the linked cluster is tagged with.
386
- # @return [Hash<String,String>]
387
- #
388
- # @see http://docs.aws.amazon.com/goto/WebAPI/dsql-2018-05-10/LinkedClusterProperties AWS API Documentation
389
- #
390
- class LinkedClusterProperties < Struct.new(
391
- :deletion_protection_enabled,
392
- :tags)
393
- SENSITIVE = []
394
- include Aws::Structure
395
- end
396
-
397
305
  # @!attribute [rw] max_results
398
306
  # An optional parameter that specifies the maximum number of results
399
307
  # to return. You can use nextToken to display the next page of
@@ -459,17 +367,40 @@ module Aws::DSQL
459
367
  include Aws::Structure
460
368
  end
461
369
 
370
+ # Defines the structure for multi-Region cluster configurations,
371
+ # containing the witness region and linked cluster settings.
372
+ #
373
+ # @!attribute [rw] witness_region
374
+ # The that serves as the witness region for a multi-Region cluster.
375
+ # The witness region helps maintain cluster consistency and quorum.
376
+ # @return [String]
377
+ #
378
+ # @!attribute [rw] clusters
379
+ # The set of linked clusters that form the multi-Region cluster
380
+ # configuration. Each linked cluster represents a database instance in
381
+ # a different Region.
382
+ # @return [Array<String>]
383
+ #
384
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dsql-2018-05-10/MultiRegionProperties AWS API Documentation
385
+ #
386
+ class MultiRegionProperties < Struct.new(
387
+ :witness_region,
388
+ :clusters)
389
+ SENSITIVE = []
390
+ include Aws::Structure
391
+ end
392
+
462
393
  # The resource could not be found.
463
394
  #
464
395
  # @!attribute [rw] message
465
396
  # @return [String]
466
397
  #
467
398
  # @!attribute [rw] resource_id
468
- # Hypothetical identifier of the resource which does not exist
399
+ # The resource ID could not be found.
469
400
  # @return [String]
470
401
  #
471
402
  # @!attribute [rw] resource_type
472
- # Hypothetical type of the resource which does not exist
403
+ # The resource type could not be found.
473
404
  # @return [String]
474
405
  #
475
406
  # @see http://docs.aws.amazon.com/goto/WebAPI/dsql-2018-05-10/ResourceNotFoundException AWS API Documentation
@@ -485,23 +416,23 @@ module Aws::DSQL
485
416
  # The service limit was exceeded.
486
417
  #
487
418
  # @!attribute [rw] message
488
- # Description of the error
419
+ # The service exception for exceeding a quota.
489
420
  # @return [String]
490
421
  #
491
422
  # @!attribute [rw] resource_id
492
- # Identifier of the resource affected
423
+ # The resource ID exceeds a quota.
493
424
  # @return [String]
494
425
  #
495
426
  # @!attribute [rw] resource_type
496
- # Type of the resource affected
427
+ # The resource type exceeds a quota.
497
428
  # @return [String]
498
429
  #
499
430
  # @!attribute [rw] service_code
500
- # Service Quotas requirement to identify originating service
431
+ # The request exceeds a service quota.
501
432
  # @return [String]
502
433
  #
503
434
  # @!attribute [rw] quota_code
504
- # Service Quotas requirement to identify originating quota
435
+ # The service exceeds a quota.
505
436
  # @return [String]
506
437
  #
507
438
  # @see http://docs.aws.amazon.com/goto/WebAPI/dsql-2018-05-10/ServiceQuotaExceededException AWS API Documentation
@@ -536,19 +467,19 @@ module Aws::DSQL
536
467
  # The request was denied due to request throttling.
537
468
  #
538
469
  # @!attribute [rw] message
539
- # Description of the error
470
+ # The message that the request was denied due to request throttling.
540
471
  # @return [String]
541
472
  #
542
473
  # @!attribute [rw] service_code
543
- # Service Quotas requirement to identify originating service
474
+ # The request exceeds a service quota.
544
475
  # @return [String]
545
476
  #
546
477
  # @!attribute [rw] quota_code
547
- # Service Quotas requirement to identify originating quota
478
+ # The request exceeds a request rate quota.
548
479
  # @return [String]
549
480
  #
550
481
  # @!attribute [rw] retry_after_seconds
551
- # Advice to clients on when the call can be safely retried
482
+ # The request exceeds a request rate quota. Retry after seconds.
552
483
  # @return [Integer]
553
484
  #
554
485
  # @see http://docs.aws.amazon.com/goto/WebAPI/dsql-2018-05-10/ThrottlingException AWS API Documentation
@@ -602,17 +533,23 @@ module Aws::DSQL
602
533
  # not need to pass this option.
603
534
  # @return [String]
604
535
  #
536
+ # @!attribute [rw] multi_region_properties
537
+ # The new multi-Region cluster configuration settings to be applied
538
+ # during an update operation.
539
+ # @return [Types::MultiRegionProperties]
540
+ #
605
541
  # @see http://docs.aws.amazon.com/goto/WebAPI/dsql-2018-05-10/UpdateClusterInput AWS API Documentation
606
542
  #
607
543
  class UpdateClusterInput < Struct.new(
608
544
  :identifier,
609
545
  :deletion_protection_enabled,
610
- :client_token)
546
+ :client_token,
547
+ :multi_region_properties)
611
548
  SENSITIVE = []
612
549
  include Aws::Structure
613
550
  end
614
551
 
615
- # Output Mixin
552
+ # The details of the cluster after it has been updated.
616
553
  #
617
554
  # @!attribute [rw] identifier
618
555
  # The ID of the cluster to update.
@@ -630,29 +567,13 @@ module Aws::DSQL
630
567
  # The time of when the cluster was created.
631
568
  # @return [Time]
632
569
  #
633
- # @!attribute [rw] deletion_protection_enabled
634
- # Whether deletion protection is enabled for the updated cluster.
635
- # @return [Boolean]
636
- #
637
- # @!attribute [rw] witness_region
638
- # The Region that receives all data you write to linked clusters.
639
- # @return [String]
640
- #
641
- # @!attribute [rw] linked_cluster_arns
642
- # The ARNs of the clusters linked to the updated cluster. Applicable
643
- # only for multi-Region clusters.
644
- # @return [Array<String>]
645
- #
646
570
  # @see http://docs.aws.amazon.com/goto/WebAPI/dsql-2018-05-10/UpdateClusterOutput AWS API Documentation
647
571
  #
648
572
  class UpdateClusterOutput < Struct.new(
649
573
  :identifier,
650
574
  :arn,
651
575
  :status,
652
- :creation_time,
653
- :deletion_protection_enabled,
654
- :witness_region,
655
- :linked_cluster_arns)
576
+ :creation_time)
656
577
  SENSITIVE = []
657
578
  include Aws::Structure
658
579
  end
@@ -664,11 +585,11 @@ module Aws::DSQL
664
585
  # @return [String]
665
586
  #
666
587
  # @!attribute [rw] reason
667
- # Reason the request failed validation
588
+ # The reason for the validation exception.
668
589
  # @return [String]
669
590
  #
670
591
  # @!attribute [rw] field_list
671
- # List of fields that caused the error
592
+ # A list of fields that didn't validate.
672
593
  # @return [Array<Types::ValidationExceptionField>]
673
594
  #
674
595
  # @see http://docs.aws.amazon.com/goto/WebAPI/dsql-2018-05-10/ValidationException AWS API Documentation
data/lib/aws-sdk-dsql.rb CHANGED
@@ -55,7 +55,7 @@ module Aws::DSQL
55
55
  autoload :EndpointProvider, 'aws-sdk-dsql/endpoint_provider'
56
56
  autoload :Endpoints, 'aws-sdk-dsql/endpoints'
57
57
 
58
- GEM_VERSION = '1.7.0'
58
+ GEM_VERSION = '1.9.0'
59
59
 
60
60
  end
61
61
 
data/sig/client.rbs CHANGED
@@ -81,41 +81,29 @@ module Aws
81
81
  include ::Seahorse::Client::_ResponseSuccess[Types::CreateClusterOutput]
82
82
  def identifier: () -> ::String
83
83
  def arn: () -> ::String
84
- def status: () -> ("CREATING" | "ACTIVE" | "UPDATING" | "DELETING" | "DELETED" | "FAILED")
84
+ def status: () -> ("CREATING" | "ACTIVE" | "IDLE" | "INACTIVE" | "UPDATING" | "DELETING" | "DELETED" | "FAILED" | "PENDING_SETUP" | "PENDING_DELETE")
85
85
  def creation_time: () -> ::Time
86
+ def multi_region_properties: () -> Types::MultiRegionProperties
86
87
  def deletion_protection_enabled: () -> bool
87
88
  end
88
89
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DSQL/Client.html#create_cluster-instance_method
89
90
  def create_cluster: (
90
91
  ?deletion_protection_enabled: bool,
91
92
  ?tags: Hash[::String, ::String],
92
- ?client_token: ::String
93
+ ?client_token: ::String,
94
+ ?multi_region_properties: {
95
+ witness_region: ::String?,
96
+ clusters: Array[::String]?
97
+ }
93
98
  ) -> _CreateClusterResponseSuccess
94
99
  | (?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateClusterResponseSuccess
95
100
 
96
- interface _CreateMultiRegionClustersResponseSuccess
97
- include ::Seahorse::Client::_ResponseSuccess[Types::CreateMultiRegionClustersOutput]
98
- def linked_cluster_arns: () -> ::Array[::String]
99
- end
100
- # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DSQL/Client.html#create_multi_region_clusters-instance_method
101
- def create_multi_region_clusters: (
102
- linked_region_list: Array[::String],
103
- ?cluster_properties: Hash[::String, {
104
- deletion_protection_enabled: bool?,
105
- tags: Hash[::String, ::String]?
106
- }],
107
- witness_region: ::String,
108
- ?client_token: ::String
109
- ) -> _CreateMultiRegionClustersResponseSuccess
110
- | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateMultiRegionClustersResponseSuccess
111
-
112
101
  interface _DeleteClusterResponseSuccess
113
102
  include ::Seahorse::Client::_ResponseSuccess[Types::DeleteClusterOutput]
114
103
  def identifier: () -> ::String
115
104
  def arn: () -> ::String
116
- def status: () -> ("CREATING" | "ACTIVE" | "UPDATING" | "DELETING" | "DELETED" | "FAILED")
105
+ def status: () -> ("CREATING" | "ACTIVE" | "IDLE" | "INACTIVE" | "UPDATING" | "DELETING" | "DELETED" | "FAILED" | "PENDING_SETUP" | "PENDING_DELETE")
117
106
  def creation_time: () -> ::Time
118
- def deletion_protection_enabled: () -> bool
119
107
  end
120
108
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DSQL/Client.html#delete_cluster-instance_method
121
109
  def delete_cluster: (
@@ -124,22 +112,15 @@ module Aws
124
112
  ) -> _DeleteClusterResponseSuccess
125
113
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DeleteClusterResponseSuccess
126
114
 
127
- # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DSQL/Client.html#delete_multi_region_clusters-instance_method
128
- def delete_multi_region_clusters: (
129
- linked_cluster_arns: Array[::String],
130
- ?client_token: ::String
131
- ) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
132
- | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
133
-
134
115
  interface _GetClusterResponseSuccess
135
116
  include ::Seahorse::Client::_ResponseSuccess[Types::GetClusterOutput]
136
117
  def identifier: () -> ::String
137
118
  def arn: () -> ::String
138
- def status: () -> ("CREATING" | "ACTIVE" | "UPDATING" | "DELETING" | "DELETED" | "FAILED")
119
+ def status: () -> ("CREATING" | "ACTIVE" | "IDLE" | "INACTIVE" | "UPDATING" | "DELETING" | "DELETED" | "FAILED" | "PENDING_SETUP" | "PENDING_DELETE")
139
120
  def creation_time: () -> ::Time
140
121
  def deletion_protection_enabled: () -> bool
141
- def witness_region: () -> ::String
142
- def linked_cluster_arns: () -> ::Array[::String]
122
+ def multi_region_properties: () -> Types::MultiRegionProperties
123
+ def tags: () -> ::Hash[::String, ::String]
143
124
  end
144
125
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DSQL/Client.html#get_cluster-instance_method
145
126
  def get_cluster: (
@@ -197,17 +178,18 @@ module Aws
197
178
  include ::Seahorse::Client::_ResponseSuccess[Types::UpdateClusterOutput]
198
179
  def identifier: () -> ::String
199
180
  def arn: () -> ::String
200
- def status: () -> ("CREATING" | "ACTIVE" | "UPDATING" | "DELETING" | "DELETED" | "FAILED")
181
+ def status: () -> ("CREATING" | "ACTIVE" | "IDLE" | "INACTIVE" | "UPDATING" | "DELETING" | "DELETED" | "FAILED" | "PENDING_SETUP" | "PENDING_DELETE")
201
182
  def creation_time: () -> ::Time
202
- def deletion_protection_enabled: () -> bool
203
- def witness_region: () -> ::String
204
- def linked_cluster_arns: () -> ::Array[::String]
205
183
  end
206
184
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DSQL/Client.html#update_cluster-instance_method
207
185
  def update_cluster: (
208
186
  identifier: ::String,
209
187
  ?deletion_protection_enabled: bool,
210
- ?client_token: ::String
188
+ ?client_token: ::String,
189
+ ?multi_region_properties: {
190
+ witness_region: ::String?,
191
+ clusters: Array[::String]?
192
+ }
211
193
  ) -> _UpdateClusterResponseSuccess
212
194
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateClusterResponseSuccess
213
195
 
data/sig/types.rbs CHANGED
@@ -30,31 +30,20 @@ module Aws::DSQL
30
30
  attr_accessor deletion_protection_enabled: bool
31
31
  attr_accessor tags: ::Hash[::String, ::String]
32
32
  attr_accessor client_token: ::String
33
+ attr_accessor multi_region_properties: Types::MultiRegionProperties
33
34
  SENSITIVE: []
34
35
  end
35
36
 
36
37
  class CreateClusterOutput
37
38
  attr_accessor identifier: ::String
38
39
  attr_accessor arn: ::String
39
- attr_accessor status: ("CREATING" | "ACTIVE" | "UPDATING" | "DELETING" | "DELETED" | "FAILED")
40
+ attr_accessor status: ("CREATING" | "ACTIVE" | "IDLE" | "INACTIVE" | "UPDATING" | "DELETING" | "DELETED" | "FAILED" | "PENDING_SETUP" | "PENDING_DELETE")
40
41
  attr_accessor creation_time: ::Time
42
+ attr_accessor multi_region_properties: Types::MultiRegionProperties
41
43
  attr_accessor deletion_protection_enabled: bool
42
44
  SENSITIVE: []
43
45
  end
44
46
 
45
- class CreateMultiRegionClustersInput
46
- attr_accessor linked_region_list: ::Array[::String]
47
- attr_accessor cluster_properties: ::Hash[::String, Types::LinkedClusterProperties]
48
- attr_accessor witness_region: ::String
49
- attr_accessor client_token: ::String
50
- SENSITIVE: []
51
- end
52
-
53
- class CreateMultiRegionClustersOutput
54
- attr_accessor linked_cluster_arns: ::Array[::String]
55
- SENSITIVE: []
56
- end
57
-
58
47
  class DeleteClusterInput
59
48
  attr_accessor identifier: ::String
60
49
  attr_accessor client_token: ::String
@@ -64,15 +53,8 @@ module Aws::DSQL
64
53
  class DeleteClusterOutput
65
54
  attr_accessor identifier: ::String
66
55
  attr_accessor arn: ::String
67
- attr_accessor status: ("CREATING" | "ACTIVE" | "UPDATING" | "DELETING" | "DELETED" | "FAILED")
56
+ attr_accessor status: ("CREATING" | "ACTIVE" | "IDLE" | "INACTIVE" | "UPDATING" | "DELETING" | "DELETED" | "FAILED" | "PENDING_SETUP" | "PENDING_DELETE")
68
57
  attr_accessor creation_time: ::Time
69
- attr_accessor deletion_protection_enabled: bool
70
- SENSITIVE: []
71
- end
72
-
73
- class DeleteMultiRegionClustersInput
74
- attr_accessor linked_cluster_arns: ::Array[::String]
75
- attr_accessor client_token: ::String
76
58
  SENSITIVE: []
77
59
  end
78
60
 
@@ -84,11 +66,11 @@ module Aws::DSQL
84
66
  class GetClusterOutput
85
67
  attr_accessor identifier: ::String
86
68
  attr_accessor arn: ::String
87
- attr_accessor status: ("CREATING" | "ACTIVE" | "UPDATING" | "DELETING" | "DELETED" | "FAILED")
69
+ attr_accessor status: ("CREATING" | "ACTIVE" | "IDLE" | "INACTIVE" | "UPDATING" | "DELETING" | "DELETED" | "FAILED" | "PENDING_SETUP" | "PENDING_DELETE")
88
70
  attr_accessor creation_time: ::Time
89
71
  attr_accessor deletion_protection_enabled: bool
90
- attr_accessor witness_region: ::String
91
- attr_accessor linked_cluster_arns: ::Array[::String]
72
+ attr_accessor multi_region_properties: Types::MultiRegionProperties
73
+ attr_accessor tags: ::Hash[::String, ::String]
92
74
  SENSITIVE: []
93
75
  end
94
76
 
@@ -108,12 +90,6 @@ module Aws::DSQL
108
90
  SENSITIVE: []
109
91
  end
110
92
 
111
- class LinkedClusterProperties
112
- attr_accessor deletion_protection_enabled: bool
113
- attr_accessor tags: ::Hash[::String, ::String]
114
- SENSITIVE: []
115
- end
116
-
117
93
  class ListClustersInput
118
94
  attr_accessor max_results: ::Integer
119
95
  attr_accessor next_token: ::String
@@ -136,6 +112,12 @@ module Aws::DSQL
136
112
  SENSITIVE: []
137
113
  end
138
114
 
115
+ class MultiRegionProperties
116
+ attr_accessor witness_region: ::String
117
+ attr_accessor clusters: ::Array[::String]
118
+ SENSITIVE: []
119
+ end
120
+
139
121
  class ResourceNotFoundException
140
122
  attr_accessor message: ::String
141
123
  attr_accessor resource_id: ::String
@@ -176,17 +158,15 @@ module Aws::DSQL
176
158
  attr_accessor identifier: ::String
177
159
  attr_accessor deletion_protection_enabled: bool
178
160
  attr_accessor client_token: ::String
161
+ attr_accessor multi_region_properties: Types::MultiRegionProperties
179
162
  SENSITIVE: []
180
163
  end
181
164
 
182
165
  class UpdateClusterOutput
183
166
  attr_accessor identifier: ::String
184
167
  attr_accessor arn: ::String
185
- attr_accessor status: ("CREATING" | "ACTIVE" | "UPDATING" | "DELETING" | "DELETED" | "FAILED")
168
+ attr_accessor status: ("CREATING" | "ACTIVE" | "IDLE" | "INACTIVE" | "UPDATING" | "DELETING" | "DELETED" | "FAILED" | "PENDING_SETUP" | "PENDING_DELETE")
186
169
  attr_accessor creation_time: ::Time
187
- attr_accessor deletion_protection_enabled: bool
188
- attr_accessor witness_region: ::String
189
- attr_accessor linked_cluster_arns: ::Array[::String]
190
170
  SENSITIVE: []
191
171
  end
192
172
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-dsql
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.0
4
+ version: 1.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services