* dependencies
* @return
*/
private ArtifactFilter createPurgeArtifactsFilter( Set<Artifact> dependencyArtifacts )
{
AndArtifactFilter andFilter = new AndArtifactFilter();
// System dependencies should never be purged
andFilter.add( new SystemScopeExcludeFilter() );
if ( this.snapshotsOnly )
{
andFilter.add( new SnapshotsFilter() );
}
// The CLI includes/excludes overrides configuration in the pom
if ( !StringUtils.isEmpty( this.include ) )
{
this.includes = parseIncludes( this.include );
}
if ( this.includes != null )
{
andFilter.add( new PatternIncludesArtifactFilter( includes ) );
}
if ( !StringUtils.isEmpty( this.exclude ) )
{
this.excludes = parseIncludes( this.exclude );
}
if ( this.excludes != null )
{
andFilter.add( new PatternExcludesArtifactFilter( excludes ) );
}
if ( !actTransitively )
{
andFilter.add( new DirectDependencyFilter( project.getArtifact(), dependencyArtifacts ) );
}
return andFilter;
}