You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cz...@apache.org on 2018/07/25 19:19:50 UTC
[sling-org-apache-sling-feature-io] branch master updated: SLING-7784 : Unable to add comments to the removals → bundles section
This is an automated email from the ASF dual-hosted git repository.
cziegeler pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-feature-io.git
The following commit(s) were added to refs/heads/master by this push:
new 193b49f SLING-7784 : Unable to add comments to the removals → bundles section
193b49f is described below
commit 193b49fd747ff93a52c154e839e2a65cce5d669f
Author: Carsten Ziegeler <cz...@adobe.com>
AuthorDate: Wed Jul 25 21:19:43 2018 +0200
SLING-7784 : Unable to add comments to the removals → bundles section
---
.../sling/feature/io/json/FeatureJSONReader.java | 26 +++++++++++-------
.../sling/feature/io/json/JSONReaderBase.java | 32 ++++++++++++----------
2 files changed, 34 insertions(+), 24 deletions(-)
diff --git a/src/main/java/org/apache/sling/feature/io/json/FeatureJSONReader.java b/src/main/java/org/apache/sling/feature/io/json/FeatureJSONReader.java
index bff858a..0862253 100644
--- a/src/main/java/org/apache/sling/feature/io/json/FeatureJSONReader.java
+++ b/src/main/java/org/apache/sling/feature/io/json/FeatureJSONReader.java
@@ -16,14 +16,6 @@
*/
package org.apache.sling.feature.io.json;
-import org.apache.felix.utils.resource.CapabilityImpl;
-import org.apache.felix.utils.resource.RequirementImpl;
-import org.apache.sling.feature.ArtifactId;
-import org.apache.sling.feature.Feature;
-import org.apache.sling.feature.Include;
-import org.osgi.resource.Capability;
-import org.osgi.resource.Requirement;
-
import java.io.IOException;
import java.io.Reader;
import java.io.StringReader;
@@ -36,6 +28,14 @@ import java.util.function.BiConsumer;
import javax.json.Json;
import javax.json.JsonObject;
+import org.apache.felix.utils.resource.CapabilityImpl;
+import org.apache.felix.utils.resource.RequirementImpl;
+import org.apache.sling.feature.ArtifactId;
+import org.apache.sling.feature.Feature;
+import org.apache.sling.feature.Include;
+import org.osgi.resource.Capability;
+import org.osgi.resource.Requirement;
+
/**
* This class offers a method to read a {@code Feature} using a {@code Reader} instance.
*/
@@ -210,6 +210,9 @@ public class FeatureJSONReader extends JSONReaderBase {
final List<Object> list = (List<Object>)removalObj.get(JSONConstants.FEATURE_BUNDLES);
for(final Object val : list) {
checkType("Include removal bundles", val, String.class);
+ if ( val.toString().startsWith("#")) {
+ continue;
+ }
include.getBundleRemovals().add(ArtifactId.parse(val.toString()));
}
}
@@ -218,7 +221,7 @@ public class FeatureJSONReader extends JSONReaderBase {
@SuppressWarnings("unchecked")
final List<Object> list = (List<Object>)removalObj.get(JSONConstants.FEATURE_CONFIGURATIONS);
for(final Object val : list) {
- checkType("Include removal bundles", val, String.class);
+ checkType("Include removal configuration", val, String.class);
include.getConfigurationRemovals().add(val.toString());
}
}
@@ -227,7 +230,7 @@ public class FeatureJSONReader extends JSONReaderBase {
@SuppressWarnings("unchecked")
final List<Object> list = (List<Object>)removalObj.get(JSONConstants.FEATURE_FRAMEWORK_PROPERTIES);
for(final Object val : list) {
- checkType("Include removal bundles", val, String.class);
+ checkType("Include removal framework properties", val, String.class);
include.getFrameworkPropertiesRemovals().add(val.toString());
}
}
@@ -238,6 +241,9 @@ public class FeatureJSONReader extends JSONReaderBase {
for(final Object val : list) {
checkType("Include removal extension", val, String.class, Map.class);
if ( val instanceof String ) {
+ if ( val.toString().startsWith("#")) {
+ continue;
+ }
include.getExtensionRemovals().add(val.toString());
} else {
@SuppressWarnings("unchecked")
diff --git a/src/main/java/org/apache/sling/feature/io/json/JSONReaderBase.java b/src/main/java/org/apache/sling/feature/io/json/JSONReaderBase.java
index 35738bc..2ee18ef 100644
--- a/src/main/java/org/apache/sling/feature/io/json/JSONReaderBase.java
+++ b/src/main/java/org/apache/sling/feature/io/json/JSONReaderBase.java
@@ -16,20 +16,6 @@
*/
package org.apache.sling.feature.io.json;
-import org.apache.felix.configurator.impl.json.JSMin;
-import org.apache.felix.configurator.impl.json.JSONUtil;
-import org.apache.felix.configurator.impl.json.TypeConverter;
-import org.apache.felix.configurator.impl.model.Config;
-import org.apache.sling.feature.Artifact;
-import org.apache.sling.feature.ArtifactId;
-import org.apache.sling.feature.Bundles;
-import org.apache.sling.feature.Configuration;
-import org.apache.sling.feature.Configurations;
-import org.apache.sling.feature.Extension;
-import org.apache.sling.feature.ExtensionType;
-import org.apache.sling.feature.Extensions;
-import org.apache.sling.feature.KeyValueMap;
-
import java.io.IOException;
import java.io.Reader;
import java.io.StringWriter;
@@ -55,6 +41,20 @@ 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;
+import org.apache.felix.configurator.impl.model.Config;
+import org.apache.sling.feature.Artifact;
+import org.apache.sling.feature.ArtifactId;
+import org.apache.sling.feature.Bundles;
+import org.apache.sling.feature.Configuration;
+import org.apache.sling.feature.Configurations;
+import org.apache.sling.feature.Extension;
+import org.apache.sling.feature.ExtensionType;
+import org.apache.sling.feature.Extensions;
+import org.apache.sling.feature.KeyValueMap;
+
/**
* Common methods for JSON reading.
*/
@@ -224,6 +224,10 @@ abstract class JSONReaderBase {
final Artifact artifact;
checkType(artifactType, entry, Map.class, String.class);
if ( entry instanceof String ) {
+ // skip comments
+ if ( entry.toString().startsWith("#") ) {
+ continue;
+ }
artifact = new Artifact(ArtifactId.parse(handleResolveVars(entry).toString()));
} else {
@SuppressWarnings("unchecked")