aws-sdk-dynamodb 1.81.0 → 1.83.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6cd7fd0494ab2f1fc9ecf5ae9f710878776f5bca2da717f4337d94cc4cf2945d
4
- data.tar.gz: 5aa9b171740370a8fdc1b413be5b31d6a3ca41d802a106b5c84ef65ff98801b8
3
+ metadata.gz: 22abbb7ad15a904ddb4c7af7493a6bf05549ce6dbafc2cb82953339c04d7b1be
4
+ data.tar.gz: 41da2de1fa7793a4ee6b8bc557fc611d38a1755586ad58170f3f8f9aeb894b65
5
5
  SHA512:
6
- metadata.gz: 8675be1a64038f174cb51a16e0e45a0d25dcc09bdee0a09ea35bdfefa1c3f4771c4745d8ec0d7070048d9a7bf6c2f27e229b308d438ea470651f5c90695fc550
7
- data.tar.gz: '099f941b83b515de7ce13b96c40be03a26fc7eb3df03e5ffb275d25df1c7befaf623d2c1665293bda5718da0f6e86bed8c57c60c0d3e67641fafb6c8d41e4156'
6
+ metadata.gz: 8d2a38d598e18b32573125ebd0e7766efd763bd9f0640947b27816c72302317275312017f525110db4c05ac3066090bf63b982ceebe80c7313bcdfe6253aac8a
7
+ data.tar.gz: 3a4dea68b5bc38fe3a670d9f5ba287a343eb63457efc592f1ff71b222c4fb22ae384efcb6036c46ac7c50c0d2c599a886176489d59048bf9d08c7af027af4c9b
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.83.0 (2023-03-08)
5
+ ------------------
6
+
7
+ * Feature - Adds deletion protection support to DynamoDB tables. Tables with deletion protection enabled cannot be deleted. Deletion protection is disabled by default, can be enabled via the CreateTable or UpdateTable APIs, and is visible in TableDescription. This setting is not replicated for Global Tables.
8
+
9
+ 1.82.0 (2023-03-03)
10
+ ------------------
11
+
12
+ * Feature - Documentation updates for DynamoDB.
13
+
4
14
  1.81.0 (2023-01-18)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.81.0
1
+ 1.83.0
@@ -1104,10 +1104,14 @@ module Aws::DynamoDB
1104
1104
  # a replication relationship between two or more DynamoDB tables with
1105
1105
  # the same table name in the provided Regions.
1106
1106
  #
1107
- # <note markdown="1"> This operation only applies to [Version 2017.11.29][1] of global
1108
- # tables.
1109
- #
1110
- # </note>
1107
+ # This operation only applies to [Version 2017.11.29 (Legacy)][1] of
1108
+ # global tables. We recommend using [Version 2019.11.21 (Current)][2]
1109
+ # when creating new global tables, as it provides greater flexibility,
1110
+ # higher efficiency and consumes less write capacity than 2017.11.29
1111
+ # (Legacy). To determine which version you are using, see [Determining
1112
+ # the version][3]. To update existing global tables from version
1113
+ # 2017.11.29 (Legacy) to version 2019.11.21 (Current), see [ Updating
1114
+ # global tables][4].
1111
1115
  #
1112
1116
  # If you want to add a new replica table to a global table, each of the
1113
1117
  # following conditions must be true:
@@ -1151,6 +1155,9 @@ module Aws::DynamoDB
1151
1155
  #
1152
1156
  #
1153
1157
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V1.html
1158
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
1159
+ # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
1160
+ # [4]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
1154
1161
  #
1155
1162
  # @option params [required, String] :global_table_name
1156
1163
  # The global table name.
@@ -1426,6 +1433,10 @@ module Aws::DynamoDB
1426
1433
  # The table class of the new table. Valid values are `STANDARD` and
1427
1434
  # `STANDARD_INFREQUENT_ACCESS`.
1428
1435
  #
1436
+ # @option params [Boolean] :deletion_protection_enabled
1437
+ # Indicates whether deletion protection is to be enabled (true) or
1438
+ # disabled (false) on the table.
1439
+ #
1429
1440
  # @return [Types::CreateTableOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1430
1441
  #
1431
1442
  # * {Types::CreateTableOutput#table_description #table_description} => Types::TableDescription
@@ -1569,6 +1580,7 @@ module Aws::DynamoDB
1569
1580
  # },
1570
1581
  # ],
1571
1582
  # table_class: "STANDARD", # accepts STANDARD, STANDARD_INFREQUENT_ACCESS
1583
+ # deletion_protection_enabled: false,
1572
1584
  # })
1573
1585
  #
1574
1586
  # @example Response structure
@@ -1653,6 +1665,7 @@ module Aws::DynamoDB
1653
1665
  # resp.table_description.archival_summary.archival_backup_arn #=> String
1654
1666
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
1655
1667
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
1668
+ # resp.table_description.deletion_protection_enabled #=> Boolean
1656
1669
  #
1657
1670
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/CreateTable AWS API Documentation
1658
1671
  #
@@ -1760,7 +1773,7 @@ module Aws::DynamoDB
1760
1773
  # A map of attribute names to `AttributeValue` objects, representing the
1761
1774
  # primary key of the item to delete.
1762
1775
  #
1763
- # For the primary key, you must provide all of the attributes. For
1776
+ # For the primary key, you must provide all of the key attributes. For
1764
1777
  # example, with a simple primary key, you only need to provide a value
1765
1778
  # for the partition key. For a composite primary key, you must provide
1766
1779
  # values for both the partition key and the sort key.
@@ -2023,6 +2036,9 @@ module Aws::DynamoDB
2023
2036
  # DynamoDB returns a `ResourceNotFoundException`. If table is already in
2024
2037
  # the `DELETING` state, no error is returned.
2025
2038
  #
2039
+ # This operation only applies to [Version 2019.11.21 (Current)][1] of
2040
+ # global tables.
2041
+ #
2026
2042
  # <note markdown="1"> DynamoDB might continue to accept data read and write operations, such
2027
2043
  # as `GetItem` and `PutItem`, on a table in the `DELETING` state until
2028
2044
  # the table deletion is complete.
@@ -2037,6 +2053,10 @@ module Aws::DynamoDB
2037
2053
  #
2038
2054
  # Use the `DescribeTable` action to check the status of the table.
2039
2055
  #
2056
+ #
2057
+ #
2058
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
2059
+ #
2040
2060
  # @option params [required, String] :table_name
2041
2061
  # The name of the table to delete.
2042
2062
  #
@@ -2156,6 +2176,7 @@ module Aws::DynamoDB
2156
2176
  # resp.table_description.archival_summary.archival_backup_arn #=> String
2157
2177
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
2158
2178
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
2179
+ # resp.table_description.deletion_protection_enabled #=> Boolean
2159
2180
  #
2160
2181
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/DeleteTable AWS API Documentation
2161
2182
  #
@@ -2287,7 +2308,7 @@ module Aws::DynamoDB
2287
2308
  req.send_request(options)
2288
2309
  end
2289
2310
 
2290
- # Returns information about contributor insights, for a given table or
2311
+ # Returns information about contributor insights for a given table or
2291
2312
  # global secondary index.
2292
2313
  #
2293
2314
  # @option params [required, String] :table_name
@@ -2332,7 +2353,14 @@ module Aws::DynamoDB
2332
2353
  req.send_request(options)
2333
2354
  end
2334
2355
 
2335
- # Returns the regional endpoint information.
2356
+ # Returns the regional endpoint information. This action must be
2357
+ # included in your VPC endpoint policies, or access to the
2358
+ # DescribeEndpoints API will be denied. For more information on policy
2359
+ # permissions, please see [Internetwork traffic privacy][1].
2360
+ #
2361
+ #
2362
+ #
2363
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/inter-network-traffic-privacy.html#inter-network-traffic-DescribeEndpoints
2336
2364
  #
2337
2365
  # @return [Types::DescribeEndpointsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2338
2366
  #
@@ -2401,17 +2429,21 @@ module Aws::DynamoDB
2401
2429
 
2402
2430
  # Returns information about the specified global table.
2403
2431
  #
2404
- # <note markdown="1"> This operation only applies to [Version 2017.11.29][1] of global
2405
- # tables. If you are using global tables [Version 2019.11.21][2] you can
2406
- # use [DescribeTable][3] instead.
2407
- #
2408
- # </note>
2432
+ # This operation only applies to [Version 2017.11.29 (Legacy)][1] of
2433
+ # global tables. We recommend using [Version 2019.11.21 (Current)][2]
2434
+ # when creating new global tables, as it provides greater flexibility,
2435
+ # higher efficiency and consumes less write capacity than 2017.11.29
2436
+ # (Legacy). To determine which version you are using, see [Determining
2437
+ # the version][3]. To update existing global tables from version
2438
+ # 2017.11.29 (Legacy) to version 2019.11.21 (Current), see [ Updating
2439
+ # global tables][4].
2409
2440
  #
2410
2441
  #
2411
2442
  #
2412
2443
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V1.html
2413
2444
  # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
2414
- # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DescribeTable.html
2445
+ # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
2446
+ # [4]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
2415
2447
  #
2416
2448
  # @option params [required, String] :global_table_name
2417
2449
  # The name of the global table.
@@ -2457,14 +2489,21 @@ module Aws::DynamoDB
2457
2489
 
2458
2490
  # Describes Region-specific settings for a global table.
2459
2491
  #
2460
- # <note markdown="1"> This operation only applies to [Version 2017.11.29][1] of global
2461
- # tables.
2462
- #
2463
- # </note>
2492
+ # This operation only applies to [Version 2017.11.29 (Legacy)][1] of
2493
+ # global tables. We recommend using [Version 2019.11.21 (Current)][2]
2494
+ # when creating new global tables, as it provides greater flexibility,
2495
+ # higher efficiency and consumes less write capacity than 2017.11.29
2496
+ # (Legacy). To determine which version you are using, see [Determining
2497
+ # the version][3]. To update existing global tables from version
2498
+ # 2017.11.29 (Legacy) to version 2019.11.21 (Current), see [ Updating
2499
+ # global tables][4].
2464
2500
  #
2465
2501
  #
2466
2502
  #
2467
2503
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V1.html
2504
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
2505
+ # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
2506
+ # [4]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
2468
2507
  #
2469
2508
  # @option params [required, String] :global_table_name
2470
2509
  # The name of the global table to describe.
@@ -2767,6 +2806,9 @@ module Aws::DynamoDB
2767
2806
  # the table, when it was created, the primary key schema, and any
2768
2807
  # indexes on the table.
2769
2808
  #
2809
+ # This operation only applies to [Version 2019.11.21 (Current)][1] of
2810
+ # global tables.
2811
+ #
2770
2812
  # <note markdown="1"> If you issue a `DescribeTable` request immediately after a
2771
2813
  # `CreateTable` request, DynamoDB might return a
2772
2814
  # `ResourceNotFoundException`. This is because `DescribeTable` uses an
@@ -2776,6 +2818,10 @@ module Aws::DynamoDB
2776
2818
  #
2777
2819
  # </note>
2778
2820
  #
2821
+ #
2822
+ #
2823
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
2824
+ #
2779
2825
  # @option params [required, String] :table_name
2780
2826
  # The name of the table to describe.
2781
2827
  #
@@ -2916,6 +2962,7 @@ module Aws::DynamoDB
2916
2962
  # resp.table.archival_summary.archival_backup_arn #=> String
2917
2963
  # resp.table.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
2918
2964
  # resp.table.table_class_summary.last_update_date_time #=> Time
2965
+ # resp.table.deletion_protection_enabled #=> Boolean
2919
2966
  #
2920
2967
  #
2921
2968
  # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
@@ -2935,10 +2982,8 @@ module Aws::DynamoDB
2935
2982
  # Describes auto scaling settings across replicas of the global table at
2936
2983
  # once.
2937
2984
  #
2938
- # <note markdown="1"> This operation only applies to [Version 2019.11.21][1] of global
2939
- # tables.
2940
- #
2941
- # </note>
2985
+ # This operation only applies to [Version 2019.11.21 (Current)][1] of
2986
+ # global tables.
2942
2987
  #
2943
2988
  #
2944
2989
  #
@@ -3138,7 +3183,8 @@ module Aws::DynamoDB
3138
3183
  # number of items (if using the Limit parameter) or a maximum of 1 MB of
3139
3184
  # data (and then apply any filtering to the results using `WHERE`
3140
3185
  # clause). If `LastEvaluatedKey` is present in the response, you need to
3141
- # paginate the result set.
3186
+ # paginate the result set. If `NextToken` is present, you need to
3187
+ # paginate the result set and include `NextToken`.
3142
3188
  #
3143
3189
  # @option params [required, String] :statement
3144
3190
  # The PartiQL statement representing the operation to run.
@@ -3956,14 +4002,21 @@ module Aws::DynamoDB
3956
4002
 
3957
4003
  # Lists all global tables that have a replica in the specified Region.
3958
4004
  #
3959
- # <note markdown="1"> This operation only applies to [Version 2017.11.29][1] of global
3960
- # tables.
3961
- #
3962
- # </note>
4005
+ # This operation only applies to [Version 2017.11.29 (Legacy)][1] of
4006
+ # global tables. We recommend using [Version 2019.11.21 (Current)][2]
4007
+ # when creating new global tables, as it provides greater flexibility,
4008
+ # higher efficiency and consumes less write capacity than 2017.11.29
4009
+ # (Legacy). To determine which version you are using, see [Determining
4010
+ # the version][3]. To update existing global tables from version
4011
+ # 2017.11.29 (Legacy) to version 2019.11.21 (Current), see [ Updating
4012
+ # global tables][4].
3963
4013
  #
3964
4014
  #
3965
4015
  #
3966
4016
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V1.html
4017
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
4018
+ # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
4019
+ # [4]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
3967
4020
  #
3968
4021
  # @option params [String] :exclusive_start_global_table_name
3969
4022
  # The first global table name that this operation will evaluate.
@@ -4582,7 +4635,9 @@ module Aws::DynamoDB
4582
4635
  # is equivalent to specifying `ALL_ATTRIBUTES`.
4583
4636
  #
4584
4637
  # * `COUNT` - Returns the number of matching items, rather than the
4585
- # matching items themselves.
4638
+ # matching items themselves. Note that this uses the same quantity of
4639
+ # read capacity units as getting the items, and is subject to the same
4640
+ # item size calculations.
4586
4641
  #
4587
4642
  # * `SPECIFIC_ATTRIBUTES` - Returns only the attributes listed in
4588
4643
  # `ProjectionExpression`. This return value is equivalent to
@@ -5210,6 +5265,7 @@ module Aws::DynamoDB
5210
5265
  # resp.table_description.archival_summary.archival_backup_arn #=> String
5211
5266
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
5212
5267
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
5268
+ # resp.table_description.deletion_protection_enabled #=> Boolean
5213
5269
  #
5214
5270
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/RestoreTableFromBackup AWS API Documentation
5215
5271
  #
@@ -5437,6 +5493,7 @@ module Aws::DynamoDB
5437
5493
  # resp.table_description.archival_summary.archival_backup_arn #=> String
5438
5494
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
5439
5495
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
5496
+ # resp.table_description.deletion_protection_enabled #=> Boolean
5440
5497
  #
5441
5498
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/RestoreTableToPointInTime AWS API Documentation
5442
5499
  #
@@ -5536,7 +5593,9 @@ module Aws::DynamoDB
5536
5593
  # is equivalent to specifying `ALL_ATTRIBUTES`.
5537
5594
  #
5538
5595
  # * `COUNT` - Returns the number of matching items, rather than the
5539
- # matching items themselves.
5596
+ # matching items themselves. Note that this uses the same quantity of
5597
+ # read capacity units as getting the items, and is subject to the same
5598
+ # item size calculations.
5540
5599
  #
5541
5600
  # * `SPECIFIC_ATTRIBUTES` - Returns only the attributes listed in
5542
5601
  # `ProjectionExpression`. This return value is equivalent to
@@ -5952,8 +6011,7 @@ module Aws::DynamoDB
5952
6011
  #
5953
6012
  # * There is a user error, such as an invalid data format.
5954
6013
  #
5955
- # * The aggregate size of the items in the transaction cannot exceed 4
5956
- # MB.
6014
+ # * The aggregate size of the items in the transaction exceeded 4 MB.
5957
6015
  #
5958
6016
  # @option params [required, Array<Types::TransactGetItem>] :transact_items
5959
6017
  # An ordered array of up to 100 `TransactGetItem` objects, each of which
@@ -6115,7 +6173,7 @@ module Aws::DynamoDB
6115
6173
  #
6116
6174
  # Although multiple identical calls using the same client request token
6117
6175
  # produce the same result on the server (no side effects), the responses
6118
- # to the calls might not be the same. If the `ReturnConsumedCapacity>`
6176
+ # to the calls might not be the same. If the `ReturnConsumedCapacity`
6119
6177
  # parameter is set, then the initial `TransactWriteItems` call returns
6120
6178
  # the amount of write capacity units consumed in making the changes.
6121
6179
  # Subsequent `TransactWriteItems` calls with the same client token
@@ -6381,7 +6439,20 @@ module Aws::DynamoDB
6381
6439
  # have the same key schema, have DynamoDB Streams enabled, and have the
6382
6440
  # same provisioned and maximum write capacity units.
6383
6441
  #
6384
- # <note markdown="1"> Although you can use `UpdateGlobalTable` to add replicas and remove
6442
+ # This operation only applies to [Version 2017.11.29 (Legacy)][1] of
6443
+ # global tables. We recommend using [Version 2019.11.21 (Current)][2]
6444
+ # when creating new global tables, as it provides greater flexibility,
6445
+ # higher efficiency and consumes less write capacity than 2017.11.29
6446
+ # (Legacy). To determine which version you are using, see [Determining
6447
+ # the version][3]. To update existing global tables from version
6448
+ # 2017.11.29 (Legacy) to version 2019.11.21 (Current), see [ Updating
6449
+ # global tables][4].
6450
+ #
6451
+ # <note markdown="1"> This operation only applies to [Version 2017.11.29][1] of global
6452
+ # tables. If you are using global tables [Version 2019.11.21][2] you can
6453
+ # use [DescribeTable][5] instead.
6454
+ #
6455
+ # Although you can use `UpdateGlobalTable` to add replicas and remove
6385
6456
  # replicas in a single request, for simplicity we recommend that you
6386
6457
  # issue separate requests for adding or removing replicas.
6387
6458
  #
@@ -6398,6 +6469,14 @@ module Aws::DynamoDB
6398
6469
  # * The global secondary indexes must have the same provisioned and
6399
6470
  # maximum write capacity units.
6400
6471
  #
6472
+ #
6473
+ #
6474
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V1.html
6475
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
6476
+ # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
6477
+ # [4]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
6478
+ # [5]: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DescribeTable.html
6479
+ #
6401
6480
  # @option params [required, String] :global_table_name
6402
6481
  # The global table name.
6403
6482
  #
@@ -6456,6 +6535,22 @@ module Aws::DynamoDB
6456
6535
 
6457
6536
  # Updates settings for a global table.
6458
6537
  #
6538
+ # This operation only applies to [Version 2017.11.29 (Legacy)][1] of
6539
+ # global tables. We recommend using [Version 2019.11.21 (Current)][2]
6540
+ # when creating new global tables, as it provides greater flexibility,
6541
+ # higher efficiency and consumes less write capacity than 2017.11.29
6542
+ # (Legacy). To determine which version you are using, see [Determining
6543
+ # the version][3]. To update existing global tables from version
6544
+ # 2017.11.29 (Legacy) to version 2019.11.21 (Current), see [ Updating
6545
+ # global tables][4].
6546
+ #
6547
+ #
6548
+ #
6549
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V1.html
6550
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
6551
+ # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
6552
+ # [4]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
6553
+ #
6459
6554
  # @option params [required, String] :global_table_name
6460
6555
  # The name of the global table
6461
6556
  #
@@ -6703,8 +6798,8 @@ module Aws::DynamoDB
6703
6798
  #
6704
6799
  # @option params [String] :return_values
6705
6800
  # Use `ReturnValues` if you want to get the item attributes as they
6706
- # appear before or after they are updated. For `UpdateItem`, the valid
6707
- # values are:
6801
+ # appear before or after they are successfully updated. For
6802
+ # `UpdateItem`, the valid values are:
6708
6803
  #
6709
6804
  # * `NONE` - If `ReturnValues` is not specified, or if its value is
6710
6805
  # `NONE`, then nothing is returned. (This setting is the default for
@@ -7049,6 +7144,9 @@ module Aws::DynamoDB
7049
7144
  # Modifies the provisioned throughput settings, global secondary
7050
7145
  # indexes, or DynamoDB Streams settings for a given table.
7051
7146
  #
7147
+ # This operation only applies to [Version 2019.11.21 (Current)][1] of
7148
+ # global tables.
7149
+ #
7052
7150
  # You can only perform one of the following operations at once:
7053
7151
  #
7054
7152
  # * Modify the provisioned throughput settings of the table.
@@ -7065,6 +7163,10 @@ module Aws::DynamoDB
7065
7163
  # table returns to the `ACTIVE` state, the `UpdateTable` operation is
7066
7164
  # complete.
7067
7165
  #
7166
+ #
7167
+ #
7168
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
7169
+ #
7068
7170
  # @option params [Array<Types::AttributeDefinition>] :attribute_definitions
7069
7171
  # An array of attributes that describe the key schema for the table and
7070
7172
  # indexes. If you are adding a new global secondary index to the table,
@@ -7136,8 +7238,8 @@ module Aws::DynamoDB
7136
7238
  # A list of replica update actions (create, delete, or update) for the
7137
7239
  # table.
7138
7240
  #
7139
- # <note markdown="1"> This property only applies to [Version 2019.11.21][1] of global
7140
- # tables.
7241
+ # <note markdown="1"> This property only applies to [Version 2019.11.21 (Current)][1] of
7242
+ # global tables.
7141
7243
  #
7142
7244
  # </note>
7143
7245
  #
@@ -7149,6 +7251,10 @@ module Aws::DynamoDB
7149
7251
  # The table class of the table to be updated. Valid values are
7150
7252
  # `STANDARD` and `STANDARD_INFREQUENT_ACCESS`.
7151
7253
  #
7254
+ # @option params [Boolean] :deletion_protection_enabled
7255
+ # Indicates whether deletion protection is to be enabled (true) or
7256
+ # disabled (false) on the table.
7257
+ #
7152
7258
  # @return [Types::UpdateTableOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7153
7259
  #
7154
7260
  # * {Types::UpdateTableOutput#table_description #table_description} => Types::TableDescription
@@ -7298,6 +7404,7 @@ module Aws::DynamoDB
7298
7404
  # },
7299
7405
  # ],
7300
7406
  # table_class: "STANDARD", # accepts STANDARD, STANDARD_INFREQUENT_ACCESS
7407
+ # deletion_protection_enabled: false,
7301
7408
  # })
7302
7409
  #
7303
7410
  # @example Response structure
@@ -7382,6 +7489,7 @@ module Aws::DynamoDB
7382
7489
  # resp.table_description.archival_summary.archival_backup_arn #=> String
7383
7490
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
7384
7491
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
7492
+ # resp.table_description.deletion_protection_enabled #=> Boolean
7385
7493
  #
7386
7494
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/UpdateTable AWS API Documentation
7387
7495
  #
@@ -7394,10 +7502,8 @@ module Aws::DynamoDB
7394
7502
 
7395
7503
  # Updates auto scaling settings on your global tables at once.
7396
7504
  #
7397
- # <note markdown="1"> This operation only applies to [Version 2019.11.21][1] of global
7398
- # tables.
7399
- #
7400
- # </note>
7505
+ # This operation only applies to [Version 2019.11.21 (Current)][1] of
7506
+ # global tables.
7401
7507
  #
7402
7508
  #
7403
7509
  #
@@ -7648,7 +7754,7 @@ module Aws::DynamoDB
7648
7754
  params: params,
7649
7755
  config: config)
7650
7756
  context[:gem_name] = 'aws-sdk-dynamodb'
7651
- context[:gem_version] = '1.81.0'
7757
+ context[:gem_version] = '1.83.0'
7652
7758
  Seahorse::Client::Request.new(handlers, context)
7653
7759
  end
7654
7760
 
@@ -120,6 +120,7 @@ module Aws::DynamoDB
120
120
  DeleteRequest = Shapes::StructureShape.new(name: 'DeleteRequest')
121
121
  DeleteTableInput = Shapes::StructureShape.new(name: 'DeleteTableInput')
122
122
  DeleteTableOutput = Shapes::StructureShape.new(name: 'DeleteTableOutput')
123
+ DeletionProtectionEnabled = Shapes::BooleanShape.new(name: 'DeletionProtectionEnabled')
123
124
  DescribeBackupInput = Shapes::StructureShape.new(name: 'DescribeBackupInput')
124
125
  DescribeBackupOutput = Shapes::StructureShape.new(name: 'DescribeBackupOutput')
125
126
  DescribeContinuousBackupsInput = Shapes::StructureShape.new(name: 'DescribeContinuousBackupsInput')
@@ -147,7 +148,7 @@ module Aws::DynamoDB
147
148
  DescribeTimeToLiveInput = Shapes::StructureShape.new(name: 'DescribeTimeToLiveInput')
148
149
  DescribeTimeToLiveOutput = Shapes::StructureShape.new(name: 'DescribeTimeToLiveOutput')
149
150
  DestinationStatus = Shapes::StringShape.new(name: 'DestinationStatus')
150
- Double = Shapes::FloatShape.new(name: 'Double')
151
+ DoubleObject = Shapes::FloatShape.new(name: 'DoubleObject')
151
152
  DuplicateItemException = Shapes::StructureShape.new(name: 'DuplicateItemException')
152
153
  Endpoint = Shapes::StructureShape.new(name: 'Endpoint')
153
154
  Endpoints = Shapes::ListShape.new(name: 'Endpoints')
@@ -285,6 +286,7 @@ module Aws::DynamoDB
285
286
  LocalSecondaryIndexList = Shapes::ListShape.new(name: 'LocalSecondaryIndexList')
286
287
  LocalSecondaryIndexes = Shapes::ListShape.new(name: 'LocalSecondaryIndexes')
287
288
  Long = Shapes::IntegerShape.new(name: 'Long')
289
+ LongObject = Shapes::IntegerShape.new(name: 'LongObject')
288
290
  MapAttributeValue = Shapes::MapShape.new(name: 'MapAttributeValue')
289
291
  NextTokenString = Shapes::StringShape.new(name: 'NextTokenString')
290
292
  NonKeyAttributeName = Shapes::StringShape.new(name: 'NonKeyAttributeName')
@@ -522,13 +524,13 @@ module Aws::DynamoDB
522
524
  AutoScalingTargetTrackingScalingPolicyConfigurationDescription.add_member(:disable_scale_in, Shapes::ShapeRef.new(shape: BooleanObject, location_name: "DisableScaleIn"))
523
525
  AutoScalingTargetTrackingScalingPolicyConfigurationDescription.add_member(:scale_in_cooldown, Shapes::ShapeRef.new(shape: IntegerObject, location_name: "ScaleInCooldown"))
524
526
  AutoScalingTargetTrackingScalingPolicyConfigurationDescription.add_member(:scale_out_cooldown, Shapes::ShapeRef.new(shape: IntegerObject, location_name: "ScaleOutCooldown"))
525
- AutoScalingTargetTrackingScalingPolicyConfigurationDescription.add_member(:target_value, Shapes::ShapeRef.new(shape: Double, required: true, location_name: "TargetValue"))
527
+ AutoScalingTargetTrackingScalingPolicyConfigurationDescription.add_member(:target_value, Shapes::ShapeRef.new(shape: DoubleObject, required: true, location_name: "TargetValue"))
526
528
  AutoScalingTargetTrackingScalingPolicyConfigurationDescription.struct_class = Types::AutoScalingTargetTrackingScalingPolicyConfigurationDescription
527
529
 
528
530
  AutoScalingTargetTrackingScalingPolicyConfigurationUpdate.add_member(:disable_scale_in, Shapes::ShapeRef.new(shape: BooleanObject, location_name: "DisableScaleIn"))
529
531
  AutoScalingTargetTrackingScalingPolicyConfigurationUpdate.add_member(:scale_in_cooldown, Shapes::ShapeRef.new(shape: IntegerObject, location_name: "ScaleInCooldown"))
530
532
  AutoScalingTargetTrackingScalingPolicyConfigurationUpdate.add_member(:scale_out_cooldown, Shapes::ShapeRef.new(shape: IntegerObject, location_name: "ScaleOutCooldown"))
531
- AutoScalingTargetTrackingScalingPolicyConfigurationUpdate.add_member(:target_value, Shapes::ShapeRef.new(shape: Double, required: true, location_name: "TargetValue"))
533
+ AutoScalingTargetTrackingScalingPolicyConfigurationUpdate.add_member(:target_value, Shapes::ShapeRef.new(shape: DoubleObject, required: true, location_name: "TargetValue"))
532
534
  AutoScalingTargetTrackingScalingPolicyConfigurationUpdate.struct_class = Types::AutoScalingTargetTrackingScalingPolicyConfigurationUpdate
533
535
 
534
536
  BackupDescription.add_member(:backup_details, Shapes::ShapeRef.new(shape: BackupDetails, location_name: "BackupDetails"))
@@ -716,6 +718,7 @@ module Aws::DynamoDB
716
718
  CreateTableInput.add_member(:sse_specification, Shapes::ShapeRef.new(shape: SSESpecification, location_name: "SSESpecification"))
717
719
  CreateTableInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
718
720
  CreateTableInput.add_member(:table_class, Shapes::ShapeRef.new(shape: TableClass, location_name: "TableClass"))
721
+ CreateTableInput.add_member(:deletion_protection_enabled, Shapes::ShapeRef.new(shape: DeletionProtectionEnabled, location_name: "DeletionProtectionEnabled"))
719
722
  CreateTableInput.struct_class = Types::CreateTableInput
720
723
 
721
724
  CreateTableOutput.add_member(:table_description, Shapes::ShapeRef.new(shape: TableDescription, location_name: "TableDescription"))
@@ -1001,8 +1004,8 @@ module Aws::DynamoDB
1001
1004
  GlobalSecondaryIndexDescription.add_member(:index_status, Shapes::ShapeRef.new(shape: IndexStatus, location_name: "IndexStatus"))
1002
1005
  GlobalSecondaryIndexDescription.add_member(:backfilling, Shapes::ShapeRef.new(shape: Backfilling, location_name: "Backfilling"))
1003
1006
  GlobalSecondaryIndexDescription.add_member(:provisioned_throughput, Shapes::ShapeRef.new(shape: ProvisionedThroughputDescription, location_name: "ProvisionedThroughput"))
1004
- GlobalSecondaryIndexDescription.add_member(:index_size_bytes, Shapes::ShapeRef.new(shape: Long, location_name: "IndexSizeBytes"))
1005
- GlobalSecondaryIndexDescription.add_member(:item_count, Shapes::ShapeRef.new(shape: Long, location_name: "ItemCount"))
1007
+ GlobalSecondaryIndexDescription.add_member(:index_size_bytes, Shapes::ShapeRef.new(shape: LongObject, location_name: "IndexSizeBytes"))
1008
+ GlobalSecondaryIndexDescription.add_member(:item_count, Shapes::ShapeRef.new(shape: LongObject, location_name: "ItemCount"))
1006
1009
  GlobalSecondaryIndexDescription.add_member(:index_arn, Shapes::ShapeRef.new(shape: String, location_name: "IndexArn"))
1007
1010
  GlobalSecondaryIndexDescription.struct_class = Types::GlobalSecondaryIndexDescription
1008
1011
 
@@ -1086,7 +1089,7 @@ module Aws::DynamoDB
1086
1089
  ImportTableDescription.add_member(:table_creation_parameters, Shapes::ShapeRef.new(shape: TableCreationParameters, location_name: "TableCreationParameters"))
1087
1090
  ImportTableDescription.add_member(:start_time, Shapes::ShapeRef.new(shape: ImportStartTime, location_name: "StartTime"))
1088
1091
  ImportTableDescription.add_member(:end_time, Shapes::ShapeRef.new(shape: ImportEndTime, location_name: "EndTime"))
1089
- ImportTableDescription.add_member(:processed_size_bytes, Shapes::ShapeRef.new(shape: Long, location_name: "ProcessedSizeBytes"))
1092
+ ImportTableDescription.add_member(:processed_size_bytes, Shapes::ShapeRef.new(shape: LongObject, location_name: "ProcessedSizeBytes"))
1090
1093
  ImportTableDescription.add_member(:processed_item_count, Shapes::ShapeRef.new(shape: ProcessedItemCount, location_name: "ProcessedItemCount"))
1091
1094
  ImportTableDescription.add_member(:imported_item_count, Shapes::ShapeRef.new(shape: ImportedItemCount, location_name: "ImportedItemCount"))
1092
1095
  ImportTableDescription.add_member(:failure_code, Shapes::ShapeRef.new(shape: FailureCode, location_name: "FailureCode"))
@@ -1257,8 +1260,8 @@ module Aws::DynamoDB
1257
1260
  LocalSecondaryIndexDescription.add_member(:index_name, Shapes::ShapeRef.new(shape: IndexName, location_name: "IndexName"))
1258
1261
  LocalSecondaryIndexDescription.add_member(:key_schema, Shapes::ShapeRef.new(shape: KeySchema, location_name: "KeySchema"))
1259
1262
  LocalSecondaryIndexDescription.add_member(:projection, Shapes::ShapeRef.new(shape: Projection, location_name: "Projection"))
1260
- LocalSecondaryIndexDescription.add_member(:index_size_bytes, Shapes::ShapeRef.new(shape: Long, location_name: "IndexSizeBytes"))
1261
- LocalSecondaryIndexDescription.add_member(:item_count, Shapes::ShapeRef.new(shape: Long, location_name: "ItemCount"))
1263
+ LocalSecondaryIndexDescription.add_member(:index_size_bytes, Shapes::ShapeRef.new(shape: LongObject, location_name: "IndexSizeBytes"))
1264
+ LocalSecondaryIndexDescription.add_member(:item_count, Shapes::ShapeRef.new(shape: LongObject, location_name: "ItemCount"))
1262
1265
  LocalSecondaryIndexDescription.add_member(:index_arn, Shapes::ShapeRef.new(shape: String, location_name: "IndexArn"))
1263
1266
  LocalSecondaryIndexDescription.struct_class = Types::LocalSecondaryIndexDescription
1264
1267
 
@@ -1588,7 +1591,7 @@ module Aws::DynamoDB
1588
1591
  SourceTableDetails.add_member(:table_name, Shapes::ShapeRef.new(shape: TableName, required: true, location_name: "TableName"))
1589
1592
  SourceTableDetails.add_member(:table_id, Shapes::ShapeRef.new(shape: TableId, required: true, location_name: "TableId"))
1590
1593
  SourceTableDetails.add_member(:table_arn, Shapes::ShapeRef.new(shape: TableArn, location_name: "TableArn"))
1591
- SourceTableDetails.add_member(:table_size_bytes, Shapes::ShapeRef.new(shape: Long, location_name: "TableSizeBytes"))
1594
+ SourceTableDetails.add_member(:table_size_bytes, Shapes::ShapeRef.new(shape: LongObject, location_name: "TableSizeBytes"))
1592
1595
  SourceTableDetails.add_member(:key_schema, Shapes::ShapeRef.new(shape: KeySchema, required: true, location_name: "KeySchema"))
1593
1596
  SourceTableDetails.add_member(:table_creation_date_time, Shapes::ShapeRef.new(shape: TableCreationDateTime, required: true, location_name: "TableCreationDateTime"))
1594
1597
  SourceTableDetails.add_member(:provisioned_throughput, Shapes::ShapeRef.new(shape: ProvisionedThroughput, required: true, location_name: "ProvisionedThroughput"))
@@ -1636,8 +1639,8 @@ module Aws::DynamoDB
1636
1639
  TableDescription.add_member(:table_status, Shapes::ShapeRef.new(shape: TableStatus, location_name: "TableStatus"))
1637
1640
  TableDescription.add_member(:creation_date_time, Shapes::ShapeRef.new(shape: Date, location_name: "CreationDateTime"))
1638
1641
  TableDescription.add_member(:provisioned_throughput, Shapes::ShapeRef.new(shape: ProvisionedThroughputDescription, location_name: "ProvisionedThroughput"))
1639
- TableDescription.add_member(:table_size_bytes, Shapes::ShapeRef.new(shape: Long, location_name: "TableSizeBytes"))
1640
- TableDescription.add_member(:item_count, Shapes::ShapeRef.new(shape: Long, location_name: "ItemCount"))
1642
+ TableDescription.add_member(:table_size_bytes, Shapes::ShapeRef.new(shape: LongObject, location_name: "TableSizeBytes"))
1643
+ TableDescription.add_member(:item_count, Shapes::ShapeRef.new(shape: LongObject, location_name: "ItemCount"))
1641
1644
  TableDescription.add_member(:table_arn, Shapes::ShapeRef.new(shape: String, location_name: "TableArn"))
1642
1645
  TableDescription.add_member(:table_id, Shapes::ShapeRef.new(shape: TableId, location_name: "TableId"))
1643
1646
  TableDescription.add_member(:billing_mode_summary, Shapes::ShapeRef.new(shape: BillingModeSummary, location_name: "BillingModeSummary"))
@@ -1652,6 +1655,7 @@ module Aws::DynamoDB
1652
1655
  TableDescription.add_member(:sse_description, Shapes::ShapeRef.new(shape: SSEDescription, location_name: "SSEDescription"))
1653
1656
  TableDescription.add_member(:archival_summary, Shapes::ShapeRef.new(shape: ArchivalSummary, location_name: "ArchivalSummary"))
1654
1657
  TableDescription.add_member(:table_class_summary, Shapes::ShapeRef.new(shape: TableClassSummary, location_name: "TableClassSummary"))
1658
+ TableDescription.add_member(:deletion_protection_enabled, Shapes::ShapeRef.new(shape: DeletionProtectionEnabled, location_name: "DeletionProtectionEnabled"))
1655
1659
  TableDescription.struct_class = Types::TableDescription
1656
1660
 
1657
1661
  TableInUseException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
@@ -1811,6 +1815,7 @@ module Aws::DynamoDB
1811
1815
  UpdateTableInput.add_member(:sse_specification, Shapes::ShapeRef.new(shape: SSESpecification, location_name: "SSESpecification"))
1812
1816
  UpdateTableInput.add_member(:replica_updates, Shapes::ShapeRef.new(shape: ReplicationGroupUpdateList, location_name: "ReplicaUpdates"))
1813
1817
  UpdateTableInput.add_member(:table_class, Shapes::ShapeRef.new(shape: TableClass, location_name: "TableClass"))
1818
+ UpdateTableInput.add_member(:deletion_protection_enabled, Shapes::ShapeRef.new(shape: DeletionProtectionEnabled, location_name: "DeletionProtectionEnabled"))
1814
1819
  UpdateTableInput.struct_class = Types::UpdateTableInput
1815
1820
 
1816
1821
  UpdateTableOutput.add_member(:table_description, Shapes::ShapeRef.new(shape: TableDescription, location_name: "TableDescription"))
@@ -50,9 +50,6 @@ module Aws::DynamoDB
50
50
 
51
51
  def initialize(options = {})
52
52
  self[:region] = options[:region]
53
- if self[:region].nil?
54
- raise ArgumentError, "Missing required EndpointParameter: :region"
55
- end
56
53
  self[:use_dual_stack] = options[:use_dual_stack]
57
54
  self[:use_dual_stack] = false if self[:use_dual_stack].nil?
58
55
  if self[:use_dual_stack].nil?
@@ -14,42 +14,45 @@ module Aws::DynamoDB
14
14
  use_dual_stack = parameters.use_dual_stack
15
15
  use_fips = parameters.use_fips
16
16
  endpoint = parameters.endpoint
17
- if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
18
- if Aws::Endpoints::Matchers.set?(endpoint)
17
+ if Aws::Endpoints::Matchers.set?(endpoint)
18
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
19
+ raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
20
+ end
21
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
22
+ raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
23
+ end
24
+ return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
25
+ end
26
+ if Aws::Endpoints::Matchers.set?(region)
27
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
28
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
29
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
30
+ return Aws::Endpoints::Endpoint.new(url: "https://dynamodb-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
31
+ end
32
+ raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
+ end
19
34
  if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
20
- raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
35
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
36
+ if Aws::Endpoints::Matchers.string_equals?("aws-us-gov", Aws::Endpoints::Matchers.attr(partition_result, "name"))
37
+ return Aws::Endpoints::Endpoint.new(url: "https://dynamodb.#{region}.amazonaws.com", headers: {}, properties: {})
38
+ end
39
+ return Aws::Endpoints::Endpoint.new(url: "https://dynamodb-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
40
+ end
41
+ raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
21
42
  end
22
43
  if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
23
- raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
24
- end
25
- return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
26
- end
27
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
28
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
29
- return Aws::Endpoints::Endpoint.new(url: "https://dynamodb-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
30
- end
31
- raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
32
- end
33
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
34
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
35
- if Aws::Endpoints::Matchers.string_equals?("aws-us-gov", Aws::Endpoints::Matchers.attr(partition_result, "name"))
36
- return Aws::Endpoints::Endpoint.new(url: "https://dynamodb.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
44
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
45
+ return Aws::Endpoints::Endpoint.new(url: "https://dynamodb.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
37
46
  end
38
- return Aws::Endpoints::Endpoint.new(url: "https://dynamodb-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
47
+ raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
39
48
  end
40
- raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
41
- end
42
- if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
43
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
44
- return Aws::Endpoints::Endpoint.new(url: "https://dynamodb.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
49
+ if Aws::Endpoints::Matchers.string_equals?(region, "local")
50
+ return Aws::Endpoints::Endpoint.new(url: "http://localhost:8000", headers: {}, properties: {"authSchemes"=>[{"name"=>"sigv4", "signingName"=>"dynamodb", "signingRegion"=>"us-east-1"}]})
45
51
  end
46
- raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
47
- end
48
- if Aws::Endpoints::Matchers.string_equals?(region, "local")
49
- return Aws::Endpoints::Endpoint.new(url: "http://localhost:8000", headers: {}, properties: {"authSchemes"=>[{"name"=>"sigv4", "signingRegion"=>"us-east-1", "signingName"=>"dynamodb"}]})
52
+ return Aws::Endpoints::Endpoint.new(url: "https://dynamodb.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
50
53
  end
51
- return Aws::Endpoints::Endpoint.new(url: "https://dynamodb.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
52
54
  end
55
+ raise ArgumentError, "Invalid Configuration: Missing Region"
53
56
  raise ArgumentError, 'No endpoint could be resolved'
54
57
 
55
58
  end
@@ -316,6 +316,7 @@ module Aws::DynamoDB
316
316
  # },
317
317
  # ],
318
318
  # table_class: "STANDARD", # accepts STANDARD, STANDARD_INFREQUENT_ACCESS
319
+ # deletion_protection_enabled: false,
319
320
  # })
320
321
  # @param [Hash] options ({})
321
322
  # @option options [required, Array<Types::AttributeDefinition>] :attribute_definitions
@@ -512,6 +513,9 @@ module Aws::DynamoDB
512
513
  # @option options [String] :table_class
513
514
  # The table class of the new table. Valid values are `STANDARD` and
514
515
  # `STANDARD_INFREQUENT_ACCESS`.
516
+ # @option options [Boolean] :deletion_protection_enabled
517
+ # Indicates whether deletion protection is to be enabled (true) or
518
+ # disabled (false) on the table.
515
519
  # @return [Table]
516
520
  def create_table(options = {})
517
521
  resp = @client.create_table(options)
@@ -363,6 +363,13 @@ module Aws::DynamoDB
363
363
  data[:table_class_summary]
364
364
  end
365
365
 
366
+ # Indicates whether deletion protection is enabled (true) or disabled
367
+ # (false) on the table.
368
+ # @return [Boolean]
369
+ def deletion_protection_enabled
370
+ data[:deletion_protection_enabled]
371
+ end
372
+
366
373
  # @!endgroup
367
374
 
368
375
  # @return [Client]
@@ -539,7 +546,7 @@ module Aws::DynamoDB
539
546
  # A map of attribute names to `AttributeValue` objects, representing the
540
547
  # primary key of the item to delete.
541
548
  #
542
- # For the primary key, you must provide all of the attributes. For
549
+ # For the primary key, you must provide all of the key attributes. For
543
550
  # example, with a simple primary key, you only need to provide a value
544
551
  # for the partition key. For a composite primary key, you must provide
545
552
  # values for both the partition key and the sort key.
@@ -1103,7 +1110,9 @@ module Aws::DynamoDB
1103
1110
  # is equivalent to specifying `ALL_ATTRIBUTES`.
1104
1111
  #
1105
1112
  # * `COUNT` - Returns the number of matching items, rather than the
1106
- # matching items themselves.
1113
+ # matching items themselves. Note that this uses the same quantity of
1114
+ # read capacity units as getting the items, and is subject to the same
1115
+ # item size calculations.
1107
1116
  #
1108
1117
  # * `SPECIFIC_ATTRIBUTES` - Returns only the attributes listed in
1109
1118
  # `ProjectionExpression`. This return value is equivalent to
@@ -1508,7 +1517,9 @@ module Aws::DynamoDB
1508
1517
  # is equivalent to specifying `ALL_ATTRIBUTES`.
1509
1518
  #
1510
1519
  # * `COUNT` - Returns the number of matching items, rather than the
1511
- # matching items themselves.
1520
+ # matching items themselves. Note that this uses the same quantity of
1521
+ # read capacity units as getting the items, and is subject to the same
1522
+ # item size calculations.
1512
1523
  #
1513
1524
  # * `SPECIFIC_ATTRIBUTES` - Returns only the attributes listed in
1514
1525
  # `ProjectionExpression`. This return value is equivalent to
@@ -1838,6 +1849,7 @@ module Aws::DynamoDB
1838
1849
  # },
1839
1850
  # ],
1840
1851
  # table_class: "STANDARD", # accepts STANDARD, STANDARD_INFREQUENT_ACCESS
1852
+ # deletion_protection_enabled: false,
1841
1853
  # })
1842
1854
  # @param [Hash] options ({})
1843
1855
  # @option options [Array<Types::AttributeDefinition>] :attribute_definitions
@@ -1902,8 +1914,8 @@ module Aws::DynamoDB
1902
1914
  # A list of replica update actions (create, delete, or update) for the
1903
1915
  # table.
1904
1916
  #
1905
- # <note markdown="1"> This property only applies to [Version 2019.11.21][1] of global
1906
- # tables.
1917
+ # <note markdown="1"> This property only applies to [Version 2019.11.21 (Current)][1] of
1918
+ # global tables.
1907
1919
  #
1908
1920
  # </note>
1909
1921
  #
@@ -1913,6 +1925,9 @@ module Aws::DynamoDB
1913
1925
  # @option options [String] :table_class
1914
1926
  # The table class of the table to be updated. Valid values are
1915
1927
  # `STANDARD` and `STANDARD_INFREQUENT_ACCESS`.
1928
+ # @option options [Boolean] :deletion_protection_enabled
1929
+ # Indicates whether deletion protection is to be enabled (true) or
1930
+ # disabled (false) on the table.
1916
1931
  # @return [Table]
1917
1932
  def update(options = {})
1918
1933
  options = options.merge(table_name: @name)
@@ -1992,8 +2007,8 @@ module Aws::DynamoDB
1992
2007
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/LegacyConditionalParameters.ConditionalOperator.html
1993
2008
  # @option options [String] :return_values
1994
2009
  # Use `ReturnValues` if you want to get the item attributes as they
1995
- # appear before or after they are updated. For `UpdateItem`, the valid
1996
- # values are:
2010
+ # appear before or after they are successfully updated. For
2011
+ # `UpdateItem`, the valid values are:
1997
2012
  #
1998
2013
  # * `NONE` - If `ReturnValues` is not specified, or if its value is
1999
2014
  # `NONE`, then nothing is returned. (This setting is the default for
@@ -1462,16 +1462,32 @@ module Aws::DynamoDB
1462
1462
  #
1463
1463
  # @!attribute [rw] condition_expression
1464
1464
  # A condition that must be satisfied in order for a conditional update
1465
- # to succeed.
1465
+ # to succeed. For more information, see [Condition expressions][1] in
1466
+ # the *Amazon DynamoDB Developer Guide*.
1467
+ #
1468
+ #
1469
+ #
1470
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.ConditionExpressions.html
1466
1471
  # @return [String]
1467
1472
  #
1468
1473
  # @!attribute [rw] expression_attribute_names
1469
1474
  # One or more substitution tokens for attribute names in an
1470
- # expression.
1475
+ # expression. For more information, see [Expression attribute
1476
+ # names][1] in the *Amazon DynamoDB Developer Guide*.
1477
+ #
1478
+ #
1479
+ #
1480
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.ExpressionAttributeNames.html
1471
1481
  # @return [Hash<String,String>]
1472
1482
  #
1473
1483
  # @!attribute [rw] expression_attribute_values
1474
- # One or more values that can be substituted in an expression.
1484
+ # One or more values that can be substituted in an expression. For
1485
+ # more information, see [Condition expressions][1] in the *Amazon
1486
+ # DynamoDB Developer Guide*.
1487
+ #
1488
+ #
1489
+ #
1490
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.ConditionExpressions.html
1475
1491
  # @return [Hash<String,Types::AttributeValue>]
1476
1492
  #
1477
1493
  # @!attribute [rw] return_values_on_condition_check_failure
@@ -1997,6 +2013,11 @@ module Aws::DynamoDB
1997
2013
  # `STANDARD_INFREQUENT_ACCESS`.
1998
2014
  # @return [String]
1999
2015
  #
2016
+ # @!attribute [rw] deletion_protection_enabled
2017
+ # Indicates whether deletion protection is to be enabled (true) or
2018
+ # disabled (false) on the table.
2019
+ # @return [Boolean]
2020
+ #
2000
2021
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/CreateTableInput AWS API Documentation
2001
2022
  #
2002
2023
  class CreateTableInput < Struct.new(
@@ -2010,7 +2031,8 @@ module Aws::DynamoDB
2010
2031
  :stream_specification,
2011
2032
  :sse_specification,
2012
2033
  :tags,
2013
- :table_class)
2034
+ :table_class,
2035
+ :deletion_protection_enabled)
2014
2036
  SENSITIVE = []
2015
2037
  include Aws::Structure
2016
2038
  end
@@ -2147,7 +2169,7 @@ module Aws::DynamoDB
2147
2169
  # A map of attribute names to `AttributeValue` objects, representing
2148
2170
  # the primary key of the item to delete.
2149
2171
  #
2150
- # For the primary key, you must provide all of the attributes. For
2172
+ # For the primary key, you must provide all of the key attributes. For
2151
2173
  # example, with a simple primary key, you only need to provide a value
2152
2174
  # for the partition key. For a composite primary key, you must provide
2153
2175
  # values for both the partition key and the sort key.
@@ -2359,7 +2381,7 @@ module Aws::DynamoDB
2359
2381
  # with statistics for the table and any indexes involved in the
2360
2382
  # operation. `ConsumedCapacity` is only returned if the
2361
2383
  # `ReturnConsumedCapacity` parameter was specified. For more
2362
- # information, see [Provisioned Mode][1] in the *Amazon DynamoDB
2384
+ # information, see [Provisioned Throughput][1] in the *Amazon DynamoDB
2363
2385
  # Developer Guide*.
2364
2386
  #
2365
2387
  #
@@ -3791,12 +3813,12 @@ module Aws::DynamoDB
3791
3813
  # with statistics for the table and any indexes involved in the
3792
3814
  # operation. `ConsumedCapacity` is only returned if the
3793
3815
  # `ReturnConsumedCapacity` parameter was specified. For more
3794
- # information, see [Read/Write Capacity Mode][1] in the *Amazon
3795
- # DynamoDB Developer Guide*.
3816
+ # information, see [Provisioned Throughput][1] in the *Amazon DynamoDB
3817
+ # Developer Guide*.
3796
3818
  #
3797
3819
  #
3798
3820
  #
3799
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughputIntro.html
3821
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughput.html#ItemSizeCalculations.Reads
3800
3822
  # @return [Types::ConsumedCapacity]
3801
3823
  #
3802
3824
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/GetItemOutput AWS API Documentation
@@ -5920,8 +5942,8 @@ module Aws::DynamoDB
5920
5942
  # with statistics for the table and any indexes involved in the
5921
5943
  # operation. `ConsumedCapacity` is only returned if the
5922
5944
  # `ReturnConsumedCapacity` parameter was specified. For more
5923
- # information, see [Read/Write Capacity Mode][1] in the *Amazon
5924
- # DynamoDB Developer Guide*.
5945
+ # information, see [Provisioned Throughput][1] in the *Amazon DynamoDB
5946
+ # Developer Guide*.
5925
5947
  #
5926
5948
  #
5927
5949
  #
@@ -6013,7 +6035,9 @@ module Aws::DynamoDB
6013
6035
  # value is equivalent to specifying `ALL_ATTRIBUTES`.
6014
6036
  #
6015
6037
  # * `COUNT` - Returns the number of matching items, rather than the
6016
- # matching items themselves.
6038
+ # matching items themselves. Note that this uses the same quantity
6039
+ # of read capacity units as getting the items, and is subject to the
6040
+ # same item size calculations.
6017
6041
  #
6018
6042
  # * `SPECIFIC_ATTRIBUTES` - Returns only the attributes listed in
6019
6043
  # `ProjectionExpression`. This return value is equivalent to
@@ -7423,7 +7447,9 @@ module Aws::DynamoDB
7423
7447
  # value is equivalent to specifying `ALL_ATTRIBUTES`.
7424
7448
  #
7425
7449
  # * `COUNT` - Returns the number of matching items, rather than the
7426
- # matching items themselves.
7450
+ # matching items themselves. Note that this uses the same quantity
7451
+ # of read capacity units as getting the items, and is subject to the
7452
+ # same item size calculations.
7427
7453
  #
7428
7454
  # * `SPECIFIC_ATTRIBUTES` - Returns only the attributes listed in
7429
7455
  # `ProjectionExpression`. This return value is equivalent to
@@ -7763,7 +7789,7 @@ module Aws::DynamoDB
7763
7789
  #
7764
7790
  #
7765
7791
  #
7766
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughputIntro.html
7792
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughput.html#ItemSizeCalculations.Reads
7767
7793
  # @return [Types::ConsumedCapacity]
7768
7794
  #
7769
7795
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/ScanOutput AWS API Documentation
@@ -8333,6 +8359,11 @@ module Aws::DynamoDB
8333
8359
  # Contains details of the table class.
8334
8360
  # @return [Types::TableClassSummary]
8335
8361
  #
8362
+ # @!attribute [rw] deletion_protection_enabled
8363
+ # Indicates whether deletion protection is enabled (true) or disabled
8364
+ # (false) on the table.
8365
+ # @return [Boolean]
8366
+ #
8336
8367
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/TableDescription AWS API Documentation
8337
8368
  #
8338
8369
  class TableDescription < Struct.new(
@@ -8357,7 +8388,8 @@ module Aws::DynamoDB
8357
8388
  :restore_summary,
8358
8389
  :sse_description,
8359
8390
  :archival_summary,
8360
- :table_class_summary)
8391
+ :table_class_summary,
8392
+ :deletion_protection_enabled)
8361
8393
  SENSITIVE = []
8362
8394
  include Aws::Structure
8363
8395
  end
@@ -8627,7 +8659,7 @@ module Aws::DynamoDB
8627
8659
  # Although multiple identical calls using the same client request
8628
8660
  # token produce the same result on the server (no side effects), the
8629
8661
  # responses to the calls might not be the same. If the
8630
- # `ReturnConsumedCapacity>` parameter is set, then the initial
8662
+ # `ReturnConsumedCapacity` parameter is set, then the initial
8631
8663
  # `TransactWriteItems` call returns the amount of write capacity units
8632
8664
  # consumed in making the changes. Subsequent `TransactWriteItems`
8633
8665
  # calls with the same client token return the number of read capacity
@@ -8798,7 +8830,7 @@ module Aws::DynamoDB
8798
8830
  # secondary indexes. DynamoDB is automatically scaling your index
8799
8831
  # so please try again shortly.
8800
8832
  #
8801
- # <note markdown="1"> This message is returned when when writes get throttled on an
8833
+ # <note markdown="1"> This message is returned when writes get throttled on an
8802
8834
  # On-Demand GSI as DynamoDB is automatically scaling the GSI.
8803
8835
  #
8804
8836
  # </note>
@@ -8866,6 +8898,54 @@ module Aws::DynamoDB
8866
8898
 
8867
8899
  # The transaction with the given request token is already in progress.
8868
8900
  #
8901
+ # Recommended Settings
8902
+ #
8903
+ # <note markdown="1"> This is a general recommendation for handling the
8904
+ # `TransactionInProgressException`. These settings help ensure that the
8905
+ # client retries will trigger completion of the ongoing
8906
+ # `TransactWriteItems` request.
8907
+ #
8908
+ # </note>
8909
+ #
8910
+ # * Set `clientExecutionTimeout` to a value that allows at least one
8911
+ # retry to be processed after 5 seconds have elapsed since the first
8912
+ # attempt for the `TransactWriteItems` operation.
8913
+ #
8914
+ # * Set `socketTimeout` to a value a little lower than the
8915
+ # `requestTimeout` setting.
8916
+ #
8917
+ # * `requestTimeout` should be set based on the time taken for the
8918
+ # individual retries of a single HTTP request for your use case, but
8919
+ # setting it to 1 second or higher should work well to reduce chances
8920
+ # of retries and `TransactionInProgressException` errors.
8921
+ #
8922
+ # * Use exponential backoff when retrying and tune backoff if needed.
8923
+ #
8924
+ # Assuming [default retry policy][1], example timeout settings based on
8925
+ # the guidelines above are as follows:
8926
+ #
8927
+ # Example timeline:
8928
+ #
8929
+ # * 0-1000 first attempt
8930
+ #
8931
+ # * 1000-1500 first sleep/delay (default retry policy uses 500 ms as
8932
+ # base delay for 4xx errors)
8933
+ #
8934
+ # * 1500-2500 second attempt
8935
+ #
8936
+ # * 2500-3500 second sleep/delay (500 * 2, exponential backoff)
8937
+ #
8938
+ # * 3500-4500 third attempt
8939
+ #
8940
+ # * 4500-6500 third sleep/delay (500 * 2^2)
8941
+ #
8942
+ # * 6500-7500 fourth attempt (this can trigger inline recovery since 5
8943
+ # seconds have elapsed since the first attempt reached TC)
8944
+ #
8945
+ #
8946
+ #
8947
+ # [1]: https://github.com/aws/aws-sdk-java/blob/fd409dee8ae23fb8953e0bb4dbde65536a7e0514/aws-java-sdk-core/src/main/java/com/amazonaws/retry/PredefinedRetryPolicies.java#L97
8948
+ #
8869
8949
  # @!attribute [rw] message
8870
8950
  # @return [String]
8871
8951
  #
@@ -9201,8 +9281,8 @@ module Aws::DynamoDB
9201
9281
  #
9202
9282
  # @!attribute [rw] return_values
9203
9283
  # Use `ReturnValues` if you want to get the item attributes as they
9204
- # appear before or after they are updated. For `UpdateItem`, the valid
9205
- # values are:
9284
+ # appear before or after they are successfully updated. For
9285
+ # `UpdateItem`, the valid values are:
9206
9286
  #
9207
9287
  # * `NONE` - If `ReturnValues` is not specified, or if its value is
9208
9288
  # `NONE`, then nothing is returned. (This setting is the default for
@@ -9480,9 +9560,9 @@ module Aws::DynamoDB
9480
9560
  # `UpdateItem` operation, as determined by the `ReturnValues`
9481
9561
  # parameter.
9482
9562
  #
9483
- # The `Attributes` map is only present if `ReturnValues` was specified
9484
- # as something other than `NONE` in the request. Each element
9485
- # represents one attribute.
9563
+ # The `Attributes` map is only present if the update was successful
9564
+ # and `ReturnValues` was specified as something other than `NONE` in
9565
+ # the request. Each element represents one attribute.
9486
9566
  # @return [Hash<String,Types::AttributeValue>]
9487
9567
  #
9488
9568
  # @!attribute [rw] consumed_capacity
@@ -9496,7 +9576,7 @@ module Aws::DynamoDB
9496
9576
  #
9497
9577
  #
9498
9578
  #
9499
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughputIntro.html
9579
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughput.html#ItemSizeCalculations.Reads
9500
9580
  # @return [Types::ConsumedCapacity]
9501
9581
  #
9502
9582
  # @!attribute [rw] item_collection_metrics
@@ -9654,8 +9734,8 @@ module Aws::DynamoDB
9654
9734
  # A list of replica update actions (create, delete, or update) for the
9655
9735
  # table.
9656
9736
  #
9657
- # <note markdown="1"> This property only applies to [Version 2019.11.21][1] of global
9658
- # tables.
9737
+ # <note markdown="1"> This property only applies to [Version 2019.11.21 (Current)][1] of
9738
+ # global tables.
9659
9739
  #
9660
9740
  # </note>
9661
9741
  #
@@ -9669,6 +9749,11 @@ module Aws::DynamoDB
9669
9749
  # `STANDARD` and `STANDARD_INFREQUENT_ACCESS`.
9670
9750
  # @return [String]
9671
9751
  #
9752
+ # @!attribute [rw] deletion_protection_enabled
9753
+ # Indicates whether deletion protection is to be enabled (true) or
9754
+ # disabled (false) on the table.
9755
+ # @return [Boolean]
9756
+ #
9672
9757
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/UpdateTableInput AWS API Documentation
9673
9758
  #
9674
9759
  class UpdateTableInput < Struct.new(
@@ -9680,7 +9765,8 @@ module Aws::DynamoDB
9680
9765
  :stream_specification,
9681
9766
  :sse_specification,
9682
9767
  :replica_updates,
9683
- :table_class)
9768
+ :table_class,
9769
+ :deletion_protection_enabled)
9684
9770
  SENSITIVE = []
9685
9771
  include Aws::Structure
9686
9772
  end
@@ -54,6 +54,6 @@ require_relative 'aws-sdk-dynamodb/customizations'
54
54
  # @!group service
55
55
  module Aws::DynamoDB
56
56
 
57
- GEM_VERSION = '1.81.0'
57
+ GEM_VERSION = '1.83.0'
58
58
 
59
59
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-dynamodb
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.81.0
4
+ version: 1.83.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-01-18 00:00:00.000000000 Z
11
+ date: 2023-03-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core