Author: brianf Date: Thu Nov 4 20:17:28 2010 New Revision: 1031212 URL: http://svn.apache.org/viewvc?rev=1031212&view=rev Log: MDEP-215 - applied patch by Jo Odland. Adds useSubDirectoryPerArtifact
Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/AbstractFromDependenciesMojo.java maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/AnalyzeDepMgt.java maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/CopyDependenciesMojo.java maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/UnpackDependenciesMojo.java maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/fromConfiguration/CopyMojo.java maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/DependencyUtil.java maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/filters/DestFileFilter.java maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestAnalyzeDepMgt.java maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestCopyDependenciesMojo.java maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestCopyDependenciesMojo2.java maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestUnpackDependenciesMojo.java maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestUnpackDependenciesMojo2.java maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/TestDependencyUtil.java maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/filters/TestDestFileFilter.java Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/AbstractFromDependenciesMojo.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/AbstractFromDependenciesMojo.java?rev=1031212&r1=1031211&r2=1031212&view=diff ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/AbstractFromDependenciesMojo.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/AbstractFromDependenciesMojo.java Thu Nov 4 20:17:28 2010 @@ -72,6 +72,16 @@ public abstract class AbstractFromDepend /** * Place each type of file in a separate subdirectory. (example + * /outputDirectory/runtime /outputDirectory/provided etc) + * + * @parameter expression="${mdep.useSubDirectoryPerScope}" default-value="false" + * @optional + * @since 2.1-alpha-1 + */ + protected boolean useSubDirectoryPerScope; + + /** + * Place each type of file in a separate subdirectory. (example * /outputDirectory/jars /outputDirectory/wars etc) * * @since 2.0-alpha-1 @@ -136,6 +146,23 @@ public abstract class AbstractFromDepend } /** + * @return Returns the useSubDirectoryPerScope + */ + public boolean isUseSubDirectoryPerScope() + { + return this.useSubDirectoryPerScope; + } + + /** + * @param theUseSubDirectoryPerScope + * The useSubDirectoryPerScope to set. + */ + public void setUseSubDirectoryPerScope( boolean theUseSubDirectoryPerScope ) + { + this.useSubDirectoryPerScope = theUseSubDirectoryPerScope; + } + + /** * @return Returns the useSubDirectoryPerType. */ public boolean isUseSubDirectoryPerType() Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/AnalyzeDepMgt.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/AnalyzeDepMgt.java?rev=1031212&r1=1031211&r2=1031212&view=diff ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/AnalyzeDepMgt.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/AnalyzeDepMgt.java Thu Nov 4 20:17:28 2010 @@ -172,6 +172,7 @@ public class AnalyzeDepMgt Artifact resolvedArtifact = (Artifact) mismatchIter.next(); Dependency depMgtDependency = (Dependency) mismatch.get( resolvedArtifact ); logMismatch( resolvedArtifact, depMgtDependency ); + foundError = true; } if ( !foundError ) { Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/CopyDependenciesMojo.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/CopyDependenciesMojo.java?rev=1031212&r1=1031211&r2=1031212&view=diff ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/CopyDependenciesMojo.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/CopyDependenciesMojo.java Thu Nov 4 20:17:28 2010 @@ -190,7 +190,7 @@ public class CopyDependenciesMojo String destFileName = DependencyUtil.getFormattedFileName( artifact, removeVersion ); File destDir; - destDir = DependencyUtil.getFormattedOutputDirectory( useSubDirectoryPerType, useSubDirectoryPerArtifact, + destDir = DependencyUtil.getFormattedOutputDirectory( useSubDirectoryPerScope, useSubDirectoryPerType, useSubDirectoryPerArtifact, useRepositoryLayout, stripVersion, outputDirectory, artifact ); File destFile = new File( destDir, destFileName ); @@ -241,7 +241,7 @@ public class CopyDependenciesMojo protected ArtifactsFilter getMarkedArtifactFilter() { return new DestFileFilter( this.overWriteReleases, this.overWriteSnapshots, this.overWriteIfNewer, - this.useSubDirectoryPerArtifact, this.useSubDirectoryPerType, + this.useSubDirectoryPerArtifact, this.useSubDirectoryPerType, this.useSubDirectoryPerScope, this.useRepositoryLayout, this.stripVersion, this.outputDirectory ); } } Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/UnpackDependenciesMojo.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/UnpackDependenciesMojo.java?rev=1031212&r1=1031211&r2=1031212&view=diff ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/UnpackDependenciesMojo.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/UnpackDependenciesMojo.java Thu Nov 4 20:17:28 2010 @@ -82,7 +82,7 @@ public class UnpackDependenciesMojo { Artifact artifact = (Artifact) i.next(); File destDir; - destDir = DependencyUtil.getFormattedOutputDirectory( useSubDirectoryPerType, useSubDirectoryPerArtifact, + destDir = DependencyUtil.getFormattedOutputDirectory( useSubDirectoryPerScope, useSubDirectoryPerType, useSubDirectoryPerArtifact, useRepositoryLayout, stripVersion, outputDirectory, artifact ); unpack( artifact.getFile(), destDir, getIncludes(), getExcludes() ); Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/fromConfiguration/CopyMojo.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/fromConfiguration/CopyMojo.java?rev=1031212&r1=1031211&r2=1031212&view=diff ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/fromConfiguration/CopyMojo.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/fromConfiguration/CopyMojo.java Thu Nov 4 20:17:28 2010 @@ -97,9 +97,9 @@ public class CopyMojo protected ArtifactItemFilter getMarkedArtifactFilter( ArtifactItem item ) { - ArtifactItemFilter destinationNameOverrideFilter = - new DestFileFilter( this.isOverWriteReleases(), this.isOverWriteSnapshots(), this.isOverWriteIfNewer(), - false, false, false, this.stripVersion, item.getOutputDirectory() ); + ArtifactItemFilter destinationNameOverrideFilter = new DestFileFilter( this.isOverWriteReleases(), this + .isOverWriteSnapshots(), this.isOverWriteIfNewer(), false, false, false, false, this.stripVersion, item + .getOutputDirectory() ); return destinationNameOverrideFilter; } Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/DependencyUtil.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/DependencyUtil.java?rev=1031212&r1=1031211&r2=1031212&view=diff ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/DependencyUtil.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/DependencyUtil.java Thu Nov 4 20:17:28 2010 @@ -86,9 +86,9 @@ public final class DependencyUtil * @param artifact information about the artifact. * @return a formatted File object to use for output. */ - public static File getFormattedOutputDirectory( boolean useSubdirsPerType, boolean useSubdirPerArtifact, - boolean useRepositoryLayout, boolean removeVersion, - File outputDirectory, Artifact artifact ) + public static File getFormattedOutputDirectory( boolean useSubdirsPerScope, boolean useSubdirsPerType, + boolean useSubdirPerArtifact, boolean useRepositoryLayout, + boolean removeVersion, File outputDirectory, Artifact artifact ) { StringBuffer sb = new StringBuffer( 128 ); if ( useRepositoryLayout ) @@ -102,6 +102,10 @@ public final class DependencyUtil } else { + if ( useSubdirsPerScope ) + { + sb.append( artifact.getScope() ).append( File.separatorChar ); + } if ( useSubdirsPerType ) { sb.append( artifact.getType() ).append( "s" ).append( File.separatorChar ); Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/filters/DestFileFilter.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/filters/DestFileFilter.java?rev=1031212&r1=1031211&r2=1031212&view=diff ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/filters/DestFileFilter.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/filters/DestFileFilter.java Thu Nov 4 20:17:28 2010 @@ -54,6 +54,8 @@ public class DestFileFilter boolean useSubDirectoryPerType; + boolean useSubDirectoryPerScope; + boolean useRepositoryLayout; boolean removeVersion; @@ -68,11 +70,12 @@ public class DestFileFilter overWriteSnapshots = false; useSubDirectoryPerArtifact = false; useSubDirectoryPerType = false; + useSubDirectoryPerScope = false; removeVersion = false; } public DestFileFilter( boolean overWriteReleases, boolean overWriteSnapshots, boolean overWriteIfNewer, - boolean useSubDirectoryPerArtifact, boolean useSubDirectoryPerType, + boolean useSubDirectoryPerArtifact, boolean useSubDirectoryPerType, boolean useSubDirectoryPerScope, boolean useRepositoryLayout, boolean removeVersion, File outputFileDirectory ) { this.overWriteReleases = overWriteReleases; @@ -80,6 +83,7 @@ public class DestFileFilter this.overWriteIfNewer = overWriteIfNewer; this.useSubDirectoryPerArtifact = useSubDirectoryPerArtifact; this.useSubDirectoryPerType = useSubDirectoryPerType; + this.useSubDirectoryPerScope = useSubDirectoryPerScope; this.useRepositoryLayout = useRepositoryLayout; this.removeVersion = removeVersion; this.outputFileDirectory = outputFileDirectory; @@ -262,7 +266,7 @@ public class DestFileFilter File destFolder = item.getOutputDirectory(); if ( destFolder == null ) { - destFolder = DependencyUtil.getFormattedOutputDirectory( useSubDirectoryPerType, + destFolder = DependencyUtil.getFormattedOutputDirectory( useSubDirectoryPerScope, useSubDirectoryPerType, useSubDirectoryPerArtifact, useRepositoryLayout, removeVersion, this.outputFileDirectory, artifact ); } Modified: maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestAnalyzeDepMgt.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestAnalyzeDepMgt.java?rev=1031212&r1=1031211&r2=1031212&view=diff ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestAnalyzeDepMgt.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestAnalyzeDepMgt.java Thu Nov 4 20:17:28 2010 @@ -52,6 +52,7 @@ public class TestAnalyzeDepMgt Artifact exclusionArtifact; DependencyManagement depMgt; + DependencyManagement depMgtNoExclusions; protected void setUp() throws Exception { Modified: maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestCopyDependenciesMojo.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestCopyDependenciesMojo.java?rev=1031212&r1=1031211&r2=1031212&view=diff ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestCopyDependenciesMojo.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestCopyDependenciesMojo.java Thu Nov 4 20:17:28 2010 @@ -390,7 +390,7 @@ public class TestCopyDependenciesMojo { Artifact artifact = (Artifact) iter.next(); String fileName = DependencyUtil.getFormattedFileName( artifact, false ); - File folder = DependencyUtil.getFormattedOutputDirectory( true, false, false, false, mojo.outputDirectory, + File folder = DependencyUtil.getFormattedOutputDirectory( false, true, false, false, false, mojo.outputDirectory, artifact ); File file = new File( folder, fileName ); assertTrue( file.exists() ); Modified: maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestCopyDependenciesMojo2.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestCopyDependenciesMojo2.java?rev=1031212&r1=1031211&r2=1031212&view=diff ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestCopyDependenciesMojo2.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestCopyDependenciesMojo2.java Thu Nov 4 20:17:28 2010 @@ -195,7 +195,7 @@ public class TestCopyDependenciesMojo2 { Artifact artifact = (Artifact) iter.next(); String fileName = DependencyUtil.getFormattedFileName( artifact, false ); - File folder = DependencyUtil.getFormattedOutputDirectory( false, true, false, false, mojo.outputDirectory, + File folder = DependencyUtil.getFormattedOutputDirectory( false, false, true, false, false, mojo.outputDirectory, artifact ); File file = new File( folder, fileName ); assertTrue( file.exists() ); @@ -216,7 +216,28 @@ public class TestCopyDependenciesMojo2 { Artifact artifact = (Artifact) iter.next(); String fileName = DependencyUtil.getFormattedFileName( artifact, false ); - File folder = DependencyUtil.getFormattedOutputDirectory( true, true, false, false, mojo.outputDirectory, + File folder = DependencyUtil.getFormattedOutputDirectory( false, true, true, false, false, mojo.outputDirectory, + artifact ); + File file = new File( folder, fileName ); + assertTrue( file.exists() ); + } + } + + public void testSubPerArtifactAndScope() + throws Exception + { + mojo.project.setArtifacts( stubFactory.getTypedArtifacts() ); + mojo.project.setDependencyArtifacts( new HashSet() ); + mojo.useSubDirectoryPerArtifact = true; + mojo.useSubDirectoryPerScope = true; + mojo.execute(); + + Iterator iter = mojo.project.getArtifacts().iterator(); + while ( iter.hasNext() ) + { + Artifact artifact = (Artifact) iter.next(); + String fileName = DependencyUtil.getFormattedFileName( artifact, false ); + File folder = DependencyUtil.getFormattedOutputDirectory( true, false, true, false, false, mojo.outputDirectory, artifact ); File file = new File( folder, fileName ); assertTrue( file.exists() ); @@ -326,7 +347,7 @@ public class TestCopyDependenciesMojo2 { Artifact artifact = (Artifact) iter.next(); String fileName = DependencyUtil.getFormattedFileName( artifact, true ); - File folder = DependencyUtil.getFormattedOutputDirectory( false, true, false, true, mojo.outputDirectory, + File folder = DependencyUtil.getFormattedOutputDirectory( false, false, true, false, true, mojo.outputDirectory, artifact ); File file = new File( folder, fileName ); assertTrue( file.exists() ); @@ -348,7 +369,7 @@ public class TestCopyDependenciesMojo2 { Artifact artifact = (Artifact) iter.next(); String fileName = DependencyUtil.getFormattedFileName( artifact, true ); - File folder = DependencyUtil.getFormattedOutputDirectory( true, true, false, true, mojo.outputDirectory, + File folder = DependencyUtil.getFormattedOutputDirectory( false, true, true, false, true, mojo.outputDirectory, artifact ); File file = new File( folder, fileName ); assertTrue( file.exists() ); Modified: maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestUnpackDependenciesMojo.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestUnpackDependenciesMojo.java?rev=1031212&r1=1031211&r2=1031212&view=diff ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestUnpackDependenciesMojo.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestUnpackDependenciesMojo.java Thu Nov 4 20:17:28 2010 @@ -93,7 +93,8 @@ public class TestUnpackDependenciesMojo public void assertUnpacked( boolean val, Artifact artifact ) { - File folder = DependencyUtil.getFormattedOutputDirectory( mojo.useSubDirectoryPerType, + File folder = DependencyUtil.getFormattedOutputDirectory( mojo.useSubDirectoryPerScope, + mojo.useSubDirectoryPerType, mojo.useSubDirectoryPerArtifact, mojo.useRepositoryLayout, mojo.stripVersion, mojo.outputDirectory, artifact ); @@ -629,7 +630,7 @@ public class TestUnpackDependenciesMojo public File getUnpackedFile( Artifact artifact ) { - File destDir = DependencyUtil.getFormattedOutputDirectory( mojo.isUseSubDirectoryPerType(), mojo + File destDir = DependencyUtil.getFormattedOutputDirectory( mojo.isUseSubDirectoryPerScope(), mojo.isUseSubDirectoryPerType(), mojo .isUseSubDirectoryPerArtifact(), mojo.useRepositoryLayout, mojo.stripVersion, mojo.getOutputDirectory(), artifact ); File unpacked = new File( destDir, DependencyArtifactStubFactory.getUnpackableFileName( artifact ) ); Modified: maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestUnpackDependenciesMojo2.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestUnpackDependenciesMojo2.java?rev=1031212&r1=1031211&r2=1031212&view=diff ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestUnpackDependenciesMojo2.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestUnpackDependenciesMojo2.java Thu Nov 4 20:17:28 2010 @@ -81,7 +81,7 @@ public class TestUnpackDependenciesMojo2 public File getUnpackedFile( Artifact artifact ) { - File destDir = DependencyUtil.getFormattedOutputDirectory( mojo.isUseSubDirectoryPerType(), mojo + File destDir = DependencyUtil.getFormattedOutputDirectory( mojo.isUseSubDirectoryPerScope(), mojo.isUseSubDirectoryPerType(), mojo .isUseSubDirectoryPerArtifact(), mojo.useRepositoryLayout, mojo.stripVersion, mojo.getOutputDirectory(), artifact ); File unpacked = new File( destDir, DependencyArtifactStubFactory.getUnpackableFileName( artifact ) ); Modified: maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/TestDependencyUtil.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/TestDependencyUtil.java?rev=1031212&r1=1031211&r2=1031212&view=diff ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/TestDependencyUtil.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/TestDependencyUtil.java Thu Nov 4 20:17:28 2010 @@ -93,36 +93,46 @@ public class TestDependencyUtil { File folder = new File( "target/a" ); final Artifact artifact = (Artifact) artifacts.get( 0 ); - File name = DependencyUtil.getFormattedOutputDirectory( false, false, false, false, folder, artifact ); + File name = DependencyUtil.getFormattedOutputDirectory( false, false, false, false, false, folder, artifact ); // object is the same. assertEquals( folder, name ); - name = DependencyUtil.getFormattedOutputDirectory( false, false, true, false, folder, artifact ); + name = DependencyUtil.getFormattedOutputDirectory( false, false, false, true, false, folder, artifact ); String expectedResult = folder.getAbsolutePath() + File.separatorChar + "test" + File.separatorChar + "one" + File.separatorChar + "1.1"; assertTrue( expectedResult.equalsIgnoreCase( name.getAbsolutePath() ) ); - name = DependencyUtil.getFormattedOutputDirectory( true, false, false, false, folder, artifact ); + name = DependencyUtil.getFormattedOutputDirectory( false, true, false, false, false, folder, artifact ); expectedResult = folder.getAbsolutePath() + File.separatorChar + "jars"; assertTrue( expectedResult.equalsIgnoreCase( name.getAbsolutePath() ) ); - name = DependencyUtil.getFormattedOutputDirectory( false, true, false, false, folder, artifact ); + name = DependencyUtil.getFormattedOutputDirectory( true, false, false, false, false, folder, artifact ); + expectedResult = folder.getAbsolutePath() + File.separatorChar + "compile"; + assertEquals( expectedResult, name.getAbsolutePath() ); + assertTrue( expectedResult.equalsIgnoreCase( name.getAbsolutePath() ) ); + + name = DependencyUtil.getFormattedOutputDirectory( false, false, true, false, false, folder, artifact ); expectedResult = folder.getAbsolutePath() + File.separatorChar + "one-sources-1.1-jar"; assertEquals( expectedResult, name.getAbsolutePath() ); - name = DependencyUtil.getFormattedOutputDirectory( false, true, false, true, folder, artifact ); + name = DependencyUtil.getFormattedOutputDirectory( false, false, true, false, true, folder, artifact ); expectedResult = folder.getAbsolutePath() + File.separatorChar + "one-sources-jar"; assertEquals( expectedResult, name.getAbsolutePath() ); - name = DependencyUtil.getFormattedOutputDirectory( true, true, false, false, folder, artifact ); + name = DependencyUtil.getFormattedOutputDirectory( false, true, true, false, false, folder, artifact ); expectedResult = folder.getAbsolutePath() + File.separatorChar + "jars" + File.separatorChar + "one-sources-1.1-jar"; assertEquals( expectedResult, name.getAbsolutePath() ); - name = DependencyUtil.getFormattedOutputDirectory( true, true, false, true, folder, artifact ); + name = DependencyUtil.getFormattedOutputDirectory( false, true, true, false, true, folder, artifact ); expectedResult = folder.getAbsolutePath() + File.separatorChar + "jars" + File.separatorChar + "one-sources-jar"; assertEquals( expectedResult, name.getAbsolutePath() ); + + name = DependencyUtil.getFormattedOutputDirectory( true, false, true, false, true, folder, artifact ); + expectedResult = folder.getAbsolutePath() + File.separatorChar + "compile" + File.separatorChar + + "one-sources-jar"; + assertEquals( expectedResult, name.getAbsolutePath() ); } public void testDirectoryName2() @@ -130,33 +140,33 @@ public class TestDependencyUtil { File folder = new File( "target/a" ); final Artifact artifact = (Artifact) artifacts.get( 1 ); - File name = DependencyUtil.getFormattedOutputDirectory( false, false, false, false, folder, artifact ); + File name = DependencyUtil.getFormattedOutputDirectory( false, false, false, false, false, folder, artifact ); // object is the same. assertEquals( folder, name ); - name = DependencyUtil.getFormattedOutputDirectory( true, false, false, false, folder, artifact ); + name = DependencyUtil.getFormattedOutputDirectory( false, true, false, false, false, folder, artifact ); String expectedResult = folder.getAbsolutePath() + File.separatorChar + "wars"; assertEquals( expectedResult, name.getAbsolutePath() ); - name = DependencyUtil.getFormattedOutputDirectory( false, false, true, false, folder, artifact ); + name = DependencyUtil.getFormattedOutputDirectory( false, false, false, true, false, folder, artifact ); expectedResult = folder.getAbsolutePath() + File.separatorChar + "test" + File.separatorChar + "two" + File.separatorChar + "1.1-SNAPSHOT"; assertEquals( expectedResult, name.getAbsolutePath() ); - name = DependencyUtil.getFormattedOutputDirectory( false, true, false, false, folder, artifact ); + name = DependencyUtil.getFormattedOutputDirectory( false, false, true, false, false, folder, artifact ); expectedResult = folder.getAbsolutePath() + File.separatorChar + "two-1.1-SNAPSHOT-war"; assertEquals( expectedResult, name.getAbsolutePath() ); - name = DependencyUtil.getFormattedOutputDirectory( true, true, false, false, folder, artifact ); + name = DependencyUtil.getFormattedOutputDirectory( false, true, true, false, false, folder, artifact ); expectedResult = folder.getAbsolutePath() + File.separatorChar + "wars" + File.separatorChar + "two-1.1-SNAPSHOT-war"; assertEquals( expectedResult, name.getAbsolutePath() ); - name = DependencyUtil.getFormattedOutputDirectory( false, true, false, true, folder, artifact ); + name = DependencyUtil.getFormattedOutputDirectory( false, false, true, false, true, folder, artifact ); expectedResult = folder.getAbsolutePath() + File.separatorChar + "two-war"; assertEquals( expectedResult, name.getAbsolutePath() ); - name = DependencyUtil.getFormattedOutputDirectory( true, true, false, true, folder, artifact ); + name = DependencyUtil.getFormattedOutputDirectory( false, true, true, false, true, folder, artifact ); expectedResult = folder.getAbsolutePath() + File.separatorChar + "wars" + File.separatorChar + "two-war"; assertEquals( expectedResult, name.getAbsolutePath() ); } @@ -165,11 +175,11 @@ public class TestDependencyUtil throws MojoExecutionException { File folder = new File( "target/a" ); - File name = DependencyUtil.getFormattedOutputDirectory( false, true, false, true, folder, sources ); + File name = DependencyUtil.getFormattedOutputDirectory( false, false, true, false, true, folder, sources ); String expectedResult = folder.getAbsolutePath() + File.separatorChar + "two-sources"; assertEquals( expectedResult, name.getAbsolutePath() ); - name = DependencyUtil.getFormattedOutputDirectory( false, true, false, false, folder, sources ); + name = DependencyUtil.getFormattedOutputDirectory( false, false, true, false, false, folder, sources ); expectedResult = folder.getAbsolutePath() + File.separatorChar + "two-sources-1.1-SNAPSHOT-sources"; assertEquals( expectedResult, name.getAbsolutePath() ); } Modified: maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/filters/TestDestFileFilter.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/filters/TestDestFileFilter.java?rev=1031212&r1=1031211&r2=1031212&view=diff ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/filters/TestDestFileFilter.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/filters/TestDestFileFilter.java Thu Nov 4 20:17:28 2010 @@ -82,7 +82,7 @@ public class TestDestFileFilter boolean removeVersion ) throws IOException { - File destFolder = DependencyUtil.getFormattedOutputDirectory( useSubDirectoryPerType, + File destFolder = DependencyUtil.getFormattedOutputDirectory(false, useSubDirectoryPerType, useSubDirectoryPerArtifact, false, false, outputFolder, artifact ); File destFile = new File( destFolder, DependencyUtil.getFormattedFileName( artifact, removeVersion ) );