DATACOUCH-376 - Apply custom conversions for collection elements

Original Pull Request: #164.
This commit is contained in:
Subhashni Balakrishnan
2018-05-03 14:29:04 -07:00
parent 3528823414
commit 8a4fdde354
2 changed files with 4 additions and 1 deletions

View File

@@ -660,7 +660,7 @@ public class MappingCouchbaseConverter extends AbstractCouchbaseConverter
Class<?> elementType = element == null ? null : element.getClass();
if (elementType == null || conversions.isSimpleType(elementType)) {
target.put(element);
target.put(getPotentiallyConvertedSimpleWrite(element));
} else if (element instanceof Collection || elementType.isArray()) {
target.put(writeCollectionInternal(asCollection(element), new CouchbaseList(conversions.getSimpleTypeHolder()), componentType));
} else {

View File

@@ -413,6 +413,9 @@ public class MappingCouchbaseConverterTests {
mapOfValuesDoc.put("val1", valueStr);
mapOfValuesDoc.put("val2", value2Str);
source.put("mapOfValues", mapOfValuesDoc);
assertEquals(((CouchbaseList)converted.getPayload().get("listOfValues")).get(0), valueStr);
assertEquals(((CouchbaseList)converted.getPayload().get("listOfValues")).get(1), value2Str);
assertEquals(source.export().toString(), converted.export().toString());
CustomEntity readConverted = converter.read(CustomEntity.class, source);