SLING-11933 - Allow configuring the repository URLs (#13)
diff --git a/src/main/java/org/apache/sling/maven/feature/launcher/Launch.java b/src/main/java/org/apache/sling/maven/feature/launcher/Launch.java
index a0c3d10..bf4aaca 100644
--- a/src/main/java/org/apache/sling/maven/feature/launcher/Launch.java
+++ b/src/main/java/org/apache/sling/maven/feature/launcher/Launch.java
@@ -18,8 +18,10 @@
*/
package org.apache.sling.maven.feature.launcher;
+import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
import java.util.regex.Pattern;
@@ -35,6 +37,7 @@
private int startTimeoutSeconds = 30;
private boolean skip = false;
private Map<String,String> environmentVariables = new HashMap<>();
+ private List<String> repositoryUrls = new ArrayList<>();
public String getId() {
return id;
@@ -86,6 +89,14 @@
this.environmentVariables = environmentVariables;
}
+ public List<String> getRepositoryUrls() {
+ return repositoryUrls;
+ }
+
+ public void setRepositoryUrls(List<String> repositoryUrls) {
+ this.repositoryUrls = repositoryUrls;
+ }
+
public void validate() {
if ( id == null || id.trim().isEmpty() )
throw new IllegalArgumentException("Missing id");
diff --git a/src/main/java/org/apache/sling/maven/feature/launcher/StartMojo.java b/src/main/java/org/apache/sling/maven/feature/launcher/StartMojo.java
index 2278d6f..6350c9e 100644
--- a/src/main/java/org/apache/sling/maven/feature/launcher/StartMojo.java
+++ b/src/main/java/org/apache/sling/maven/feature/launcher/StartMojo.java
@@ -30,6 +30,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.StringJoiner;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
@@ -121,6 +122,7 @@
@Component
private ArchiverManager archiverManager;
+ @Override
public void execute() throws MojoExecutionException, MojoFailureException {
try {
@@ -229,6 +231,12 @@
args.add("-jar");
args.add(launcher.getAbsolutePath());
}
+ if ( launch.getRepositoryUrls() != null && !launch.getRepositoryUrls().isEmpty() ) {
+ args.add("-u");
+ StringJoiner joiner = new StringJoiner(",");
+ launch.getRepositoryUrls().forEach( joiner::add );
+ args.add(joiner.toString());
+ }
args.add("-f");
args.add(featureFile.getAbsolutePath());
args.add("-p");