You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by da...@apache.org on 2018/04/30 09:36:46 UTC

[sling-slingstart-maven-plugin] 06/07: Merge declared provisioning model with defined provisioning model

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

davidb pushed a commit to branch featureModel
in repository https://gitbox.apache.org/repos/asf/sling-slingstart-maven-plugin.git

commit 8bcda1d67d338b3571ba182e9e6c5a4a2e453795
Author: David Bosschaert <da...@gmail.com>
AuthorDate: Wed Apr 11 15:09:48 2018 +0100

    Merge declared provisioning model with defined provisioning model
---
 .../org/apache/sling/maven/slingstart/ModelPreprocessor.java | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/src/main/java/org/apache/sling/maven/slingstart/ModelPreprocessor.java b/src/main/java/org/apache/sling/maven/slingstart/ModelPreprocessor.java
index da40e6f..05d070f 100644
--- a/src/main/java/org/apache/sling/maven/slingstart/ModelPreprocessor.java
+++ b/src/main/java/org/apache/sling/maven/slingstart/ModelPreprocessor.java
@@ -48,6 +48,7 @@ import java.io.FileReader;
 import java.io.IOException;
 import java.io.Reader;
 import java.io.StringReader;
+import java.nio.file.Files;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.HashMap;
@@ -122,12 +123,19 @@ public class ModelPreprocessor {
             } else {
                 // use multiple fallbacks here only in case the default model directory is not explicitly set
                 File defaultModelDirectory = new File(info.project.getBasedir(), "src/main/provisioning");
-                if (defaultModelDirectory.exists()) {
+                File defaultConvertedModelDirectory = new File(info.project.getBuild().getDirectory() + "/" + FeatureModelConverter.BUILD_DIR);
+
+                if (defaultModelDirectory.exists() && defaultConvertedModelDirectory.exists()) {
+                    // The model is partially converted, partially explicitly defined. Copy the defined ones in with the converted ones
+                    for (File f : defaultModelDirectory.listFiles()) {
+                        System.out.println("*** Copying " + f + " to " + new File(defaultConvertedModelDirectory, f.getName()));
+                        Files.copy(f.toPath(), new File(defaultConvertedModelDirectory, f.getName()).toPath());
+                    }
+                } else {
                     env.logger.debug("Try to extract model from default provisioning directory " + defaultModelDirectory.getAbsolutePath());
                     info.localModel = readLocalModel(info.project, inlinedModel, defaultModelDirectory, pattern, env.logger);
                 }
 
-                File defaultConvertedModelDirectory = new File(info.project.getBuild().getDirectory() + "/" + FeatureModelConverter.BUILD_DIR);
                 if (defaultConvertedModelDirectory.exists()) {
                     env.logger.debug("Try to extract model from generated provisioning model directory " + defaultConvertedModelDirectory.getAbsolutePath());
                     info.localModel = readLocalModel(info.project, inlinedModel, defaultConvertedModelDirectory, pattern, env.logger);

-- 
To stop receiving notification emails like this one, please contact
davidb@apache.org.