Author: cziegeler
Date: Tue Aug 15 13:06:02 2017
New Revision: 1805076

URL: http://svn.apache.org/viewvc?rev=1805076&view=rev
Log:
Add missing read of framework id

Modified:
    
sling/whiteboard/cziegeler/feature-support/src/main/java/org/apache/sling/feature/support/json/ApplicationJSONReader.java
    
sling/whiteboard/cziegeler/feature-support/src/main/java/org/apache/sling/feature/support/json/FeatureJSONReader.java
    
sling/whiteboard/cziegeler/feature-support/src/main/java/org/apache/sling/feature/support/json/JSONReaderBase.java

Modified: 
sling/whiteboard/cziegeler/feature-support/src/main/java/org/apache/sling/feature/support/json/ApplicationJSONReader.java
URL: 
http://svn.apache.org/viewvc/sling/whiteboard/cziegeler/feature-support/src/main/java/org/apache/sling/feature/support/json/ApplicationJSONReader.java?rev=1805076&r1=1805075&r2=1805076&view=diff
==============================================================================
--- 
sling/whiteboard/cziegeler/feature-support/src/main/java/org/apache/sling/feature/support/json/ApplicationJSONReader.java
 (original)
+++ 
sling/whiteboard/cziegeler/feature-support/src/main/java/org/apache/sling/feature/support/json/ApplicationJSONReader.java
 Tue Aug 15 13:06:02 2017
@@ -16,16 +16,18 @@
  */
 package org.apache.sling.feature.support.json;
 
-import org.apache.felix.configurator.impl.json.JSONUtil;
-import org.apache.sling.feature.Application;
-
-import javax.json.Json;
-import javax.json.JsonObject;
 import java.io.IOException;
 import java.io.Reader;
 import java.io.StringReader;
 import java.util.Map;
 
+import javax.json.Json;
+import javax.json.JsonObject;
+
+import org.apache.felix.configurator.impl.json.JSONUtil;
+import org.apache.sling.feature.Application;
+import org.apache.sling.feature.ArtifactId;
+
 /**
  * This class offers a method to read an {@code Application} using a {@code 
Reader} instance.
  */
@@ -73,6 +75,10 @@ public class ApplicationJSONReader exten
         @SuppressWarnings("unchecked")
         final Map<String, Object> map = (Map<String, Object>) 
JSONUtil.getValue(json);
 
+        final String frameworkId = this.getProperty(map, 
JSONConstants.APP_FRAMEWORK);
+        if ( frameworkId != null ) {
+            app.setFramework(ArtifactId.fromMvnId(frameworkId));
+        }
         this.readBundles(map, app.getBundles(), app.getConfigurations());
         this.readFrameworkProperties(map, app.getFrameworkProperties());
         this.readConfigurations(map, app.getConfigurations());

Modified: 
sling/whiteboard/cziegeler/feature-support/src/main/java/org/apache/sling/feature/support/json/FeatureJSONReader.java
URL: 
http://svn.apache.org/viewvc/sling/whiteboard/cziegeler/feature-support/src/main/java/org/apache/sling/feature/support/json/FeatureJSONReader.java?rev=1805076&r1=1805075&r2=1805076&view=diff
==============================================================================
--- 
sling/whiteboard/cziegeler/feature-support/src/main/java/org/apache/sling/feature/support/json/FeatureJSONReader.java
 (original)
+++ 
sling/whiteboard/cziegeler/feature-support/src/main/java/org/apache/sling/feature/support/json/FeatureJSONReader.java
 Tue Aug 15 13:06:02 2017
@@ -16,15 +16,10 @@
  */
 package org.apache.sling.feature.support.json;
 
-import org.apache.felix.configurator.impl.json.JSONUtil;
-import org.apache.sling.feature.ArtifactId;
-import org.apache.sling.feature.Capability;
-import org.apache.sling.feature.Feature;
-import org.apache.sling.feature.Include;
-import org.apache.sling.feature.Requirement;
+import static 
org.apache.sling.feature.support.util.LambdaUtil.rethrowBiConsumer;
+import static 
org.apache.sling.feature.support.util.ManifestUtil.unmarshalAttribute;
+import static 
org.apache.sling.feature.support.util.ManifestUtil.unmarshalDirective;
 
-import javax.json.Json;
-import javax.json.JsonObject;
 import java.io.IOException;
 import java.io.Reader;
 import java.io.StringReader;
@@ -32,9 +27,15 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 
-import static 
org.apache.sling.feature.support.util.LambdaUtil.rethrowBiConsumer;
-import static 
org.apache.sling.feature.support.util.ManifestUtil.unmarshalAttribute;
-import static 
org.apache.sling.feature.support.util.ManifestUtil.unmarshalDirective;
+import javax.json.Json;
+import javax.json.JsonObject;
+
+import org.apache.felix.configurator.impl.json.JSONUtil;
+import org.apache.sling.feature.ArtifactId;
+import org.apache.sling.feature.Capability;
+import org.apache.sling.feature.Feature;
+import org.apache.sling.feature.Include;
+import org.apache.sling.feature.Requirement;
 
 /**
  * This class offers a method to read a {@code Feature} using a {@code Reader} 
instance.
@@ -157,15 +158,6 @@ public class FeatureJSONReader extends J
         return feature;
     }
 
-    private String getProperty(final Map<String, Object> map, final String 
key) throws IOException {
-        final Object val = map.get(key);
-        if ( val != null ) {
-            checkType(key, val, String.class);
-            return val.toString();
-        }
-        return null;
-    }
-
     private void readIncludes(final Map<String, Object> map) throws 
IOException {
         if ( map.containsKey(JSONConstants.FEATURE_INCLUDES)) {
             final Object includesObj = map.get(JSONConstants.FEATURE_INCLUDES);

Modified: 
sling/whiteboard/cziegeler/feature-support/src/main/java/org/apache/sling/feature/support/json/JSONReaderBase.java
URL: 
http://svn.apache.org/viewvc/sling/whiteboard/cziegeler/feature-support/src/main/java/org/apache/sling/feature/support/json/JSONReaderBase.java?rev=1805076&r1=1805075&r2=1805076&view=diff
==============================================================================
--- 
sling/whiteboard/cziegeler/feature-support/src/main/java/org/apache/sling/feature/support/json/JSONReaderBase.java
 (original)
+++ 
sling/whiteboard/cziegeler/feature-support/src/main/java/org/apache/sling/feature/support/json/JSONReaderBase.java
 Tue Aug 15 13:06:02 2017
@@ -16,6 +16,24 @@
  */
 package org.apache.sling.feature.support.json;
 
+import java.io.IOException;
+import java.io.Reader;
+import java.io.StringWriter;
+import java.io.Writer;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import javax.json.Json;
+import javax.json.JsonArrayBuilder;
+import javax.json.JsonObjectBuilder;
+import javax.json.JsonStructure;
+import javax.json.JsonWriter;
+
 import org.apache.felix.configurator.impl.json.JSMin;
 import org.apache.felix.configurator.impl.json.JSONUtil;
 import org.apache.felix.configurator.impl.json.TypeConverter;
@@ -30,23 +48,6 @@ import org.apache.sling.feature.Extensio
 import org.apache.sling.feature.Extensions;
 import org.apache.sling.feature.KeyValueMap;
 
-import javax.json.Json;
-import javax.json.JsonArrayBuilder;
-import javax.json.JsonObjectBuilder;
-import javax.json.JsonStructure;
-import javax.json.JsonWriter;
-import java.io.IOException;
-import java.io.Reader;
-import java.io.StringWriter;
-import java.io.Writer;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Enumeration;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
 /**
  * Common methods for JSON reading.
  */
@@ -82,6 +83,15 @@ abstract class JSONReaderBase {
         return contents;
     }
 
+    protected String getProperty(final Map<String, Object> map, final String 
key) throws IOException {
+        final Object val = map.get(key);
+        if ( val != null ) {
+            checkType(key, val, String.class);
+            return val.toString();
+        }
+        return null;
+    }
+
     /**
      * Read the bundles / start levels section
      * @param map The map describing the feature


Reply via email to