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 f5652da623
commit e360c23d92
2 changed files with 4 additions and 1 deletions

View File

@@ -664,7 +664,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

@@ -417,6 +417,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);