You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by an...@apache.org on 2019/07/17 15:11:44 UTC

[sling-org-apache-sling-feature-cpconverter] branch output-file-name-prefix created (now c6bcc9b)

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

andysch pushed a change to branch output-file-name-prefix
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-feature-cpconverter.git.


      at c6bcc9b  Added an optional prefix to the conversion output file name to separate them from other FM files

This branch includes the following new commits:

     new c6bcc9b  Added an optional prefix to the conversion output file name to separate them from other FM files

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



[sling-org-apache-sling-feature-cpconverter] 01/01: Added an optional prefix to the conversion output file name to separate them from other FM files

Posted by an...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

andysch pushed a commit to branch output-file-name-prefix
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-feature-cpconverter.git

commit c6bcc9b2ea95b80406d746c01d418034468a9ef0
Author: Andreas Schaefer <sc...@iMac.local>
AuthorDate: Wed Jul 17 08:10:17 2019 -0700

    Added an optional prefix to the conversion output file name to separate them from other FM files
---
 .../cli/ContentPackage2FeatureModelConverterLauncher.java      |  4 ++++
 .../feature/cpconverter/features/DefaultFeaturesManager.java   | 10 ++++++++--
 .../cpconverter/ContentPackage2FeatureModelConverterTest.java  | 10 +++++-----
 3 files changed, 17 insertions(+), 7 deletions(-)

diff --git a/src/main/java/org/apache/sling/feature/cpconverter/cli/ContentPackage2FeatureModelConverterLauncher.java b/src/main/java/org/apache/sling/feature/cpconverter/cli/ContentPackage2FeatureModelConverterLauncher.java
index ac4b92b..1072764 100644
--- a/src/main/java/org/apache/sling/feature/cpconverter/cli/ContentPackage2FeatureModelConverterLauncher.java
+++ b/src/main/java/org/apache/sling/feature/cpconverter/cli/ContentPackage2FeatureModelConverterLauncher.java
@@ -75,6 +75,9 @@ public final class ContentPackage2FeatureModelConverterLauncher implements Runna
     @Option(names = { "-i", "--artifact-id" }, description = "The optional Artifact Id the Feature File will have, once generated; it will be derived, if not specified.", required = false)
     private String artifactIdOverride;
 
+    @Option(names = { "-p", "--fm-preix" }, description = "The optional prefix of the output file", required = false)
+    private String fmPrefix;
+
     @Option(names = {"-D", "--define"}, description = "Define a system property", required = false)
     private Map<String, String> properties = new HashMap<>();
 
@@ -114,6 +117,7 @@ public final class ContentPackage2FeatureModelConverterLauncher implements Runna
                                                                                                             bundlesStartOrder,
                                                                                                             featureModelsOutputDirectory,
                                                                                                             artifactIdOverride,
+                                                                                                            fmPrefix,
                                                                                                             properties))
                                                              .setBundlesDeployer(new DefaultArtifactsDeployer(artifactsOutputDirectory))
                                                              .setEntryHandlersManager(new DefaultEntryHandlersManager())
diff --git a/src/main/java/org/apache/sling/feature/cpconverter/features/DefaultFeaturesManager.java b/src/main/java/org/apache/sling/feature/cpconverter/features/DefaultFeaturesManager.java
index 1a16252..685b61e 100644
--- a/src/main/java/org/apache/sling/feature/cpconverter/features/DefaultFeaturesManager.java
+++ b/src/main/java/org/apache/sling/feature/cpconverter/features/DefaultFeaturesManager.java
@@ -66,23 +66,27 @@ public class DefaultFeaturesManager implements FeaturesManager {
 
     private final String artifactIdOverride;
 
+    private final String prefix;
+
     private final Map<String, String> properties;
 
     private Feature targetFeature = null;
 
     public DefaultFeaturesManager() {
-        this(true, 20, new File(System.getProperty(JAVA_IO_TMPDIR_PROPERTY)), null, null);
+        this(true, 20, new File(System.getProperty(JAVA_IO_TMPDIR_PROPERTY)), null, null, null);
     }
 
     public DefaultFeaturesManager(boolean mergeConfigurations,
                                   int bundlesStartOrder,
                                   File featureModelsOutputDirectory,
                                   String artifactIdOverride,
+                                  String prefix,
                                   Map<String, String> properties) {
         this.mergeConfigurations = mergeConfigurations;
         this.bundlesStartOrder = bundlesStartOrder;
         this.featureModelsOutputDirectory = featureModelsOutputDirectory;
         this.artifactIdOverride = artifactIdOverride;
+        this.prefix = prefix;
         this.properties = properties;
     }
 
@@ -201,7 +205,9 @@ public class DefaultFeaturesManager implements FeaturesManager {
     }
 
     private void seralize(Feature feature, String runMode, RunmodeMapper runmodeMapper) throws Exception {
-        StringBuilder fileNameBuilder = new StringBuilder().append(feature.getId().getArtifactId());
+        StringBuilder fileNameBuilder = new StringBuilder()
+            .append((prefix != null) ? prefix : "")
+            .append(feature.getId().getArtifactId());
 
         String classifier = feature.getId().getClassifier();
         if (classifier != null && !classifier.isEmpty()) {
diff --git a/src/test/java/org/apache/sling/feature/cpconverter/ContentPackage2FeatureModelConverterTest.java b/src/test/java/org/apache/sling/feature/cpconverter/ContentPackage2FeatureModelConverterTest.java
index 617a6c2..a57e4c9 100644
--- a/src/test/java/org/apache/sling/feature/cpconverter/ContentPackage2FeatureModelConverterTest.java
+++ b/src/test/java/org/apache/sling/feature/cpconverter/ContentPackage2FeatureModelConverterTest.java
@@ -115,7 +115,7 @@ public class ContentPackage2FeatureModelConverterTest {
 
         File outputDirectory = new File(System.getProperty("java.io.tmpdir"), getClass().getName() + '_' + System.currentTimeMillis());
 
-        converter.setFeaturesManager(new DefaultFeaturesManager(true, 5, outputDirectory, null, null))
+        converter.setFeaturesManager(new DefaultFeaturesManager(true, 5, outputDirectory, null, null, null))
                  .setBundlesDeployer(new DefaultArtifactsDeployer(outputDirectory))
                  .convert(packageFile);
 
@@ -272,7 +272,7 @@ public class ContentPackage2FeatureModelConverterTest {
 
         File outputDirectory = new File(System.getProperty("java.io.tmpdir"), getClass().getName() + '_' + System.currentTimeMillis());
 
-        converter.setFeaturesManager(new DefaultFeaturesManager(true, 5, outputDirectory, null, null))
+        converter.setFeaturesManager(new DefaultFeaturesManager(true, 5, outputDirectory, null, null, null))
                  .setBundlesDeployer(new DefaultArtifactsDeployer(outputDirectory))
                  .convert(packageFile);
     }
@@ -293,7 +293,7 @@ public class ContentPackage2FeatureModelConverterTest {
         File packageFile = FileUtils.toFile(packageUrl);
 
         converter.setBundlesDeployer(new DefaultArtifactsDeployer(outputDirectory))
-                 .setFeaturesManager(new DefaultFeaturesManager(false, 5, outputDirectory, null, null))
+                 .setFeaturesManager(new DefaultFeaturesManager(false, 5, outputDirectory, null, null, null))
                  .convert(packageFile);
 
         String pid = "this.is.just.a.pid";
@@ -309,7 +309,7 @@ public class ContentPackage2FeatureModelConverterTest {
         File outputDirectory = new File(System.getProperty("java.io.tmpdir"), getClass().getName() + '_' + System.currentTimeMillis());
 
         String overrideId = "${project.groupId}:${project.artifactId}:slingosgifeature:asd.test.all-1.0.0:${project.version}";
-        converter.setFeaturesManager(new DefaultFeaturesManager(true, 5, outputDirectory, overrideId, null))
+        converter.setFeaturesManager(new DefaultFeaturesManager(true, 5, outputDirectory, overrideId, null, null))
                  .setBundlesDeployer(new DefaultArtifactsDeployer(outputDirectory))
                  .convert(packageFile);
 
@@ -376,7 +376,7 @@ public class ContentPackage2FeatureModelConverterTest {
 
         File outputDirectory = new File(System.getProperty("java.io.tmpdir"), getClass().getName() + '_' + System.currentTimeMillis());
 
-        converter.setFeaturesManager(new DefaultFeaturesManager(true, 5, outputDirectory, null, null))
+        converter.setFeaturesManager(new DefaultFeaturesManager(true, 5, outputDirectory, null, null, null))
                  .setBundlesDeployer(new DefaultArtifactsDeployer(outputDirectory))
                  .convert(contentPackages[0]);