1717 DynamoDbEncryptionTransforms ,
1818)
1919from aws_dbesdk_dynamodb .smithygenerated .aws_cryptography_dbencryptionsdk_dynamodb_transforms .models import (
20+ BatchExecuteStatementInputTransformInput ,
21+ BatchExecuteStatementOutputTransformInput ,
2022 BatchGetItemInputTransformInput ,
2123 BatchGetItemOutputTransformInput ,
2224 BatchWriteItemInputTransformInput ,
2325 BatchWriteItemOutputTransformInput ,
26+ DeleteItemInputTransformInput ,
27+ DeleteItemOutputTransformInput ,
28+ ExecuteStatementInputTransformInput ,
29+ ExecuteStatementOutputTransformInput ,
30+ ExecuteTransactionInputTransformInput ,
31+ ExecuteTransactionOutputTransformInput ,
2432 GetItemInputTransformInput ,
2533 GetItemOutputTransformInput ,
2634 PutItemInputTransformInput ,
3341 TransactGetItemsOutputTransformInput ,
3442 TransactWriteItemsInputTransformInput ,
3543 TransactWriteItemsOutputTransformInput ,
44+ UpdateItemInputTransformInput ,
45+ UpdateItemOutputTransformInput ,
3646)
3747
3848
@@ -57,8 +67,14 @@ class EncryptedClient(EncryptedBotoInterface):
5767 * ``batch_get_item``
5868 * ``transact_get_items``
5969 * ``transact_write_items``
70+ * ``delete_item``
6071
61- The ``update_item`` operation is not currently supported. Calling this operation will raise ``NotImplementedError``.
72+ The following operations are not supported and will raise DynamoDbEncryptionTransformsException:
73+
74+ * ``execute_statement``
75+ * ``execute_transaction``
76+ * ``batch_execute_statement``
77+ * ``update_item``
6278
6379 Any other operations on this class will defer to the underlying boto3 DynamoDB client's implementation.
6480
@@ -337,18 +353,131 @@ def transact_write_items(self, **kwargs) -> dict[str, Any]:
337353 output_item_to_ddb_transform_method = self ._resource_to_client_shape_converter .transact_write_items_response ,
338354 )
339355
356+ def delete_item (self , ** kwargs ):
357+ """
358+ Delete an item from a table by the specified key.
359+
360+ The input and output syntaxes match those for the boto3 DynamoDB client ``delete_item`` API:
361+
362+ https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/dynamodb/client/delete_item.html
363+
364+ Args:
365+ **kwargs: Keyword arguments to pass to the operation. This matches the boto3 client ``delete_item``
366+ request syntax.
367+
368+ Returns:
369+ dict: The response from DynamoDB. This matches the boto3 client ``delete_item`` response syntax.
370+ Any values in the ``"Attributes"`` field will be decrypted locally after being read from DynamoDB.
371+
372+ """
373+ return self ._client_operation_logic (
374+ operation_input = kwargs ,
375+ input_item_to_ddb_transform_method = self ._resource_to_client_shape_converter .delete_item_request ,
376+ input_item_to_dict_transform_method = self ._client_to_resource_shape_converter .delete_item_request ,
377+ input_transform_method = self ._transformer .delete_item_input_transform ,
378+ input_transform_shape = DeleteItemInputTransformInput ,
379+ output_transform_method = self ._transformer .delete_item_output_transform ,
380+ output_transform_shape = DeleteItemOutputTransformInput ,
381+ client_method = self ._client .delete_item ,
382+ output_item_to_dict_transform_method = self ._client_to_resource_shape_converter .delete_item_response ,
383+ output_item_to_ddb_transform_method = self ._resource_to_client_shape_converter .delete_item_response ,
384+ )
385+
386+ def execute_statement (self , ** kwargs ):
387+ """
388+ Not implemented. Raises DynamoDbEncryptionTransformsException.
389+
390+ Args:
391+ **kwargs: Any arguments passed to this method
392+
393+ Raises:
394+ DynamoDbEncryptionTransformsException: This operation is not supported on encrypted tables.
395+
396+ """
397+ return self ._client_operation_logic (
398+ operation_input = kwargs ,
399+ input_item_to_ddb_transform_method = self ._resource_to_client_shape_converter .execute_statement_request ,
400+ input_item_to_dict_transform_method = self ._client_to_resource_shape_converter .execute_statement_request ,
401+ input_transform_method = self ._transformer .execute_statement_input_transform ,
402+ input_transform_shape = ExecuteStatementInputTransformInput ,
403+ output_transform_method = self ._transformer .execute_statement_output_transform ,
404+ output_transform_shape = ExecuteStatementOutputTransformInput ,
405+ client_method = self ._client .execute_statement ,
406+ output_item_to_dict_transform_method = self ._client_to_resource_shape_converter .execute_statement_response ,
407+ output_item_to_ddb_transform_method = self ._resource_to_client_shape_converter .execute_statement_response ,
408+ )
409+
410+ def execute_transaction (self , ** kwargs ):
411+ """
412+ Not implemented. Raises DynamoDbEncryptionTransformsException.
413+
414+ Args:
415+ **kwargs: Any arguments passed to this method
416+
417+ Raises:
418+ DynamoDbEncryptionTransformsException: This operation is not supported on encrypted tables.
419+
420+ """
421+ return self ._client_operation_logic (
422+ operation_input = kwargs ,
423+ input_item_to_ddb_transform_method = self ._resource_to_client_shape_converter .execute_transaction_request ,
424+ input_item_to_dict_transform_method = self ._client_to_resource_shape_converter .execute_transaction_request ,
425+ input_transform_method = self ._transformer .execute_transaction_input_transform ,
426+ input_transform_shape = ExecuteTransactionInputTransformInput ,
427+ output_transform_method = self ._transformer .execute_transaction_output_transform ,
428+ output_transform_shape = ExecuteTransactionOutputTransformInput ,
429+ client_method = self ._client .execute_transaction ,
430+ output_item_to_dict_transform_method = self ._client_to_resource_shape_converter .execute_transaction_response ,
431+ output_item_to_ddb_transform_method = self ._resource_to_client_shape_converter .execute_transaction_response ,
432+ )
433+
340434 def update_item (self , ** kwargs ):
341435 """
342- Not implemented. Raises NotImplementedError .
436+ Not implemented. Raises DynamoDbEncryptionTransformsException .
343437
344438 Args:
345439 **kwargs: Any arguments passed to this method
346440
347441 Raises:
348- NotImplementedError : This operation is not yet implemented
442+ DynamoDbEncryptionTransformsException : This operation is not supported on encrypted tables.
349443
350444 """
351- raise NotImplementedError ('"update_item" is not yet implemented' )
445+ return self ._client_operation_logic (
446+ operation_input = kwargs ,
447+ input_item_to_ddb_transform_method = self ._resource_to_client_shape_converter .update_item_request ,
448+ input_item_to_dict_transform_method = self ._client_to_resource_shape_converter .update_item_request ,
449+ input_transform_method = self ._transformer .update_item_input_transform ,
450+ input_transform_shape = UpdateItemInputTransformInput ,
451+ output_transform_method = self ._transformer .update_item_output_transform ,
452+ output_transform_shape = UpdateItemOutputTransformInput ,
453+ client_method = self ._client .update_item ,
454+ output_item_to_dict_transform_method = self ._client_to_resource_shape_converter .update_item_response ,
455+ output_item_to_ddb_transform_method = self ._resource_to_client_shape_converter .update_item_response ,
456+ )
457+
458+ def batch_execute_statement (self , ** kwargs ):
459+ """
460+ Not implemented. Raises DynamoDbEncryptionTransformsException.
461+
462+ Args:
463+ **kwargs: Any arguments passed to this method
464+
465+ Raises:
466+ DynamoDbEncryptionTransformsException: This operation is not supported on encrypted tables.
467+
468+ """
469+ return self ._client_operation_logic (
470+ operation_input = kwargs ,
471+ input_item_to_ddb_transform_method = self ._resource_to_client_shape_converter .batch_execute_statement_request ,
472+ input_item_to_dict_transform_method = self ._client_to_resource_shape_converter .batch_execute_statement_request ,
473+ input_transform_method = self ._transformer .batch_execute_statement_input_transform ,
474+ input_transform_shape = BatchExecuteStatementInputTransformInput ,
475+ output_transform_method = self ._transformer .batch_execute_statement_output_transform ,
476+ output_transform_shape = BatchExecuteStatementOutputTransformInput ,
477+ client_method = self ._client .batch_execute_statement ,
478+ output_item_to_dict_transform_method = self ._client_to_resource_shape_converter .batch_execute_statement_response ,
479+ output_item_to_ddb_transform_method = self ._resource_to_client_shape_converter .batch_execute_statement_response ,
480+ )
352481
353482 def get_paginator (self , operation_name : str ) -> EncryptedPaginator | botocore .client .Paginator :
354483 """
0 commit comments