You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by cz...@apache.org on 2019/06/07 11:54:23 UTC

svn commit: r1860746 - in /felix/trunk/configurator: pom.xml src/main/java/org/apache/felix/configurator/impl/json/JSONUtil.java src/main/java/org/apache/felix/configurator/impl/json/TypeConverter.java

Author: cziegeler
Date: Fri Jun  7 11:54:23 2019
New Revision: 1860746

URL: http://svn.apache.org/viewvc?rev=1860746&view=rev
Log:
FELIX-6143 : Don't embedd javax.json and converter

Modified:
    felix/trunk/configurator/pom.xml
    felix/trunk/configurator/src/main/java/org/apache/felix/configurator/impl/json/JSONUtil.java
    felix/trunk/configurator/src/main/java/org/apache/felix/configurator/impl/json/TypeConverter.java

Modified: felix/trunk/configurator/pom.xml
URL: http://svn.apache.org/viewvc/felix/trunk/configurator/pom.xml?rev=1860746&r1=1860745&r2=1860746&view=diff
==============================================================================
--- felix/trunk/configurator/pom.xml (original)
+++ felix/trunk/configurator/pom.xml Fri Jun  7 11:54:23 2019
@@ -70,7 +70,6 @@
                         <Provide-Capability>
                             osgi.extender;osgi.extender="osgi.configurator";version:Version="1.0"
                         </Provide-Capability>
-                        <Embed-Dependency>geronimo-json_1.0_spec,johnzon-core,org.apache.felix.converter</Embed-Dependency>
                     </instructions>
                 </configuration>
             </plugin>

Modified: felix/trunk/configurator/src/main/java/org/apache/felix/configurator/impl/json/JSONUtil.java
URL: http://svn.apache.org/viewvc/felix/trunk/configurator/src/main/java/org/apache/felix/configurator/impl/json/JSONUtil.java?rev=1860746&r1=1860745&r2=1860746&view=diff
==============================================================================
--- felix/trunk/configurator/src/main/java/org/apache/felix/configurator/impl/json/JSONUtil.java (original)
+++ felix/trunk/configurator/src/main/java/org/apache/felix/configurator/impl/json/JSONUtil.java Fri Jun  7 11:54:23 2019
@@ -36,6 +36,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Set;
 
+import javax.json.Json;
 import javax.json.JsonArray;
 import javax.json.JsonArrayBuilder;
 import javax.json.JsonNumber;
@@ -51,7 +52,6 @@ import org.apache.felix.configurator.imp
 import org.apache.felix.configurator.impl.model.Config;
 import org.apache.felix.configurator.impl.model.ConfigPolicy;
 import org.apache.felix.configurator.impl.model.ConfigurationFile;
-import org.apache.johnzon.core.JsonProviderImpl;
 import org.osgi.service.configurator.ConfiguratorConstants;
 
 public class JSONUtil {
@@ -261,43 +261,43 @@ public class JSONUtil {
     }
 
     public static JsonStructure build(final Object value) {
-        if ( value instanceof List ) {
+        if (value instanceof List) {
             @SuppressWarnings("unchecked")
-            final List<Object> list = (List<Object>)value;
-            final JsonArrayBuilder builder = new JsonProviderImpl().createArrayBuilder();
-            for(final Object obj : list) {
-                if ( obj instanceof String ) {
+            final List<Object> list = (List<Object>) value;
+            final JsonArrayBuilder builder = Json.createArrayBuilder();
+            for (final Object obj : list) {
+                if (obj instanceof String) {
                     builder.add(obj.toString());
-                } else if ( obj instanceof Long ) {
-                    builder.add((Long)obj);
-                } else if ( obj instanceof Double ) {
-                    builder.add((Double)obj);
-                } else if (obj instanceof Boolean ) {
-                    builder.add((Boolean)obj);
-                } else if ( obj instanceof Map ) {
+                } else if (obj instanceof Long) {
+                    builder.add((Long) obj);
+                } else if (obj instanceof Double) {
+                    builder.add((Double) obj);
+                } else if (obj instanceof Boolean) {
+                    builder.add((Boolean) obj);
+                } else if (obj instanceof Map) {
                     builder.add(build(obj));
-                } else if ( obj instanceof List ) {
+                } else if (obj instanceof List) {
                     builder.add(build(obj));
                 }
 
             }
             return builder.build();
-        } else if ( value instanceof Map ) {
+        } else if (value instanceof Map) {
             @SuppressWarnings("unchecked")
-            final Map<String, Object> map = (Map<String, Object>)value;
-            final JsonObjectBuilder builder = new JsonProviderImpl().createObjectBuilder();
-            for(final Map.Entry<String, Object> entry : map.entrySet()) {
-                if ( entry.getValue() instanceof String ) {
+            final Map<String, Object> map = (Map<String, Object>) value;
+            final JsonObjectBuilder builder = Json.createObjectBuilder();
+            for (final Map.Entry<String, Object> entry : map.entrySet()) {
+                if (entry.getValue() instanceof String) {
                     builder.add(entry.getKey(), entry.getValue().toString());
-                } else if ( entry.getValue() instanceof Long ) {
-                    builder.add(entry.getKey(), (Long)entry.getValue());
-                } else if ( entry.getValue() instanceof Double ) {
-                    builder.add(entry.getKey(), (Double)entry.getValue());
-                } else if ( entry.getValue() instanceof Boolean ) {
-                    builder.add(entry.getKey(), (Boolean)entry.getValue());
-                } else if ( entry.getValue() instanceof Map ) {
+                } else if (entry.getValue() instanceof Long) {
+                    builder.add(entry.getKey(), (Long) entry.getValue());
+                } else if (entry.getValue() instanceof Double) {
+                    builder.add(entry.getKey(), (Double) entry.getValue());
+                } else if (entry.getValue() instanceof Boolean) {
+                    builder.add(entry.getKey(), (Boolean) entry.getValue());
+                } else if (entry.getValue() instanceof Map) {
                     builder.add(entry.getKey(), build(entry.getValue()));
-                } else if ( entry.getValue() instanceof List ) {
+                } else if (entry.getValue() instanceof List) {
                     builder.add(entry.getKey(), build(entry.getValue()));
                 }
             }
@@ -326,11 +326,11 @@ public class JSONUtil {
             report.errors.add("Invalid JSON from " + name);
             return null;
         }
-        // Jonhzon is packaged in, so we can just use the impl type to avoid ClassLoader mess
-        try (final JsonReader reader = new JsonProviderImpl().createReader(new StringReader(contents)) ) {
+        try (final JsonReader reader = Json.createReader(new StringReader(contents))) {
+
             final JsonStructure obj = reader.read();
-            if ( obj != null && obj.getValueType() == ValueType.OBJECT ) {
-                return (JsonObject)obj;
+            if (obj != null && obj.getValueType() == ValueType.OBJECT) {
+                return (JsonObject) obj;
             }
             report.errors.add("Invalid JSON from " + name);
         }

Modified: felix/trunk/configurator/src/main/java/org/apache/felix/configurator/impl/json/TypeConverter.java
URL: http://svn.apache.org/viewvc/felix/trunk/configurator/src/main/java/org/apache/felix/configurator/impl/json/TypeConverter.java?rev=1860746&r1=1860745&r2=1860746&view=diff
==============================================================================
--- felix/trunk/configurator/src/main/java/org/apache/felix/configurator/impl/json/TypeConverter.java (original)
+++ felix/trunk/configurator/src/main/java/org/apache/felix/configurator/impl/json/TypeConverter.java Fri Jun  7 11:54:23 2019
@@ -28,9 +28,9 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
+import javax.json.Json;
 import javax.json.JsonStructure;
 
-import org.apache.johnzon.core.JsonProviderImpl;
 import org.osgi.util.converter.Converter;
 import org.osgi.util.converter.ConverterFunction;
 import org.osgi.util.converter.Converters;
@@ -56,7 +56,7 @@ public class TypeConverter {
                         if ( obj instanceof Map || obj instanceof List ) {
                             final JsonStructure json = JSONUtil.build(obj);
                             final StringWriter w = new StringWriter();
-                            new JsonProviderImpl().createWriter(w).write(json);
+                            Json.createWriter(w).write(json);
                             return w.toString();
                         }
                         return CANNOT_HANDLE;