aws-sdk-dynamodb 1.175.0 → 1.177.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: e40e2d90193c4021aa01bd0b943af823016a49ebf5fdd8b30010926679618310
4
- data.tar.gz: 0be08dfccf3069dac130227e1bb89415a9665f9f625562c4caef2f4d5e42e159
3
+ metadata.gz: d42e91e842e0413a3c93a71f21a58d3b60a3b6d9bce7964b61cfab469137c90b
4
+ data.tar.gz: fb9d6a693f9a7028a9cf99178842f2590d8a2a426d89fd7eb26cd9bece5f38d6
5
5
  SHA512:
6
- metadata.gz: 193b7c53999f72f4078b18257fad145f9874554db7be57bfce58398ab1cb5cefd6179001031d04253367f09b43c60260d0d4c59d05d27ee3d183bd33ec750c94
7
- data.tar.gz: ca3709820dceecd625605a24bdfcab2d8b3065ebdb90af018487cddbbcddd3255558b253cd66e17fb0bcf025039ffcb1a56de6496e9d16ed4edce23d5d1c1175
6
+ metadata.gz: b235cd6b59a1843fcf975a11793500d18ec13a00b4cc30f076a088fb541e8797f15a23ae3fe0eb9ea36c23a319805b149b91ac7936f27069ef17f3e3283c9d67
7
+ data.tar.gz: dd851c3b3f1cb97ac9736b91d225a3a4a919a01c4ce880aab241a8664969c1ad79c9fe379ee275a6bae293245d3f5c5631321c0291677738f81629b2d44f0509
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.177.0 (2026-10-20)
5
+ ------------------
6
+
7
+ * Feature - Adds support for disassociating a replica from an Amazon DynamoDB multi-Region eventual consistency global table, so you can keep it as a single-Region table with its existing data. Also adds disassociation protection, on by default, to help prevent accidental disassociation.
8
+
9
+ 1.176.0 (2026-10-19)
10
+ ------------------
11
+
12
+ * Feature - Enable account endpoint generation for existing CN and GovCloud regions
13
+
4
14
  1.175.0 (2026-09-30)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.175.0
1
+ 1.177.0
@@ -211,13 +211,20 @@ module Aws::DynamoDB
211
211
  # the required types.
212
212
  #
213
213
  # @option options [Boolean] :correct_clock_skew (true)
214
- # Used only in `standard` and `adaptive` retry modes. Specifies whether to apply
215
- # a clock skew correction and retry requests with skewed client clocks.
214
+ # Used only in `standard` and `adaptive` retry modes. Specifies whether
215
+ # to apply a clock skew correction and retry requests with skewed client
216
+ # clocks. Takes effect only when `disable_clock_skew_correction` is not set.
216
217
  #
217
218
  # @option options [String] :defaults_mode ("legacy")
218
219
  # See {Aws::DefaultsModeConfiguration} for a list of the
219
220
  # accepted modes and the configuration defaults that are included.
220
221
  #
222
+ # @option options [Boolean] :disable_clock_skew_correction
223
+ # Used only in `standard` and `adaptive` retry modes. When `true`, the
224
+ # SDK does not apply a clock skew correction, does not update its stored
225
+ # skew from responses, and does not retry clock skew errors. Clock skew
226
+ # correction is enabled by default.
227
+ #
221
228
  # @option options [Boolean] :disable_host_prefix_injection (false)
222
229
  # When `true`, the SDK will not prepend the modeled host prefix to the endpoint.
223
230
  #
@@ -1948,6 +1955,7 @@ module Aws::DynamoDB
1948
1955
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
1949
1956
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
1950
1957
  # resp.table_description.deletion_protection_enabled #=> Boolean
1958
+ # resp.table_description.disassociation_protection_enabled #=> Boolean
1951
1959
  # resp.table_description.on_demand_throughput.max_read_request_units #=> Integer
1952
1960
  # resp.table_description.on_demand_throughput.max_write_request_units #=> Integer
1953
1961
  # resp.table_description.warm_throughput.read_units_per_second #=> Integer
@@ -2587,6 +2595,7 @@ module Aws::DynamoDB
2587
2595
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
2588
2596
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
2589
2597
  # resp.table_description.deletion_protection_enabled #=> Boolean
2598
+ # resp.table_description.disassociation_protection_enabled #=> Boolean
2590
2599
  # resp.table_description.on_demand_throughput.max_read_request_units #=> Integer
2591
2600
  # resp.table_description.on_demand_throughput.max_write_request_units #=> Integer
2592
2601
  # resp.table_description.warm_throughput.read_units_per_second #=> Integer
@@ -3490,6 +3499,7 @@ module Aws::DynamoDB
3490
3499
  # resp.table.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
3491
3500
  # resp.table.table_class_summary.last_update_date_time #=> Time
3492
3501
  # resp.table.deletion_protection_enabled #=> Boolean
3502
+ # resp.table.disassociation_protection_enabled #=> Boolean
3493
3503
  # resp.table.on_demand_throughput.max_read_request_units #=> Integer
3494
3504
  # resp.table.on_demand_throughput.max_write_request_units #=> Integer
3495
3505
  # resp.table.warm_throughput.read_units_per_second #=> Integer
@@ -6225,6 +6235,7 @@ module Aws::DynamoDB
6225
6235
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
6226
6236
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
6227
6237
  # resp.table_description.deletion_protection_enabled #=> Boolean
6238
+ # resp.table_description.disassociation_protection_enabled #=> Boolean
6228
6239
  # resp.table_description.on_demand_throughput.max_read_request_units #=> Integer
6229
6240
  # resp.table_description.on_demand_throughput.max_write_request_units #=> Integer
6230
6241
  # resp.table_description.warm_throughput.read_units_per_second #=> Integer
@@ -6545,6 +6556,7 @@ module Aws::DynamoDB
6545
6556
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
6546
6557
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
6547
6558
  # resp.table_description.deletion_protection_enabled #=> Boolean
6559
+ # resp.table_description.disassociation_protection_enabled #=> Boolean
6548
6560
  # resp.table_description.on_demand_throughput.max_read_request_units #=> Integer
6549
6561
  # resp.table_description.on_demand_throughput.max_write_request_units #=> Integer
6550
6562
  # resp.table_description.warm_throughput.read_units_per_second #=> Integer
@@ -8521,7 +8533,8 @@ module Aws::DynamoDB
8521
8533
  end
8522
8534
 
8523
8535
  # Modifies the provisioned throughput settings, global secondary
8524
- # indexes, or DynamoDB Streams settings for a given table.
8536
+ # indexes, DynamoDB Streams settings, or global table replica settings
8537
+ # for a given table.
8525
8538
  #
8526
8539
  # You can only perform one of the following operations at once:
8527
8540
  #
@@ -8533,11 +8546,38 @@ module Aws::DynamoDB
8533
8546
  # begins backfilling, you can use `UpdateTable` to perform other
8534
8547
  # operations.
8535
8548
  #
8549
+ # * Enable or disable disassociation protection for the local global
8550
+ # table replica.
8551
+ #
8552
+ # * Disassociate the local global table replica and keep it as a
8553
+ # standalone regional table. The `Disassociate` action must be the
8554
+ # only replica update in the request. If the request includes any
8555
+ # other update, `UpdateTable` fails with a `ValidationException` and
8556
+ # the disassociation does not start.
8557
+ #
8536
8558
  # `UpdateTable` is an asynchronous operation; while it's executing, the
8537
8559
  # table status changes from `ACTIVE` to `UPDATING`. While it's
8538
- # `UPDATING`, you can't issue another `UpdateTable` request. When the
8539
- # table returns to the `ACTIVE` state, the `UpdateTable` operation is
8540
- # complete.
8560
+ # `UPDATING`, you can't issue another `UpdateTable` request. Use
8561
+ # `DescribeTable` to monitor the table's status.
8562
+ #
8563
+ # To use this operation to disassociate a local replica, you must have
8564
+ # the `dynamodb:UpdateTable` and `dynamodb:DisassociateTableReplica` IAM
8565
+ # permissions on the local replica. Send disassociation and
8566
+ # disassociation protection requests to the replica's Region using
8567
+ # credentials for the account that owns the replica. For prerequisites
8568
+ # and the procedure, see [Disassociating a global table replica][1] in
8569
+ # the *Amazon DynamoDB Developer Guide*.
8570
+ #
8571
+ # To confirm successful disassociation, call `DescribeTable` in the
8572
+ # replica's Region and verify that `TableStatus` is `ACTIVE` and
8573
+ # `Replicas` is absent or empty. If `TableStatus` returns to `ACTIVE`
8574
+ # but the response still includes a `Replicas` list, the disassociation
8575
+ # did not complete. Check `ReplicaStatus` for a replication-permission
8576
+ # or encryption-access problem, resolve it, and retry.
8577
+ #
8578
+ #
8579
+ #
8580
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables-disassociate.html
8541
8581
  #
8542
8582
  # @option params [Array<Types::AttributeDefinition>] :attribute_definitions
8543
8583
  # An array of attributes that describe the key schema for the table and
@@ -8609,8 +8649,8 @@ module Aws::DynamoDB
8609
8649
  # The new server-side encryption settings for the specified table.
8610
8650
  #
8611
8651
  # @option params [Array<Types::ReplicationGroupUpdate>] :replica_updates
8612
- # A list of replica update actions (create, delete, or update) for the
8613
- # table.
8652
+ # A list of replica update actions (create, delete, update, or
8653
+ # disassociate) for the table.
8614
8654
  #
8615
8655
  # @option params [String] :table_class
8616
8656
  # The table class of the table to be updated. Valid values are
@@ -8686,6 +8726,18 @@ module Aws::DynamoDB
8686
8726
  # Settings replication needs to be defined to ENABLED again in order
8687
8727
  # to create a Multi-Account Global Table using this table.
8688
8728
  #
8729
+ # @option params [Boolean] :disassociation_protection_enabled
8730
+ # Specifies whether disassociation protection is enabled (`true`) or
8731
+ # disabled (`false`) for the local replica of a multi-Region eventual
8732
+ # consistency (MREC) global table using Version 2019.11.21.
8733
+ #
8734
+ # Disassociation protection is enabled by default. If you omit this
8735
+ # parameter, the existing setting is unchanged. This setting is
8736
+ # independent of `DeletionProtectionEnabled`.
8737
+ #
8738
+ # You can't combine this change with any other change in the same
8739
+ # `UpdateTable` request.
8740
+ #
8689
8741
  # @option params [Array<Types::VectorIndexUpdate>] :vector_index_updates
8690
8742
  # A list of vector indexes to be added to or removed from the table. You
8691
8743
  # can add or remove one vector index for each `UpdateTable` operation.
@@ -8724,7 +8776,7 @@ module Aws::DynamoDB
8724
8776
  # attribute_type: "S",
8725
8777
  # },
8726
8778
  # ],
8727
- # creation_date_time: Time.parse("1421866952.062"),
8779
+ # creation_date_time: Time.parse(1421866952.062),
8728
8780
  # item_count: 0,
8729
8781
  # key_schema: [
8730
8782
  # {
@@ -8737,7 +8789,7 @@ module Aws::DynamoDB
8737
8789
  # },
8738
8790
  # ],
8739
8791
  # provisioned_throughput: {
8740
- # last_increase_date_time: Time.parse("1421874759.194"),
8792
+ # last_increase_date_time: Time.parse(1421874759.194),
8741
8793
  # number_of_decreases_today: 1,
8742
8794
  # read_capacity_units: 1,
8743
8795
  # write_capacity_units: 1,
@@ -8748,6 +8800,74 @@ module Aws::DynamoDB
8748
8800
  # },
8749
8801
  # }
8750
8802
  #
8803
+ # @example Example: To disable disassociation protection on a local replica
8804
+ #
8805
+ # # This example disables disassociation protection on the MusicCollection replica in us-west-2. You must send the request
8806
+ # # to us-west-2 using credentials for the account that owns the replica. Your table must be a global table that uses
8807
+ # # Version 2019.11.21 and multi-Region eventual consistency (MREC). You cannot combine this change with any other change in
8808
+ # # the same UpdateTable request. Before requesting disassociation, use DescribeTable to confirm that
8809
+ # # DisassociationProtectionEnabled is false and TableStatus is ACTIVE.
8810
+ #
8811
+ # resp = client.update_table({
8812
+ # disassociation_protection_enabled: false,
8813
+ # table_name: "MusicCollection",
8814
+ # })
8815
+ #
8816
+ # resp.to_h outputs the following:
8817
+ # {
8818
+ # table_description: {
8819
+ # disassociation_protection_enabled: false,
8820
+ # global_table_version: "2019.11.21",
8821
+ # replicas: [
8822
+ # {
8823
+ # region_name: "us-east-1",
8824
+ # replica_status: "ACTIVE",
8825
+ # },
8826
+ # ],
8827
+ # table_arn: "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection",
8828
+ # table_name: "MusicCollection",
8829
+ # table_status: "ACTIVE",
8830
+ # },
8831
+ # }
8832
+ #
8833
+ # @example Example: To disassociate a local global table replica
8834
+ #
8835
+ # # This example disassociates the MusicCollection replica in us-west-2. You must first disable protection in a separate
8836
+ # # UpdateTable request. You must send the request to us-west-2 using credentials for account 123456789012, the account that
8837
+ # # owns the replica. This request works for global tables that use Version 2019.11.21 and multi-Region eventual consistency
8838
+ # # (MREC). Replicas can belong to one account or multiple accounts. You must specify WAIT_FOR_REPLICATION. The response
8839
+ # # shows that DynamoDB accepted the asynchronous request. To confirm completion, use DescribeTable in us-west-2. Verify
8840
+ # # that TableStatus is ACTIVE and Replicas is absent or empty. ACTIVE alone does not confirm successful disassociation.
8841
+ #
8842
+ # resp = client.update_table({
8843
+ # replica_updates: [
8844
+ # {
8845
+ # disassociate: {
8846
+ # disassociation_mode: "WAIT_FOR_REPLICATION",
8847
+ # region_name: "us-west-2",
8848
+ # },
8849
+ # },
8850
+ # ],
8851
+ # table_name: "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection",
8852
+ # })
8853
+ #
8854
+ # resp.to_h outputs the following:
8855
+ # {
8856
+ # table_description: {
8857
+ # disassociation_protection_enabled: false,
8858
+ # global_table_version: "2019.11.21",
8859
+ # replicas: [
8860
+ # {
8861
+ # region_name: "us-east-1",
8862
+ # replica_status: "ACTIVE",
8863
+ # },
8864
+ # ],
8865
+ # table_arn: "arn:aws:dynamodb:us-west-2:123456789012:table/MusicCollection",
8866
+ # table_name: "MusicCollection",
8867
+ # table_status: "UPDATING",
8868
+ # },
8869
+ # }
8870
+ #
8751
8871
  # @example Request syntax with placeholder values
8752
8872
  #
8753
8873
  # resp = client.update_table({
@@ -8868,6 +8988,10 @@ module Aws::DynamoDB
8868
8988
  # delete: {
8869
8989
  # region_name: "RegionName", # required
8870
8990
  # },
8991
+ # disassociate: {
8992
+ # region_name: "RegionName", # required
8993
+ # disassociation_mode: "WAIT_FOR_REPLICATION", # required, accepts WAIT_FOR_REPLICATION
8994
+ # },
8871
8995
  # },
8872
8996
  # ],
8873
8997
  # table_class: "STANDARD", # accepts STANDARD, STANDARD_INFREQUENT_ACCESS
@@ -8892,6 +9016,7 @@ module Aws::DynamoDB
8892
9016
  # write_units_per_second: 1,
8893
9017
  # },
8894
9018
  # global_table_settings_replication_mode: "ENABLED", # accepts ENABLED, DISABLED, ENABLED_WITH_OVERRIDES
9019
+ # disassociation_protection_enabled: false,
8895
9020
  # vector_index_updates: [
8896
9021
  # {
8897
9022
  # create: {
@@ -9021,6 +9146,7 @@ module Aws::DynamoDB
9021
9146
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
9022
9147
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
9023
9148
  # resp.table_description.deletion_protection_enabled #=> Boolean
9149
+ # resp.table_description.disassociation_protection_enabled #=> Boolean
9024
9150
  # resp.table_description.on_demand_throughput.max_read_request_units #=> Integer
9025
9151
  # resp.table_description.on_demand_throughput.max_write_request_units #=> Integer
9026
9152
  # resp.table_description.warm_throughput.read_units_per_second #=> Integer
@@ -9307,7 +9433,7 @@ module Aws::DynamoDB
9307
9433
  tracer: tracer
9308
9434
  )
9309
9435
  context[:gem_name] = 'aws-sdk-dynamodb'
9310
- context[:gem_version] = '1.175.0'
9436
+ context[:gem_version] = '1.177.0'
9311
9437
  Seahorse::Client::Request.new(handlers, context)
9312
9438
  end
9313
9439
 
@@ -159,6 +159,9 @@ module Aws::DynamoDB
159
159
  DescribeTimeToLiveInput = Shapes::StructureShape.new(name: 'DescribeTimeToLiveInput')
160
160
  DescribeTimeToLiveOutput = Shapes::StructureShape.new(name: 'DescribeTimeToLiveOutput')
161
161
  DestinationStatus = Shapes::StringShape.new(name: 'DestinationStatus')
162
+ DisassociateReplicationGroupMemberAction = Shapes::StructureShape.new(name: 'DisassociateReplicationGroupMemberAction')
163
+ DisassociationMode = Shapes::StringShape.new(name: 'DisassociationMode')
164
+ DisassociationProtectionEnabled = Shapes::BooleanShape.new(name: 'DisassociationProtectionEnabled')
162
165
  DoubleObject = Shapes::FloatShape.new(name: 'DoubleObject')
163
166
  DuplicateItemException = Shapes::StructureShape.new(name: 'DuplicateItemException')
164
167
  EnableKinesisStreamingConfiguration = Shapes::StructureShape.new(name: 'EnableKinesisStreamingConfiguration')
@@ -976,6 +979,10 @@ module Aws::DynamoDB
976
979
  DescribeTimeToLiveOutput.add_member(:time_to_live_description, Shapes::ShapeRef.new(shape: TimeToLiveDescription, location_name: "TimeToLiveDescription"))
977
980
  DescribeTimeToLiveOutput.struct_class = Types::DescribeTimeToLiveOutput
978
981
 
982
+ DisassociateReplicationGroupMemberAction.add_member(:region_name, Shapes::ShapeRef.new(shape: RegionName, required: true, location_name: "RegionName"))
983
+ DisassociateReplicationGroupMemberAction.add_member(:disassociation_mode, Shapes::ShapeRef.new(shape: DisassociationMode, required: true, location_name: "DisassociationMode"))
984
+ DisassociateReplicationGroupMemberAction.struct_class = Types::DisassociateReplicationGroupMemberAction
985
+
979
986
  DuplicateItemException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
980
987
  DuplicateItemException.struct_class = Types::DuplicateItemException
981
988
 
@@ -1697,6 +1704,7 @@ module Aws::DynamoDB
1697
1704
  ReplicationGroupUpdate.add_member(:create, Shapes::ShapeRef.new(shape: CreateReplicationGroupMemberAction, location_name: "Create"))
1698
1705
  ReplicationGroupUpdate.add_member(:update, Shapes::ShapeRef.new(shape: UpdateReplicationGroupMemberAction, location_name: "Update"))
1699
1706
  ReplicationGroupUpdate.add_member(:delete, Shapes::ShapeRef.new(shape: DeleteReplicationGroupMemberAction, location_name: "Delete"))
1707
+ ReplicationGroupUpdate.add_member(:disassociate, Shapes::ShapeRef.new(shape: DisassociateReplicationGroupMemberAction, location_name: "Disassociate"))
1700
1708
  ReplicationGroupUpdate.struct_class = Types::ReplicationGroupUpdate
1701
1709
 
1702
1710
  ReplicationGroupUpdateList.member = Shapes::ShapeRef.new(shape: ReplicationGroupUpdate)
@@ -1895,6 +1903,7 @@ module Aws::DynamoDB
1895
1903
  TableDescription.add_member(:archival_summary, Shapes::ShapeRef.new(shape: ArchivalSummary, location_name: "ArchivalSummary"))
1896
1904
  TableDescription.add_member(:table_class_summary, Shapes::ShapeRef.new(shape: TableClassSummary, location_name: "TableClassSummary"))
1897
1905
  TableDescription.add_member(:deletion_protection_enabled, Shapes::ShapeRef.new(shape: DeletionProtectionEnabled, location_name: "DeletionProtectionEnabled"))
1906
+ TableDescription.add_member(:disassociation_protection_enabled, Shapes::ShapeRef.new(shape: DisassociationProtectionEnabled, location_name: "DisassociationProtectionEnabled"))
1898
1907
  TableDescription.add_member(:on_demand_throughput, Shapes::ShapeRef.new(shape: OnDemandThroughput, location_name: "OnDemandThroughput"))
1899
1908
  TableDescription.add_member(:warm_throughput, Shapes::ShapeRef.new(shape: TableWarmThroughputDescription, location_name: "WarmThroughput"))
1900
1909
  TableDescription.add_member(:multi_region_consistency, Shapes::ShapeRef.new(shape: MultiRegionConsistency, location_name: "MultiRegionConsistency"))
@@ -2099,6 +2108,7 @@ module Aws::DynamoDB
2099
2108
  UpdateTableInput.add_member(:on_demand_throughput, Shapes::ShapeRef.new(shape: OnDemandThroughput, location_name: "OnDemandThroughput"))
2100
2109
  UpdateTableInput.add_member(:warm_throughput, Shapes::ShapeRef.new(shape: WarmThroughput, location_name: "WarmThroughput"))
2101
2110
  UpdateTableInput.add_member(:global_table_settings_replication_mode, Shapes::ShapeRef.new(shape: GlobalTableSettingsReplicationMode, location_name: "GlobalTableSettingsReplicationMode"))
2111
+ UpdateTableInput.add_member(:disassociation_protection_enabled, Shapes::ShapeRef.new(shape: DisassociationProtectionEnabled, location_name: "DisassociationProtectionEnabled"))
2102
2112
  UpdateTableInput.add_member(:vector_index_updates, Shapes::ShapeRef.new(shape: VectorIndexUpdateList, location_name: "VectorIndexUpdates"))
2103
2113
  UpdateTableInput.struct_class = Types::UpdateTableInput
2104
2114
 
@@ -43,13 +43,19 @@ module Aws::DynamoDB
43
43
  if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_dual_stack, true)
44
44
  raise ArgumentError, "Invalid Configuration: Dualstack and local endpoint are not supported"
45
45
  end
46
- return Aws::Endpoints::Endpoint.new(url: "http://localhost:8000", headers: {}, properties: {"authSchemes" => [{"signingRegion" => "us-east-1", "signingName" => "dynamodb", "name" => "sigv4"}]}, metadata: { account_id_endpoint: false })
46
+ return Aws::Endpoints::Endpoint.new(url: "http://localhost:8000", headers: {}, properties: {"authSchemes" => [{"signingRegion" => "us-east-1", "name" => "sigv4", "signingName" => "dynamodb"}]}, metadata: { account_id_endpoint: false })
47
47
  end
48
48
  if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(parameters.use_dual_stack, true)
49
49
  if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true) && Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"), true)
50
50
  if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "required")
51
51
  raise ArgumentError, "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported"
52
52
  end
53
+ if Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "us-gov-east-1")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "us-gov-west-1")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "cn-north-1")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "cn-northwest-1"))
54
+ if Aws::Endpoints::Matchers.set?(parameters.is_search_operation) && Aws::Endpoints::Matchers.boolean_equals?(parameters.is_search_operation, true)
55
+ return Aws::Endpoints::Endpoint.new(url: "https://search-dynamodb-fips.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {}, metadata: { account_id_endpoint: false })
56
+ end
57
+ return Aws::Endpoints::Endpoint.new(url: "https://dynamodb-fips.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {}, metadata: { account_id_endpoint: false })
58
+ end
53
59
  if Aws::Endpoints::Matchers.set?(parameters.is_search_operation) && Aws::Endpoints::Matchers.boolean_equals?(parameters.is_search_operation, true)
54
60
  return Aws::Endpoints::Endpoint.new(url: "https://search-dynamodb-fips.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {}, metadata: { account_id_endpoint: false })
55
61
  end
@@ -59,17 +65,26 @@ module Aws::DynamoDB
59
65
  end
60
66
  if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)
61
67
  if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
68
+ if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "required")
69
+ raise ArgumentError, "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported"
70
+ end
62
71
  if Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws-us-gov")
63
- if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "required")
64
- raise ArgumentError, "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported"
72
+ if Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "us-gov-east-1")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "us-gov-west-1")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "cn-north-1")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "cn-northwest-1"))
73
+ if Aws::Endpoints::Matchers.set?(parameters.is_search_operation) && Aws::Endpoints::Matchers.boolean_equals?(parameters.is_search_operation, true)
74
+ return Aws::Endpoints::Endpoint.new(url: "https://search-dynamodb.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {}, metadata: { account_id_endpoint: false })
75
+ end
76
+ return Aws::Endpoints::Endpoint.new(url: "https://dynamodb.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {}, metadata: { account_id_endpoint: false })
65
77
  end
66
78
  if Aws::Endpoints::Matchers.set?(parameters.is_search_operation) && Aws::Endpoints::Matchers.boolean_equals?(parameters.is_search_operation, true)
67
79
  return Aws::Endpoints::Endpoint.new(url: "https://search-dynamodb.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {}, metadata: { account_id_endpoint: false })
68
80
  end
69
81
  return Aws::Endpoints::Endpoint.new(url: "https://dynamodb.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {}, metadata: { account_id_endpoint: false })
70
82
  end
71
- if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "required")
72
- raise ArgumentError, "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported"
83
+ if Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "us-gov-east-1")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "us-gov-west-1")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "cn-north-1")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "cn-northwest-1"))
84
+ if Aws::Endpoints::Matchers.set?(parameters.is_search_operation) && Aws::Endpoints::Matchers.boolean_equals?(parameters.is_search_operation, true)
85
+ return Aws::Endpoints::Endpoint.new(url: "https://search-dynamodb-fips.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {}, metadata: { account_id_endpoint: false })
86
+ end
87
+ return Aws::Endpoints::Endpoint.new(url: "https://dynamodb-fips.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {}, metadata: { account_id_endpoint: false })
73
88
  end
74
89
  if Aws::Endpoints::Matchers.set?(parameters.is_search_operation) && Aws::Endpoints::Matchers.boolean_equals?(parameters.is_search_operation, true)
75
90
  return Aws::Endpoints::Endpoint.new(url: "https://search-dynamodb-fips.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {}, metadata: { account_id_endpoint: false })
@@ -80,19 +95,28 @@ module Aws::DynamoDB
80
95
  end
81
96
  if Aws::Endpoints::Matchers.boolean_equals?(parameters.use_dual_stack, true)
82
97
  if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"), true)
83
- if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "disabled")) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws") && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)) && Aws::Endpoints::Matchers.set?(parameters.resource_arn) && (parsed_arn = Aws::Endpoints::Matchers.aws_parse_arn(parameters.resource_arn)) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(parsed_arn, "service"), "dynamodb") && Aws::Endpoints::Matchers.valid_host_label?(Aws::Endpoints::Matchers.attr(parsed_arn, "region"), false) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(parsed_arn, "region"), "#{parameters.region}") && Aws::Endpoints::Matchers.valid_host_label?(Aws::Endpoints::Matchers.attr(parsed_arn, "accountId"), false)
98
+ if Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "us-gov-east-1")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "us-gov-west-1")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "cn-north-1")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "cn-northwest-1"))
99
+ if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "required")
100
+ raise ArgumentError, "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this region"
101
+ end
102
+ if Aws::Endpoints::Matchers.set?(parameters.is_search_operation) && Aws::Endpoints::Matchers.boolean_equals?(parameters.is_search_operation, true)
103
+ return Aws::Endpoints::Endpoint.new(url: "https://search-dynamodb.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {}, metadata: { account_id_endpoint: false })
104
+ end
105
+ return Aws::Endpoints::Endpoint.new(url: "https://dynamodb.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {}, metadata: { account_id_endpoint: false })
106
+ end
107
+ if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "disabled")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)) && Aws::Endpoints::Matchers.set?(parameters.resource_arn) && (parsed_arn = Aws::Endpoints::Matchers.aws_parse_arn(parameters.resource_arn)) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(parsed_arn, "service"), "dynamodb") && Aws::Endpoints::Matchers.valid_host_label?(Aws::Endpoints::Matchers.attr(parsed_arn, "region"), false) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(parsed_arn, "region"), "#{parameters.region}") && Aws::Endpoints::Matchers.valid_host_label?(Aws::Endpoints::Matchers.attr(parsed_arn, "accountId"), false)
84
108
  if Aws::Endpoints::Matchers.set?(parameters.is_search_operation) && Aws::Endpoints::Matchers.boolean_equals?(parameters.is_search_operation, true)
85
109
  return Aws::Endpoints::Endpoint.new(url: "https://#{parsed_arn['accountId']}.search-ddb.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {"metricValues" => ["O"]}, metadata: { account_id_endpoint: false })
86
110
  end
87
111
  return Aws::Endpoints::Endpoint.new(url: "https://#{parsed_arn['accountId']}.ddb.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {"metricValues" => ["O"]}, metadata: { account_id_endpoint: false })
88
112
  end
89
- if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "disabled")) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws") && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)) && Aws::Endpoints::Matchers.set?(parameters.resource_arn_list) && (first_arn = Aws::Endpoints::Matchers.attr(parameters.resource_arn_list, "[0]")) && (parsed_arn = Aws::Endpoints::Matchers.aws_parse_arn(first_arn)) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(parsed_arn, "service"), "dynamodb") && Aws::Endpoints::Matchers.valid_host_label?(Aws::Endpoints::Matchers.attr(parsed_arn, "region"), false) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(parsed_arn, "region"), "#{parameters.region}") && Aws::Endpoints::Matchers.valid_host_label?(Aws::Endpoints::Matchers.attr(parsed_arn, "accountId"), false)
113
+ if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "disabled")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)) && Aws::Endpoints::Matchers.set?(parameters.resource_arn_list) && (first_arn = Aws::Endpoints::Matchers.attr(parameters.resource_arn_list, "[0]")) && (parsed_arn = Aws::Endpoints::Matchers.aws_parse_arn(first_arn)) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(parsed_arn, "service"), "dynamodb") && Aws::Endpoints::Matchers.valid_host_label?(Aws::Endpoints::Matchers.attr(parsed_arn, "region"), false) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(parsed_arn, "region"), "#{parameters.region}") && Aws::Endpoints::Matchers.valid_host_label?(Aws::Endpoints::Matchers.attr(parsed_arn, "accountId"), false)
90
114
  if Aws::Endpoints::Matchers.set?(parameters.is_search_operation) && Aws::Endpoints::Matchers.boolean_equals?(parameters.is_search_operation, true)
91
115
  return Aws::Endpoints::Endpoint.new(url: "https://#{parsed_arn['accountId']}.search-ddb.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {"metricValues" => ["O"]}, metadata: { account_id_endpoint: false })
92
116
  end
93
117
  return Aws::Endpoints::Endpoint.new(url: "https://#{parsed_arn['accountId']}.ddb.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {"metricValues" => ["O"]}, metadata: { account_id_endpoint: false })
94
118
  end
95
- if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "disabled")) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws") && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)) && Aws::Endpoints::Matchers.set?(parameters.account_id)
119
+ if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "disabled")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)) && Aws::Endpoints::Matchers.set?(parameters.account_id)
96
120
  if Aws::Endpoints::Matchers.valid_host_label?(parameters.account_id, false)
97
121
  if Aws::Endpoints::Matchers.set?(parameters.is_search_operation) && Aws::Endpoints::Matchers.boolean_equals?(parameters.is_search_operation, true)
98
122
  return Aws::Endpoints::Endpoint.new(url: "https://#{parameters.account_id}.search-ddb.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {"metricValues" => ["O"]}, metadata: { account_id_endpoint: true })
@@ -102,13 +126,7 @@ module Aws::DynamoDB
102
126
  raise ArgumentError, "Credentials-sourced account ID parameter is invalid"
103
127
  end
104
128
  if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "required")
105
- if Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true))
106
- if Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws")
107
- raise ArgumentError, "AccountIdEndpointMode is required but no AccountID was provided or able to be loaded"
108
- end
109
- raise ArgumentError, "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this partition"
110
- end
111
- raise ArgumentError, "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported"
129
+ raise ArgumentError, "AccountIdEndpointMode is required but no AccountID was provided or able to be loaded"
112
130
  end
113
131
  if Aws::Endpoints::Matchers.set?(parameters.is_search_operation) && Aws::Endpoints::Matchers.boolean_equals?(parameters.is_search_operation, true)
114
132
  return Aws::Endpoints::Endpoint.new(url: "https://search-dynamodb.#{parameters.region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {}, metadata: { account_id_endpoint: false })
@@ -117,19 +135,28 @@ module Aws::DynamoDB
117
135
  end
118
136
  raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
119
137
  end
120
- if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "disabled")) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws") && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)) && Aws::Endpoints::Matchers.set?(parameters.resource_arn) && (parsed_arn = Aws::Endpoints::Matchers.aws_parse_arn(parameters.resource_arn)) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(parsed_arn, "service"), "dynamodb") && Aws::Endpoints::Matchers.valid_host_label?(Aws::Endpoints::Matchers.attr(parsed_arn, "region"), false) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(parsed_arn, "region"), "#{parameters.region}") && Aws::Endpoints::Matchers.valid_host_label?(Aws::Endpoints::Matchers.attr(parsed_arn, "accountId"), false)
138
+ if Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "us-gov-east-1")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "us-gov-west-1")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "cn-north-1")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.region, "cn-northwest-1"))
139
+ if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "required")
140
+ raise ArgumentError, "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this region"
141
+ end
142
+ if Aws::Endpoints::Matchers.set?(parameters.is_search_operation) && Aws::Endpoints::Matchers.boolean_equals?(parameters.is_search_operation, true)
143
+ return Aws::Endpoints::Endpoint.new(url: "https://search-dynamodb.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {}, metadata: { account_id_endpoint: false })
144
+ end
145
+ return Aws::Endpoints::Endpoint.new(url: "https://dynamodb.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {}, metadata: { account_id_endpoint: false })
146
+ end
147
+ if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "disabled")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)) && Aws::Endpoints::Matchers.set?(parameters.resource_arn) && (parsed_arn = Aws::Endpoints::Matchers.aws_parse_arn(parameters.resource_arn)) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(parsed_arn, "service"), "dynamodb") && Aws::Endpoints::Matchers.valid_host_label?(Aws::Endpoints::Matchers.attr(parsed_arn, "region"), false) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(parsed_arn, "region"), "#{parameters.region}") && Aws::Endpoints::Matchers.valid_host_label?(Aws::Endpoints::Matchers.attr(parsed_arn, "accountId"), false)
121
148
  if Aws::Endpoints::Matchers.set?(parameters.is_search_operation) && Aws::Endpoints::Matchers.boolean_equals?(parameters.is_search_operation, true)
122
149
  return Aws::Endpoints::Endpoint.new(url: "https://#{parsed_arn['accountId']}.search-ddb.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {"metricValues" => ["O"]}, metadata: { account_id_endpoint: false })
123
150
  end
124
151
  return Aws::Endpoints::Endpoint.new(url: "https://#{parsed_arn['accountId']}.ddb.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {"metricValues" => ["O"]}, metadata: { account_id_endpoint: false })
125
152
  end
126
- if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "disabled")) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws") && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)) && Aws::Endpoints::Matchers.set?(parameters.resource_arn_list) && (first_arn = Aws::Endpoints::Matchers.attr(parameters.resource_arn_list, "[0]")) && (parsed_arn = Aws::Endpoints::Matchers.aws_parse_arn(first_arn)) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(parsed_arn, "service"), "dynamodb") && Aws::Endpoints::Matchers.valid_host_label?(Aws::Endpoints::Matchers.attr(parsed_arn, "region"), false) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(parsed_arn, "region"), "#{parameters.region}") && Aws::Endpoints::Matchers.valid_host_label?(Aws::Endpoints::Matchers.attr(parsed_arn, "accountId"), false)
153
+ if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "disabled")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)) && Aws::Endpoints::Matchers.set?(parameters.resource_arn_list) && (first_arn = Aws::Endpoints::Matchers.attr(parameters.resource_arn_list, "[0]")) && (parsed_arn = Aws::Endpoints::Matchers.aws_parse_arn(first_arn)) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(parsed_arn, "service"), "dynamodb") && Aws::Endpoints::Matchers.valid_host_label?(Aws::Endpoints::Matchers.attr(parsed_arn, "region"), false) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(parsed_arn, "region"), "#{parameters.region}") && Aws::Endpoints::Matchers.valid_host_label?(Aws::Endpoints::Matchers.attr(parsed_arn, "accountId"), false)
127
154
  if Aws::Endpoints::Matchers.set?(parameters.is_search_operation) && Aws::Endpoints::Matchers.boolean_equals?(parameters.is_search_operation, true)
128
155
  return Aws::Endpoints::Endpoint.new(url: "https://#{parsed_arn['accountId']}.search-ddb.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {"metricValues" => ["O"]}, metadata: { account_id_endpoint: false })
129
156
  end
130
157
  return Aws::Endpoints::Endpoint.new(url: "https://#{parsed_arn['accountId']}.ddb.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {"metricValues" => ["O"]}, metadata: { account_id_endpoint: false })
131
158
  end
132
- if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "disabled")) && Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws") && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)) && Aws::Endpoints::Matchers.set?(parameters.account_id)
159
+ if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "disabled")) && Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true)) && Aws::Endpoints::Matchers.set?(parameters.account_id)
133
160
  if Aws::Endpoints::Matchers.valid_host_label?(parameters.account_id, false)
134
161
  if Aws::Endpoints::Matchers.set?(parameters.is_search_operation) && Aws::Endpoints::Matchers.boolean_equals?(parameters.is_search_operation, true)
135
162
  return Aws::Endpoints::Endpoint.new(url: "https://#{parameters.account_id}.search-ddb.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {"metricValues" => ["O"]}, metadata: { account_id_endpoint: true })
@@ -139,13 +166,7 @@ module Aws::DynamoDB
139
166
  raise ArgumentError, "Credentials-sourced account ID parameter is invalid"
140
167
  end
141
168
  if Aws::Endpoints::Matchers.set?(parameters.account_id_endpoint_mode) && Aws::Endpoints::Matchers.string_equals?(parameters.account_id_endpoint_mode, "required")
142
- if Aws::Endpoints::Matchers.not(Aws::Endpoints::Matchers.boolean_equals?(parameters.use_fips, true))
143
- if Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws")
144
- raise ArgumentError, "AccountIdEndpointMode is required but no AccountID was provided or able to be loaded"
145
- end
146
- raise ArgumentError, "Invalid Configuration: AccountIdEndpointMode is required but account endpoints are not supported in this partition"
147
- end
148
- raise ArgumentError, "Invalid Configuration: AccountIdEndpointMode is required and FIPS is enabled, but FIPS account endpoints are not supported"
169
+ raise ArgumentError, "AccountIdEndpointMode is required but no AccountID was provided or able to be loaded"
149
170
  end
150
171
  if Aws::Endpoints::Matchers.set?(parameters.is_search_operation) && Aws::Endpoints::Matchers.boolean_equals?(parameters.is_search_operation, true)
151
172
  return Aws::Endpoints::Endpoint.new(url: "https://search-dynamodb.#{parameters.region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {}, metadata: { account_id_endpoint: false })
@@ -336,6 +336,9 @@ module Aws::DynamoDB
336
336
  end
337
337
 
338
338
  # Represents replicas of the table.
339
+ #
340
+ # After a successful disassociation, this list is absent or empty. To
341
+ # confirm disassociation, also verify that `TableStatus` is `ACTIVE`.
339
342
  # @return [Array<Types::ReplicaDescription>]
340
343
  def replicas
341
344
  data[:replicas]
@@ -397,6 +400,14 @@ module Aws::DynamoDB
397
400
  data[:deletion_protection_enabled]
398
401
  end
399
402
 
403
+ # Specifies whether disassociation protection is enabled (`true`) or
404
+ # disabled (`false`) for the local global table replica. Protection is
405
+ # enabled by default.
406
+ # @return [Boolean]
407
+ def disassociation_protection_enabled
408
+ data[:disassociation_protection_enabled]
409
+ end
410
+
400
411
  # The maximum number of read and write units for the specified on-demand
401
412
  # table. If you use this parameter, you must specify
402
413
  # `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
@@ -2015,6 +2026,10 @@ module Aws::DynamoDB
2015
2026
  # delete: {
2016
2027
  # region_name: "RegionName", # required
2017
2028
  # },
2029
+ # disassociate: {
2030
+ # region_name: "RegionName", # required
2031
+ # disassociation_mode: "WAIT_FOR_REPLICATION", # required, accepts WAIT_FOR_REPLICATION
2032
+ # },
2018
2033
  # },
2019
2034
  # ],
2020
2035
  # table_class: "STANDARD", # accepts STANDARD, STANDARD_INFREQUENT_ACCESS
@@ -2039,6 +2054,7 @@ module Aws::DynamoDB
2039
2054
  # write_units_per_second: 1,
2040
2055
  # },
2041
2056
  # global_table_settings_replication_mode: "ENABLED", # accepts ENABLED, DISABLED, ENABLED_WITH_OVERRIDES
2057
+ # disassociation_protection_enabled: false,
2042
2058
  # vector_index_updates: [
2043
2059
  # {
2044
2060
  # create: {
@@ -2126,8 +2142,8 @@ module Aws::DynamoDB
2126
2142
  # @option options [Types::SSESpecification] :sse_specification
2127
2143
  # The new server-side encryption settings for the specified table.
2128
2144
  # @option options [Array<Types::ReplicationGroupUpdate>] :replica_updates
2129
- # A list of replica update actions (create, delete, or update) for the
2130
- # table.
2145
+ # A list of replica update actions (create, delete, update, or
2146
+ # disassociate) for the table.
2131
2147
  # @option options [String] :table_class
2132
2148
  # The table class of the table to be updated. Valid values are
2133
2149
  # `STANDARD` and `STANDARD_INFREQUENT_ACCESS`.
@@ -2195,6 +2211,17 @@ module Aws::DynamoDB
2195
2211
  # * `DISABLED`: Remove settings replication on a regional table.
2196
2212
  # Settings replication needs to be defined to ENABLED again in order
2197
2213
  # to create a Multi-Account Global Table using this table.
2214
+ # @option options [Boolean] :disassociation_protection_enabled
2215
+ # Specifies whether disassociation protection is enabled (`true`) or
2216
+ # disabled (`false`) for the local replica of a multi-Region eventual
2217
+ # consistency (MREC) global table using Version 2019.11.21.
2218
+ #
2219
+ # Disassociation protection is enabled by default. If you omit this
2220
+ # parameter, the existing setting is unchanged. This setting is
2221
+ # independent of `DeletionProtectionEnabled`.
2222
+ #
2223
+ # You can't combine this change with any other change in the same
2224
+ # `UpdateTable` request.
2198
2225
  # @option options [Array<Types::VectorIndexUpdate>] :vector_index_updates
2199
2226
  # A list of vector indexes to be added to or removed from the table. You
2200
2227
  # can add or remove one vector index for each `UpdateTable` operation.
@@ -3221,6 +3221,48 @@ module Aws::DynamoDB
3221
3221
  include Aws::Structure
3222
3222
  end
3223
3223
 
3224
+ # The parameters for disassociating the local replica from a global
3225
+ # table using Version 2019.11.21 with multi-Region eventual consistency
3226
+ # (MREC).
3227
+ #
3228
+ # After disassociation completes, the replica remains a standalone
3229
+ # regional table that keeps its data, indexes, and table settings.
3230
+ #
3231
+ # For request requirements, see [UpdateTable][1]. For prerequisites, the
3232
+ # protection update, and completion checks, see [Disassociating a global
3233
+ # table replica][2] in the *Amazon DynamoDB Developer Guide*.
3234
+ #
3235
+ #
3236
+ #
3237
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateTable.html
3238
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables-disassociate.html
3239
+ #
3240
+ # @!attribute [rw] region_name
3241
+ # The Region of the replica to disassociate. Set this value to the
3242
+ # Region where you send the `UpdateTable` request. You must use
3243
+ # credentials for the account that owns the replica.
3244
+ # @return [String]
3245
+ #
3246
+ # @!attribute [rw] disassociation_mode
3247
+ # The mode for handling pending replication before disassociation
3248
+ # completes. You must specify `WAIT_FOR_REPLICATION`. For more
3249
+ # information, see [Disassociating a global table replica][1] in the
3250
+ # *Amazon DynamoDB Developer Guide*.
3251
+ #
3252
+ #
3253
+ #
3254
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables-disassociate.html
3255
+ # @return [String]
3256
+ #
3257
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/DisassociateReplicationGroupMemberAction AWS API Documentation
3258
+ #
3259
+ class DisassociateReplicationGroupMemberAction < Struct.new(
3260
+ :region_name,
3261
+ :disassociation_mode)
3262
+ SENSITIVE = []
3263
+ include Aws::Structure
3264
+ end
3265
+
3224
3266
  # There was an attempt to insert an item with the same primary key as an
3225
3267
  # item that already exists in the DynamoDB table.
3226
3268
  #
@@ -8025,6 +8067,13 @@ module Aws::DynamoDB
8025
8067
  # `DeleteTableReplica` action in the destination Region, deleting the
8026
8068
  # replica and all if its items in the destination Region.
8027
8069
  #
8070
+ # * The local replica to be disassociated from a global table and
8071
+ # retained as a standalone regional table.
8072
+ #
8073
+ # Each `ReplicationGroupUpdate` contains exactly one action. A
8074
+ # `Disassociate` action must be the only replica update in the request;
8075
+ # including other updates causes the request to fail.
8076
+ #
8028
8077
  # <note markdown="1"> When you manually remove a table or global table replica, you do not
8029
8078
  # automatically remove any associated scalable targets, scaling
8030
8079
  # policies, or CloudWatch alarms.
@@ -8043,12 +8092,18 @@ module Aws::DynamoDB
8043
8092
  # The parameters required for deleting a replica for the table.
8044
8093
  # @return [Types::DeleteReplicationGroupMemberAction]
8045
8094
  #
8095
+ # @!attribute [rw] disassociate
8096
+ # The parameters for disassociating the local replica from the global
8097
+ # table and retaining it as a standalone regional table.
8098
+ # @return [Types::DisassociateReplicationGroupMemberAction]
8099
+ #
8046
8100
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/ReplicationGroupUpdate AWS API Documentation
8047
8101
  #
8048
8102
  class ReplicationGroupUpdate < Struct.new(
8049
8103
  :create,
8050
8104
  :update,
8051
- :delete)
8105
+ :delete,
8106
+ :disassociate)
8052
8107
  SENSITIVE = []
8053
8108
  include Aws::Structure
8054
8109
  end
@@ -9581,6 +9636,9 @@ module Aws::DynamoDB
9581
9636
  #
9582
9637
  # @!attribute [rw] replicas
9583
9638
  # Represents replicas of the table.
9639
+ #
9640
+ # After a successful disassociation, this list is absent or empty. To
9641
+ # confirm disassociation, also verify that `TableStatus` is `ACTIVE`.
9584
9642
  # @return [Array<Types::ReplicaDescription>]
9585
9643
  #
9586
9644
  # @!attribute [rw] global_table_witnesses
@@ -9625,6 +9683,12 @@ module Aws::DynamoDB
9625
9683
  # (false) on the table.
9626
9684
  # @return [Boolean]
9627
9685
  #
9686
+ # @!attribute [rw] disassociation_protection_enabled
9687
+ # Specifies whether disassociation protection is enabled (`true`) or
9688
+ # disabled (`false`) for the local global table replica. Protection is
9689
+ # enabled by default.
9690
+ # @return [Boolean]
9691
+ #
9628
9692
  # @!attribute [rw] on_demand_throughput
9629
9693
  # The maximum number of read and write units for the specified
9630
9694
  # on-demand table. If you use this parameter, you must specify
@@ -9720,6 +9784,7 @@ module Aws::DynamoDB
9720
9784
  :archival_summary,
9721
9785
  :table_class_summary,
9722
9786
  :deletion_protection_enabled,
9787
+ :disassociation_protection_enabled,
9723
9788
  :on_demand_throughput,
9724
9789
  :warm_throughput,
9725
9790
  :multi_region_consistency,
@@ -11306,8 +11371,8 @@ module Aws::DynamoDB
11306
11371
  # @return [Types::SSESpecification]
11307
11372
  #
11308
11373
  # @!attribute [rw] replica_updates
11309
- # A list of replica update actions (create, delete, or update) for the
11310
- # table.
11374
+ # A list of replica update actions (create, delete, update, or
11375
+ # disassociate) for the table.
11311
11376
  # @return [Array<Types::ReplicationGroupUpdate>]
11312
11377
  #
11313
11378
  # @!attribute [rw] table_class
@@ -11393,6 +11458,19 @@ module Aws::DynamoDB
11393
11458
  # to create a Multi-Account Global Table using this table.
11394
11459
  # @return [String]
11395
11460
  #
11461
+ # @!attribute [rw] disassociation_protection_enabled
11462
+ # Specifies whether disassociation protection is enabled (`true`) or
11463
+ # disabled (`false`) for the local replica of a multi-Region eventual
11464
+ # consistency (MREC) global table using Version 2019.11.21.
11465
+ #
11466
+ # Disassociation protection is enabled by default. If you omit this
11467
+ # parameter, the existing setting is unchanged. This setting is
11468
+ # independent of `DeletionProtectionEnabled`.
11469
+ #
11470
+ # You can't combine this change with any other change in the same
11471
+ # `UpdateTable` request.
11472
+ # @return [Boolean]
11473
+ #
11396
11474
  # @!attribute [rw] vector_index_updates
11397
11475
  # A list of vector indexes to be added to or removed from the table.
11398
11476
  # You can add or remove one vector index for each `UpdateTable`
@@ -11421,6 +11499,7 @@ module Aws::DynamoDB
11421
11499
  :on_demand_throughput,
11422
11500
  :warm_throughput,
11423
11501
  :global_table_settings_replication_mode,
11502
+ :disassociation_protection_enabled,
11424
11503
  :vector_index_updates)
11425
11504
  SENSITIVE = []
11426
11505
  include Aws::Structure
@@ -56,7 +56,7 @@ module Aws::DynamoDB
56
56
  autoload :Endpoints, 'aws-sdk-dynamodb/endpoints'
57
57
  autoload :Table, 'aws-sdk-dynamodb/table'
58
58
 
59
- GEM_VERSION = '1.175.0'
59
+ GEM_VERSION = '1.177.0'
60
60
 
61
61
  end
62
62
 
data/sig/client.rbs CHANGED
@@ -28,6 +28,7 @@ module Aws
28
28
  ?convert_params: bool,
29
29
  ?correct_clock_skew: bool,
30
30
  ?defaults_mode: String,
31
+ ?disable_clock_skew_correction: bool,
31
32
  ?disable_host_prefix_injection: bool,
32
33
  ?disable_request_compression: bool,
33
34
  ?endpoint: String,
@@ -1219,6 +1220,10 @@ module Aws
1219
1220
  }?,
1220
1221
  delete: {
1221
1222
  region_name: ::String
1223
+ }?,
1224
+ disassociate: {
1225
+ region_name: ::String,
1226
+ disassociation_mode: ("WAIT_FOR_REPLICATION")
1222
1227
  }?
1223
1228
  }
1224
1229
  ],
@@ -1244,6 +1249,7 @@ module Aws
1244
1249
  write_units_per_second: ::Integer?
1245
1250
  },
1246
1251
  ?global_table_settings_replication_mode: ("ENABLED" | "DISABLED" | "ENABLED_WITH_OVERRIDES"),
1252
+ ?disassociation_protection_enabled: bool,
1247
1253
  ?vector_index_updates: Array[
1248
1254
  {
1249
1255
  create: {
data/sig/errors.rbs CHANGED
@@ -11,111 +11,111 @@ module Aws
11
11
  class ServiceError < ::Aws::Errors::ServiceError
12
12
  end
13
13
 
14
- class BackupInUseException < ::Aws::Errors::ServiceError
14
+ class BackupInUseException < ServiceError
15
15
  def message: () -> ::String
16
16
  end
17
- class BackupNotFoundException < ::Aws::Errors::ServiceError
17
+ class BackupNotFoundException < ServiceError
18
18
  def message: () -> ::String
19
19
  end
20
- class ConditionalCheckFailedException < ::Aws::Errors::ServiceError
20
+ class ConditionalCheckFailedException < ServiceError
21
21
  def message: () -> ::String
22
22
  def item: () -> ::String
23
23
  end
24
- class ContinuousBackupsUnavailableException < ::Aws::Errors::ServiceError
24
+ class ContinuousBackupsUnavailableException < ServiceError
25
25
  def message: () -> ::String
26
26
  end
27
- class DuplicateItemException < ::Aws::Errors::ServiceError
27
+ class DuplicateItemException < ServiceError
28
28
  def message: () -> ::String
29
29
  end
30
- class ExportConflictException < ::Aws::Errors::ServiceError
30
+ class ExportConflictException < ServiceError
31
31
  def message: () -> ::String
32
32
  end
33
- class ExportNotFoundException < ::Aws::Errors::ServiceError
33
+ class ExportNotFoundException < ServiceError
34
34
  def message: () -> ::String
35
35
  end
36
- class GlobalTableAlreadyExistsException < ::Aws::Errors::ServiceError
36
+ class GlobalTableAlreadyExistsException < ServiceError
37
37
  def message: () -> ::String
38
38
  end
39
- class GlobalTableNotFoundException < ::Aws::Errors::ServiceError
39
+ class GlobalTableNotFoundException < ServiceError
40
40
  def message: () -> ::String
41
41
  end
42
- class IdempotentParameterMismatchException < ::Aws::Errors::ServiceError
42
+ class IdempotentParameterMismatchException < ServiceError
43
43
  def message: () -> ::String
44
44
  end
45
- class ImportConflictException < ::Aws::Errors::ServiceError
45
+ class ImportConflictException < ServiceError
46
46
  def message: () -> ::String
47
47
  end
48
- class ImportNotFoundException < ::Aws::Errors::ServiceError
48
+ class ImportNotFoundException < ServiceError
49
49
  def message: () -> ::String
50
50
  end
51
- class IndexNotFoundException < ::Aws::Errors::ServiceError
51
+ class IndexNotFoundException < ServiceError
52
52
  def message: () -> ::String
53
53
  end
54
- class InternalServerError < ::Aws::Errors::ServiceError
54
+ class InternalServerError < ServiceError
55
55
  def message: () -> ::String
56
56
  end
57
- class InvalidExportTimeException < ::Aws::Errors::ServiceError
57
+ class InvalidExportTimeException < ServiceError
58
58
  def message: () -> ::String
59
59
  end
60
- class InvalidRestoreTimeException < ::Aws::Errors::ServiceError
60
+ class InvalidRestoreTimeException < ServiceError
61
61
  def message: () -> ::String
62
62
  end
63
- class ItemCollectionSizeLimitExceededException < ::Aws::Errors::ServiceError
63
+ class ItemCollectionSizeLimitExceededException < ServiceError
64
64
  def message: () -> ::String
65
65
  end
66
- class LimitExceededException < ::Aws::Errors::ServiceError
66
+ class LimitExceededException < ServiceError
67
67
  def message: () -> ::String
68
68
  end
69
- class PointInTimeRecoveryUnavailableException < ::Aws::Errors::ServiceError
69
+ class PointInTimeRecoveryUnavailableException < ServiceError
70
70
  def message: () -> ::String
71
71
  end
72
- class PolicyNotFoundException < ::Aws::Errors::ServiceError
72
+ class PolicyNotFoundException < ServiceError
73
73
  def message: () -> ::String
74
74
  end
75
- class ProvisionedThroughputExceededException < ::Aws::Errors::ServiceError
75
+ class ProvisionedThroughputExceededException < ServiceError
76
76
  def message: () -> ::String
77
77
  def throttling_reasons: () -> ::String
78
78
  end
79
- class ReplicaAlreadyExistsException < ::Aws::Errors::ServiceError
79
+ class ReplicaAlreadyExistsException < ServiceError
80
80
  def message: () -> ::String
81
81
  end
82
- class ReplicaNotFoundException < ::Aws::Errors::ServiceError
82
+ class ReplicaNotFoundException < ServiceError
83
83
  def message: () -> ::String
84
84
  end
85
- class ReplicatedWriteConflictException < ::Aws::Errors::ServiceError
85
+ class ReplicatedWriteConflictException < ServiceError
86
86
  def message: () -> ::String
87
87
  end
88
- class RequestLimitExceeded < ::Aws::Errors::ServiceError
88
+ class RequestLimitExceeded < ServiceError
89
89
  def message: () -> ::String
90
90
  def throttling_reasons: () -> ::String
91
91
  end
92
- class ResourceInUseException < ::Aws::Errors::ServiceError
92
+ class ResourceInUseException < ServiceError
93
93
  def message: () -> ::String
94
94
  end
95
- class ResourceNotFoundException < ::Aws::Errors::ServiceError
95
+ class ResourceNotFoundException < ServiceError
96
96
  def message: () -> ::String
97
97
  end
98
- class TableAlreadyExistsException < ::Aws::Errors::ServiceError
98
+ class TableAlreadyExistsException < ServiceError
99
99
  def message: () -> ::String
100
100
  end
101
- class TableInUseException < ::Aws::Errors::ServiceError
101
+ class TableInUseException < ServiceError
102
102
  def message: () -> ::String
103
103
  end
104
- class TableNotFoundException < ::Aws::Errors::ServiceError
104
+ class TableNotFoundException < ServiceError
105
105
  def message: () -> ::String
106
106
  end
107
- class ThrottlingException < ::Aws::Errors::ServiceError
107
+ class ThrottlingException < ServiceError
108
108
  def message: () -> ::String
109
109
  def throttling_reasons: () -> ::String
110
110
  end
111
- class TransactionCanceledException < ::Aws::Errors::ServiceError
111
+ class TransactionCanceledException < ServiceError
112
112
  def message: () -> ::String
113
113
  def cancellation_reasons: () -> ::String
114
114
  end
115
- class TransactionConflictException < ::Aws::Errors::ServiceError
115
+ class TransactionConflictException < ServiceError
116
116
  def message: () -> ::String
117
117
  end
118
- class TransactionInProgressException < ::Aws::Errors::ServiceError
118
+ class TransactionInProgressException < ServiceError
119
119
  def message: () -> ::String
120
120
  end
121
121
  end
data/sig/resource.rbs CHANGED
@@ -28,6 +28,7 @@ module Aws
28
28
  ?convert_params: bool,
29
29
  ?correct_clock_skew: bool,
30
30
  ?defaults_mode: String,
31
+ ?disable_clock_skew_correction: bool,
31
32
  ?disable_host_prefix_injection: bool,
32
33
  ?disable_request_compression: bool,
33
34
  ?endpoint: String,
data/sig/table.rbs CHANGED
@@ -90,6 +90,9 @@ module Aws
90
90
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DynamoDB/Table.html#deletion_protection_enabled-instance_method
91
91
  def deletion_protection_enabled: () -> bool
92
92
 
93
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DynamoDB/Table.html#disassociation_protection_enabled-instance_method
94
+ def disassociation_protection_enabled: () -> bool
95
+
93
96
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DynamoDB/Table.html#on_demand_throughput-instance_method
94
97
  def on_demand_throughput: () -> Types::OnDemandThroughput
95
98
 
@@ -338,6 +341,10 @@ module Aws
338
341
  }?,
339
342
  delete: {
340
343
  region_name: ::String
344
+ }?,
345
+ disassociate: {
346
+ region_name: ::String,
347
+ disassociation_mode: ("WAIT_FOR_REPLICATION")
341
348
  }?
342
349
  }
343
350
  ],
@@ -363,6 +370,7 @@ module Aws
363
370
  write_units_per_second: ::Integer?
364
371
  },
365
372
  ?global_table_settings_replication_mode: ("ENABLED" | "DISABLED" | "ENABLED_WITH_OVERRIDES"),
373
+ ?disassociation_protection_enabled: bool,
366
374
  ?vector_index_updates: Array[
367
375
  {
368
376
  create: {
data/sig/types.rbs CHANGED
@@ -589,6 +589,12 @@ module Aws::DynamoDB
589
589
  SENSITIVE: []
590
590
  end
591
591
 
592
+ class DisassociateReplicationGroupMemberAction
593
+ attr_accessor region_name: ::String
594
+ attr_accessor disassociation_mode: ("WAIT_FOR_REPLICATION")
595
+ SENSITIVE: []
596
+ end
597
+
592
598
  class DuplicateItemException
593
599
  attr_accessor message: ::String
594
600
  SENSITIVE: []
@@ -1415,6 +1421,7 @@ module Aws::DynamoDB
1415
1421
  attr_accessor create: Types::CreateReplicationGroupMemberAction
1416
1422
  attr_accessor update: Types::UpdateReplicationGroupMemberAction
1417
1423
  attr_accessor delete: Types::DeleteReplicationGroupMemberAction
1424
+ attr_accessor disassociate: Types::DisassociateReplicationGroupMemberAction
1418
1425
  SENSITIVE: []
1419
1426
  end
1420
1427
 
@@ -1650,6 +1657,7 @@ module Aws::DynamoDB
1650
1657
  attr_accessor archival_summary: Types::ArchivalSummary
1651
1658
  attr_accessor table_class_summary: Types::TableClassSummary
1652
1659
  attr_accessor deletion_protection_enabled: bool
1660
+ attr_accessor disassociation_protection_enabled: bool
1653
1661
  attr_accessor on_demand_throughput: Types::OnDemandThroughput
1654
1662
  attr_accessor warm_throughput: Types::TableWarmThroughputDescription
1655
1663
  attr_accessor multi_region_consistency: ("EVENTUAL" | "STRONG")
@@ -1914,6 +1922,7 @@ module Aws::DynamoDB
1914
1922
  attr_accessor on_demand_throughput: Types::OnDemandThroughput
1915
1923
  attr_accessor warm_throughput: Types::WarmThroughput
1916
1924
  attr_accessor global_table_settings_replication_mode: ("ENABLED" | "DISABLED" | "ENABLED_WITH_OVERRIDES")
1925
+ attr_accessor disassociation_protection_enabled: bool
1917
1926
  attr_accessor vector_index_updates: ::Array[Types::VectorIndexUpdate]
1918
1927
  SENSITIVE: []
1919
1928
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-dynamodb
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.175.0
4
+ version: 1.177.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
@@ -18,7 +18,7 @@ dependencies:
18
18
  version: '3'
19
19
  - - ">="
20
20
  - !ruby/object:Gem::Version
21
- version: 3.256.0
21
+ version: 3.258.0
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
@@ -28,7 +28,7 @@ dependencies:
28
28
  version: '3'
29
29
  - - ">="
30
30
  - !ruby/object:Gem::Version
31
- version: 3.256.0
31
+ version: 3.258.0
32
32
  - !ruby/object:Gem::Dependency
33
33
  name: aws-sigv4
34
34
  requirement: !ruby/object:Gem::Requirement