@@ -10,61 +10,65 @@ import { dynamoEasyConfig } from '../config/dynamo-easy-config'
1010 * @hidden
1111 */
1212export class DynamoDbWrapper {
13- readonly dynamoDB : DynamoDB
13+ readonly dynamoDB : DynamoDB . DynamoDB
1414
15- constructor ( dynamoDB ?: DynamoDB ) {
15+ constructor ( dynamoDB ?: DynamoDB . DynamoDB ) {
1616 // create the actual dynamoDB client
17- this . dynamoDB = dynamoDB || new DynamoDB . default ( )
17+ // TODO v3: check if any default configuration should be provided, possibly from dynamoEasyConfig
18+ this . dynamoDB = dynamoDB || new DynamoDB . DynamoDB ( { } )
1819 }
1920
2021 /*
2122 * make all the dynamo requests return an promise
2223 */
2324 putItem ( params : DynamoDB . PutItemInput ) : Promise < DynamoDB . PutItemOutput > {
24- return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . putItem ( params ) . promise ( ) )
25+ return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . putItem ( params ) )
2526 }
2627
2728 getItem ( params : DynamoDB . GetItemInput ) : Promise < DynamoDB . GetItemOutput > {
28- return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . getItem ( params ) . promise ( ) )
29+ return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . getItem ( params ) )
2930 }
3031
3132 updateItem ( params : DynamoDB . UpdateItemInput ) : Promise < DynamoDB . UpdateItemOutput > {
32- return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . updateItem ( params ) . promise ( ) )
33+ return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . updateItem ( params ) )
3334 }
3435
3536 deleteItem ( params : DynamoDB . DeleteItemInput ) : Promise < DynamoDB . DeleteItemOutput > {
36- return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . deleteItem ( params ) . promise ( ) )
37+ return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . deleteItem ( params ) )
3738 }
3839
3940 batchWriteItem ( params : DynamoDB . BatchWriteItemInput ) : Promise < DynamoDB . BatchWriteItemOutput > {
40- return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . batchWriteItem ( params ) . promise ( ) )
41+ return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . batchWriteItem ( params ) )
4142 }
4243
4344 batchGetItems ( params : DynamoDB . BatchGetItemInput ) : Promise < DynamoDB . BatchGetItemOutput > {
44- return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . batchGetItem ( params ) . promise ( ) )
45+ return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . batchGetItem ( params ) )
4546 }
4647
4748 transactWriteItems ( params : DynamoDB . TransactWriteItemsInput ) : Promise < DynamoDB . TransactWriteItemsOutput > {
48- return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . transactWriteItems ( params ) . promise ( ) )
49+ return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . transactWriteItems ( params ) )
4950 }
5051
5152 transactGetItems ( params : DynamoDB . TransactGetItemsInput ) : Promise < DynamoDB . TransactGetItemsOutput > {
52- return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . transactGetItems ( params ) . promise ( ) )
53+ return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . transactGetItems ( params ) )
5354 }
5455
5556 scan ( params : DynamoDB . ScanInput ) : Promise < DynamoDB . ScanOutput > {
56- return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . scan ( params ) . promise ( ) )
57+ return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . scan ( params ) )
5758 }
5859
5960 query ( params : DynamoDB . QueryInput ) : Promise < DynamoDB . QueryOutput > {
6061 if ( ! params . KeyConditionExpression ) {
6162 throw new Error ( 'key condition expression must be defined' )
6263 }
6364
64- return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . query ( params ) . promise ( ) )
65+ return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . query ( params ) )
6566 }
6667
67- makeRequest ( operation : string , params ?: Record < string , any > ) : Promise < any > {
68- return dynamoEasyConfig . sessionValidityEnsurer ( ) . then ( ( ) => this . dynamoDB . makeRequest ( operation , params ) . promise ( ) )
69- }
68+ /*
69+ * TODO v3: check for replacement. DynamoDB.executeStatement is now used to execute statements using PartiQL
70+ */
71+ // makeRequest(operation: string, params?: Record<string, any>): Promise<any> {
72+ // return dynamoEasyConfig.sessionValidityEnsurer().then(() => this.dynamoDB.executeStatement(operation as any, params))
73+ // }
7074}
0 commit comments