Author: dleangen Date: Thu Aug 3 11:27:06 2017 New Revision: 1803984 URL: http://svn.apache.org/viewvc?rev=1803984&view=rev Log: targetAsDTO was being ignored
Modified: felix/trunk/converter/converter/src/main/java/org/apache/felix/converter/impl/AbstractSpecifying.java felix/trunk/converter/converter/src/main/java/org/apache/felix/converter/impl/ConvertingImpl.java felix/trunk/converter/converter/src/test/java/org/apache/felix/converter/impl/ConverterTest.java Modified: felix/trunk/converter/converter/src/main/java/org/apache/felix/converter/impl/AbstractSpecifying.java URL: http://svn.apache.org/viewvc/felix/trunk/converter/converter/src/main/java/org/apache/felix/converter/impl/AbstractSpecifying.java?rev=1803984&r1=1803983&r2=1803984&view=diff ============================================================================== --- felix/trunk/converter/converter/src/main/java/org/apache/felix/converter/impl/AbstractSpecifying.java (original) +++ felix/trunk/converter/converter/src/main/java/org/apache/felix/converter/impl/AbstractSpecifying.java Thu Aug 3 11:27:06 2017 @@ -95,7 +95,7 @@ public abstract class AbstractSpecifying // To avoid ambiguity, reset any instruction to targetAsJavaBean targetAsJavaBean = false; targetAsDTO = true; - return null; + return castThis(); } } Modified: felix/trunk/converter/converter/src/main/java/org/apache/felix/converter/impl/ConvertingImpl.java URL: http://svn.apache.org/viewvc/felix/trunk/converter/converter/src/main/java/org/apache/felix/converter/impl/ConvertingImpl.java?rev=1803984&r1=1803983&r2=1803984&view=diff ============================================================================== --- felix/trunk/converter/converter/src/main/java/org/apache/felix/converter/impl/ConvertingImpl.java (original) +++ felix/trunk/converter/converter/src/main/java/org/apache/felix/converter/impl/ConvertingImpl.java Thu Aug 3 11:27:06 2017 @@ -194,7 +194,7 @@ public class ConvertingImpl extends Abst return convertToArray(); } else if (Collection.class.isAssignableFrom(targetAsClass)) { return convertToCollection(); - } else if (DTOUtil.isDTOType(targetAsClass)) { + } else if (targetAsDTO || DTOUtil.isDTOType(targetAsClass)) { return convertToDTO(); } else if (isMapType(targetAsClass, targetAsJavaBean)) { return convertToMapType(); Modified: felix/trunk/converter/converter/src/test/java/org/apache/felix/converter/impl/ConverterTest.java URL: http://svn.apache.org/viewvc/felix/trunk/converter/converter/src/test/java/org/apache/felix/converter/impl/ConverterTest.java?rev=1803984&r1=1803983&r2=1803984&view=diff ============================================================================== --- felix/trunk/converter/converter/src/test/java/org/apache/felix/converter/impl/ConverterTest.java (original) +++ felix/trunk/converter/converter/src/test/java/org/apache/felix/converter/impl/ConverterTest.java Thu Aug 3 11:27:06 2017 @@ -1022,6 +1022,22 @@ public class ConverterTest { assertEquals("{}", cs); } + @Test + public void testTargetAsDTO() { + MyDTOWithMethods expected = new MyDTOWithMethods(); + expected.count = Count.ONE; + expected.ping = "pong"; + expected.pong = 42; + Map m = new HashMap<>(); + m.put("count", Count.ONE); + m.put("ping", "pong"); + m.put("pong", 42); + MyDTOWithMethods actual = converter.convert(m).targetAsDTO().to(MyDTOWithMethods.class); + assertEquals(expected.count, actual.count); + assertEquals(expected.ping, actual.ping); + assertEquals(expected.pong, actual.pong); + } + @SuppressWarnings("rawtypes") @Test public void testLongArrayToLongCollection() {