Skip to content

Commit 999bfcc

Browse files
committed
Removed ctor for toBuilder
1 parent 956ccad commit 999bfcc

File tree

2 files changed

+10
-33
lines changed

2 files changed

+10
-33
lines changed

services-custom/dynamodb-enhanced/src/main/java/software/amazon/awssdk/enhanced/dynamodb/internal/document/DefaultEnhancedDocument.java

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,11 @@ public static DefaultBuilder builder() {
8282

8383
@Override
8484
public Builder toBuilder() {
85-
return new DefaultBuilder(this);
85+
return builder().attributeValueMap(this.attributeValueMap)
86+
.attributeConverterProviders(this.attributeConverterProviders != null
87+
? this.attributeConverterProviders.chainedProviders()
88+
: null);
89+
8690
}
8791

8892
public Map<String, AttributeValue> getAttributeValueMap() {
@@ -338,13 +342,6 @@ public static class DefaultBuilder implements EnhancedDocument.Builder {
338342

339343
List<AttributeConverterProvider> attributeConverterProviders = new ArrayList<>();
340344

341-
public DefaultBuilder(DefaultEnhancedDocument enhancedDocument) {
342-
attributeValueMap.putAll(enhancedDocument.getAttributeValueMap());
343-
attributeConverterProviders = enhancedDocument.attributeConverterProviders != null ?
344-
enhancedDocument.attributeConverterProviders.chainedProviders() : null;
345-
346-
}
347-
348345
public DefaultBuilder() {
349346
}
350347

@@ -462,9 +459,8 @@ public Builder addAttributeConverterProvider(AttributeConverterProvider attribut
462459

463460
@Override
464461
public Builder attributeConverterProviders(List<AttributeConverterProvider> attributeConverterProviders) {
465-
this.attributeConverterProviders = attributeConverterProviders != null ? new ArrayList<>(attributeConverterProviders)
466-
: null;
467-
return null;
462+
this.attributeConverterProviders = attributeConverterProviders;
463+
return this;
468464
}
469465

470466
@Override

services-custom/dynamodb-enhanced/src/test/java/software/amazon/awssdk/enhanced/dynamodb/document/DefaultEnhancedDocumentTest.java

Lines changed: 3 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,6 @@
4040
import software.amazon.awssdk.enhanced.dynamodb.AttributeConverterProvider;
4141
import software.amazon.awssdk.enhanced.dynamodb.DefaultAttributeConverterProvider;
4242
import software.amazon.awssdk.enhanced.dynamodb.EnhancedType;
43-
import software.amazon.awssdk.enhanced.dynamodb.internal.converter.ChainConverterProvider;
44-
import software.amazon.awssdk.enhanced.dynamodb.internal.converter.attribute.BigDecimalAttributeConverter;
45-
import software.amazon.awssdk.enhanced.dynamodb.internal.converter.attribute.BigIntegerAttributeConverter;
46-
import software.amazon.awssdk.enhanced.dynamodb.internal.converter.attribute.LocalDateAttributeConverter;
47-
import software.amazon.awssdk.enhanced.dynamodb.internal.converter.attribute.StringAttributeConverter;
4843
import software.amazon.awssdk.enhanced.dynamodb.internal.document.DefaultEnhancedDocument;
4944
import software.amazon.awssdk.services.dynamodb.model.AttributeValue;
5045
import software.amazon.awssdk.utils.Pair;
@@ -271,7 +266,6 @@ private static Set<String> getStringSet(String... strings) {
271266
return Stream.of(strings).collect(Collectors.toCollection(LinkedHashSet::new));
272267
}
273268

274-
275269
private static DefaultEnhancedDocument.DefaultBuilder documentBuilder() {
276270
DefaultEnhancedDocument.DefaultBuilder defaultBuilder = DefaultEnhancedDocument.builder();
277271
defaultBuilder.addAttributeConverterProvider(AttributeConverterProvider.defaultProvider());
@@ -280,12 +274,10 @@ private static DefaultEnhancedDocument.DefaultBuilder documentBuilder() {
280274

281275
private static AttributeStringValueMap map() {
282276
return new AttributeStringValueMap();
283-
284277
}
285278

286279
public static void validateAttributeValueMapAndDocument(AttributeStringValueMap attributeStringValueMap,
287280
DefaultEnhancedDocument enhancedDocument) {
288-
289281
// assert for keys in Document
290282
assertThat(attributeStringValueMap.getAttributeValueMap().keySet()).isEqualTo(enhancedDocument.asMap().keySet());
291283

@@ -298,7 +290,6 @@ public static void validateAttributeValueMapAndDocument(AttributeStringValueMap
298290
);
299291
}
300292

301-
302293
@ParameterizedTest
303294
@MethodSource("attributeValueMapsCorrespondingDocuments")
304295
void validate_BuilderMethodsOfDefaultDocument(AttributeStringValueMap expectedMap,
@@ -308,9 +299,6 @@ void validate_BuilderMethodsOfDefaultDocument(AttributeStringValueMap expectedMa
308299
* The builder method internally creates a AttributeValueMap which is saved to the ddb, if this matches then
309300
* the document is as expected
310301
*/
311-
312-
System.out.println("enhancedDocument "+enhancedDocument.toJson());
313-
314302
assertThat(enhancedDocument.getAttributeValueMap()).isEqualTo(expectedMap.getAttributeValueMap());
315303
System.out.println("enhancedDocument amp here " +enhancedDocument.getAttributeValueMap());
316304
}
@@ -332,10 +320,9 @@ void validate_GetterMethodsOfDefaultDocument(AttributeStringValueMap expectedMap
332320

333321
@Test
334322
void copyCreatedFromToBuilder(){
335-
336-
337-
DefaultEnhancedDocument originalDoc = (DefaultEnhancedDocument) documentBuilder().add(SIMPLE_STRING_KEY, SIMPLE_STRING)
338-
.build();
323+
DefaultEnhancedDocument originalDoc = (DefaultEnhancedDocument) documentBuilder()
324+
.add(SIMPLE_STRING_KEY, SIMPLE_STRING)
325+
.build();
339326
DefaultEnhancedDocument copiedDoc = (DefaultEnhancedDocument) originalDoc.toBuilder().build();
340327
DefaultEnhancedDocument copyAndAlter =
341328
(DefaultEnhancedDocument) originalDoc.toBuilder().addString("keyOne", "valueOne").build();
@@ -345,8 +332,6 @@ void copyCreatedFromToBuilder(){
345332
assertThat(copyAndAlter.getString(SIMPLE_STRING_KEY)).isEqualTo(SIMPLE_STRING);
346333
assertThat(copyAndAlter.getString("keyOne")).isEqualTo("valueOne");
347334
assertThat(originalDoc).isEqualTo(copiedDoc);
348-
349-
350335
}
351336

352337
@Test
@@ -369,7 +354,6 @@ void nullDocumentGet(){
369354
assertThat(document.isNull("nullAttribute")).isTrue();
370355
}
371356

372-
373357
@Test
374358
void multipleGetterForDocument(){
375359

@@ -391,7 +375,6 @@ void multipleGetterForDocument(){
391375
getStringSet(STRINGS_ARRAY)).build())
392376
.build();
393377

394-
395378
assertThat(document.getString(SIMPLE_STRING_KEY)).isEqualTo(SIMPLE_STRING);
396379
assertThat(document.getSdkNumber(SIMPLE_NUMBER_KEY).intValue()).isEqualTo(1);
397380

@@ -419,7 +402,6 @@ void multipleGetterForDocument(){
419402
assertThat(document.getTypeOf("nullKey")).isNull();
420403
}
421404

422-
423405
static class AttributeStringValueMap {
424406
Map<String, AttributeValue> attributeValueMap = new LinkedHashMap<>();
425407

@@ -432,5 +414,4 @@ AttributeStringValueMap withKeyValue(String key, AttributeValue value) {
432414
return this;
433415
}
434416
}
435-
436417
}

0 commit comments

Comments
 (0)