You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by rf...@apache.org on 2016/06/16 22:34:03 UTC

svn commit: r1748777 - in /maven/plugins/trunk/maven-assembly-plugin: pom.xml src/main/java/org/apache/maven/plugins/assembly/archive/task/AddDependencySetsTask.java

Author: rfscholte
Date: Thu Jun 16 22:34:03 2016
New Revision: 1748777

URL: http://svn.apache.org/viewvc?rev=1748777&view=rev
Log:
Start using the generic ScopeFilter

Modified:
    maven/plugins/trunk/maven-assembly-plugin/pom.xml
    maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugins/assembly/archive/task/AddDependencySetsTask.java

Modified: maven/plugins/trunk/maven-assembly-plugin/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/pom.xml?rev=1748777&r1=1748776&r2=1748777&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/pom.xml (original)
+++ maven/plugins/trunk/maven-assembly-plugin/pom.xml Thu Jun 16 22:34:03 2016
@@ -106,7 +106,7 @@ under the License.
     <dependency>
       <groupId>org.apache.maven.shared</groupId>
       <artifactId>maven-common-artifact-filters</artifactId>
-      <version>3.0.0</version>
+      <version>3.0.1-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.apache.maven.shared</groupId>

Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugins/assembly/archive/task/AddDependencySetsTask.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugins/assembly/archive/task/AddDependencySetsTask.java?rev=1748777&r1=1748776&r2=1748777&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugins/assembly/archive/task/AddDependencySetsTask.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugins/assembly/archive/task/AddDependencySetsTask.java Thu Jun 16 22:34:03 2016
@@ -19,7 +19,16 @@ package org.apache.maven.plugins.assembl
  * under the License.
  */
 
+import java.io.File;
+import java.nio.charset.Charset;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.LinkedHashSet;
+import java.util.List;
+import java.util.Set;
+
 import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
 import org.apache.maven.model.Dependency;
 import org.apache.maven.model.Model;
 import org.apache.maven.plugins.assembly.AssemblerConfigurationSource;
@@ -38,20 +47,14 @@ import org.apache.maven.project.ProjectB
 import org.apache.maven.project.ProjectBuildingRequest;
 import org.apache.maven.project.ProjectBuildingResult;
 import org.apache.maven.shared.artifact.filter.ScopeArtifactFilter;
+import org.apache.maven.shared.artifact.filter.resolve.ScopeFilter;
+import org.apache.maven.shared.artifact.filter.resolve.transform.ArtifactIncludeFilterTransformer;
 import org.codehaus.plexus.archiver.Archiver;
 import org.codehaus.plexus.archiver.ArchiverException;
 import org.codehaus.plexus.components.io.functions.InputStreamTransformer;
 import org.codehaus.plexus.interpolation.fixed.FixedStringSearchInterpolator;
 import org.codehaus.plexus.logging.Logger;
 
-import java.io.File;
-import java.nio.charset.Charset;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.LinkedHashSet;
-import java.util.List;
-import java.util.Set;
-
 /**
  * @version $Id$
  */
@@ -331,7 +334,7 @@ public class AddDependencySetsTask
             logger.debug( "Filtering dependency artifacts WITHOUT transitive dependency path information." );
         }
 
-        final ScopeArtifactFilter filter = new ScopeArtifactFilter( dependencySet.getScope() );
+        final ArtifactFilter filter = newArtifactFilter( dependencySet );
 
         FilterUtils.filterArtifacts( dependencyArtifacts, dependencySet.getIncludes(), dependencySet.getExcludes(),
                                      dependencySet.isUseStrictFiltering(), dependencySet.isUseTransitiveFiltering(),
@@ -340,6 +343,35 @@ public class AddDependencySetsTask
         return dependencyArtifacts;
     }
 
+    private ArtifactFilter newArtifactFilter( final DependencySet dependencySet )
+    {
+        ScopeArtifactFilter filter = new ScopeArtifactFilter( dependencySet.getScope() );
+
+        List<String> includes = new ArrayList<String>();
+        if ( filter.isIncludeCompileScope() )
+        {
+            includes.add( "compile" );
+        }
+        if ( filter.isIncludeProvidedScope() )
+        {
+            includes.add( "provided" );
+        }
+        if ( filter.isIncludeRuntimeScope() )
+        {
+            includes.add( "runtime" );
+        }
+        if ( filter.isIncludeSystemScope() )
+        {
+            includes.add( "system" );
+        }
+        if ( filter.isIncludeTestScope() )
+        {
+            includes.add( "test" );
+        }
+
+        return new ArtifactIncludeFilterTransformer().transform( ScopeFilter.including( includes ) );
+    }
+
     private void addNonArchiveDependency( final Artifact depArtifact, final MavenProject depProject,
                                           final DependencySet dependencySet, final Archiver archiver,
                                           final AssemblerConfigurationSource configSource )