You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by da...@apache.org on 2018/09/13 10:08:44 UTC

svn commit: r1840795 - in /felix/trunk/converter/converter/src: main/java/org/osgi/util/converter/Util.java test/java/org/osgi/util/converter/ConverterMapTest.java

Author: davidb
Date: Thu Sep 13 10:08:44 2018
New Revision: 1840795

URL: http://svn.apache.org/viewvc?rev=1840795&view=rev
Log:
FELIX-5923 Conversion from Map to single element Annotation type does not incorporate PREFIX_

This commit fixes the issue.
It also contains a test case contributed by Arnoud Glimmerveen

Modified:
    felix/trunk/converter/converter/src/main/java/org/osgi/util/converter/Util.java
    felix/trunk/converter/converter/src/test/java/org/osgi/util/converter/ConverterMapTest.java

Modified: felix/trunk/converter/converter/src/main/java/org/osgi/util/converter/Util.java
URL: http://svn.apache.org/viewvc/felix/trunk/converter/converter/src/main/java/org/osgi/util/converter/Util.java?rev=1840795&r1=1840794&r2=1840795&view=diff
==============================================================================
--- felix/trunk/converter/converter/src/main/java/org/osgi/util/converter/Util.java (original)
+++ felix/trunk/converter/converter/src/main/java/org/osgi/util/converter/Util.java Thu Sep 13 10:08:44 2018
@@ -214,7 +214,7 @@ class Util {
 			return null;
 		}
 
-		return toSingleElementAnnotationKey(ann.getSimpleName());
+		return getPrefix(ann) + toSingleElementAnnotationKey(ann.getSimpleName());
 	}
 
 	static Class< ? > getAnnotationType(Class< ? > intf, Object obj) {

Modified: felix/trunk/converter/converter/src/test/java/org/osgi/util/converter/ConverterMapTest.java
URL: http://svn.apache.org/viewvc/felix/trunk/converter/converter/src/test/java/org/osgi/util/converter/ConverterMapTest.java?rev=1840795&r1=1840794&r2=1840795&view=diff
==============================================================================
--- felix/trunk/converter/converter/src/test/java/org/osgi/util/converter/ConverterMapTest.java (original)
+++ felix/trunk/converter/converter/src/test/java/org/osgi/util/converter/ConverterMapTest.java Thu Sep 13 10:08:44 2018
@@ -551,6 +551,13 @@ public class ConverterMapTest {
         assertEquals("987", m2.get("continue"));
     }
 
+    @Test
+    public void testSingleElementAnnotationPrefix() {
+        final Converter converter = Converters.standardConverter();
+        final TestValue testValue = converter.convert(Collections.singletonMap("my.prefix.test.value", true)).to(TestValue.class);
+        assertTrue(testValue.value());
+    }
+    
     private <K,V> Map.Entry<K,V> getMapEntry(Map<K,V> map) {
         assertEquals("This method assumes a map of size 1", 1, map.size());
         return map.entrySet().iterator().next();
@@ -579,6 +586,12 @@ public class ConverterMapTest {
     	long somethingElse() default -87;
     }
 
+    @interface TestValue {
+        static final String PREFIX_ = "my.prefix.";
+
+        boolean value();
+    }
+    
     private static class Foo {
         private final int value;