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 2015/06/08 13:57:32 UTC

svn commit: r1684166 - in /sling/trunk/tooling/support/provisioning-model/src: main/java/org/apache/sling/provisioning/model/io/ test/java/org/apache/sling/provisioning/model/

Author: cziegeler
Date: Mon Jun  8 11:57:31 2015
New Revision: 1684166

URL: http://svn.apache.org/r1684166
Log:
SLING-4786 : Attributes and configuration format are wronlgy written out

Modified:
    sling/trunk/tooling/support/provisioning-model/src/main/java/org/apache/sling/provisioning/model/io/ModelReader.java
    sling/trunk/tooling/support/provisioning-model/src/main/java/org/apache/sling/provisioning/model/io/ModelWriter.java
    sling/trunk/tooling/support/provisioning-model/src/test/java/org/apache/sling/provisioning/model/U.java

Modified: sling/trunk/tooling/support/provisioning-model/src/main/java/org/apache/sling/provisioning/model/io/ModelReader.java
URL: http://svn.apache.org/viewvc/sling/trunk/tooling/support/provisioning-model/src/main/java/org/apache/sling/provisioning/model/io/ModelReader.java?rev=1684166&r1=1684165&r2=1684166&view=diff
==============================================================================
--- sling/trunk/tooling/support/provisioning-model/src/main/java/org/apache/sling/provisioning/model/io/ModelReader.java (original)
+++ sling/trunk/tooling/support/provisioning-model/src/main/java/org/apache/sling/provisioning/model/io/ModelReader.java Mon Jun  8 11:57:31 2015
@@ -32,7 +32,9 @@ import org.apache.sling.provisioning.mod
 import org.apache.sling.provisioning.model.ModelConstants;
 import org.apache.sling.provisioning.model.RunMode;
 
-
+/**
+ * This class offers a method to read a model using a {@code Reader} instance.
+ */
 public class ModelReader {
 
     private enum CATEGORY {
@@ -56,8 +58,11 @@ public class ModelReader {
 
     /**
      * Reads the model file
-     * The reader is not closed.
-     * @throws IOException
+     * The reader is not closed. It is up to the caller to close the reader.
+     *
+     * @param reader The reader providing the model
+     * @param location Optional location string identifying the source of the model.
+     * @throws IOException If an error occurs
      */
     public static Model read(final Reader reader, final String location)
     throws IOException {
@@ -69,14 +74,14 @@ public class ModelReader {
 
     private final Model model = new Model();
 
-    private Feature feature = null;
-    private RunMode runMode = null;
-    private ArtifactGroup artifactGroup = null;
-    private Configuration config = null;
+    private Feature feature;
+    private RunMode runMode;
+    private ArtifactGroup artifactGroup;
+    private Configuration config;
 
-    private String comment = null;
+    private String comment;
 
-    private StringBuilder configBuilder = null;
+    private StringBuilder configBuilder;
 
     private LineNumberReader lineNumberReader;
 

Modified: sling/trunk/tooling/support/provisioning-model/src/main/java/org/apache/sling/provisioning/model/io/ModelWriter.java
URL: http://svn.apache.org/viewvc/sling/trunk/tooling/support/provisioning-model/src/main/java/org/apache/sling/provisioning/model/io/ModelWriter.java?rev=1684166&r1=1684165&r2=1684166&view=diff
==============================================================================
--- sling/trunk/tooling/support/provisioning-model/src/main/java/org/apache/sling/provisioning/model/io/ModelWriter.java (original)
+++ sling/trunk/tooling/support/provisioning-model/src/main/java/org/apache/sling/provisioning/model/io/ModelWriter.java Mon Jun  8 11:57:31 2015
@@ -147,7 +147,7 @@ public class ModelWriter {
                             for(final Map.Entry<String, String> entry : ad.getMetadata().entrySet()) {
                                 if ( first ) {
                                     first = false;
-                                    pw.print(" { ");
+                                    pw.print(" [");
                                 } else {
                                     pw.print(", ");
                                 }
@@ -155,7 +155,7 @@ public class ModelWriter {
                                 pw.print("=");
                                 pw.print(entry.getValue());
                             }
-                            pw.print("}");
+                            pw.print("]");
                         }
                         pw.println();
                     }
@@ -182,9 +182,9 @@ public class ModelWriter {
                         }
                         pw.print(config.getPid());
                         if ( !ModelConstants.CFG_FORMAT_FELIX_CA.equals(format) ) {
-                            pw.print(" { format=}");
+                            pw.print(" [format=");
                             pw.print(format);
-                            pw.print(" }");
+                            pw.print("]");
                         }
                         pw.println();
 

Modified: sling/trunk/tooling/support/provisioning-model/src/test/java/org/apache/sling/provisioning/model/U.java
URL: http://svn.apache.org/viewvc/sling/trunk/tooling/support/provisioning-model/src/test/java/org/apache/sling/provisioning/model/U.java?rev=1684166&r1=1684165&r2=1684166&view=diff
==============================================================================
--- sling/trunk/tooling/support/provisioning-model/src/test/java/org/apache/sling/provisioning/model/U.java (original)
+++ sling/trunk/tooling/support/provisioning-model/src/test/java/org/apache/sling/provisioning/model/U.java Mon Jun  8 11:57:31 2015
@@ -117,6 +117,20 @@ public class U {
                 U.assertArtifact(g, "mvn:org.apache.sling/org.apache.sling.fragment.ws/${ws.version}/jar");
             }
         }
+        final Feature exampleFeature = m.getFeature("example");
+        final RunMode defaultExampleRM = exampleFeature.getRunMode();
+        final List<Configuration> configs = assertConfigurationsInRunMode(defaultExampleRM, 3);
+        final Configuration cfg = assertConfiguration(configs, "org.apache.sling.another.config");
+    }
+
+    public static Configuration assertConfiguration(final List<Configuration> configs, final String pid) {
+        for(final Configuration c : configs) {
+            if ( c.getPid().equals(pid) && c.getFactoryPid() == null ) {
+                return c;
+            }
+        }
+        fail("Configuration with PID " + pid + " not found in " + configs);
+        return null;
     }
 
     public static void assertArtifact(final Artifact artifact,