You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by kr...@apache.org on 2014/10/16 20:25:08 UTC
svn commit: r1632405 - in /maven/plugins/trunk/maven-assembly-plugin/src:
main/java/org/apache/maven/plugin/assembly/
main/java/org/apache/maven/plugin/assembly/archive/
main/java/org/apache/maven/plugin/assembly/archive/phase/
main/java/org/apache/mav...
Author: krosenvold
Date: Thu Oct 16 18:25:08 2014
New Revision: 1632405
URL: http://svn.apache.org/r1632405
Log:
Refactored assembly building logic with slightly more powerful building blocks and a little more correctness
Added:
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/AssemblyId.java
- copied, changed from r1632404, maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblyContext.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/ResolvedAssembly.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/ResolvedModuleSet.java
- copied, changed from r1632404, maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/DefaultAssemblyContext.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/functions/
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/functions/ResolvedModuleSetConsumer.java
- copied, changed from r1632404, maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/DefaultAssemblyContext.java
Removed:
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblyContext.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/DefaultAssemblyContext.java
Modified:
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/AssemblyArchiverPhase.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhase.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhase.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhase.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolver.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolver.java
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhaseTest.java
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhaseTest.java
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhaseTest.java
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolverTest.java
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java?rev=1632405&r1=1632404&r2=1632405&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java Thu Oct 16 18:25:08 2014
@@ -27,11 +27,11 @@ import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
+import java.util.Set;
+import org.apache.maven.artifact.Artifact;
import org.apache.maven.plugin.DebugConfigurationListener;
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
-import org.apache.maven.plugin.assembly.DefaultAssemblyContext;
import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
import org.apache.maven.plugin.assembly.archive.archiver.AssemblyProxyArchiver;
import org.apache.maven.plugin.assembly.archive.phase.AssemblyArchiverPhase;
@@ -43,6 +43,9 @@ import org.apache.maven.plugin.assembly.
import org.apache.maven.plugin.assembly.interpolation.AssemblyExpressionEvaluator;
import org.apache.maven.plugin.assembly.model.Assembly;
import org.apache.maven.plugin.assembly.model.ContainerDescriptorHandlerConfig;
+import org.apache.maven.plugin.assembly.model.ModuleSet;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
+import org.apache.maven.plugin.assembly.resolved.ResolvedModuleSet;
import org.apache.maven.plugin.assembly.utils.AssemblyFileUtils;
import org.apache.maven.plugin.assembly.utils.AssemblyFormatUtils;
import org.codehaus.plexus.PlexusConstants;
@@ -172,13 +175,27 @@ public class DefaultAssemblyArchiver
archiver.setDestFile( destFile );
- final AssemblyContext context = new DefaultAssemblyContext();
+ List<ResolvedModuleSet> resolvedModuleSets = new ArrayList<ResolvedModuleSet>( );
+ for ( ModuleSet moduleSet : assembly.getModuleSets() )
+ {
+ resolvedModuleSets.add( dependencyResolver.resolve( assembly, moduleSet, configSource ));
+ }
+
+ // OK, this piece of code contains all the stuff left after I extracted resolvedModuleSets.
+ // this can probably be simplified quite a lot, since the module sets now have their
+ // own artifact resolution.
+ final Set<Artifact> dependencySetArtifacts =
+ dependencyResolver.resolve( assembly, configSource );
+
+ final ResolvedAssembly resolvedAssembly = ResolvedAssembly
+ .create( assembly )
+ .withResolvedModuleSets( resolvedModuleSets )
+ .withDependencySetArtifacts(dependencySetArtifacts);
- dependencyResolver.resolve( assembly, configSource, context );
for ( AssemblyArchiverPhase phase : assemblyPhases )
{
- phase.execute( assembly, archiver, configSource, context );
+ phase.execute( resolvedAssembly, archiver, configSource );
}
archiver.createArchive();
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/AssemblyArchiverPhase.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/AssemblyArchiverPhase.java?rev=1632405&r1=1632404&r2=1632405&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/AssemblyArchiverPhase.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/AssemblyArchiverPhase.java Thu Oct 16 18:25:08 2014
@@ -20,11 +20,10 @@ package org.apache.maven.plugin.assembly
*/
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
-import org.apache.maven.plugin.assembly.model.Assembly;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
import org.codehaus.plexus.archiver.Archiver;
/**
@@ -39,17 +38,14 @@ public interface AssemblyArchiverPhase
/**
* Handle the associated section of the assembly descriptor.
- *
* @param assembly
* The assembly descriptor to use
* @param archiver
* The archiver used to create the assembly archive, to which files/directories/artifacts are added
* @param configSource
- * The configuration for this assembly build, normally derived from the plugin that launched the assembly
- * process.
- * @param context
+* The configuration for this assembly build, normally derived from the plugin that launched the assembly
+* process.
*/
- void execute( Assembly assembly, Archiver archiver, AssemblerConfigurationSource configSource,
- AssemblyContext context )
+ void execute( ResolvedAssembly assembly, Archiver archiver, AssemblerConfigurationSource configSource )
throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException;
}
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java?rev=1632405&r1=1632404&r2=1632405&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java Thu Oct 16 18:25:08 2014
@@ -20,12 +20,11 @@ package org.apache.maven.plugin.assembly
*/
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.archive.task.AddDependencySetsTask;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
-import org.apache.maven.plugin.assembly.model.Assembly;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
import org.apache.maven.project.MavenProjectBuilder;
import org.codehaus.plexus.archiver.Archiver;
import org.codehaus.plexus.archiver.manager.ArchiverManager;
@@ -65,12 +64,12 @@ public class DependencySetAssemblyPhase
/**
* {@inheritDoc}
*/
- public void execute( final Assembly assembly, final Archiver archiver,
- final AssemblerConfigurationSource configSource, final AssemblyContext context )
+ public void execute( final ResolvedAssembly assembly, final Archiver archiver,
+ final AssemblerConfigurationSource configSource )
throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
{
final AddDependencySetsTask task =
- new AddDependencySetsTask( assembly.getDependencySets(), context.getResolvedArtifacts(),
+ new AddDependencySetsTask( assembly.getDependencySets(), assembly.getResolvedDependencySetArtifacts(),
configSource.getProject(), projectBuilder, archiverManager, getLogger() );
task.execute( archiver, configSource );
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhase.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhase.java?rev=1632405&r1=1632404&r2=1632405&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhase.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhase.java Thu Oct 16 18:25:08 2014
@@ -23,12 +23,11 @@ import java.io.File;
import java.util.List;
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
import org.apache.maven.plugin.assembly.format.FileFormatter;
-import org.apache.maven.plugin.assembly.model.Assembly;
import org.apache.maven.plugin.assembly.model.FileItem;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
import org.apache.maven.plugin.assembly.utils.AssemblyFormatUtils;
import org.apache.maven.plugin.assembly.utils.TypeConversionUtils;
import org.codehaus.plexus.archiver.Archiver;
@@ -50,8 +49,8 @@ public class FileItemAssemblyPhase
/**
* {@inheritDoc}
*/
- public void execute( final Assembly assembly, final Archiver archiver,
- final AssemblerConfigurationSource configSource, final AssemblyContext context )
+ public void execute( final ResolvedAssembly assembly, final Archiver archiver,
+ final AssemblerConfigurationSource configSource )
throws ArchiveCreationException, AssemblyFormattingException
{
final List<FileItem> fileList = assembly.getFiles();
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhase.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhase.java?rev=1632405&r1=1632404&r2=1632405&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhase.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhase.java Thu Oct 16 18:25:08 2014
@@ -22,12 +22,11 @@ package org.apache.maven.plugin.assembly
import java.util.List;
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.archive.task.AddFileSetsTask;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
-import org.apache.maven.plugin.assembly.model.Assembly;
import org.apache.maven.plugin.assembly.model.FileSet;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
import org.codehaus.plexus.archiver.Archiver;
import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.logging.AbstractLogEnabled;
@@ -46,8 +45,8 @@ public class FileSetAssemblyPhase
/**
* {@inheritDoc}
*/
- public void execute( final Assembly assembly, final Archiver archiver,
- final AssemblerConfigurationSource configSource, final AssemblyContext context )
+ public void execute( final ResolvedAssembly assembly, final Archiver archiver,
+ final AssemblerConfigurationSource configSource )
throws ArchiveCreationException, AssemblyFormattingException
{
final List<FileSet> fileSets = assembly.getFileSets();
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java?rev=1632405&r1=1632404&r2=1632405&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java Thu Oct 16 18:25:08 2014
@@ -35,19 +35,20 @@ import javax.annotation.Nonnull;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.ArtifactUtils;
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.archive.task.AddArtifactTask;
import org.apache.maven.plugin.assembly.archive.task.AddDependencySetsTask;
import org.apache.maven.plugin.assembly.archive.task.AddFileSetsTask;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
-import org.apache.maven.plugin.assembly.model.Assembly;
import org.apache.maven.plugin.assembly.model.DependencySet;
import org.apache.maven.plugin.assembly.model.FileSet;
import org.apache.maven.plugin.assembly.model.ModuleBinaries;
import org.apache.maven.plugin.assembly.model.ModuleSet;
import org.apache.maven.plugin.assembly.model.ModuleSources;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
+import org.apache.maven.plugin.assembly.resolved.ResolvedModuleSet;
+import org.apache.maven.plugin.assembly.resolved.functions.ResolvedModuleSetConsumer;
import org.apache.maven.plugin.assembly.utils.AssemblyFormatUtils;
import org.apache.maven.plugin.assembly.utils.FilterUtils;
import org.apache.maven.plugin.assembly.utils.ProjectUtils;
@@ -95,23 +96,26 @@ public class ModuleSetAssemblyPhase
/**
* {@inheritDoc}
*/
- public void execute( final Assembly assembly, final Archiver archiver,
- final AssemblerConfigurationSource configSource, final AssemblyContext context )
+ public void execute( final ResolvedAssembly assembly, final Archiver archiver,
+ final AssemblerConfigurationSource configSource )
throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
{
- final List<ModuleSet> moduleSets = assembly.getModuleSets();
-
- for (final ModuleSet moduleSet : moduleSets) {
- validate(moduleSet, configSource);
+ assembly.forEachResolvedModule( new ResolvedModuleSetConsumer()
+ {
+ public void accept( ResolvedModuleSet resolvedModule )
+ throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
+ {
+ validate(resolvedModule.getModuleSet(), configSource);
- final Set<MavenProject> moduleProjects = getModuleProjects(moduleSet, configSource, getLogger());
+ final Set<MavenProject> moduleProjects = getModuleProjects(resolvedModule.getModuleSet(), configSource, getLogger());
- final ModuleSources sources = moduleSet.getSources();
- addModuleSourceFileSets(sources, moduleProjects, archiver, configSource);
+ final ModuleSources sources = resolvedModule.getModuleSet().getSources();
+ addModuleSourceFileSets(sources, moduleProjects, archiver, configSource);
- final ModuleBinaries binaries = moduleSet.getBinaries();
- addModuleBinaries(binaries, moduleProjects, archiver, configSource, context);
- }
+ final ModuleBinaries binaries = resolvedModule.getModuleSet().getBinaries();
+ addModuleBinaries(resolvedModule, binaries, moduleProjects, archiver, configSource );
+ }
+ } );
}
private void validate( final ModuleSet moduleSet, final AssemblerConfigurationSource configSource )
@@ -155,9 +159,8 @@ public class ModuleSetAssemblyPhase
}
}
- protected void addModuleBinaries( final ModuleBinaries binaries, final Set<MavenProject> projects,
- final Archiver archiver, final AssemblerConfigurationSource configSource,
- final AssemblyContext context )
+ protected void addModuleBinaries( ResolvedModuleSet resolvedModule, final ModuleBinaries binaries, final Set<MavenProject> projects,
+ final Archiver archiver, final AssemblerConfigurationSource configSource )
throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
{
if ( binaries == null )
@@ -247,7 +250,7 @@ public class ModuleSetAssemblyPhase
getLogger().debug("Processing binary dependencies for module project: " + moduleProject.getId());
final AddDependencySetsTask task =
- new AddDependencySetsTask(depSets, context.getResolvedArtifacts(), moduleProject, projectBuilder,
+ new AddDependencySetsTask(depSets, resolvedModule.getArtifacts(), moduleProject, projectBuilder,
archiverManager, getLogger());
task.setModuleProject(moduleProject);
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhase.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhase.java?rev=1632405&r1=1632404&r2=1632405&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhase.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhase.java Thu Oct 16 18:25:08 2014
@@ -23,15 +23,14 @@ import java.io.File;
import java.util.List;
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.archive.phase.wrappers.RepoBuilderConfigSourceWrapper;
import org.apache.maven.plugin.assembly.archive.phase.wrappers.RepoInfoWrapper;
import org.apache.maven.plugin.assembly.archive.task.AddDirectoryTask;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
-import org.apache.maven.plugin.assembly.model.Assembly;
import org.apache.maven.plugin.assembly.model.Repository;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
import org.apache.maven.plugin.assembly.utils.AssemblyFormatUtils;
import org.apache.maven.plugin.assembly.utils.TypeConversionUtils;
import org.apache.maven.shared.repository.RepositoryAssembler;
@@ -69,8 +68,8 @@ public class RepositoryAssemblyPhase
/**
* {@inheritDoc}
*/
- public void execute( final Assembly assembly, final Archiver archiver,
- final AssemblerConfigurationSource configSource, final AssemblyContext context )
+ public void execute( final ResolvedAssembly assembly, final Archiver archiver,
+ final AssemblerConfigurationSource configSource )
throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
{
final List<Repository> repositoriesList = assembly.getRepositories();
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolver.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolver.java?rev=1632405&r1=1632404&r2=1632405&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolver.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolver.java Thu Oct 16 18:25:08 2014
@@ -38,7 +38,6 @@ import org.apache.maven.artifact.resolve
import org.apache.maven.artifact.resolver.MultipleArtifactsNotFoundException;
import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.archive.phase.ModuleSetAssemblyPhase;
import org.apache.maven.plugin.assembly.model.Assembly;
@@ -46,6 +45,8 @@ import org.apache.maven.plugin.assembly.
import org.apache.maven.plugin.assembly.model.ModuleBinaries;
import org.apache.maven.plugin.assembly.model.ModuleSet;
import org.apache.maven.plugin.assembly.model.Repository;
+import org.apache.maven.plugin.assembly.resolved.AssemblyId;
+import org.apache.maven.plugin.assembly.resolved.ResolvedModuleSet;
import org.apache.maven.plugin.assembly.utils.FilterUtils;
import org.apache.maven.project.MavenProject;
import org.apache.maven.project.artifact.InvalidDependencyVersionException;
@@ -74,41 +75,32 @@ public class DefaultDependencyResolver
@Requirement
private ArtifactFactory factory;
- @Requirement
- private ArtifactCollector collector;
-
public DefaultDependencyResolver()
{
// for plexus init
}
protected DefaultDependencyResolver( final ArtifactResolver resolver, final ArtifactMetadataSource metadataSource,
- final ArtifactFactory factory, final ArtifactCollector collector,
- final Logger logger )
+ final ArtifactFactory factory, final Logger logger )
{
this.resolver = resolver;
this.metadataSource = metadataSource;
this.factory = factory;
- this.collector = collector;
-
enableLogging( logger );
}
- public void resolve( final Assembly assembly, final AssemblerConfigurationSource configSource,
- final AssemblyContext context )
+ public Set<Artifact> resolve( final Assembly assembly, final AssemblerConfigurationSource configSource )
throws DependencyResolutionException
{
final MavenProject currentProject = configSource.getProject();
final ResolutionManagementInfo info = new ResolutionManagementInfo( currentProject );
- updateRepositoryResolutionRequirements(assembly, info, currentProject);
- updateDependencySetResolutionRequirements(assembly, assembly.getDependencySets(), info, currentProject);
- updateModuleSetResolutionRequirements(assembly, info, configSource);
+ updateRepositoryResolutionRequirements( assembly, info );
+ updateDependencySetResolutionRequirements( assembly.getDependencySets(), info, AssemblyId.createAssemblyId( assembly), currentProject );
if ( !info.isResolutionRequired() )
{
- context.setResolvedArtifacts( new HashSet<Artifact>() );
- return;
+ return new HashSet<Artifact>() ;
}
final List<ArtifactRepository> repos =
@@ -122,11 +114,48 @@ public class DefaultDependencyResolver
}
else
{
- getLogger().debug( "Resolving project dependencies ONLY. Transitive dependencies WILL NOT be included in the results." );
+ getLogger().debug(
+ "Resolving project dependencies ONLY. Transitive dependencies WILL NOT be included in the results." );
artifacts = resolveNonTransitively( assembly, artifacts, configSource, repos );
}
- context.setResolvedArtifacts( artifacts );
+ return artifacts;
+ }
+
+ public ResolvedModuleSet resolve( final Assembly assembly, ModuleSet moduleSet, final AssemblerConfigurationSource configSource )
+ throws DependencyResolutionException
+ {
+ final MavenProject currentProject = configSource.getProject();
+
+ final ResolutionManagementInfo info = new ResolutionManagementInfo( currentProject );
+ updateRepositoryResolutionRequirements( assembly, info );
+ final AssemblyId assemblyId = AssemblyId.createAssemblyId( assembly );
+ updateDependencySetResolutionRequirements( assembly.getDependencySets(), info, assemblyId, currentProject );
+ updateModuleSetResolutionRequirements( assemblyId, moduleSet, info, configSource );
+
+ ResolvedModuleSet base = ResolvedModuleSet.createResolvedModuleSet( moduleSet );
+ if ( !info.isResolutionRequired() )
+ {
+ return base.withArtifacts( new HashSet<Artifact>());
+ }
+
+ final List<ArtifactRepository> repos =
+ aggregateRemoteArtifactRepositories( configSource.getRemoteRepositories(), info.getEnabledProjects() );
+
+ Set<Artifact> artifacts = info.getArtifacts();
+ if ( info.isResolvedTransitively() )
+ {
+ getLogger().debug( "Resolving project dependencies transitively." );
+ artifacts = resolveTransitively( artifacts, repos, info, configSource );
+ }
+ else
+ {
+ getLogger().debug(
+ "Resolving project dependencies ONLY. Transitive dependencies WILL NOT be included in the results." );
+ artifacts = resolveNonTransitively( assembly, artifacts, configSource, repos );
+ }
+
+ return base.withArtifacts( artifacts);
}
protected Set<Artifact> resolveNonTransitively( final Assembly assembly, final Set<Artifact> dependencyArtifacts,
@@ -137,22 +166,30 @@ public class DefaultDependencyResolver
final List<Artifact> missing = new ArrayList<Artifact>();
final Set<Artifact> resolved = new LinkedHashSet<Artifact>();
- for (final Artifact depArtifact : dependencyArtifacts) {
- try {
- resolver.resolve(depArtifact, repos, configSource.getLocalRepository());
- resolved.add(depArtifact);
- } catch (final ArtifactResolutionException e) {
- if (getLogger().isDebugEnabled()) {
- getLogger().debug("Failed to resolve: " + depArtifact.getId() + " for assembly: "
- + assembly.getId());
+ for ( final Artifact depArtifact : dependencyArtifacts )
+ {
+ try
+ {
+ resolver.resolve( depArtifact, repos, configSource.getLocalRepository() );
+ resolved.add( depArtifact );
+ }
+ catch ( final ArtifactResolutionException e )
+ {
+ if ( getLogger().isDebugEnabled() )
+ {
+ getLogger().debug(
+ "Failed to resolve: " + depArtifact.getId() + " for assembly: " + assembly.getId() );
}
- missing.add(depArtifact);
- } catch (final ArtifactNotFoundException e) {
- if (getLogger().isDebugEnabled()) {
- getLogger().debug("Failed to resolve: " + depArtifact.getId() + " for assembly: "
- + assembly.getId());
+ missing.add( depArtifact );
+ }
+ catch ( final ArtifactNotFoundException e )
+ {
+ if ( getLogger().isDebugEnabled() )
+ {
+ getLogger().debug(
+ "Failed to resolve: " + depArtifact.getId() + " for assembly: " + assembly.getId() );
}
- missing.add(depArtifact);
+ missing.add( depArtifact );
}
}
@@ -186,10 +223,9 @@ public class DefaultDependencyResolver
ArtifactResolutionResult result;
try
{
- result =
- resolver.resolveTransitively( dependencyArtifacts, project.getArtifact(),
- project.getManagedVersionMap(), localRepository, repos, metadataSource,
- filter );
+ result = resolver.resolveTransitively( dependencyArtifacts, project.getArtifact(),
+ project.getManagedVersionMap(), localRepository, repos,
+ metadataSource, filter );
}
catch ( final ArtifactResolutionException e )
{
@@ -207,9 +243,8 @@ public class DefaultDependencyResolver
return result.getArtifacts();
}
- protected void updateRepositoryResolutionRequirements(final Assembly assembly,
- final ResolutionManagementInfo requirements,
- final MavenProject... project)
+ protected void updateRepositoryResolutionRequirements( final Assembly assembly,
+ final ResolutionManagementInfo requirements )
{
final List<Repository> repositories = assembly.getRepositories();
@@ -223,9 +258,9 @@ public class DefaultDependencyResolver
}
}
- protected void updateModuleSetResolutionRequirements(final Assembly assembly,
- final ResolutionManagementInfo requirements,
- final AssemblerConfigurationSource configSource)
+ protected void updateModuleSetResolutionRequirements( final Assembly assembly,
+ final ResolutionManagementInfo requirements,
+ final AssemblerConfigurationSource configSource )
throws DependencyResolutionException
{
final List<ModuleSet> moduleSets = assembly.getModuleSets();
@@ -234,54 +269,61 @@ public class DefaultDependencyResolver
{
for ( final ModuleSet set : moduleSets )
{
- final ModuleBinaries binaries = set.getBinaries();
- if ( binaries != null )
- {
- Set<MavenProject> projects;
- try
- {
- projects = ModuleSetAssemblyPhase.getModuleProjects( set, configSource, getLogger() );
- }
- catch ( final ArchiveCreationException e )
- {
- throw new DependencyResolutionException(
- "Error determining project-set for moduleSet with binaries.",
- e );
- }
+ updateModuleSetResolutionRequirements( AssemblyId.createAssemblyId( assembly.getId() ), set,
+ requirements, configSource );
+ }
+ }
+ }
- if (!projects.isEmpty())
- {
- for ( final MavenProject p : projects )
- {
- requirements.enableProjectResolution( p );
-
- if ( p.getArtifact() == null )
- {
- // TODO: such a call in MavenMetadataSource too - packaging not really the intention of
- // type
- final Artifact artifact =
- factory.createBuildArtifact( p.getGroupId(), p.getArtifactId(), p.getVersion(),
- p.getPackaging() );
- p.setArtifact( artifact );
- }
- }
- }
+ protected void updateModuleSetResolutionRequirements( AssemblyId assemblyId, ModuleSet set, final ResolutionManagementInfo requirements,
+ final AssemblerConfigurationSource configSource )
+ throws DependencyResolutionException
+ {
+ final ModuleBinaries binaries = set.getBinaries();
+ if ( binaries != null )
+ {
+ Set<MavenProject> projects;
+ try
+ {
+ projects = ModuleSetAssemblyPhase.getModuleProjects( set, configSource, getLogger() );
+ }
+ catch ( final ArchiveCreationException e )
+ {
+ throw new DependencyResolutionException( "Error determining project-set for moduleSet with binaries.",
+ e );
+ }
- if ( binaries.isIncludeDependencies() )
+ if ( !projects.isEmpty() )
+ {
+ for ( final MavenProject p : projects )
+ {
+ requirements.enableProjectResolution( p );
+
+ if ( p.getArtifact() == null )
{
- updateDependencySetResolutionRequirements(assembly,
- ModuleSetAssemblyPhase.getDependencySets(binaries),
- requirements, projects.toArray(new MavenProject[projects.size()]));
+ // TODO: such a call in MavenMetadataSource too - packaging not really the intention of
+ // type
+ final Artifact artifact =
+ factory.createBuildArtifact( p.getGroupId(), p.getArtifactId(), p.getVersion(),
+ p.getPackaging() );
+ p.setArtifact( artifact );
}
}
}
+
+ if ( binaries.isIncludeDependencies() )
+ {
+ updateDependencySetResolutionRequirements( ModuleSetAssemblyPhase.getDependencySets( binaries ),
+ requirements, assemblyId,
+ projects.toArray( new MavenProject[projects.size()] ) );
+ }
}
}
@SuppressWarnings( "unchecked" )
- protected void updateDependencySetResolutionRequirements(final Assembly assembly, final List<DependencySet> depSets,
- final ResolutionManagementInfo requirements,
- final MavenProject... projects)
+ protected void updateDependencySetResolutionRequirements( final List<DependencySet> depSets,
+ final ResolutionManagementInfo requirements,
+ AssemblyId assemblyId, final MavenProject... projects )
throws DependencyResolutionException
{
if ( depSets != null && !depSets.isEmpty() )
@@ -314,14 +356,13 @@ public class DefaultDependencyResolver
catch ( final InvalidDependencyVersionException e )
{
throw new DependencyResolutionException(
- "Failed to create dependency artifacts for resolution. Assembly: "
- + assembly.getId(), e );
+ "Failed to create dependency artifacts for resolution. Assembly: " + assemblyId, e );
}
}
requirements.addArtifacts( dependencyArtifacts );
- getLogger().debug( "Dependencies for project: " + project.getId() + " are:\n"
- + StringUtils.join( dependencyArtifacts.iterator(), "\n" ) );
+ getLogger().debug( "Dependencies for project: " + project.getId() + " are:\n" + StringUtils.join(
+ dependencyArtifacts.iterator(), "\n" ) );
}
}
}
@@ -351,8 +392,8 @@ public class DefaultDependencyResolver
}
@SuppressWarnings( "unchecked" )
- protected List<ArtifactRepository> aggregateRemoteArtifactRepositories( final List<ArtifactRepository> remoteRepositories,
- final Set<MavenProject> projects )
+ protected List<ArtifactRepository> aggregateRemoteArtifactRepositories(
+ final List<ArtifactRepository> remoteRepositories, final Set<MavenProject> projects )
{
final List<List<ArtifactRepository>> repoLists = new ArrayList<List<ArtifactRepository>>();
@@ -365,12 +406,16 @@ public class DefaultDependencyResolver
final List<ArtifactRepository> remoteRepos = new ArrayList<ArtifactRepository>();
final Set<String> encounteredUrls = new HashSet<String>();
- for (final List<ArtifactRepository> repositoryList : repoLists) {
- if ((repositoryList != null) && !repositoryList.isEmpty()) {
- for (final ArtifactRepository repo : repositoryList) {
- if (!encounteredUrls.contains(repo.getUrl())) {
- remoteRepos.add(repo);
- encounteredUrls.add(repo.getUrl());
+ for ( final List<ArtifactRepository> repositoryList : repoLists )
+ {
+ if ( ( repositoryList != null ) && !repositoryList.isEmpty() )
+ {
+ for ( final ArtifactRepository repo : repositoryList )
+ {
+ if ( !encounteredUrls.contains( repo.getUrl() ) )
+ {
+ remoteRepos.add( repo );
+ encounteredUrls.add( repo.getUrl() );
}
}
}
@@ -379,54 +424,6 @@ public class DefaultDependencyResolver
return remoteRepos;
}
- protected ArtifactResolver getArtifactResolver()
- {
- return resolver;
- }
-
- protected DefaultDependencyResolver setArtifactResolver( final ArtifactResolver resolver )
- {
- this.resolver = resolver;
-
- return this;
- }
-
- protected ArtifactMetadataSource getArtifactMetadataSource()
- {
- return metadataSource;
- }
-
- protected DefaultDependencyResolver setArtifactMetadataSource( final ArtifactMetadataSource metadataSource )
- {
- this.metadataSource = metadataSource;
-
- return this;
- }
-
- protected ArtifactFactory getArtifactFactory()
- {
- return factory;
- }
-
- protected DefaultDependencyResolver setArtifactFactory( final ArtifactFactory factory )
- {
- this.factory = factory;
-
- return this;
- }
-
- protected ArtifactCollector getArtifactCollector()
- {
- return collector;
- }
-
- protected DefaultDependencyResolver setArtifactCollector( final ArtifactCollector collector )
- {
- this.collector = collector;
-
- return this;
- }
-
protected DefaultDependencyResolver setLogger( final Logger logger )
{
enableLogging( logger );
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolver.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolver.java?rev=1632405&r1=1632404&r2=1632405&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolver.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolver.java Thu Oct 16 18:25:08 2014
@@ -19,14 +19,18 @@ package org.apache.maven.plugin.assembly
* under the License.
*/
+import org.apache.maven.artifact.Artifact;
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
import org.apache.maven.plugin.assembly.model.Assembly;
+import org.apache.maven.plugin.assembly.model.ModuleSet;
+import org.apache.maven.plugin.assembly.resolved.ResolvedModuleSet;
+
+import java.util.Set;
/**
* Convenience component that aids in the resolution of dependency artifacts, according to various configurations such
* as transitivity flag and scope.
- *
+ *
* @version $Id$
*/
public interface DependencyResolver
@@ -35,7 +39,10 @@ public interface DependencyResolver
/**
* Resolve the project dependencies, according to the supplied configuration.
*/
- void resolve( Assembly assembly, AssemblerConfigurationSource configSource, AssemblyContext context )
+ Set<Artifact> resolve( Assembly assembly, AssemblerConfigurationSource configSource )
throws DependencyResolutionException;
+ ResolvedModuleSet resolve( final Assembly assembly, ModuleSet moduleSet,
+ final AssemblerConfigurationSource configSource )
+ throws DependencyResolutionException;
}
\ No newline at end of file
Copied: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/AssemblyId.java (from r1632404, maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblyContext.java)
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/AssemblyId.java?p2=maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/AssemblyId.java&p1=maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblyContext.java&r1=1632404&r2=1632405&rev=1632405&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblyContext.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/AssemblyId.java Thu Oct 16 18:25:08 2014
@@ -1,4 +1,4 @@
-package org.apache.maven.plugin.assembly;
+package org.apache.maven.plugin.assembly.resolved;
/*
* Licensed to the Apache Software Foundation (ASF) under one
@@ -19,13 +19,30 @@ package org.apache.maven.plugin.assembly
* under the License.
*/
-import org.apache.maven.artifact.Artifact;
+import org.apache.maven.plugin.assembly.model.Assembly;
-import java.util.Set;
-
-public interface AssemblyContext
+public class AssemblyId
{
- void setResolvedArtifacts( Set<Artifact> artifacts );
+ private final String id;
+
+ private AssemblyId( String id )
+ {
+ this.id = id;
+ }
+
+ public static AssemblyId createAssemblyId( String id )
+ {
+ return new AssemblyId( id );
+ }
+
+ public static AssemblyId createAssemblyId( Assembly id )
+ {
+ return new AssemblyId( id.getId() );
+ }
- Set<Artifact> getResolvedArtifacts();
+ @Override
+ public String toString()
+ {
+ return id;
+ }
}
Added: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/ResolvedAssembly.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/ResolvedAssembly.java?rev=1632405&view=auto
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/ResolvedAssembly.java (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/ResolvedAssembly.java Thu Oct 16 18:25:08 2014
@@ -0,0 +1,108 @@
+package org.apache.maven.plugin.assembly.resolved;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.
+ */
+
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
+import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
+import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
+import org.apache.maven.plugin.assembly.model.Assembly;
+import org.apache.maven.plugin.assembly.model.DependencySet;
+import org.apache.maven.plugin.assembly.model.FileItem;
+import org.apache.maven.plugin.assembly.model.FileSet;
+import org.apache.maven.plugin.assembly.model.Repository;
+import org.apache.maven.plugin.assembly.resolved.functions.ResolvedModuleSetConsumer;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+
+public class ResolvedAssembly {
+
+
+ private final Assembly assembly;
+ private final List<ResolvedModuleSet> resolvedModuleSets;
+ private final Set<Artifact> dependencySetArtifacts;
+
+ public ResolvedAssembly( Assembly assembly, List<ResolvedModuleSet> resolvedModuleSets,
+ Set<Artifact> dependencySetArtifacts ) {
+ this.assembly = assembly;
+ this.resolvedModuleSets = resolvedModuleSets;
+ this.dependencySetArtifacts = dependencySetArtifacts;
+ }
+
+ public static ResolvedAssembly create(Assembly assembly){
+ return new ResolvedAssembly(assembly, null, null );
+ }
+
+ public ResolvedAssembly withResolvedModuleSets(Iterable<ResolvedModuleSet> resolvedModuleSets){
+ List<ResolvedModuleSet> resolvedModuleSets1 = new ArrayList<ResolvedModuleSet>( );
+ for ( ResolvedModuleSet resolvedModuleSet : resolvedModuleSets )
+ {
+ resolvedModuleSets1.add(resolvedModuleSet);
+ }
+ return new ResolvedAssembly( assembly, resolvedModuleSets1, dependencySetArtifacts );
+ }
+
+
+
+ public void forEachResolvedModule(ResolvedModuleSetConsumer resolvedModuleSetConsumer) throws
+ ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
+ {
+ if (resolvedModuleSets == null) return;
+ for ( ResolvedModuleSet resolvedModuleSet : resolvedModuleSets )
+ {
+ resolvedModuleSetConsumer.accept( resolvedModuleSet);
+ }
+ }
+
+ public Set<Artifact> getResolvedDependencySetArtifacts(){
+ return dependencySetArtifacts;
+ }
+
+ public Assembly getAssembly() {
+ return assembly;
+ }
+
+ public List<DependencySet> getDependencySets()
+ {
+ return assembly.getDependencySets();
+ }
+
+ public List<FileItem> getFiles()
+ {
+ return assembly.getFiles();
+ }
+
+ public List<FileSet> getFileSets()
+ {
+ return assembly.getFileSets();
+ }
+
+ public List<Repository> getRepositories()
+ {
+ return assembly.getRepositories();
+ }
+
+ public ResolvedAssembly withDependencySetArtifacts( final Set<Artifact> dependencySetArtifacts )
+ {
+ return new ResolvedAssembly( assembly, resolvedModuleSets, dependencySetArtifacts );
+ }
+}
Copied: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/ResolvedModuleSet.java (from r1632404, maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/DefaultAssemblyContext.java)
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/ResolvedModuleSet.java?p2=maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/ResolvedModuleSet.java&p1=maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/DefaultAssemblyContext.java&r1=1632404&r2=1632405&rev=1632405&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/DefaultAssemblyContext.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/ResolvedModuleSet.java Thu Oct 16 18:25:08 2014
@@ -1,4 +1,4 @@
-package org.apache.maven.plugin.assembly;
+package org.apache.maven.plugin.assembly.resolved;
/*
* Licensed to the Apache Software Foundation (ASF) under one
@@ -20,33 +20,37 @@ package org.apache.maven.plugin.assembly
*/
import org.apache.maven.artifact.Artifact;
+import org.apache.maven.plugin.assembly.model.ModuleSet;
import java.util.Set;
-public class DefaultAssemblyContext
- implements AssemblyContext
-{
-
- private Set<Artifact> artifacts;
-
- /**
- * {@inheritDoc}
- *
- * @see org.apache.maven.plugin.assembly.AssemblyContext#setResolvedArtifacts(java.util.Set)
- */
- public void setResolvedArtifacts( final Set<Artifact> artifacts )
- {
- this.artifacts = artifacts;
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.apache.maven.plugin.assembly.AssemblyContext#getResolvedArtifacts()
- */
- public Set<Artifact> getResolvedArtifacts()
- {
- return artifacts;
- }
-
+public class ResolvedModuleSet {
+ private final ModuleSet moduleSet;
+ private final Set<Artifact> artifacts;
+
+ private ResolvedModuleSet( ModuleSet moduleSet, Set<Artifact> artifacts ) {
+ this.moduleSet = moduleSet;
+ this.artifacts = artifacts;
+ }
+
+ public static ResolvedModuleSet createResolvedModuleSet(ModuleSet moduleSet) {
+ return new ResolvedModuleSet(moduleSet, null );
+ }
+
+ public static ResolvedModuleSet empty() {
+ return new ResolvedModuleSet(null, null );
+ }
+
+ public ModuleSet getModuleSet() {
+ return moduleSet;
+ }
+
+ public ResolvedModuleSet withArtifacts(Set<Artifact> artifacts ){
+ return new ResolvedModuleSet( moduleSet, artifacts );
+ }
+
+ public Set<Artifact> getArtifacts()
+ {
+ return artifacts;
+ }
}
Copied: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/functions/ResolvedModuleSetConsumer.java (from r1632404, maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/DefaultAssemblyContext.java)
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/functions/ResolvedModuleSetConsumer.java?p2=maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/functions/ResolvedModuleSetConsumer.java&p1=maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/DefaultAssemblyContext.java&r1=1632404&r2=1632405&rev=1632405&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/DefaultAssemblyContext.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/resolved/functions/ResolvedModuleSetConsumer.java Thu Oct 16 18:25:08 2014
@@ -1,4 +1,4 @@
-package org.apache.maven.plugin.assembly;
+package org.apache.maven.plugin.assembly.resolved.functions;
/*
* Licensed to the Apache Software Foundation (ASF) under one
@@ -18,35 +18,12 @@ package org.apache.maven.plugin.assembly
* specific language governing permissions and limitations
* under the License.
*/
-
-import org.apache.maven.artifact.Artifact;
-
-import java.util.Set;
-
-public class DefaultAssemblyContext
- implements AssemblyContext
-{
-
- private Set<Artifact> artifacts;
-
- /**
- * {@inheritDoc}
- *
- * @see org.apache.maven.plugin.assembly.AssemblyContext#setResolvedArtifacts(java.util.Set)
- */
- public void setResolvedArtifacts( final Set<Artifact> artifacts )
- {
- this.artifacts = artifacts;
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.apache.maven.plugin.assembly.AssemblyContext#getResolvedArtifacts()
- */
- public Set<Artifact> getResolvedArtifacts()
- {
- return artifacts;
- }
-
+import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
+import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
+import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
+import org.apache.maven.plugin.assembly.resolved.ResolvedModuleSet;
+
+public interface ResolvedModuleSetConsumer {
+ void accept(ResolvedModuleSet resolvedModule)
+ throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException;
}
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java?rev=1632405&r1=1632404&r2=1632405&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java Thu Oct 16 18:25:08 2014
@@ -19,6 +19,7 @@ package org.apache.maven.plugin.assembly
* under the License.
*/
+import static org.easymock.EasyMock.expect;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNull;
@@ -28,22 +29,23 @@ import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
+import java.util.HashSet;
import java.util.List;
import java.util.Map;
import junit.framework.Assert;
+import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.model.Model;
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
-import org.apache.maven.plugin.assembly.DefaultAssemblyContext;
import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
import org.apache.maven.plugin.assembly.archive.phase.AssemblyArchiverPhase;
import org.apache.maven.plugin.assembly.artifact.DependencyResolutionException;
import org.apache.maven.plugin.assembly.artifact.DependencyResolver;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
import org.apache.maven.plugin.assembly.model.Assembly;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
import org.apache.maven.plugin.assembly.testutils.MockManager;
import org.apache.maven.plugin.assembly.testutils.TestFileManager;
import org.apache.maven.project.MavenProject;
@@ -70,6 +72,7 @@ import org.codehaus.plexus.util.FileUtil
import org.easymock.MockControl;
import org.junit.AfterClass;
import org.junit.Before;
+import org.junit.Ignore;
import org.junit.Test;
public class DefaultAssemblyArchiverTest
@@ -139,7 +142,7 @@ public class DefaultAssemblyArchiverTest
final AssemblyArchiverPhase phase = (AssemblyArchiverPhase) phaseControl.getMock();
- phase.execute( null, null, null, null );
+ phase.execute( null, null, null );
phaseControl.setMatcher( MockControl.ALWAYS_MATCHER );
final MockControl csControl = MockControl.createControl( AssemblerConfigurationSource.class );
@@ -197,11 +200,9 @@ public class DefaultAssemblyArchiverTest
final Assembly assembly = new Assembly();
assembly.setId( "id" );
- final AssemblyContext context = new DefaultAssemblyContext();
-
try
{
- macMgr.dependencyResolver.resolve( assembly, configSource, context );
+ expect( macMgr.dependencyResolver.resolve( assembly, configSource )).andReturn( new HashSet<Artifact>( ) );
macMgr.dependencyResolverControl.setMatcher( MockControl.ALWAYS_MATCHER );
}
catch ( final DependencyResolutionException e )
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java?rev=1632405&r1=1632404&r2=1632405&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java Thu Oct 16 18:25:08 2014
@@ -21,7 +21,6 @@ package org.apache.maven.plugin.assembly
import org.apache.maven.artifact.Artifact;
import org.apache.maven.model.Model;
-import org.apache.maven.plugin.assembly.DefaultAssemblyContext;
import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.archive.task.testutils.ArtifactMock;
@@ -29,6 +28,7 @@ import org.apache.maven.plugin.assembly.
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
import org.apache.maven.plugin.assembly.model.Assembly;
import org.apache.maven.plugin.assembly.model.DependencySet;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
import org.apache.maven.plugin.assembly.testutils.MockManager;
import org.apache.maven.project.MavenProject;
import org.apache.maven.project.MavenProjectBuilder;
@@ -101,10 +101,9 @@ public class DependencySetAssemblyPhaseT
mockManager.replayAll();
- final DefaultAssemblyContext context = new DefaultAssemblyContext();
- context.setResolvedArtifacts( Collections.singleton( artifactMock.getArtifact() ) );
-
- createPhase( macTask, logger ).execute( assembly, macTask.archiver, macTask.configSource, context );
+ final ResolvedAssembly assembly1 = ResolvedAssembly.create( assembly ).withDependencySetArtifacts(
+ Collections.singleton( artifactMock.getArtifact() ) );
+ createPhase( macTask, logger ).execute( assembly1, macTask.archiver, macTask.configSource );
mockManager.verifyAll();
}
@@ -135,7 +134,7 @@ public class DependencySetAssemblyPhaseT
mockManager.replayAll();
- createPhase( macTask, logger ).execute( assembly, null, macTask.configSource, new DefaultAssemblyContext() );
+ createPhase( macTask, logger ).execute( ResolvedAssembly.create( assembly), null, macTask.configSource );
mockManager.verifyAll();
}
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhaseTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhaseTest.java?rev=1632405&r1=1632404&r2=1632405&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhaseTest.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhaseTest.java Thu Oct 16 18:25:08 2014
@@ -27,11 +27,11 @@ import junit.framework.TestCase;
import org.apache.maven.model.Model;
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.DefaultAssemblyContext;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
import org.apache.maven.plugin.assembly.model.Assembly;
import org.apache.maven.plugin.assembly.model.FileItem;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
import org.apache.maven.plugin.assembly.testutils.MockManager;
import org.apache.maven.plugin.assembly.testutils.TestFileManager;
import org.apache.maven.plugin.assembly.utils.TypeConversionUtils;
@@ -73,7 +73,7 @@ public class FileItemAssemblyPhaseTest
mm.replayAll();
- createPhase( macLogger.logger ).execute( assembly, null, macCS.configSource, new DefaultAssemblyContext() );
+ createPhase( macLogger.logger ).execute( ResolvedAssembly.create( assembly ), null, macCS.configSource );
mm.verifyAll();
}
@@ -122,8 +122,7 @@ public class FileItemAssemblyPhaseTest
mm.replayAll();
- createPhase( macLogger.logger ).execute( assembly, macArchiver.archiver, macCS.configSource,
- new DefaultAssemblyContext() );
+ createPhase( macLogger.logger ).execute( ResolvedAssembly.create( assembly), macArchiver.archiver, macCS.configSource );
mm.verifyAll();
}
@@ -172,8 +171,7 @@ public class FileItemAssemblyPhaseTest
mm.replayAll();
- createPhase( macLogger.logger ).execute( assembly, macArchiver.archiver, macCS.configSource,
- new DefaultAssemblyContext() );
+ createPhase( macLogger.logger ).execute( ResolvedAssembly.create( assembly), macArchiver.archiver, macCS.configSource );
mm.verifyAll();
}
@@ -250,8 +248,7 @@ public class FileItemAssemblyPhaseTest
mm.replayAll();
- createPhase( macLogger.logger ).execute( assembly, macArchiver.archiver, macCS.configSource,
- new DefaultAssemblyContext() );
+ createPhase( macLogger.logger ).execute( ResolvedAssembly.create( assembly), macArchiver.archiver, macCS.configSource );
mm.verifyAll();
}
@@ -331,8 +328,7 @@ public class FileItemAssemblyPhaseTest
mm.replayAll();
- createPhase( macLogger.logger ).execute( assembly, macArchiver.archiver, macCS.configSource,
- new DefaultAssemblyContext() );
+ createPhase( macLogger.logger ).execute( ResolvedAssembly.create( assembly), macArchiver.archiver, macCS.configSource );
mm.verifyAll();
}
@@ -410,8 +406,7 @@ public class FileItemAssemblyPhaseTest
mm.replayAll();
- createPhase( macLogger.logger ).execute( assembly, macArchiver.archiver, macCS.configSource,
- new DefaultAssemblyContext() );
+ createPhase( macLogger.logger ).execute( ResolvedAssembly.create( assembly), macArchiver.archiver, macCS.configSource );
mm.verifyAll();
}
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhaseTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhaseTest.java?rev=1632405&r1=1632404&r2=1632405&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhaseTest.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhaseTest.java Thu Oct 16 18:25:08 2014
@@ -25,12 +25,12 @@ import java.io.IOException;
import junit.framework.TestCase;
import org.apache.maven.model.Model;
-import org.apache.maven.plugin.assembly.DefaultAssemblyContext;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.archive.task.testutils.MockAndControlForAddFileSetsTask;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
import org.apache.maven.plugin.assembly.model.Assembly;
import org.apache.maven.plugin.assembly.model.FileSet;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
import org.apache.maven.plugin.assembly.testutils.MockManager;
import org.apache.maven.plugin.assembly.testutils.TestFileManager;
import org.apache.maven.project.MavenProject;
@@ -65,8 +65,7 @@ public class FileSetAssemblyPhaseTest
mockManager.replayAll();
- createPhase( macLogger ).execute( assembly, macTask.archiver, macTask.configSource,
- new DefaultAssemblyContext() );
+ createPhase( macLogger ).execute( ResolvedAssembly.create( assembly ), macTask.archiver, macTask.configSource );
mockManager.verifyAll();
}
@@ -108,8 +107,7 @@ public class FileSetAssemblyPhaseTest
mockManager.replayAll();
- createPhase( macLogger ).execute( assembly, macTask.archiver, macTask.configSource,
- new DefaultAssemblyContext() );
+ createPhase( macLogger ).execute( ResolvedAssembly.create( assembly), macTask.archiver, macTask.configSource );
mockManager.verifyAll();
}
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java?rev=1632405&r1=1632404&r2=1632405&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java Thu Oct 16 18:25:08 2014
@@ -19,8 +19,8 @@ package org.apache.maven.plugin.assembly
* under the License.
*/
+import org.apache.maven.artifact.Artifact;
import org.apache.maven.model.Model;
-import org.apache.maven.plugin.assembly.DefaultAssemblyContext;
import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.archive.task.testutils.ArtifactMock;
@@ -34,6 +34,8 @@ import org.apache.maven.plugin.assembly.
import org.apache.maven.plugin.assembly.model.ModuleBinaries;
import org.apache.maven.plugin.assembly.model.ModuleSet;
import org.apache.maven.plugin.assembly.model.ModuleSources;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
+import org.apache.maven.plugin.assembly.resolved.ResolvedModuleSet;
import org.apache.maven.plugin.assembly.testutils.MockManager;
import org.apache.maven.plugin.assembly.testutils.TestFileManager;
import org.apache.maven.plugin.assembly.utils.TypeConversionUtils;
@@ -54,6 +56,10 @@ import java.util.Set;
import junit.framework.Assert;
import junit.framework.TestCase;
+import static java.util.Collections.singleton;
+import static org.apache.maven.plugin.assembly.resolved.ResolvedModuleSet.createResolvedModuleSet;
+
+
public class ModuleSetAssemblyPhaseTest
extends TestCase
{
@@ -251,7 +257,7 @@ public class ModuleSetAssemblyPhaseTest
final Assembly assembly = new Assembly();
assembly.setIncludeBaseDirectory( false );
- createPhase( null, null ).execute( assembly, null, null, new DefaultAssemblyContext() );
+ createPhase( null, null ).execute( ResolvedAssembly.create( assembly), null, null );
}
public void testExecute_ShouldAddOneModuleSetWithOneModuleInIt()
@@ -303,8 +309,11 @@ public class ModuleSetAssemblyPhaseTest
mm.replayAll();
- createPhase( logger, null ).execute( assembly, macTask.archiver, macTask.configSource,
- new DefaultAssemblyContext() );
+ final ResolvedAssembly ra = ResolvedAssembly.create( assembly ).withDependencySetArtifacts(
+ new HashSet<Artifact>( ) ).withResolvedModuleSets( Collections.singleton( createResolvedModuleSet( ms ) ) );
+
+ final ModuleSetAssemblyPhase phase = createPhase( logger, null );
+ phase.execute( ra, macTask.archiver, macTask.configSource );
mm.verifyAll();
}
@@ -312,7 +321,7 @@ public class ModuleSetAssemblyPhaseTest
public void testAddModuleBinaries_ShouldReturnImmediatelyWhenBinariesIsNull()
throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
{
- createPhase( null, null ).addModuleBinaries( null, null, null, null, new DefaultAssemblyContext() );
+ createPhase( null, null ).addModuleBinaries( null, null, null, null, null );
}
public void testAddModuleBinaries_ShouldFilterPomModule()
@@ -336,15 +345,14 @@ public class ModuleSetAssemblyPhaseTest
final ArtifactMock artifactMock = new ArtifactMock( mm, "group", "artifact", "version", "pom", false );
project.setArtifact( artifactMock.getArtifact() );
- final Set<MavenProject> projects = Collections.singleton( project );
+ final Set<MavenProject> projects = singleton( project );
mm.replayAll();
- createPhase( new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ), null ).addModuleBinaries( binaries,
+ createPhase( new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ), null ).addModuleBinaries( null, binaries,
projects,
macTask.archiver,
- macTask.configSource,
- new DefaultAssemblyContext() );
+ macTask.configSource );
mm.verifyAll();
}
@@ -377,14 +385,15 @@ public class ModuleSetAssemblyPhaseTest
final MavenProject project = createProject( "group", "artifact", "version", null );
project.addAttachedArtifact( artifactMock.getArtifact() );
- final Set<MavenProject> projects = Collections.singleton( project );
+ final Set<MavenProject> projects = singleton( project );
mm.replayAll();
final Logger logger = new ConsoleLogger( Logger.LEVEL_DEBUG, "test" );
- createPhase( logger, null ).addModuleBinaries( binaries, projects, macTask.archiver, macTask.configSource,
- new DefaultAssemblyContext() );
+ ResolvedModuleSet rms = ResolvedModuleSet.empty().withArtifacts( Collections.<Artifact>emptySet() );
+
+ createPhase( logger, null ).addModuleBinaries( rms, binaries, projects, macTask.archiver, macTask.configSource );
mm.verifyAll();
}
@@ -410,7 +419,7 @@ public class ModuleSetAssemblyPhaseTest
final MavenProject project = createProject( "group", "artifact", "version", null );
project.setArtifact( artifactMock.getArtifact() );
- final Set<MavenProject> projects = Collections.singleton( project );
+ final Set<MavenProject> projects = singleton( project );
mm.replayAll();
@@ -418,8 +427,7 @@ public class ModuleSetAssemblyPhaseTest
try
{
- createPhase( logger, null ).addModuleBinaries( binaries, projects, macTask.archiver, macTask.configSource,
- new DefaultAssemblyContext() );
+ createPhase( logger, null ).addModuleBinaries( null, binaries, projects, macTask.archiver, macTask.configSource );
fail( "Should throw an invalid configuration exception because of module with missing attachment." );
}
@@ -458,14 +466,15 @@ public class ModuleSetAssemblyPhaseTest
final MavenProject project = createProject( "group", "artifact", "version", null );
project.setArtifact( artifactMock.getArtifact() );
- final Set<MavenProject> projects = Collections.singleton( project );
+ final Set<MavenProject> projects = singleton( project );
mm.replayAll();
final Logger logger = new ConsoleLogger( Logger.LEVEL_DEBUG, "test" );
- createPhase( logger, null ).addModuleBinaries( binaries, projects, macTask.archiver, macTask.configSource,
- new DefaultAssemblyContext() );
+ ResolvedModuleSet ms = ResolvedModuleSet.empty().withArtifacts( Collections.<Artifact>emptySet() );
+
+ createPhase( logger, null ).addModuleBinaries( ms, binaries, projects, macTask.archiver, macTask.configSource );
mm.verifyAll();
}
@@ -518,7 +527,7 @@ public class ModuleSetAssemblyPhaseTest
macTask.expectCSGetRepositories( null, null );
- final Set<MavenProject> projects = Collections.singleton( project );
+ final Set<MavenProject> projects = singleton( project );
mm.replayAll();
@@ -526,10 +535,11 @@ public class ModuleSetAssemblyPhaseTest
final ModuleSetAssemblyPhase phase = createPhase( overrideLogger, macTask );
- final DefaultAssemblyContext context = new DefaultAssemblyContext();
- context.setResolvedArtifacts( Collections.singleton( depArtifactMock.getArtifact() ) );
+ final ResolvedModuleSet rms = ResolvedModuleSet.empty( ).withArtifacts(
+ Collections.singleton( depArtifactMock.getArtifact() ) );
+
- phase.addModuleBinaries( binaries, projects, macTask.archiver, macTask.configSource, context );
+ phase.addModuleBinaries( rms, binaries, projects, macTask.archiver, macTask.configSource );
mm.verifyAll();
}
@@ -576,7 +586,7 @@ public class ModuleSetAssemblyPhaseTest
macTask.expectCSGetRepositories( null, null );
- final Set<MavenProject> projects = Collections.singleton( project );
+ final Set<MavenProject> projects = singleton( project );
mm.replayAll();
@@ -584,10 +594,9 @@ public class ModuleSetAssemblyPhaseTest
final ModuleSetAssemblyPhase phase = createPhase( overrideLogger, macTask );
- final DefaultAssemblyContext context = new DefaultAssemblyContext();
- context.setResolvedArtifacts( Collections.singleton( depArtifactMock.getArtifact() ) );
+ ResolvedModuleSet ms = ResolvedModuleSet.empty().withArtifacts( singleton( depArtifactMock.getArtifact() ) );
- phase.addModuleBinaries( binaries, projects, macTask.archiver, macTask.configSource, context );
+ phase.addModuleBinaries( ms, binaries, projects, macTask.archiver, macTask.configSource );
mm.verifyAll();
}
@@ -723,7 +732,7 @@ public class ModuleSetAssemblyPhaseTest
project.setArtifact( artifactMock.getArtifact() );
- final Set<MavenProject> projects = Collections.singleton( project );
+ final Set<MavenProject> projects = singleton( project );
final ModuleSources sources = new ModuleSources();
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhaseTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhaseTest.java?rev=1632405&r1=1632404&r2=1632405&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhaseTest.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhaseTest.java Thu Oct 16 18:25:08 2014
@@ -28,7 +28,6 @@ import junit.framework.TestCase;
import org.apache.maven.model.Model;
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.DefaultAssemblyContext;
import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.archive.phase.wrappers.RepoBuilderConfigSourceWrapper;
@@ -36,6 +35,7 @@ import org.apache.maven.plugin.assembly.
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
import org.apache.maven.plugin.assembly.model.Assembly;
import org.apache.maven.plugin.assembly.model.Repository;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
import org.apache.maven.plugin.assembly.testutils.MockManager;
import org.apache.maven.plugin.assembly.testutils.TestFileManager;
import org.apache.maven.plugin.assembly.utils.TypeConversionUtils;
@@ -84,10 +84,10 @@ public class RepositoryAssemblyPhaseTest
mm.replayAll();
- createPhase( macRepo.repositoryAssembler, new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ).execute( assembly,
+ createPhase( macRepo.repositoryAssembler, new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ).execute( ResolvedAssembly.create(
+ assembly ),
macArchiver.archiver,
- macCS.configSource,
- new DefaultAssemblyContext() );
+ macCS.configSource );
mm.verifyAll();
}
@@ -130,10 +130,9 @@ public class RepositoryAssemblyPhaseTest
mm.replayAll();
- createPhase( macRepo.repositoryAssembler, new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ).execute( assembly,
+ createPhase( macRepo.repositoryAssembler, new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ).execute( ResolvedAssembly.create( assembly),
macArchiver.archiver,
- macCS.configSource,
- new DefaultAssemblyContext() );
+ macCS.configSource );
mm.verifyAll();
}
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolverTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolverTest.java?rev=1632405&r1=1632404&r2=1632405&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolverTest.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolverTest.java Thu Oct 16 18:25:08 2014
@@ -40,6 +40,7 @@ import org.apache.maven.plugin.assembly.
import org.apache.maven.plugin.assembly.model.ModuleBinaries;
import org.apache.maven.plugin.assembly.model.ModuleSet;
import org.apache.maven.plugin.assembly.model.Repository;
+import org.apache.maven.plugin.assembly.resolved.AssemblyId;
import org.apache.maven.plugin.assembly.testutils.MockManager;
import org.apache.maven.project.MavenProject;
import org.codehaus.plexus.PlexusTestCase;
@@ -101,9 +102,10 @@ public class DefaultDependencyResolverTe
final ResolutionManagementInfo info = new ResolutionManagementInfo( project );
- new DefaultDependencyResolver( resolver, metadataSource, factory, collector, logger ).updateDependencySetResolutionRequirements(new Assembly(),
- depSets,
- info,
+ final Assembly assembly = new Assembly();
+ new DefaultDependencyResolver( resolver, metadataSource, factory, logger ).updateDependencySetResolutionRequirements(
+ depSets,
+ info, AssemblyId.createAssemblyId( assembly),
project);
assertTrue( info.isResolutionRequired() );
@@ -202,7 +204,7 @@ public class DefaultDependencyResolverTe
mm.replayAll();
final DefaultDependencyResolver resolver =
- new DefaultDependencyResolver( this.resolver, metadataSource, factory, collector, logger );
+ new DefaultDependencyResolver( this.resolver, metadataSource, factory, logger );
resolver.enableLogging( new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) );
final Assembly assembly = new Assembly();
@@ -257,9 +259,9 @@ public class DefaultDependencyResolverTe
assembly.setRepositories( repositories );
final ResolutionManagementInfo info = new ResolutionManagementInfo( project );
- new DefaultDependencyResolver( resolver, metadataSource, factory, collector, logger ).updateRepositoryResolutionRequirements(assembly,
- info,
- project);
+ new DefaultDependencyResolver( resolver, metadataSource, factory, logger ).updateRepositoryResolutionRequirements(assembly,
+ info
+ );
assertTrue( info.isResolutionRequired() );
@@ -298,7 +300,7 @@ public class DefaultDependencyResolverTe
project.setRemoteArtifactRepositories( projectRepos );
final List<ArtifactRepository> aggregated =
- new DefaultDependencyResolver( resolver, metadataSource, factory, collector, logger ).aggregateRemoteArtifactRepositories( externalRepos,
+ new DefaultDependencyResolver( resolver, metadataSource, factory, logger ).aggregateRemoteArtifactRepositories( externalRepos,
Collections.singleton( project ) );
assertRepositoryWithId( er1.getId(), aggregated, true );