Author: brianf Date: Sun Oct 8 21:12:02 2006 New Revision: 454275 URL: http://svn.apache.org/viewvc?view=rev&rev=454275 Log: more tests
Added: 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/main/java/org/apache/maven/plugin/dependency/utils/filters/ResolveFileFilter.java Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/AbstractDependencyFilterMojo.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/resolvers/GoOfflineMojo.java maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolveDependenciesMojo.java maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolveDependencySourcesMojo.java maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolvePluginsMojo.java maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/filters/MarkerFileFilter.java maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/markers/DefaultFileMarkerHandler.java maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/markers/MarkerHandler.java maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/markers/SourcesFileMarkerHandler.java maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/AbstractDependencyMojoTestCase.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/TestResolveMojo.java maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/ArtifactStubFactory.java maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/filters/TestMarkerFileFilter.java Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/AbstractDependencyFilterMojo.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/AbstractDependencyFilterMojo.java?view=diff&rev=454275&r1=454274&r2=454275 ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/AbstractDependencyFilterMojo.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/AbstractDependencyFilterMojo.java Sun Oct 8 21:12:02 2006 @@ -21,6 +21,7 @@ import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.dependency.utils.DependencyStatusSets; +import org.apache.maven.plugin.dependency.utils.filters.ArtifactsFilter; import org.apache.maven.plugin.dependency.utils.filters.FilterArtifacts; import org.apache.maven.plugin.dependency.utils.filters.MarkerFileFilter; import org.apache.maven.plugin.dependency.utils.filters.ScopeFilter; @@ -132,6 +133,7 @@ */ protected boolean outputArtifactFilename; + abstract protected ArtifactsFilter getMarkedArtifactFilter(); /** * Retrieves dependencies, either direct only or all including transitive. * @@ -214,14 +216,13 @@ return status; } - private DependencyStatusSets filterMarkedDependencies( Set artifacts ) + protected DependencyStatusSets filterMarkedDependencies( Set artifacts ) throws MojoExecutionException { // remove files that have markers already FilterArtifacts filter = new FilterArtifacts(); filter.clearFilters(); - filter.addFilter( new MarkerFileFilter( this.overWriteReleases, this.overWriteSnapshots, this.overWriteIfNewer, - this.markersDirectory ) ); + filter.addFilter( getMarkedArtifactFilter() ); Set unMarkedArtifacts = filter.filter( artifacts, getLog() ); 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?view=diff&rev=454275&r1=454274&r2=454275 ============================================================================== --- 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 Sun Oct 8 21:12:02 2006 @@ -22,7 +22,12 @@ import org.apache.maven.artifact.Artifact; import org.apache.maven.plugin.MojoExecutionException; +import org.apache.maven.plugin.dependency.utils.DependencyStatusSets; import org.apache.maven.plugin.dependency.utils.DependencyUtil; +import org.apache.maven.plugin.dependency.utils.filters.ArtifactsFilter; +import org.apache.maven.plugin.dependency.utils.filters.DestFileFilter; +import org.apache.maven.plugin.dependency.utils.filters.MarkerFileFilter; +import org.apache.maven.plugin.dependency.utils.markers.DefaultFileMarkerHandler; import org.apache.maven.plugin.logging.Log; /** @@ -59,12 +64,22 @@ public void execute() throws MojoExecutionException { - Set artifacts = getDependencies(true); + DependencyStatusSets dss = getDependencySets( true ); + Set artifacts = dss.getResolvedDependencies(); for ( Iterator i = artifacts.iterator(); i.hasNext(); ) { copyArtifact( (Artifact) i.next(), this.stripVersion ); } + + artifacts = dss.getSkippedDependencies(); + { + for ( Iterator i = artifacts.iterator(); i.hasNext(); ) + { + Artifact artifact = (Artifact)i.next(); + getLog().info(artifact.getFile().getName()+" already exists in destination."); + } + } } /** @@ -95,16 +110,13 @@ this.outputDirectory, artifact ); File destFile = new File( destDir, destFileName ); - boolean overWrite = true; - if ( artifact.isSnapshot() ) - { - overWrite = this.overWriteSnapshots; - } - else - { - overWrite = this.overWriteReleases; - } + DependencyUtil.copyFile( artifact.getFile(), destFile, this.getLog(), true ); + } - DependencyUtil.copyFile( artifact.getFile(), destFile, this.getLog(), overWrite ); + protected ArtifactsFilter getMarkedArtifactFilter() + { + return new DestFileFilter( this.overWriteReleases, this.overWriteSnapshots, this.overWriteIfNewer, + this.useSubDirectoryPerArtifact, this.useSubDirectoryPerType, 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?view=diff&rev=454275&r1=454274&r2=454275 ============================================================================== --- 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 Sun Oct 8 21:12:02 2006 @@ -23,6 +23,10 @@ import org.apache.maven.artifact.Artifact; import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.dependency.utils.DependencyUtil; +import org.apache.maven.plugin.dependency.utils.filters.ArtifactsFilter; +import org.apache.maven.plugin.dependency.utils.filters.MarkerFileFilter; +import org.apache.maven.plugin.dependency.utils.markers.DefaultFileMarkerHandler; +import org.apache.maven.plugin.dependency.utils.markers.MarkerHandler; import org.apache.maven.plugin.logging.Log; import org.codehaus.plexus.archiver.manager.ArchiverManager; @@ -61,19 +65,15 @@ File destDir = DependencyUtil.getFormattedOutputDirectory( this.useSubDirectoryPerType, this.useSubDirectoryPerArtifact, this.outputDirectory, artifact ); - - boolean overWrite = true; - if ( artifact.isSnapshot() ) - { - overWrite = this.overWriteSnapshots; - } - else - { - overWrite = this.overWriteReleases; - } - +// force overwrite for now. The filters should have removed anything from the list that shouldn't + //be overwritten. DependencyUtil.unpackFile( artifact, destDir, this.markersDirectory, this.archiverManager, this.getLog(), - overWrite ); + true ); } + } + + protected ArtifactsFilter getMarkedArtifactFilter() + { + return new MarkerFileFilter(this.overWriteReleases,this.overWriteSnapshots,this.overWriteIfNewer,new DefaultFileMarkerHandler(this.markersDirectory)); } } Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/GoOfflineMojo.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/GoOfflineMojo.java?view=diff&rev=454275&r1=454274&r2=454275 ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/GoOfflineMojo.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/GoOfflineMojo.java Sun Oct 8 21:12:02 2006 @@ -23,6 +23,7 @@ import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.dependency.AbstractResolveMojo; import org.apache.maven.plugin.dependency.utils.DependencyUtil; +import org.apache.maven.plugin.dependency.utils.filters.ArtifactsFilter; /** * Goal that resolves all project dependencies, including plugins and reports @@ -57,5 +58,11 @@ this.getLog().info( "Resolved: " + DependencyUtil.getFormattedFileName( (Artifact) i.next(), false ) ); } } + } + + protected ArtifactsFilter getMarkedArtifactFilter() + { + // TODO Auto-generated method stub + return null; } } Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolveDependenciesMojo.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolveDependenciesMojo.java?view=diff&rev=454275&r1=454274&r2=454275 ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolveDependenciesMojo.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolveDependenciesMojo.java Sun Oct 8 21:12:02 2006 @@ -19,6 +19,10 @@ import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.dependency.AbstractResolveMojo; import org.apache.maven.plugin.dependency.utils.DependencyStatusSets; +import org.apache.maven.plugin.dependency.utils.filters.ArtifactsFilter; +import org.apache.maven.plugin.dependency.utils.filters.MarkerFileFilter; +import org.apache.maven.plugin.dependency.utils.filters.ResolveFileFilter; +import org.apache.maven.plugin.dependency.utils.markers.SourcesFileMarkerHandler; /** * Goal that resolves the project dependencies from the repository. @@ -60,5 +64,10 @@ public DependencyStatusSets getResults() { return this.results; + } + + protected ArtifactsFilter getMarkedArtifactFilter() + { + return new ResolveFileFilter(new SourcesFileMarkerHandler(this.markersDirectory)); } } Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolveDependencySourcesMojo.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolveDependencySourcesMojo.java?view=diff&rev=454275&r1=454274&r2=454275 ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolveDependencySourcesMojo.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolveDependencySourcesMojo.java Sun Oct 8 21:12:02 2006 @@ -23,6 +23,7 @@ import org.apache.maven.artifact.Artifact; import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.dependency.AbstractResolveMojo; +import org.apache.maven.plugin.dependency.utils.filters.ArtifactsFilter; /** * Goal that resolves the project source dependencies from the repository. @@ -106,5 +107,11 @@ } } + } + + protected ArtifactsFilter getMarkedArtifactFilter() + { + // TODO Auto-generated method stub + return null; } } Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolvePluginsMojo.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolvePluginsMojo.java?view=diff&rev=454275&r1=454274&r2=454275 ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolvePluginsMojo.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/resolvers/ResolvePluginsMojo.java Sun Oct 8 21:12:02 2006 @@ -26,6 +26,7 @@ import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.dependency.AbstractResolveMojo; import org.apache.maven.plugin.dependency.utils.DependencyUtil; +import org.apache.maven.plugin.dependency.utils.filters.ArtifactsFilter; import org.apache.maven.project.ProjectBuildingException; import org.apache.maven.project.artifact.InvalidDependencyVersionException; @@ -113,5 +114,11 @@ throw new MojoExecutionException( "Nested:", e ); } + } + + protected ArtifactsFilter getMarkedArtifactFilter() + { + // TODO Auto-generated method stub + return null; } } Added: 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?view=auto&rev=454275 ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/filters/DestFileFilter.java (added) +++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/filters/DestFileFilter.java Sun Oct 8 21:12:02 2006 @@ -0,0 +1,160 @@ +/* + * Copyright 2005-2006 Brian Fox ([EMAIL PROTECTED]) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * + */ +package org.apache.maven.plugin.dependency.utils.filters; + +import java.io.File; +import java.util.HashSet; +import java.util.Iterator; +import java.util.Set; + +import org.apache.maven.artifact.Artifact; +import org.apache.maven.plugin.MojoExecutionException; +import org.apache.maven.plugin.dependency.utils.DependencyUtil; +import org.apache.maven.plugin.logging.Log; + +/** + * @author brianf + * + */ +public class DestFileFilter + implements ArtifactsFilter +{ + + boolean overWriteReleases; + + boolean overWriteSnapshots; + + boolean overWriteIfNewer; + + boolean useSubDirectoryPerArtifact; + + boolean useSubDirectoryPerType; + + boolean removeVersion; + + File outputFileDirectory; + + public DestFileFilter( boolean overWriteReleases, boolean overWriteSnapshots, boolean overWriteIfNewer, + boolean useSubDirectoryPerArtifact, boolean useSubDirectoryPerType, boolean removeVersion, File outputFileDirectory ) + { + this.overWriteReleases = overWriteReleases; + this.overWriteSnapshots = overWriteSnapshots; + this.overWriteIfNewer = overWriteIfNewer; + this.useSubDirectoryPerArtifact = useSubDirectoryPerArtifact; + this.useSubDirectoryPerType = useSubDirectoryPerType; + this.removeVersion = removeVersion; + this.outputFileDirectory = outputFileDirectory; + } + + /* + * (non-Javadoc) + * + * @see org.apache.mojo.dependency.utils.filters.ArtifactsFilter#filter(java.util.Set, + * org.apache.maven.plugin.logging.Log) + */ + public Set filter( Set artifacts, Log log ) + throws MojoExecutionException + { + Set result = new HashSet(); + + Iterator iter = artifacts.iterator(); + // log.debug("Artifacts:"+ artifacts.size()); + while ( iter.hasNext() ) + { + Artifact artifact = (Artifact) iter.next(); + if ( okToCopy( artifact ) ) + { + result.add( artifact ); + } + } + return result; + } + + public boolean okToCopy( Artifact artifact ) throws MojoExecutionException + { + boolean overWrite = false; + boolean result = false; + if ( ( artifact.isSnapshot() && this.overWriteSnapshots ) + || ( !artifact.isSnapshot() && this.overWriteReleases ) ) + { + overWrite = true; + } + + File destFolder = DependencyUtil.getFormattedOutputDirectory(this.useSubDirectoryPerType,this.useSubDirectoryPerArtifact,this.outputFileDirectory,artifact); + File destFile = new File(destFolder,DependencyUtil.getFormattedFileName(artifact,this.removeVersion)); + + if ( overWrite || ( !destFile.exists() || ( overWriteIfNewer && artifact.getFile().lastModified() < destFile.lastModified() ) ) ) + { + result = true; + } + + return result; + } + + /** + * @return Returns the overWriteReleases. + */ + public boolean isOverWriteReleases() + { + return this.overWriteReleases; + } + + /** + * @param overWriteReleases + * The overWriteReleases to set. + */ + public void setOverWriteReleases( boolean overWriteReleases ) + { + this.overWriteReleases = overWriteReleases; + } + + /** + * @return Returns the overWriteSnapshots. + */ + public boolean isOverWriteSnapshots() + { + return this.overWriteSnapshots; + } + + /** + * @param overWriteSnapshots + * The overWriteSnapshots to set. + */ + public void setOverWriteSnapshots( boolean overWriteSnapshots ) + { + this.overWriteSnapshots = overWriteSnapshots; + } + + /** + * @return Returns the overWriteIfNewer. + */ + public boolean isOverWriteIfNewer() + { + return this.overWriteIfNewer; + } + + /** + * @param overWriteIfNewer + * The overWriteIfNewer to set. + */ + public void setOverWriteIfNewer( boolean overWriteIfNewer ) + { + this.overWriteIfNewer = overWriteIfNewer; + } +} Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/filters/MarkerFileFilter.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/filters/MarkerFileFilter.java?view=diff&rev=454275&r1=454274&r2=454275 ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/filters/MarkerFileFilter.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/filters/MarkerFileFilter.java Sun Oct 8 21:12:02 2006 @@ -18,14 +18,12 @@ */ package org.apache.maven.plugin.dependency.utils.filters; -import java.io.File; import java.util.HashSet; import java.util.Iterator; import java.util.Set; import org.apache.maven.artifact.Artifact; import org.apache.maven.plugin.MojoExecutionException; -import org.apache.maven.plugin.dependency.utils.markers.DefaultFileMarkerHandler; import org.apache.maven.plugin.dependency.utils.markers.MarkerHandler; import org.apache.maven.plugin.logging.Log; @@ -43,15 +41,15 @@ boolean overWriteIfNewer; - File markerFileDirectory; + MarkerHandler handler; public MarkerFileFilter( boolean overWriteReleases, boolean overWriteSnapshots, boolean overWriteIfNewer, - File markerFileDirectory ) + MarkerHandler handler ) { this.overWriteReleases = overWriteReleases; this.overWriteSnapshots = overWriteSnapshots; this.overWriteIfNewer = overWriteIfNewer; - this.markerFileDirectory = markerFileDirectory; + this.handler = handler; } /* @@ -65,21 +63,12 @@ { Set result = new HashSet(); - boolean overWrite = false; - Iterator iter = artifacts.iterator(); // log.debug("Artifacts:"+ artifacts.size()); while ( iter.hasNext() ) { Artifact artifact = (Artifact) iter.next(); - if ( ( artifact.isSnapshot() && this.overWriteSnapshots ) - || ( !artifact.isSnapshot() && this.overWriteReleases ) ) - { - overWrite = true; - } - - MarkerHandler marker = new DefaultFileMarkerHandler( artifact, markerFileDirectory ); - if ( overWrite || ( !marker.isMarkerSet() || ( overWriteIfNewer && marker.isMarkerOlder( artifact ) ) ) ) + if ( okToProcess( artifact ) ) { result.add( artifact ); } @@ -87,6 +76,27 @@ return result; } + public boolean okToProcess( Artifact artifact ) + throws MojoExecutionException + { + boolean overWrite = false; + boolean result = false; + if ( ( artifact.isSnapshot() && this.overWriteSnapshots ) + || ( !artifact.isSnapshot() && this.overWriteReleases ) ) + { + overWrite = true; + } + + handler.setArtifact(artifact); + + if ( overWrite || ( !handler.isMarkerSet() || ( overWriteIfNewer && handler.isMarkerOlder( artifact ) ) ) ) + { + result = true; + } + + return result; + } + /** * @return Returns the overWriteReleases. */ @@ -119,23 +129,6 @@ public void setOverWriteSnapshots( boolean overWriteSnapshots ) { this.overWriteSnapshots = overWriteSnapshots; - } - - /** - * @return Returns the markerFileDirectory. - */ - public File getMarkerFileDirectory() - { - return this.markerFileDirectory; - } - - /** - * @param markerFileDirectory - * The markerFileDirectory to set. - */ - public void setMarkerFileDirectory( File markerFileDirectory ) - { - this.markerFileDirectory = markerFileDirectory; } /** Added: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/filters/ResolveFileFilter.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/filters/ResolveFileFilter.java?view=auto&rev=454275 ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/filters/ResolveFileFilter.java (added) +++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/filters/ResolveFileFilter.java Sun Oct 8 21:12:02 2006 @@ -0,0 +1,45 @@ +/* + * Copyright 2005-2006 Brian Fox ([EMAIL PROTECTED]) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * + */ +package org.apache.maven.plugin.dependency.utils.filters; + +import org.apache.maven.artifact.Artifact; +import org.apache.maven.plugin.MojoExecutionException; +import org.apache.maven.plugin.dependency.utils.markers.MarkerHandler; + +/** + * @author brianf + * + */ +public class ResolveFileFilter + extends MarkerFileFilter +{ + + public ResolveFileFilter( MarkerHandler handler ) + { + super( true, true, true, handler ); + } + + public boolean okToProcess( Artifact artifact ) + throws MojoExecutionException + { + handler.setArtifact( artifact ); + + return ( !handler.isMarkerSet() ); + } +} Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/markers/DefaultFileMarkerHandler.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/markers/DefaultFileMarkerHandler.java?view=diff&rev=454275&r1=454274&r2=454275 ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/markers/DefaultFileMarkerHandler.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/markers/DefaultFileMarkerHandler.java Sun Oct 8 21:12:02 2006 @@ -35,6 +35,11 @@ protected File markerFilesDirectory; + public DefaultFileMarkerHandler( File markerFilesDirectory ) + { + this.markerFilesDirectory = markerFilesDirectory; + } + public DefaultFileMarkerHandler( Artifact artifact, File markerFilesDirectory ) { this.artifact = artifact; @@ -70,13 +75,13 @@ return marker.exists(); } - public boolean isMarkerOlder( Artifact artifact ) + public boolean isMarkerOlder( Artifact artifact1 ) throws MojoExecutionException { File marker = getMarkerFile(); if ( marker.exists() ) { - return artifact.getFile().lastModified() > marker.lastModified(); + return artifact1.getFile().lastModified() > marker.lastModified(); } else { @@ -121,5 +126,39 @@ { File marker = getMarkerFile(); return marker.delete(); + } + + /** + * @return Returns the artifact. + */ + public Artifact getArtifact() + { + return this.artifact; + } + + /** + * @param artifact + * The artifact to set. + */ + public void setArtifact( Artifact artifact ) + { + this.artifact = artifact; + } + + /** + * @return Returns the markerFilesDirectory. + */ + public File getMarkerFilesDirectory() + { + return this.markerFilesDirectory; + } + + /** + * @param markerFilesDirectory + * The markerFilesDirectory to set. + */ + public void setMarkerFilesDirectory( File markerFilesDirectory ) + { + this.markerFilesDirectory = markerFilesDirectory; } } Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/markers/MarkerHandler.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/markers/MarkerHandler.java?view=diff&rev=454275&r1=454274&r2=454275 ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/markers/MarkerHandler.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/markers/MarkerHandler.java Sun Oct 8 21:12:02 2006 @@ -38,4 +38,7 @@ public boolean isMarkerOlder( Artifact artifact ) throws MojoExecutionException; + + public void setArtifact(Artifact artifact); + } Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/markers/SourcesFileMarkerHandler.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/markers/SourcesFileMarkerHandler.java?view=diff&rev=454275&r1=454274&r2=454275 ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/markers/SourcesFileMarkerHandler.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/utils/markers/SourcesFileMarkerHandler.java Sun Oct 8 21:12:02 2006 @@ -34,6 +34,11 @@ boolean resolved; + public SourcesFileMarkerHandler( File markerFilesDirectory ) + { + super(markerFilesDirectory); + } + public SourcesFileMarkerHandler( Artifact artifact, File markerFilesDirectory, boolean resolved ) { super( artifact, markerFilesDirectory ); @@ -162,5 +167,22 @@ boolean markResult = marker.delete(); boolean mark2Result = marker2.delete(); return markResult || mark2Result; + } + + /** + * @return Returns the resolved. + */ + public boolean isResolved() + { + return this.resolved; + } + + /** + * @param resolved + * The resolved to set. + */ + public void setResolved( boolean resolved ) + { + this.resolved = resolved; } } Modified: maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/AbstractDependencyMojoTestCase.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/AbstractDependencyMojoTestCase.java?view=diff&rev=454275&r1=454274&r2=454275 ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/AbstractDependencyMojoTestCase.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/AbstractDependencyMojoTestCase.java Sun Oct 8 21:12:02 2006 @@ -2,7 +2,6 @@ import java.io.File; import java.io.IOException; -import java.util.Random; import org.apache.maven.plugin.dependency.utils.ArtifactStubFactory; import org.apache.maven.plugin.dependency.utils.DependencyTestUtils; 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?view=diff&rev=454275&r1=454274&r2=454275 ============================================================================== --- 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 Sun Oct 8 21:12:02 2006 @@ -1,25 +1,18 @@ package org.apache.maven.plugin.dependency; import java.io.File; -import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; import java.util.Set; import org.apache.maven.artifact.Artifact; -import org.apache.maven.artifact.factory.ArtifactFactory; -import org.apache.maven.artifact.factory.DefaultArtifactFactory; -import org.apache.maven.artifact.handler.manager.ArtifactHandlerManager; -import org.apache.maven.artifact.handler.manager.DefaultArtifactHandlerManager; -import org.apache.maven.artifact.repository.DefaultArtifactRepository; -import org.apache.maven.artifact.resolver.ArtifactNotFoundException; import org.apache.maven.artifact.resolver.filter.ScopeArtifactFilter; import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.dependency.stubs.StubArtifactRepository; import org.apache.maven.plugin.dependency.stubs.StubArtifactResolver; -import org.apache.maven.plugin.dependency.utils.ArtifactStubFactory; import org.apache.maven.plugin.dependency.utils.DependencyTestUtils; import org.apache.maven.plugin.dependency.utils.DependencyUtil; +import org.apache.maven.plugin.dependency.utils.markers.DefaultFileMarkerHandler; import org.apache.maven.project.MavenProject; import org.codehaus.plexus.util.StringUtils; @@ -27,18 +20,16 @@ extends AbstractDependencyMojoTestCase { + CopyDependenciesMojo mojo; + protected void setUp() throws Exception { // required for mojo lookups to work super.setUp( "copy-dependencies", true ); - } - private CopyDependenciesMojo getNewMojo() - throws Exception - { File testPom = new File( getBasedir(), "target/test-classes/unit/copy-dependencies-test/plugin-config.xml" ); - CopyDependenciesMojo mojo = (CopyDependenciesMojo) lookupMojo( "copy-dependencies", testPom ); + mojo = (CopyDependenciesMojo) lookupMojo( "copy-dependencies", testPom ); mojo.outputDirectory = new File( this.testDir, "outputDirectory" ); // mojo.silent = true; @@ -52,8 +43,21 @@ project.setArtifacts( artifacts ); project.setDependencyArtifacts( directArtifacts ); + mojo.markersDirectory = new File( this.testDir, "markers" ); - return mojo; + } + + public void assertNoMarkerFile( Artifact artifact ) + { + DefaultFileMarkerHandler handle = new DefaultFileMarkerHandler( artifact, mojo.markersDirectory ); + try + { + assertFalse( handle.isMarkerSet() ); + } + catch ( MojoExecutionException e ) + { + fail( e.getLongMessage() ); + } } @@ -65,7 +69,6 @@ public void testCopyDependenciesMojo() throws Exception { - CopyDependenciesMojo mojo = getNewMojo(); mojo.execute(); Iterator iter = mojo.project.getArtifacts().iterator(); while ( iter.hasNext() ) @@ -74,13 +77,15 @@ String fileName = DependencyUtil.getFormattedFileName( artifact, false ); File file = new File( mojo.outputDirectory, fileName ); assertTrue( file.exists() ); + + // there should be no markers for the copy mojo + assertNoMarkerFile( artifact ); } } public void testCopyDependenciesMojoStripVersion() throws Exception { - CopyDependenciesMojo mojo = getNewMojo(); mojo.stripVersion = true; mojo.execute(); @@ -97,7 +102,6 @@ public void testCopyDependenciesMojoNoTransitive() throws Exception { - CopyDependenciesMojo mojo = getNewMojo(); mojo.excludeTransitive = true; mojo.execute(); Iterator iter = mojo.project.getDependencyArtifacts().iterator(); @@ -120,7 +124,6 @@ public void testCopyDependenciesMojoExcludeType() throws Exception { - CopyDependenciesMojo mojo = getNewMojo(); mojo.project.setArtifacts( stubFactory.getTypedArtifacts() ); mojo.project.setDependencyArtifacts( new HashSet() ); mojo.excludeTypes = "jar"; @@ -146,7 +149,6 @@ public void testCopyDependenciesMojoIncludeType() throws Exception { - CopyDependenciesMojo mojo = getNewMojo(); mojo.project.setArtifacts( stubFactory.getTypedArtifacts() ); mojo.project.setDependencyArtifacts( new HashSet() ); @@ -176,7 +178,6 @@ public void testCopyDependenciesMojoSubPerType() throws Exception { - CopyDependenciesMojo mojo = getNewMojo(); mojo.project.setArtifacts( stubFactory.getTypedArtifacts() ); mojo.project.setDependencyArtifacts( new HashSet() ); mojo.useSubDirectoryPerType = true; @@ -196,7 +197,6 @@ public void testCopyDependenciesMojoSubPerArtifact() throws Exception { - CopyDependenciesMojo mojo = getNewMojo(); mojo.useSubDirectoryPerArtifact = true; mojo.execute(); @@ -214,7 +214,6 @@ public void testCopyDependenciesMojoSubPerArtifactAndType() throws Exception { - CopyDependenciesMojo mojo = getNewMojo(); mojo.project.setArtifacts( stubFactory.getTypedArtifacts() ); mojo.project.setDependencyArtifacts( new HashSet() ); mojo.useSubDirectoryPerArtifact = true; @@ -235,7 +234,6 @@ public void testCopyDependenciesMojoIncludeCompileScope() throws Exception { - CopyDependenciesMojo mojo = getNewMojo(); mojo.project.setArtifacts( stubFactory.getScopedArtifacts() ); mojo.project.setDependencyArtifacts( new HashSet() ); mojo.includeScope = "compile"; @@ -256,7 +254,6 @@ public void testCopyDependenciesMojoIncludeTestScope() throws Exception { - CopyDependenciesMojo mojo = getNewMojo(); mojo.project.setArtifacts( stubFactory.getScopedArtifacts() ); mojo.project.setDependencyArtifacts( new HashSet() ); mojo.includeScope = "test"; @@ -278,7 +275,6 @@ public void testCopyDependenciesMojoIncludeRuntimeScope() throws Exception { - CopyDependenciesMojo mojo = getNewMojo(); mojo.project.setArtifacts( stubFactory.getScopedArtifacts() ); mojo.project.setDependencyArtifacts( new HashSet() ); mojo.includeScope = "runtime"; @@ -299,7 +295,6 @@ public void testCopyDependenciesMojoIncludeprovidedScope() throws Exception { - CopyDependenciesMojo mojo = getNewMojo(); mojo.project.setArtifacts( stubFactory.getScopedArtifacts() ); mojo.project.setDependencyArtifacts( new HashSet() ); mojo.includeScope = "provided"; @@ -318,7 +313,6 @@ public void testCopyDependenciesMojoIncludesystemScope() throws Exception { - CopyDependenciesMojo mojo = getNewMojo(); mojo.project.setArtifacts( stubFactory.getScopedArtifacts() ); mojo.project.setDependencyArtifacts( new HashSet() ); mojo.includeScope = "system"; @@ -357,7 +351,6 @@ public void dotestCopyDependenciesMojoClassifierType( String testClassifier, String testType ) throws Exception { - CopyDependenciesMojo mojo = getNewMojo(); mojo.classifier = testClassifier; mojo.type = testType; @@ -392,6 +385,9 @@ { fail( "Can't find:" + file.getAbsolutePath() ); } + + // there should be no markers for the copy mojo + assertNoMarkerFile( artifact ); } } @@ -410,10 +406,9 @@ public void dotestArtifactExceptions( boolean are, boolean anfe ) throws Exception { - CopyDependenciesMojo mojo = getNewMojo(); mojo.classifier = "jdk"; mojo.type = "java-sources"; - + // init classifier things mojo.factory = DependencyTestUtils.getArtifactFactory(); mojo.resolver = new StubArtifactResolver( are, anfe ); @@ -428,5 +423,134 @@ { } + } + + /* + * public void testOverwrite() { stubFactory.setCreateFiles( false ); + * Artifact artifact = stubFactory.createArtifact( "test", "artifact", "1.0" ); + * + * File testFile = new File( getBasedir() + File.separatorChar + + * "target/test-classes/unit/copy-dependencies-test/test.zip" ); } + */ + + public void testDontOverWriteRelease() + throws MojoExecutionException, InterruptedException + { + + Set artifacts = new HashSet(); + Artifact release = stubFactory.getReleaseArtifact(); + release.getFile().setLastModified( System.currentTimeMillis() - 2000 ); + + artifacts.add( release ); + + mojo.project.setArtifacts( artifacts ); + mojo.project.setDependencyArtifacts( artifacts ); + + mojo.overWriteIfNewer = false; + + mojo.execute(); + + File copiedFile = new File( mojo.outputDirectory, DependencyUtil.getFormattedFileName( release, false ) ); + + Thread.sleep( 100); + long time = System.currentTimeMillis(); + copiedFile.setLastModified( time ); + Thread.sleep( 100 ); + + mojo.execute(); + + assertEquals( time, copiedFile.lastModified() ); + } + + public void testOverWriteRelease() + throws MojoExecutionException, InterruptedException + { + + Set artifacts = new HashSet(); + Artifact release = stubFactory.getReleaseArtifact(); + release.getFile().setLastModified( System.currentTimeMillis() - 2000 ); + + artifacts.add( release ); + + mojo.project.setArtifacts( artifacts ); + mojo.project.setDependencyArtifacts( artifacts ); + + mojo.overWriteReleases = true; + mojo.overWriteIfNewer = false; + + mojo.execute(); + + File copiedFile = new File( mojo.outputDirectory, DependencyUtil.getFormattedFileName( release, false ) ); + + Thread.sleep( 100 ); + long time = System.currentTimeMillis(); + copiedFile.setLastModified( time ); + Thread.sleep( 100 ); + + mojo.execute(); + + assertTrue( time < copiedFile.lastModified() ); + } + + public void testDontOverWriteSnap() + throws MojoExecutionException, InterruptedException + { + + Set artifacts = new HashSet(); + Artifact snap = stubFactory.getSnapshotArtifact(); + snap.getFile().setLastModified( System.currentTimeMillis() - 2000 ); + + artifacts.add( snap ); + + mojo.project.setArtifacts( artifacts ); + mojo.project.setDependencyArtifacts( artifacts ); + + mojo.overWriteReleases = false; + mojo.overWriteSnapshots = false; + mojo.overWriteIfNewer = false; + + mojo.execute(); + + File copiedFile = new File( mojo.outputDirectory, DependencyUtil.getFormattedFileName( snap, false ) ); + + Thread.sleep( 100 ); + long time = System.currentTimeMillis(); + copiedFile.setLastModified( time ); + Thread.sleep( 100 ); + + mojo.execute(); + + assertEquals( time, copiedFile.lastModified() ); + } + + public void testOverWriteSnap() + throws MojoExecutionException, InterruptedException + { + + Set artifacts = new HashSet(); + Artifact snap = stubFactory.getSnapshotArtifact(); + snap.getFile().setLastModified( System.currentTimeMillis() - 2000 ); + + artifacts.add( snap ); + + mojo.project.setArtifacts( artifacts ); + mojo.project.setDependencyArtifacts( artifacts ); + + mojo.overWriteReleases = false; + mojo.overWriteSnapshots = true; + mojo.overWriteIfNewer = false; + + mojo.execute(); + + File copiedFile = new File( mojo.outputDirectory, DependencyUtil.getFormattedFileName( snap, false ) ); + + Thread.sleep( 100 ); + long time = System.currentTimeMillis(); + copiedFile.setLastModified( time ); + Thread.sleep( 100 ); + + mojo.execute(); + + assertTrue( time < copiedFile.lastModified() ); } } Modified: maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestResolveMojo.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestResolveMojo.java?view=diff&rev=454275&r1=454274&r2=454275 ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestResolveMojo.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/TestResolveMojo.java Sun Oct 8 21:12:02 2006 @@ -52,4 +52,6 @@ assertNotNull( results ); assertEquals( directArtifacts.size(), results.getResolvedDependencies().size() ); } + + //TODO: Test skipping artifacts. } Modified: maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/ArtifactStubFactory.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/ArtifactStubFactory.java?view=diff&rev=454275&r1=454274&r2=454275 ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/ArtifactStubFactory.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/ArtifactStubFactory.java Sun Oct 8 21:12:02 2006 @@ -119,4 +119,36 @@ set.addAll( getReleaseAndSnapshotArtifacts() ); return set; } + + /** + * @return Returns the createFiles. + */ + public boolean isCreateFiles() + { + return this.createFiles; + } + + /** + * @param createFiles The createFiles to set. + */ + public void setCreateFiles( boolean createFiles ) + { + this.createFiles = createFiles; + } + + /** + * @return Returns the workingDir. + */ + public File getWorkingDir() + { + return this.workingDir; + } + + /** + * @param workingDir The workingDir to set. + */ + public void setWorkingDir( File workingDir ) + { + this.workingDir = workingDir; + } } Modified: maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/filters/TestMarkerFileFilter.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/filters/TestMarkerFileFilter.java?view=diff&rev=454275&r1=454274&r2=454275 ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/filters/TestMarkerFileFilter.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/utils/filters/TestMarkerFileFilter.java Sun Oct 8 21:12:02 2006 @@ -32,6 +32,7 @@ import org.apache.maven.plugin.dependency.utils.DependencyTestUtils; import org.apache.maven.plugin.dependency.utils.SilentLog; import org.apache.maven.plugin.dependency.utils.markers.DefaultFileMarkerHandler; +import org.apache.maven.plugin.dependency.utils.markers.MarkerHandler; import org.apache.maven.plugin.logging.Log; /** @@ -72,7 +73,7 @@ public void testMarkerFile() throws MojoExecutionException { - MarkerFileFilter filter = new MarkerFileFilter( true, true, false, outputFolder ); + MarkerFileFilter filter = new MarkerFileFilter( true, true, false, new DefaultFileMarkerHandler( outputFolder ) ); Set result = filter.filter( artifacts, log ); assertEquals( 2, result.size() ); @@ -88,7 +89,7 @@ DefaultFileMarkerHandler handler = new DefaultFileMarkerHandler( fact.getSnapshotArtifact(), outputFolder ); handler.setMarker(); - MarkerFileFilter filter = new MarkerFileFilter( true, false, false, outputFolder ); + MarkerFileFilter filter = new MarkerFileFilter( true, false, false, new DefaultFileMarkerHandler( outputFolder ) ); Set result = filter.filter( artifacts, log ); assertEquals( 1, result.size() ); @@ -106,7 +107,8 @@ DefaultFileMarkerHandler handler = new DefaultFileMarkerHandler( fact.getReleaseArtifact(), outputFolder ); handler.setMarker(); - MarkerFileFilter filter = new MarkerFileFilter( false, false, false, outputFolder ); + MarkerFileFilter filter = new MarkerFileFilter( false, false, false, + new DefaultFileMarkerHandler( outputFolder ) ); Set result = filter.filter( artifacts, log ); assertEquals( 1, result.size() ); @@ -131,7 +133,7 @@ snap.getFile().setLastModified( snap.getFile().lastModified() + 222 ); DefaultFileMarkerHandler handler = new DefaultFileMarkerHandler( snap, outputFolder ); handler.setMarker(); - MarkerFileFilter filter = new MarkerFileFilter( false, false, true, outputFolder ); + MarkerFileFilter filter = new MarkerFileFilter( false, false, true, new DefaultFileMarkerHandler( outputFolder ) ); Set result = filter.filter( tempArtifacts, log ); assertEquals( 2, result.size() ); @@ -150,21 +152,19 @@ public void testGettersSetters() { - MarkerFileFilter filter = new MarkerFileFilter( true, false, true, outputFolder ); + MarkerFileFilter filter = new MarkerFileFilter( true, false, true, new DefaultFileMarkerHandler( outputFolder ) ); assertEquals( true, filter.isOverWriteReleases() ); assertEquals( false, filter.isOverWriteSnapshots() ); assertEquals( true, filter.isOverWriteIfNewer() ); - assertEquals( outputFolder, filter.getMarkerFileDirectory() ); filter.setOverWriteReleases( false ); filter.setOverWriteSnapshots( true ); filter.setOverWriteIfNewer( false ); File file = new File( outputFolder, "child" ); - filter.setMarkerFileDirectory( file ); + assertEquals( false, filter.isOverWriteReleases() ); assertEquals( true, filter.isOverWriteSnapshots() ); assertEquals( false, filter.isOverWriteIfNewer() ); - assertEquals( file, filter.getMarkerFileDirectory() ); }