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 2016/05/19 12:45:11 UTC
svn commit: r1744562 - in
/sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart:
AbstractSlingStartMojo.java ModelPreprocessor.java
Author: cziegeler
Date: Thu May 19 12:45:11 2016
New Revision: 1744562
URL: http://svn.apache.org/viewvc?rev=1744562&view=rev
Log:
SLING-5738 : Add support for configuring a pattern for the model files to be read
Modified:
sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/AbstractSlingStartMojo.java
sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/ModelPreprocessor.java
Modified: sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/AbstractSlingStartMojo.java
URL: http://svn.apache.org/viewvc/sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/AbstractSlingStartMojo.java?rev=1744562&r1=1744561&r2=1744562&view=diff
==============================================================================
--- sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/AbstractSlingStartMojo.java (original)
+++ sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/AbstractSlingStartMojo.java Thu May 19 12:45:11 2016
@@ -39,6 +39,13 @@ public abstract class AbstractSlingStart
private File modelDirectory;
/**
+ * The model file name pattern
+ * This parameter is evaluated in the DependencyLifecycleParticipant
+ */
+ @Parameter
+ private String modelPattern;
+
+ /**
* Inlined model, supported since version 1.3.
* This parameter is evaluated in the DependencyLifecycleParticipant
*/
Modified: sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/ModelPreprocessor.java
URL: http://svn.apache.org/viewvc/sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/ModelPreprocessor.java?rev=1744562&r1=1744561&r2=1744562&view=diff
==============================================================================
--- sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/ModelPreprocessor.java (original)
+++ sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/ModelPreprocessor.java Thu May 19 12:45:11 2016
@@ -26,6 +26,7 @@ import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.regex.Pattern;
import org.apache.commons.io.IOUtils;
import org.apache.maven.MavenExecutionException;
@@ -93,10 +94,13 @@ public class ModelPreprocessor {
final String directory = nodeValue(info.plugin,
"modelDirectory",
new File(info.project.getBasedir(), "src/main/provisioning").getAbsolutePath());
+ final String pattern = nodeValue(info.plugin,
+ "modelPattern", "((.*)\\.txt|(.*)\\.model)");
+
final String inlinedModel = nodeValue(info.plugin,
"model", null);
try {
- info.localModel = readLocalModel(info.project, inlinedModel, new File(directory), env.logger);
+ info.localModel = readLocalModel(info.project, inlinedModel, new File(directory), pattern, env.logger);
} catch ( final IOException ioe) {
throw new MavenExecutionException(ioe.getMessage(), ioe);
}
@@ -390,13 +394,15 @@ public class ModelPreprocessor {
final MavenProject project,
final String inlinedModel,
final File modelDirectory,
+ final String pattern,
final Logger logger)
throws MavenExecutionException, IOException {
+ final Pattern p = Pattern.compile(pattern);
final List<String> candidates = new ArrayList<String>();
if ( modelDirectory != null && modelDirectory.exists() ) {
for(final File f : modelDirectory.listFiles() ) {
if ( f.isFile() && !f.getName().startsWith(".") ) {
- if ( f.getName().endsWith(".txt") || f.getName().endsWith(".model") ) {
+ if ( p.matcher(f.getName()).matches() ) {
candidates.add(f.getName());
}
}