You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by si...@apache.org on 2019/02/28 14:21:13 UTC

[sling-whiteboard] branch master updated: [cp2fm] resolved all runtime dependencies and adjusted produced ID

This is an automated email from the ASF dual-hosted git repository.

simonetripodi pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-whiteboard.git


The following commit(s) were added to refs/heads/master by this push:
     new e12611d  [cp2fm] resolved all runtime dependencies and adjusted produced ID
e12611d is described below

commit e12611d40edece16d23607ac6c48f7e19ae201f3
Author: Simo Tripodi <st...@adobe.com>
AuthorDate: Thu Feb 28 15:21:05 2019 +0100

    [cp2fm] resolved all runtime dependencies and adjusted produced ID
---
 content-package-2-feature-model/pom.xml            | 25 +++++++++++++++++++++-
 .../ContentPackage2FeatureModelConverter.java      |  8 ++++---
 ...ntentPackage2FeatureModelConverterLauncher.java | 11 ++++++++--
 3 files changed, 38 insertions(+), 6 deletions(-)

diff --git a/content-package-2-feature-model/pom.xml b/content-package-2-feature-model/pom.xml
index b62381a..842e796 100644
--- a/content-package-2-feature-model/pom.xml
+++ b/content-package-2-feature-model/pom.xml
@@ -48,6 +48,7 @@
     <dependency>
       <groupId>org.slf4j</groupId>
       <artifactId>slf4j-simple</artifactId>
+      <scope>provided</scope>
     </dependency>
 
     <!--
@@ -69,6 +70,23 @@
       <version>3.2.6</version>
       <scope>provided</scope>
     </dependency>
+    <dependency>
+      <groupId>org.apache.jackrabbit</groupId>
+      <artifactId>jackrabbit-spi-commons</artifactId>
+      <version>2.19.1</version>
+      <scope>provided</scope>
+    </dependency>
+    <dependency>
+      <groupId>javax.jcr</groupId>
+      <artifactId>jcr</artifactId>
+      <scope>provided</scope>
+    </dependency>
+    <dependency>
+      <groupId>commons-io</groupId>
+      <artifactId>commons-io</artifactId>
+      <version>1.3.2</version>
+      <scope>provided</scope>
+    </dependency>
 
     <!--
      | Sling Feature Model libraries
@@ -104,6 +122,12 @@
       <scope>provided</scope>
     </dependency>
     <dependency>
+      <groupId>org.apache.johnzon</groupId>
+      <artifactId>johnzon-core</artifactId>
+      <version>1.0.0</version>
+      <scope>provided</scope>
+    </dependency>
+    <dependency>
       <groupId>org.apache.sling</groupId>
       <artifactId>org.apache.sling.feature</artifactId>
       <version>1.0.0</version>
@@ -118,7 +142,6 @@
     <dependency>
       <groupId>org.osgi</groupId>
       <artifactId>osgi.core</artifactId>
-      <version>6.0.0</version>
       <scope>provided</scope>
     </dependency>
   </dependencies>
diff --git a/content-package-2-feature-model/src/main/java/org/apache/sling/cp2fm/ContentPackage2FeatureModelConverter.java b/content-package-2-feature-model/src/main/java/org/apache/sling/cp2fm/ContentPackage2FeatureModelConverter.java
index b5808ce..4fb31eb 100644
--- a/content-package-2-feature-model/src/main/java/org/apache/sling/cp2fm/ContentPackage2FeatureModelConverter.java
+++ b/content-package-2-feature-model/src/main/java/org/apache/sling/cp2fm/ContentPackage2FeatureModelConverter.java
@@ -30,7 +30,9 @@ import org.apache.sling.feature.io.json.FeatureJSONWriter;
 
 public final class ContentPackage2FeatureModelConverter {
 
-    private static final String FEATURE_CLASSIFIER = "feature";
+    private static final String FEATURE_CLASSIFIER = "cp2fm-converted-feature";
+
+    private static final String SLING_OSGI_FEATURE_TILE_TYPE = "slingosgifeature";
 
     private static final String JSON_FILE_EXTENSION = ".json";
 
@@ -72,11 +74,11 @@ public final class ContentPackage2FeatureModelConverter {
             vaultPackage = packageManager.open(contentPackage, strictValidation);
 
             PackageId packageId = vaultPackage.getId();
-            targetFeature = new Feature(new ArtifactId(packageId.getGroup(), 
+            targetFeature = new Feature(new ArtifactId(packageId.getGroup().replace('/', '.'), 
                                                        packageId.getName(),
                                                        packageId.getVersionString(),
                                                        FEATURE_CLASSIFIER,
-                                                       null));
+                                                       SLING_OSGI_FEATURE_TILE_TYPE));
 
             File targetFile = new File(outputDirectory, packageId.getName() + JSON_FILE_EXTENSION);
             try (FileWriter targetWriter = new FileWriter(targetFile)) {
diff --git a/content-package-2-feature-model/src/main/java/org/apache/sling/cp2fm/ContentPackage2FeatureModelConverterLauncher.java b/content-package-2-feature-model/src/main/java/org/apache/sling/cp2fm/ContentPackage2FeatureModelConverterLauncher.java
index 5eaecce..72c4ad6 100644
--- a/content-package-2-feature-model/src/main/java/org/apache/sling/cp2fm/ContentPackage2FeatureModelConverterLauncher.java
+++ b/content-package-2-feature-model/src/main/java/org/apache/sling/cp2fm/ContentPackage2FeatureModelConverterLauncher.java
@@ -48,6 +48,9 @@ public final class ContentPackage2FeatureModelConverterLauncher implements Runna
     @Option(names = { "-c", "--content-package" }, description = "The content-package input file.", required = true)
     private File contentPackage;
 
+    @Option(names = { "-s", "--strict-validation" }, description = "Flag to mark the content-package input file being strict validated.", required = false)
+    private boolean strictValidation = false;
+
     @Option(names = { "-o", "--output-directory" }, description = "The output directory where the Feature File and the bundles will be deployed.", required = true)
     private File outputDirectory;
 
@@ -60,6 +63,9 @@ public final class ContentPackage2FeatureModelConverterLauncher implements Runna
         } else {
             System.setProperty("org.slf4j.simpleLogger.defaultLogLevel", "info");
         }
+        System.setProperty("org.slf4j.simpleLogger.showThreadName", "false");
+        System.setProperty("org.slf4j.simpleLogger.levelInBrackets", "true");
+        System.setProperty("org.slf4j.simpleLogger.showLogName", "false");
 
         String appName = getClass().getAnnotation(Command.class).description()[0];
         final Logger logger = LoggerFactory.getLogger(appName);
@@ -76,8 +82,9 @@ public final class ContentPackage2FeatureModelConverterLauncher implements Runna
         logger.info("");
 
         try {
-            ContentPackage2FeatureModelConverter converter = new ContentPackage2FeatureModelConverter();
-            converter.convert(contentPackage, outputDirectory);
+            new ContentPackage2FeatureModelConverter()
+            .setStrictValidation(strictValidation)
+            .convert(contentPackage, outputDirectory);
 
             logger.info( "+-----------------------------------------------------+" );
             logger.info("{} SUCCESS", appName);