Skip to content

Commit 553042c

Browse files
authored
Merge pull request #740 from aws/finks/revert
Revert "Dynamodb-enhanced [preview]: Updates all operations with cons…
2 parents 8a46c90 + d8bb4d4 commit 553042c

File tree

75 files changed

+752
-2888
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

75 files changed

+752
-2888
lines changed

services-custom/dynamodb-enhanced/README.md

Lines changed: 33 additions & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -80,109 +80,66 @@ values used are also completely arbitrary.
8080

8181
### Common primitive operations
8282
These all strongly map to the primitive DynamoDB operations they are
83-
named after. The examples below are the most simple variants of each
84-
operation possible, using the the two styles available for constructing
85-
requests with either builder or consumers. These commands can be
86-
customized by using the builders provided for each command and offer
87-
most of the features available in the low-level DynamoDB SDK client.
83+
named after. These examples are the most simple variants of each
84+
operation possible. These commands can be customized by using the
85+
builders provided for each command and offer most of the features
86+
available in the low-level DynamoDB SDK client.
8887

8988
```java
9089
// CreateTable
91-
customerTable.createTable();
92-
customerTable.createTable(CreateTableEnhancedRequest.builder().build());
90+
customerTable.createTable(CreateTableEnhancedRequest.create());
9391

9492
// GetItem
95-
Customer customer = customerTable.getItem(r -> r.key(Key.create(stringValue("a123"))));
96-
Customer customer = customerTable.getItem(GetItemEnhancedRequest.builder()
97-
.key(Key.create(stringValue("a123")))
98-
.build());
93+
Customer customer = customerTable.getItem(GetItemEnhancedRequest.create(Key.create(stringValue("a123"))));
94+
9995
// UpdateItem
100-
Customer updatedCustomer = customerTable.updateItem(Customer.class, r -> r.item(customer));
101-
Customer updatedCustomer = customerTable.updateItem(UpdateItemEnhancedRequest.builder(Customer.class)
102-
.item(customer)
103-
.build());
96+
Customer updatedCustomer = customerTable.updateItem(UpdateItemEnhancedRequest.create(customer));
10497

10598
// PutItem
106-
customerTable.putItem(Customer.class, r -> r.item(customer));
107-
customerTable.putItem(PutItemEnhancedRequest.builder(Customer.class)
108-
.item(customer)
109-
.build());
99+
customerTable.putItem(PutItemEnhancedRequest.create(customer));
110100

111101
// DeleteItem
112-
Customer deletedCustomer = customerTable.deleteItem(r -> r.key(Key.create(stringValue("a123"), numberValue(456))));
113-
Customer deletedCustomer = customerTable.deleteItem(DeleteItemEnhancedRequest.builder()
114-
.key(Key.create(stringValue("a123"), numberValue(456)))
115-
.build());
102+
Customer deletedCustomer = customerTable.deleteItem(DeleteItemEnhancedRequest.create(Key.create(stringValue("a123"), numberValue(456))));
116103

117104
// Query
118-
Iterable<Page<Customer>> customers = customerTable.query(r -> r.queryConditional(equalTo(Key.create(stringValue("a123")))));
119-
Iterable<Page<Customer>> customers = customerTable.query(QueryEnhancedRequest.builder()
120-
.queryConditional(equalTo(Key.create(stringValue("a123"))))
121-
.build());
105+
Iterable<Page<Customer>> customers = customerTable.query(QueryEnhancedRequest.create(equalTo(Key.create(stringValue("a123")))));
106+
122107
// Scan
123-
Iterable<Page<Customer>> customers = customerTable.scan();
124-
Iterable<Page<Customer>> customers = customerTable.scan(ScanEnhancedRequest.builder().build());
108+
Iterable<Page<Customer>> customers = customerTable.scan(ScanEnhancedRequest.create());
125109

126110
// BatchGetItem
127-
batchResults = enhancedClient.batchGetItem(r -> r.addReadBatch(ReadBatch.builder(Customer.class)
128-
.mappedTableResource(customerTable)
129-
.addGetItem(i -> i.key(key1))
130-
.addGetItem(i -> i.key(key2))
131-
.addGetItem(i -> i.key(key3))
132-
.build()));
133111
batchResults = enhancedClient.batchGetItem(
134-
BatchGetItemEnhancedRequest.builder()
135-
.readBatches(ReadBatch.builder(Customer.class)
136-
.mappedTableResource(customerTable)
137-
.addGetItem(GetItemEnhancedRequest.builder().key(key1).build())
138-
.addGetItem(GetItemEnhancedRequest.builder().key(key2).build())
139-
.addGetItem(GetItemEnhancedRequest.builder().key(key3).build())
140-
.build())
112+
BatchGetItemEnhancedRequest.builder().addReadBatch(ReadBatch.builder(Customer.class)
113+
.mappedTableResource(customerTable)
114+
.addGetItem(GetItemEnhancedRequest.create(key1))
115+
.addGetItem(GetItemEnhancedRequest.create(key2))
116+
.addGetItem(GetItemEnhancedRequest.create(key3))
117+
.build())
141118
.build());
142119

143120
// BatchWriteItem
144-
batchResults = enhancedClient.batchWriteItem(r -> r.addWriteBatch(WriteBatch.builder(Customer.class)
145-
.mappedTableResource(customerTable)
146-
.addPutItem(i -> i.item(customer))
147-
.addDeleteItem(i -> i.key(key1))
148-
.addDeleteItem(i -> i.key(key1))
149-
.build()));
150121
batchResults = enhancedClient.batchWriteItem(
151-
BatchWriteItemEnhancedRequest.builder()
152-
.addWriteBatch(WriteBatch.builder(Customer.class)
153-
.mappedTableResource(customerTable)
154-
.addPutItem(PutItemEnhancedRequest.builder(Customer.class).item(customer).build())
155-
.addDeleteItem(DeleteItemEnhancedRequest.builder().key(key1).build())
156-
.addDeleteItem(DeleteItemEnhancedRequest.builder().key(key2).build())
157-
.build())
122+
BatchWriteItemEnhancedRequest.builder().addWriteBatch(WriteBatch.builder(Customer.class)
123+
.mappedTableResource(customerTable)
124+
.putItem(PutItemEnhancedRequest.create(item))
125+
.deleteItem(DeleteItemEnhancedRequest.create(key1))
126+
.deleteItem(DeleteItemEnhancedRequest.create(key2))
127+
.build())
158128
.build());
159129

160130
// TransactGetItems
161-
transactResults = enhancedClient.transactGetItems(r -> r.addGetItem(customerTable, r -> r.key(Key.create(key1)))
162-
.addGetItem(customerTable, r -> r.key(Key.create(key2))));
163131
transactResults = enhancedClient.transactGetItems(
164132
TransactGetItemsEnhancedRequest.builder()
165-
.addGetItem(customerTable, GetItemEnhancedRequest.builder().key(Key.create(key1)).build())
166-
.addGetItem(customerTable, GetItemEnhancedRequest.builder().key(Key.create(key2)).build())
133+
.addGetItem(customerTable, GetItemEnhancedRequest.create(Key.create(key1)))
134+
.addGetItem(customerTable, GetItemEnhancedRequest.create(Key.create(key2)))
167135
.build());
168136

169137
// TransactWriteItems
170-
enhancedClient.transactWriteItems(r -> r.addConditionCheck(customerTable, i -> i.key(orderKey).conditionExpression(conditionExpression))
171-
.addUpdateItem(customerTable, Customer.class, i -> i.item(customer))
172-
.addDeleteItem(customerTable, i -> i.key(key)));
173-
174138
enhancedClient.transactWriteItems(
175139
TransactWriteItemsEnhancedRequest.builder()
176-
.addConditionCheck(customerTable, ConditionCheck.builder()
177-
.key(orderKey)
178-
.conditionExpression(conditionExpression)
179-
.build())
180-
.addUpdateItem(customerTable, UpdateItemEnhancedRequest.builder(Customer.class)
181-
.item(customer)
182-
.build())
183-
.addDeleteItem(customerTable, DeleteItemEnhancedRequest.builder()
184-
.key(key)
185-
.build())
140+
.addConditionCheck(customerTable, ConditionCheck.create(orderKey, conditionExpression))
141+
.addUpdateItem(customerTable, UpdateItemEnhancedRequest.create(customer))
142+
.addDeleteItem(customerTable, DeleteItemEnhancedRequest.create(key))
186143
.build());
187144
```
188145

@@ -192,7 +149,7 @@ index. Here's an example of how to do this:
192149
```
193150
DynamoDbIndex<Customer> customersByName = customerTable.index("customers_by_name");
194151
195-
Iterable<Page<Customer>> customersWithName = customersByName.query(r -> r.queryConditional(equalTo(Key.create(stringValue("Smith")))));
152+
Iterable<Page<Customer>> customersWithName = customersByName.query(QueryEnhancedRequest.create(equalTo(Key.create(stringValue("Smith")))));
196153
```
197154
198155
### Non-blocking asynchronous operations
@@ -215,7 +172,7 @@ key differences:
215172
application can then do other work without having to block on the
216173
result:
217174
```java
218-
CompletableFuture<Customer> result = mappedTable.getItem(r -> r.key(customerKey));
175+
CompletableFuture<Customer> result = mappedTable.getItem(GetItemEnhancedRequest.create(customerKey));
219176
// Perform other work here
220177
return result.join(); // now block and wait for the result
221178
```
@@ -225,7 +182,7 @@ key differences:
225182
application can then subscribe a handler to that publisher and deal
226183
with the results asynchronously without having to block:
227184
```java
228-
SdkPublisher<Customer> results = mappedTable.query(r -> r.queryConditional(equalTo(Key.create(stringValue("a123")))));
185+
SdkPublisher<Customer> results = mappedTable.query(QueryEnhancedRequest.create(equalTo(Key.create(stringValue("a123")))));
229186
results.subscribe(myCustomerResultsProcessor);
230187
// Perform other work and let the processor handle the results asynchronously
231188
```

services-custom/dynamodb-enhanced/src/main/java/software/amazon/awssdk/extensions/dynamodb/mappingclient/DynamoDbAsyncIndex.java

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515

1616
package software.amazon.awssdk.extensions.dynamodb.mappingclient;
1717

18-
import java.util.function.Consumer;
1918
import software.amazon.awssdk.annotations.SdkPublicApi;
2019
import software.amazon.awssdk.core.async.SdkPublisher;
2120
import software.amazon.awssdk.extensions.dynamodb.mappingclient.model.QueryEnhancedRequest;
@@ -34,22 +33,10 @@ default SdkPublisher<Page<T>> query(QueryEnhancedRequest request) {
3433
throw new UnsupportedOperationException();
3534
}
3635

37-
default SdkPublisher<Page<T>> query(Consumer<QueryEnhancedRequest.Builder> requestConsumer) {
38-
throw new UnsupportedOperationException();
39-
}
40-
4136
default SdkPublisher<Page<T>> scan(ScanEnhancedRequest request) {
4237
throw new UnsupportedOperationException();
4338
}
4439

45-
default SdkPublisher<Page<T>> scan(Consumer<ScanEnhancedRequest.Builder> requestConsumer) {
46-
throw new UnsupportedOperationException();
47-
}
48-
49-
default SdkPublisher<Page<T>> scan() {
50-
throw new UnsupportedOperationException();
51-
}
52-
5340
/**
5441
* Gets the {@link MapperExtension} associated with this mapped resource.
5542
* @return The {@link MapperExtension} associated with this mapped resource.

services-custom/dynamodb-enhanced/src/main/java/software/amazon/awssdk/extensions/dynamodb/mappingclient/DynamoDbAsyncTable.java

Lines changed: 1 addition & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
package software.amazon.awssdk.extensions.dynamodb.mappingclient;
1717

1818
import java.util.concurrent.CompletableFuture;
19-
import java.util.function.Consumer;
2019
import software.amazon.awssdk.annotations.SdkPublicApi;
2120
import software.amazon.awssdk.core.async.SdkPublisher;
2221
import software.amazon.awssdk.extensions.dynamodb.mappingclient.model.CreateTableEnhancedRequest;
@@ -49,65 +48,28 @@ default CompletableFuture<Void> createTable(CreateTableEnhancedRequest request)
4948
throw new UnsupportedOperationException();
5049
}
5150

52-
default CompletableFuture<Void> createTable(Consumer<CreateTableEnhancedRequest.Builder> requestConsumer) {
53-
throw new UnsupportedOperationException();
54-
}
55-
56-
default CompletableFuture<Void> createTable() {
57-
throw new UnsupportedOperationException();
58-
}
59-
60-
default CompletableFuture<T> deleteItem(DeleteItemEnhancedRequest request) {
61-
throw new UnsupportedOperationException();
62-
}
63-
64-
default CompletableFuture<T> deleteItem(Consumer<DeleteItemEnhancedRequest.Builder> requestConsumer) {
51+
default CompletableFuture<T> deleteItem(DeleteItemEnhancedRequest<T> request) {
6552
throw new UnsupportedOperationException();
6653
}
6754

6855
default CompletableFuture<T> getItem(GetItemEnhancedRequest request) {
6956
throw new UnsupportedOperationException();
7057
}
7158

72-
default CompletableFuture<T> getItem(Consumer<GetItemEnhancedRequest.Builder> requestConsumer) {
73-
throw new UnsupportedOperationException();
74-
}
75-
7659
default SdkPublisher<Page<T>> query(QueryEnhancedRequest request) {
7760
throw new UnsupportedOperationException();
7861
}
7962

80-
default SdkPublisher<Page<T>> query(Consumer<QueryEnhancedRequest.Builder> requestConsumer) {
81-
throw new UnsupportedOperationException();
82-
}
83-
8463
default CompletableFuture<Void> putItem(PutItemEnhancedRequest<T> request) {
8564
throw new UnsupportedOperationException();
8665
}
8766

88-
default CompletableFuture<Void> putItem(Class<? extends T> itemClass,
89-
Consumer<PutItemEnhancedRequest.Builder<T>> requestConsumer) {
90-
throw new UnsupportedOperationException();
91-
}
92-
9367
default SdkPublisher<Page<T>> scan(ScanEnhancedRequest request) {
9468
throw new UnsupportedOperationException();
9569
}
9670

97-
default SdkPublisher<Page<T>> scan(Consumer<ScanEnhancedRequest.Builder> requestConsumer) {
98-
throw new UnsupportedOperationException();
99-
}
100-
101-
default SdkPublisher<Page<T>> scan() {
102-
throw new UnsupportedOperationException();
103-
}
104-
10571
default CompletableFuture<T> updateItem(UpdateItemEnhancedRequest<T> request) {
10672
throw new UnsupportedOperationException();
10773
}
10874

109-
default CompletableFuture<T> updateItem(Class<? extends T> itemClass,
110-
Consumer<UpdateItemEnhancedRequest.Builder<T>> requestConsumer) {
111-
throw new UnsupportedOperationException();
112-
}
11375
}

services-custom/dynamodb-enhanced/src/main/java/software/amazon/awssdk/extensions/dynamodb/mappingclient/DynamoDbEnhancedAsyncClient.java

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717

1818
import java.util.List;
1919
import java.util.concurrent.CompletableFuture;
20-
import java.util.function.Consumer;
2120
import software.amazon.awssdk.annotations.SdkPublicApi;
2221
import software.amazon.awssdk.core.async.SdkPublisher;
2322
import software.amazon.awssdk.extensions.dynamodb.mappingclient.core.DefaultDynamoDbEnhancedAsyncClient;
@@ -50,35 +49,18 @@ default SdkPublisher<BatchGetResultPage> batchGetItem(BatchGetItemEnhancedReques
5049
throw new UnsupportedOperationException();
5150
}
5251

53-
default SdkPublisher<BatchGetResultPage> batchGetItem(Consumer<BatchGetItemEnhancedRequest.Builder> requestConsumer) {
54-
throw new UnsupportedOperationException();
55-
}
56-
5752
default CompletableFuture<BatchWriteResult> batchWriteItem(BatchWriteItemEnhancedRequest request) {
5853
throw new UnsupportedOperationException();
5954
}
6055

61-
default CompletableFuture<BatchWriteResult> batchWriteItem(Consumer<BatchWriteItemEnhancedRequest.Builder> requestConsumer) {
62-
throw new UnsupportedOperationException();
63-
}
64-
6556
default CompletableFuture<List<TransactGetResultPage>> transactGetItems(TransactGetItemsEnhancedRequest request) {
6657
throw new UnsupportedOperationException();
6758
}
6859

69-
default CompletableFuture<List<TransactGetResultPage>> transactGetItems(
70-
Consumer<TransactGetItemsEnhancedRequest.Builder> requestConsumer) {
71-
throw new UnsupportedOperationException();
72-
}
73-
7460
default CompletableFuture<Void> transactWriteItems(TransactWriteItemsEnhancedRequest request) {
7561
throw new UnsupportedOperationException();
7662
}
7763

78-
default CompletableFuture<Void> transactWriteItems(Consumer<TransactWriteItemsEnhancedRequest.Builder> requestConsumer) {
79-
throw new UnsupportedOperationException();
80-
}
81-
8264
/**
8365
* Creates a default builder for {@link DynamoDbEnhancedAsyncClient}.
8466
*/

services-custom/dynamodb-enhanced/src/main/java/software/amazon/awssdk/extensions/dynamodb/mappingclient/DynamoDbEnhancedClient.java

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
package software.amazon.awssdk.extensions.dynamodb.mappingclient;
1717

1818
import java.util.List;
19-
import java.util.function.Consumer;
2019
import software.amazon.awssdk.annotations.SdkPublicApi;
2120
import software.amazon.awssdk.core.pagination.sync.SdkIterable;
2221
import software.amazon.awssdk.extensions.dynamodb.mappingclient.core.DefaultDynamoDbEnhancedClient;
@@ -49,34 +48,18 @@ default SdkIterable<BatchGetResultPage> batchGetItem(BatchGetItemEnhancedRequest
4948
throw new UnsupportedOperationException();
5049
}
5150

52-
default SdkIterable<BatchGetResultPage> batchGetItem(Consumer<BatchGetItemEnhancedRequest.Builder> requestConsumer) {
53-
throw new UnsupportedOperationException();
54-
}
55-
5651
default BatchWriteResult batchWriteItem(BatchWriteItemEnhancedRequest request) {
5752
throw new UnsupportedOperationException();
5853
}
5954

60-
default BatchWriteResult batchWriteItem(Consumer<BatchWriteItemEnhancedRequest.Builder> requestConsumer) {
61-
throw new UnsupportedOperationException();
62-
}
63-
6455
default List<TransactGetResultPage> transactGetItems(TransactGetItemsEnhancedRequest request) {
6556
throw new UnsupportedOperationException();
6657
}
6758

68-
default List<TransactGetResultPage> transactGetItems(Consumer<TransactGetItemsEnhancedRequest.Builder> requestConsumer) {
69-
throw new UnsupportedOperationException();
70-
}
71-
7259
default Void transactWriteItems(TransactWriteItemsEnhancedRequest request) {
7360
throw new UnsupportedOperationException();
7461
}
7562

76-
default Void transactWriteItems(Consumer<TransactWriteItemsEnhancedRequest.Builder> requestConsumer) {
77-
throw new UnsupportedOperationException();
78-
}
79-
8063
/**
8164
* Creates a default builder for {@link DynamoDbEnhancedClient}.
8265
*/

0 commit comments

Comments
 (0)