Repository: activemq-artemis
Updated Branches:
  refs/heads/master e81f63f06 -> c21bee63c


renaming/equalizing parameters on the maven plugins


Project: http://git-wip-us.apache.org/repos/asf/activemq-artemis/repo
Commit: http://git-wip-us.apache.org/repos/asf/activemq-artemis/commit/c21bee63
Tree: http://git-wip-us.apache.org/repos/asf/activemq-artemis/tree/c21bee63
Diff: http://git-wip-us.apache.org/repos/asf/activemq-artemis/diff/c21bee63

Branch: refs/heads/master
Commit: c21bee63cb97df46715764a17ed1e32807e4d1d3
Parents: e81f63f
Author: Clebert Suconic <clebertsuco...@apache.org>
Authored: Wed Oct 7 11:36:26 2015 -0400
Committer: Clebert Suconic <clebertsuco...@apache.org>
Committed: Wed Oct 7 11:51:53 2015 -0400

----------------------------------------------------------------------
 .../artemis/maven/ArtemisAbstractPlugin.java    | 28 ++++++++++
 .../artemis/maven/ArtemisCreatePlugin.java      | 36 ++++---------
 .../maven/ArtemisDependencyScanPlugin.java      | 55 +++++++++-----------
 examples/features/sub-modules/aerogear/pom.xml  |  5 +-
 examples/features/sub-modules/vertx/pom.xml     |  5 +-
 5 files changed, 67 insertions(+), 62 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/c21bee63/artemis-maven-plugin/src/main/java/org/apache/activemq/artemis/maven/ArtemisAbstractPlugin.java
----------------------------------------------------------------------
diff --git 
a/artemis-maven-plugin/src/main/java/org/apache/activemq/artemis/maven/ArtemisAbstractPlugin.java
 
b/artemis-maven-plugin/src/main/java/org/apache/activemq/artemis/maven/ArtemisAbstractPlugin.java
index 49f1bf7..e1ec2c6 100644
--- 
a/artemis-maven-plugin/src/main/java/org/apache/activemq/artemis/maven/ArtemisAbstractPlugin.java
+++ 
b/artemis-maven-plugin/src/main/java/org/apache/activemq/artemis/maven/ArtemisAbstractPlugin.java
@@ -20,8 +20,10 @@ package org.apache.activemq.artemis.maven;
 import java.io.File;
 import java.io.PrintWriter;
 import java.io.StringWriter;
+import java.util.HashSet;
 import java.util.LinkedList;
 import java.util.List;
+import java.util.Set;
 import java.util.concurrent.atomic.AtomicInteger;
 
 import org.apache.activemq.artemis.cli.commands.Configurable;
@@ -145,4 +147,30 @@ public abstract class ArtemisAbstractPlugin extends 
AbstractMojo {
       return dependencies;
    }
 
+   protected Set<File> resolveDependencies(String[] dependencyListParameter, 
String[] individualListParameter) throws DependencyCollectionException, 
MojoFailureException, MojoExecutionException {
+      Set<File> filesSet = new HashSet<>();
+      if (dependencyListParameter != null) {
+         for (String lib : dependencyListParameter) {
+            getLog().debug("********************" + lib);
+
+            List<Artifact> artifactsList = 
explodeDependencies(newArtifact(lib));
+
+            for (Artifact artifact : artifactsList) {
+               File artifactFile = resolveArtifact(artifact);
+               filesSet.add(artifactFile);
+            }
+         }
+      }
+
+      if (individualListParameter != null) {
+         for (String lib : individualListParameter) {
+            Artifact artifact = newArtifact(lib);
+            getLog().debug("Single dpendency resolved::" + artifact);
+            File artifactFile = resolveArtifact(artifact);
+            filesSet.add(artifactFile);
+         }
+      }
+      return filesSet;
+   }
+
 }

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/c21bee63/artemis-maven-plugin/src/main/java/org/apache/activemq/artemis/maven/ArtemisCreatePlugin.java
----------------------------------------------------------------------
diff --git 
a/artemis-maven-plugin/src/main/java/org/apache/activemq/artemis/maven/ArtemisCreatePlugin.java
 
b/artemis-maven-plugin/src/main/java/org/apache/activemq/artemis/maven/ArtemisCreatePlugin.java
index e9f4535..39b6d8e 100644
--- 
a/artemis-maven-plugin/src/main/java/org/apache/activemq/artemis/maven/ArtemisCreatePlugin.java
+++ 
b/artemis-maven-plugin/src/main/java/org/apache/activemq/artemis/maven/ArtemisCreatePlugin.java
@@ -38,7 +38,6 @@ import org.apache.maven.plugins.annotations.LifecyclePhase;
 import org.apache.maven.plugins.annotations.Mojo;
 import org.apache.maven.plugins.annotations.Parameter;
 import org.apache.maven.project.MavenProject;
-import org.eclipse.aether.artifact.Artifact;
 
 @Mojo(name = "create", defaultPhase = LifecyclePhase.VERIFY)
 public class ArtemisCreatePlugin extends ArtemisAbstractPlugin {
@@ -120,14 +119,15 @@ public class ArtemisCreatePlugin extends 
ArtemisAbstractPlugin {
    @Parameter
    ArrayList<String> args = new ArrayList<>();
 
+   /**
+    * Deprecated, use dependencyList and individualList
+    */
    @Parameter
    private String[] libList;
 
-   /**
-    * copy dependencies listed on libList.
-    */
    @Parameter
-   private boolean copyDependencies;
+   private String[] libListWithDeps;
+
 
    @Parameter(defaultValue = "${localRepository}")
    private org.apache.maven.artifact.repository.ArtifactRepository 
localRepository;
@@ -290,30 +290,14 @@ public class ArtemisCreatePlugin extends 
ArtemisAbstractPlugin {
             }
          }
 
-         if (libList != null) {
+         Set<File> files = resolveDependencies(libListWithDeps, libList);
+
+         if (!files.isEmpty() ) {
             commandLineStream.println();
             commandLineStream.println("# This is a list of files that need to 
be installed under ./lib.");
             commandLineStream.println("# We are copying them from your maven 
lib home");
-
-            for (int i = 0; i < libList.length; i++) {
-
-               Artifact artifact = newArtifact(libList[i]);
-               getLog().debug("******************** Artifact::" + artifact);
-
-
-               if (copyDependencies) {
-                  getLog().debug("******************** exploring 
dependencies::" + artifact);
-                  List<Artifact> dependencies = explodeDependencies(artifact);
-                  for (Artifact artifactItem : dependencies) {
-                     File artifactFile = resolveArtifact(artifactItem);
-                     copyToLib(artifactFile, commandLineStream);
-                  }
-               }
-               else {
-                  File artifactFile = resolveArtifact(artifact);
-                  getLog().debug("*********** coping Artifact:: " + artifact + 
" file = " + artifactFile);
-                  copyToLib(artifactFile, commandLineStream);
-               }
+            for (File file : files) {
+               copyToLib(file, commandLineStream);
             }
          }
 

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/c21bee63/artemis-maven-plugin/src/main/java/org/apache/activemq/artemis/maven/ArtemisDependencyScanPlugin.java
----------------------------------------------------------------------
diff --git 
a/artemis-maven-plugin/src/main/java/org/apache/activemq/artemis/maven/ArtemisDependencyScanPlugin.java
 
b/artemis-maven-plugin/src/main/java/org/apache/activemq/artemis/maven/ArtemisDependencyScanPlugin.java
index 7133574..4ead900 100644
--- 
a/artemis-maven-plugin/src/main/java/org/apache/activemq/artemis/maven/ArtemisDependencyScanPlugin.java
+++ 
b/artemis-maven-plugin/src/main/java/org/apache/activemq/artemis/maven/ArtemisDependencyScanPlugin.java
@@ -17,7 +17,8 @@
 package org.apache.activemq.artemis.maven;
 
 import java.io.File;
-import java.util.List;
+import java.nio.file.Files;
+import java.nio.file.StandardCopyOption;
 import java.util.Map;
 import java.util.Set;
 
@@ -28,7 +29,6 @@ import org.apache.maven.plugins.annotations.LifecyclePhase;
 import org.apache.maven.plugins.annotations.Mojo;
 import org.apache.maven.plugins.annotations.Parameter;
 import org.apache.maven.project.MavenProject;
-import org.eclipse.aether.artifact.Artifact;
 
 @Mojo(name = "dependency-scan", defaultPhase = LifecyclePhase.VERIFY)
 public class ArtemisDependencyScanPlugin extends ArtemisAbstractPlugin {
@@ -42,17 +42,21 @@ public class ArtemisDependencyScanPlugin extends 
ArtemisAbstractPlugin {
    private PluginDescriptor descriptor;
 
    @Parameter
-   private String[] dependencyList;
+   private String[] libListWithDeps;
 
    @Parameter
-   private String[] individualList;
+   private String[] libList;
 
-   @Parameter(required = true)
+   @Parameter
    private String variableName;
 
    @Parameter
    private String pathSeparator = File.pathSeparator;
 
+   /** Where to copy the exploded dependencies. */
+   @Parameter
+   private File targetFolder;
+
    protected boolean isIgnore() {
       return false;
    }
@@ -71,38 +75,30 @@ public class ArtemisDependencyScanPlugin extends 
ArtemisAbstractPlugin {
          getLog().info("... key=" + entry.getKey() + " = " + entry.getValue());
       }
 
+
       try {
          StringBuffer buffer = new StringBuffer();
-         String separatorUsed = "";
-         if (dependencyList != null) {
-            for (String lib : dependencyList) {
-               getLog().debug("********************" + lib);
-
-               List<Artifact> artifactsList = 
explodeDependencies(newArtifact(lib));
-
-               for (Artifact artifact : artifactsList) {
-                  File artifactFile = resolveArtifact(artifact);
-                  buffer.append(separatorUsed);
-                  buffer.append(artifactFile.getAbsolutePath());
-                  separatorUsed = pathSeparator;
-               }
-            }
-         }
+         Set<File> filesSet = resolveDependencies(libListWithDeps, libList);
 
-         if (individualList != null) {
-            for (String lib : individualList) {
-               Artifact artifact = newArtifact(lib);
-               getLog().info("Single dpendency resolved::" + artifact);
-               File artifactFile = resolveArtifact(artifact);
+         if (variableName != null) {
+            String separatorUsed = "";
+            for (File f : filesSet) {
                buffer.append(separatorUsed);
-               buffer.append(artifactFile.getAbsolutePath());
+               buffer.append(f.getAbsolutePath());
                separatorUsed = pathSeparator;
             }
+
+            String classPathGenerated = buffer.toString();
+            project.getProperties().setProperty(variableName, 
classPathGenerated);
+            getLog().info("dependency-scan setting: " + variableName + "=" + 
classPathGenerated);
          }
 
-         String classPathGenerated = buffer.toString();
-         project.getProperties().setProperty(variableName, classPathGenerated);
-         getLog().info("dependency-scan setting: " + variableName + "=" + 
classPathGenerated);
+         if (targetFolder != null) {
+            targetFolder.mkdirs();
+            for (File file : filesSet) {
+               Files.copy(file.toPath(), targetFolder.toPath(), 
StandardCopyOption.REPLACE_EXISTING);
+            }
+         }
       }
       catch (Throwable e) {
          getLog().error(e);
@@ -110,5 +106,4 @@ public class ArtemisDependencyScanPlugin extends 
ArtemisAbstractPlugin {
       }
    }
 
-
 }

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/c21bee63/examples/features/sub-modules/aerogear/pom.xml
----------------------------------------------------------------------
diff --git a/examples/features/sub-modules/aerogear/pom.xml 
b/examples/features/sub-modules/aerogear/pom.xml
index 6614782..cb5f0f0 100644
--- a/examples/features/sub-modules/aerogear/pom.xml
+++ b/examples/features/sub-modules/aerogear/pom.xml
@@ -60,10 +60,9 @@ under the License.
                   <configuration>
                      <ignore>${noServer}</ignore>
                      <!-- this list was extracted from mvn dependency:tree on 
integration/aerogear -->
-                     <libList>
+                     <libListWithDeps>
                         
<param>org.apache.activemq:artemis-aerogear-integration:${project.version}</param>
-                     </libList>
-                     <copyDependencies>true</copyDependencies>
+                     </libListWithDeps>
                   </configuration>
                </execution>
                <execution>

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/c21bee63/examples/features/sub-modules/vertx/pom.xml
----------------------------------------------------------------------
diff --git a/examples/features/sub-modules/vertx/pom.xml 
b/examples/features/sub-modules/vertx/pom.xml
index a93923b..e4a6c7c 100644
--- a/examples/features/sub-modules/vertx/pom.xml
+++ b/examples/features/sub-modules/vertx/pom.xml
@@ -95,10 +95,9 @@ under the License.
                      <goal>create</goal>
                   </goals>
                   <configuration>
-                     <libList>
+                     <libListWithDeps>
                         
<arg>org.apache.activemq.examples.modules:artemis-vertx-example:${project.version}</arg>
-                     </libList>
-                     <copyDependencies>true</copyDependencies>
+                     </libListWithDeps>
 
                      <instance>${basedir}/target/server0</instance>
                      
<configuration>${basedir}/target/classes/activemq/server0</configuration>

Reply via email to