You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by gn...@apache.org on 2021/10/02 10:26:34 UTC
[maven] 03/03: [MNG-5577] Use JSR 330 constructor injection
This is an automated email from the ASF dual-hosted git repository.
gnodet pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven.git
commit 35e5a4d71db9f3bf6490998b51ec50827caa6141
Author: Guillaume Nodet <gn...@gmail.com>
AuthorDate: Tue Sep 21 16:18:38 2021 +0200
[MNG-5577] Use JSR 330 constructor injection
# Conflicts:
# maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecyclePluginAnalyzer.java
---
.../apache/maven/project/ProjectClasspathTest.java | 7 +-
.../apache/maven/project/TestProjectBuilder.java | 19 +-
.../main/java/org/apache/maven/DefaultMaven.java | 50 ++-
.../maven/DefaultProjectDependenciesResolver.java | 13 +-
.../main/java/org/apache/maven/ReactorReader.java | 11 +-
.../artifact/factory/DefaultArtifactFactory.java | 7 +-
.../manager/DefaultArtifactHandlerManager.java | 11 +-
.../eventspy/internal/EventSpyDispatcher.java | 13 +-
.../DefaultRepositorySystemSessionFactory.java | 47 +--
.../maven/lifecycle/DefaultLifecycleExecutor.java | 43 +--
.../DefaultLifecycleExecutionPlanCalculator.java | 45 +--
.../DefaultLifecycleTaskSegmentCalculator.java | 13 +-
.../lifecycle/internal/LifecycleDebugLogger.java | 10 +-
.../internal/LifecycleDependencyResolver.java | 32 +-
.../lifecycle/internal/LifecycleModuleBuilder.java | 29 +-
.../maven/lifecycle/internal/LifecycleStarter.java | 43 ++-
.../lifecycle/internal/MojoDescriptorCreator.java | 32 +-
.../maven/lifecycle/internal/MojoExecutor.java | 24 +-
.../lifecycle/internal/builder/BuilderCommon.java | 28 +-
.../multithreaded/MultiThreadedBuilder.java | 10 +-
.../plugin/DefaultLifecycleBindingsInjector.java | 9 +-
.../maven/plugin/DefaultBuildPluginManager.java | 25 +-
.../plugin/internal/DefaultMavenPluginManager.java | 57 ++--
.../DefaultPluginDependenciesResolver.java | 10 +-
.../plugin/internal/DefaultPluginManager.java | 30 +-
.../internal/DefaultPluginPrefixResolver.java | 24 +-
.../internal/DefaultPluginVersionResolver.java | 24 +-
.../maven/project/DefaultProjectBuilder.java | 52 ++--
.../project/DefaultProjectBuildingHelper.java | 36 ++-
.../DefaultProjectDependenciesResolver.java | 18 +-
.../project/artifact/DefaultMetadataSource.java | 15 +-
.../project/artifact/MavenMetadataSource.java | 55 ++--
.../rtinfo/internal/DefaultRuntimeInformation.java | 9 +-
.../settings/DefaultMavenSettingsBuilder.java | 7 +-
.../maven/toolchain/DefaultToolchainManager.java | 10 +-
.../toolchain/DefaultToolchainManagerPrivate.java | 8 +
.../maven/toolchain/DefaultToolchainsBuilder.java | 7 +-
.../building/DefaultToolchainsBuilder.java | 13 +-
.../maven/toolchain/java/JavaToolchainFactory.java | 7 +-
.../lifecycle/DelegatingMojoExecutionListener.java | 1 +
.../lifecycle/internal/BuilderCommonTest.java | 3 +-
.../LifecycleExecutionPlanCalculatorTest.java | 2 +-
.../stub/LifecycleTaskSegmentCalculatorStub.java | 8 +-
.../lifecycle/internal/stub/MojoExecutorStub.java | 15 +-
.../apache/maven/project/TestMetadataSource.java | 10 +
.../DefaultToolchainManagerPrivateTest.java | 8 +-
.../toolchain/DefaultToolchainManagerTest.java | 9 +-
.../SettingsXmlConfigurationProcessor.java | 12 +-
.../maven/model/building/DefaultModelBuilder.java | 345 +++++++++++++++------
.../model/building/DefaultModelBuilderFactory.java | 213 ++++++++++---
.../model/building/DefaultModelProcessor.java | 14 +-
.../AbstractStringBasedModelInterpolator.java | 18 +-
.../StringSearchModelInterpolator.java | 15 +
.../StringVisitorModelInterpolator.java | 8 +
.../apache/maven/model/io/DefaultModelReader.java | 6 +-
.../model/path/DefaultModelPathTranslator.java | 7 +-
.../model/path/DefaultModelUrlNormalizer.java | 7 +-
.../ProfileActivationFilePathInterpolator.java | 7 +-
.../model/profile/DefaultProfileSelector.java | 7 +-
.../profile/activation/FileProfileActivator.java | 8 +-
.../model/superpom/DefaultSuperPomProvider.java | 7 +-
.../DefaultInheritanceAssemblerTest.java | 3 +-
.../StringVisitorModelInterpolatorTest.java | 2 +-
.../activation/AbstractProfileActivatorTest.java | 16 +-
.../activation/FileProfileActivatorTest.java | 12 +-
.../activation/JdkVersionProfileActivatorTest.java | 9 +-
.../activation/PropertyProfileActivatorTest.java | 9 +-
.../internal/DefaultArtifactDescriptorReader.java | 81 ++---
.../internal/DefaultVersionRangeResolver.java | 39 +--
.../internal/DefaultVersionResolver.java | 35 +--
.../DefaultArtifactDescriptorReaderTest.java | 6 +-
71 files changed, 1098 insertions(+), 747 deletions(-)
diff --git a/maven-compat/src/test/java/org/apache/maven/project/ProjectClasspathTest.java b/maven-compat/src/test/java/org/apache/maven/project/ProjectClasspathTest.java
index a2119ce..ad4531c 100644
--- a/maven-compat/src/test/java/org/apache/maven/project/ProjectClasspathTest.java
+++ b/maven-compat/src/test/java/org/apache/maven/project/ProjectClasspathTest.java
@@ -20,6 +20,7 @@ package org.apache.maven.project;
*/
import java.io.File;
+import java.lang.reflect.Field;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.repository.internal.DefaultArtifactDescriptorReader;
@@ -45,8 +46,10 @@ public class ProjectClasspathTest
super.setUp();
ArtifactResolver resolver = getContainer().lookup( ArtifactResolver.class, "classpath" );
- DefaultArtifactDescriptorReader pomReader = (DefaultArtifactDescriptorReader)getContainer().lookup(ArtifactDescriptorReader.class);
- pomReader.setArtifactResolver( resolver );
+ DefaultArtifactDescriptorReader pomReader = (DefaultArtifactDescriptorReader) getContainer().lookup(ArtifactDescriptorReader.class);
+ Field field = DefaultArtifactDescriptorReader.class.getDeclaredField( "artifactResolver" );
+ field.setAccessible( true );
+ field.set( pomReader, resolver );
projectBuilder = getContainer().lookup( ProjectBuilder.class, "classpath" );
}
diff --git a/maven-compat/src/test/java/org/apache/maven/project/TestProjectBuilder.java b/maven-compat/src/test/java/org/apache/maven/project/TestProjectBuilder.java
index 18deb43..b5a0348 100644
--- a/maven-compat/src/test/java/org/apache/maven/project/TestProjectBuilder.java
+++ b/maven-compat/src/test/java/org/apache/maven/project/TestProjectBuilder.java
@@ -19,7 +19,14 @@ import java.io.File;
import java.util.Collections;
import org.apache.maven.artifact.repository.ArtifactRepository;
-
+import org.apache.maven.bridge.MavenRepositorySystem;
+import org.apache.maven.model.building.ModelBuilder;
+import org.apache.maven.model.building.ModelProcessor;
+import org.codehaus.plexus.logging.Logger;
+import org.eclipse.aether.RepositorySystem;
+import org.eclipse.aether.impl.RemoteRepositoryManager;
+
+import javax.inject.Inject;
import javax.inject.Named;
import javax.inject.Singleton;
@@ -28,6 +35,16 @@ import javax.inject.Singleton;
public class TestProjectBuilder
extends DefaultProjectBuilder
{
+ @Inject
+ public TestProjectBuilder(
+ Logger logger, ModelBuilder modelBuilder, ModelProcessor modelProcessor,
+ ProjectBuildingHelper projectBuildingHelper, MavenRepositorySystem repositorySystem,
+ RepositorySystem repoSystem, RemoteRepositoryManager repositoryManager,
+ ProjectDependenciesResolver dependencyResolver )
+ {
+ super( logger, modelBuilder, modelProcessor, projectBuildingHelper, repositorySystem, repoSystem,
+ repositoryManager, dependencyResolver );
+ }
@Override
public ProjectBuildingResult build( File pomFile, ProjectBuildingRequest configuration )
diff --git a/maven-core/src/main/java/org/apache/maven/DefaultMaven.java b/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
index f80833b..a334e80 100644
--- a/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
+++ b/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
@@ -83,42 +83,58 @@ public class DefaultMaven
implements Maven
{
- @Inject
- private Logger logger;
+ private final Logger logger;
- @Inject
protected ProjectBuilder projectBuilder;
- @Inject
private LifecycleStarter lifecycleStarter;
- @Inject
protected PlexusContainer container;
- @Inject
private ExecutionEventCatapult eventCatapult;
- @Inject
private LegacySupport legacySupport;
- @Inject
private SessionScope sessionScope;
- @Inject
private DefaultRepositorySystemSessionFactory repositorySessionFactory;
- @Inject
- @Named( GraphBuilder.HINT )
- private GraphBuilder graphBuilder;
+ private final GraphBuilder graphBuilder;
- @Inject
- private BuildResumptionAnalyzer buildResumptionAnalyzer;
+ private final BuildResumptionAnalyzer buildResumptionAnalyzer;
- @Inject
- private BuildResumptionDataRepository buildResumptionDataRepository;
+ private final BuildResumptionDataRepository buildResumptionDataRepository;
+
+ private final SuperPomProvider superPomProvider;
@Inject
- private SuperPomProvider superPomProvider;
+ public DefaultMaven(
+ Logger logger,
+ ProjectBuilder projectBuilder,
+ LifecycleStarter lifecycleStarter,
+ PlexusContainer container,
+ ExecutionEventCatapult eventCatapult,
+ LegacySupport legacySupport,
+ SessionScope sessionScope,
+ DefaultRepositorySystemSessionFactory repositorySessionFactory,
+ @Named( GraphBuilder.HINT ) GraphBuilder graphBuilder,
+ BuildResumptionAnalyzer buildResumptionAnalyzer,
+ BuildResumptionDataRepository buildResumptionDataRepository,
+ SuperPomProvider superPomProvider )
+ {
+ this.logger = logger;
+ this.projectBuilder = projectBuilder;
+ this.lifecycleStarter = lifecycleStarter;
+ this.container = container;
+ this.eventCatapult = eventCatapult;
+ this.legacySupport = legacySupport;
+ this.sessionScope = sessionScope;
+ this.repositorySessionFactory = repositorySessionFactory;
+ this.graphBuilder = graphBuilder;
+ this.buildResumptionAnalyzer = buildResumptionAnalyzer;
+ this.buildResumptionDataRepository = buildResumptionDataRepository;
+ this.superPomProvider = superPomProvider;
+ }
@Override
public MavenExecutionResult execute( MavenExecutionRequest request )
diff --git a/maven-core/src/main/java/org/apache/maven/DefaultProjectDependenciesResolver.java b/maven-core/src/main/java/org/apache/maven/DefaultProjectDependenciesResolver.java
index 0ee0bee..4402d7e 100644
--- a/maven-core/src/main/java/org/apache/maven/DefaultProjectDependenciesResolver.java
+++ b/maven-core/src/main/java/org/apache/maven/DefaultProjectDependenciesResolver.java
@@ -56,11 +56,18 @@ public class DefaultProjectDependenciesResolver
implements ProjectDependenciesResolver
{
- @Inject
- private RepositorySystem repositorySystem;
+ private final RepositorySystem repositorySystem;
+
+ private final ResolutionErrorHandler resolutionErrorHandler;
@Inject
- private ResolutionErrorHandler resolutionErrorHandler;
+ public DefaultProjectDependenciesResolver(
+ RepositorySystem repositorySystem,
+ ResolutionErrorHandler resolutionErrorHandler )
+ {
+ this.repositorySystem = repositorySystem;
+ this.resolutionErrorHandler = resolutionErrorHandler;
+ }
public Set<Artifact> resolve( MavenProject project, Collection<String> scopesToResolve, MavenSession session )
throws ArtifactResolutionException, ArtifactNotFoundException
diff --git a/maven-core/src/main/java/org/apache/maven/ReactorReader.java b/maven-core/src/main/java/org/apache/maven/ReactorReader.java
index 42c41ac..247632a 100644
--- a/maven-core/src/main/java/org/apache/maven/ReactorReader.java
+++ b/maven-core/src/main/java/org/apache/maven/ReactorReader.java
@@ -67,13 +67,10 @@ class ReactorReader
private static final Logger LOGGER = LoggerFactory.getLogger( ReactorReader.class );
- private MavenSession session;
-
- private Map<String, MavenProject> projectsByGAV;
-
- private Map<String, List<MavenProject>> projectsByGA;
-
- private WorkspaceRepository repository;
+ private final MavenSession session;
+ private final Map<String, MavenProject> projectsByGAV;
+ private final Map<String, List<MavenProject>> projectsByGA;
+ private final WorkspaceRepository repository;
@Inject
ReactorReader( MavenSession session )
diff --git a/maven-core/src/main/java/org/apache/maven/artifact/factory/DefaultArtifactFactory.java b/maven-core/src/main/java/org/apache/maven/artifact/factory/DefaultArtifactFactory.java
index 9fc0506..70466a7 100644
--- a/maven-core/src/main/java/org/apache/maven/artifact/factory/DefaultArtifactFactory.java
+++ b/maven-core/src/main/java/org/apache/maven/artifact/factory/DefaultArtifactFactory.java
@@ -39,8 +39,13 @@ import org.apache.maven.artifact.versioning.VersionRange;
public class DefaultArtifactFactory
implements ArtifactFactory
{
+ private final ArtifactHandlerManager artifactHandlerManager;
+
@Inject
- private ArtifactHandlerManager artifactHandlerManager;
+ public DefaultArtifactFactory( ArtifactHandlerManager artifactHandlerManager )
+ {
+ this.artifactHandlerManager = artifactHandlerManager;
+ }
public Artifact createArtifact( String groupId, String artifactId, String version, String scope, String type )
{
diff --git a/maven-core/src/main/java/org/apache/maven/artifact/handler/manager/DefaultArtifactHandlerManager.java b/maven-core/src/main/java/org/apache/maven/artifact/handler/manager/DefaultArtifactHandlerManager.java
index a3013d4..3145d58 100644
--- a/maven-core/src/main/java/org/apache/maven/artifact/handler/manager/DefaultArtifactHandlerManager.java
+++ b/maven-core/src/main/java/org/apache/maven/artifact/handler/manager/DefaultArtifactHandlerManager.java
@@ -39,10 +39,15 @@ public class DefaultArtifactHandlerManager
implements ArtifactHandlerManager
{
- @Inject
- private Map<String, ArtifactHandler> artifactHandlers;
+ private final Map<String, ArtifactHandler> artifactHandlers;
+
+ private final Map<String, ArtifactHandler> allHandlers = new ConcurrentHashMap<>();
- private Map<String, ArtifactHandler> allHandlers = new ConcurrentHashMap<>();
+ @Inject
+ public DefaultArtifactHandlerManager( Map<String, ArtifactHandler> artifactHandlers )
+ {
+ this.artifactHandlers = artifactHandlers;
+ }
public ArtifactHandler getArtifactHandler( String type )
{
diff --git a/maven-core/src/main/java/org/apache/maven/eventspy/internal/EventSpyDispatcher.java b/maven-core/src/main/java/org/apache/maven/eventspy/internal/EventSpyDispatcher.java
index 980bc15..78d5441 100644
--- a/maven-core/src/main/java/org/apache/maven/eventspy/internal/EventSpyDispatcher.java
+++ b/maven-core/src/main/java/org/apache/maven/eventspy/internal/EventSpyDispatcher.java
@@ -40,23 +40,18 @@ import org.eclipse.aether.RepositoryListener;
public class EventSpyDispatcher
{
- @Inject
- private Logger logger;
+ private final Logger logger;
- private List<EventSpy> eventSpies;
+ private final List<EventSpy> eventSpies;
@Inject
- public void setEventSpies( List<EventSpy> eventSpies )
+ public EventSpyDispatcher( Logger logger, List<EventSpy> eventSpies )
{
+ this.logger = logger;
// make copy to get rid of needless overhead for dynamic lookups
this.eventSpies = new ArrayList<>( eventSpies );
}
- public List<EventSpy> getEventSpies()
- {
- return eventSpies;
- }
-
public ExecutionListener chainListener( ExecutionListener listener )
{
if ( eventSpies.isEmpty() )
diff --git a/maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java b/maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java
index c419f17..63bc4cb 100644
--- a/maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java
+++ b/maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java
@@ -77,33 +77,42 @@ import java.util.Properties;
@Named
public class DefaultRepositorySystemSessionFactory
{
- @Inject
- private Logger logger;
+ private final Logger logger;
- @Inject
- private ArtifactHandlerManager artifactHandlerManager;
+ private final ArtifactHandlerManager artifactHandlerManager;
- @Inject
- private RepositorySystem repoSystem;
+ private final RepositorySystem repoSystem;
- @Inject
- @Nullable
- @Named( "simple" )
- private LocalRepositoryManagerFactory simpleLocalRepoMgrFactory;
+ private final LocalRepositoryManagerFactory simpleLocalRepoMgrFactory;
- @Inject
- @Nullable
- @Named( "ide" )
- private WorkspaceReader workspaceRepository;
+ private final WorkspaceReader workspaceRepository;
- @Inject
- private SettingsDecrypter settingsDecrypter;
+ private final SettingsDecrypter settingsDecrypter;
- @Inject
- private EventSpyDispatcher eventSpyDispatcher;
+ private final EventSpyDispatcher eventSpyDispatcher;
+
+ private final MavenRepositorySystem mavenRepositorySystem;
@Inject
- MavenRepositorySystem mavenRepositorySystem;
+ public DefaultRepositorySystemSessionFactory(
+ Logger logger,
+ ArtifactHandlerManager artifactHandlerManager,
+ RepositorySystem repoSystem,
+ @Nullable @Named( "simple" ) LocalRepositoryManagerFactory simpleLocalRepoMgrFactory,
+ @Nullable @Named( "ide" ) WorkspaceReader workspaceRepository,
+ SettingsDecrypter settingsDecrypter,
+ EventSpyDispatcher eventSpyDispatcher,
+ MavenRepositorySystem mavenRepositorySystem )
+ {
+ this.logger = logger;
+ this.artifactHandlerManager = artifactHandlerManager;
+ this.repoSystem = repoSystem;
+ this.simpleLocalRepoMgrFactory = simpleLocalRepoMgrFactory;
+ this.workspaceRepository = workspaceRepository;
+ this.settingsDecrypter = settingsDecrypter;
+ this.eventSpyDispatcher = eventSpyDispatcher;
+ this.mavenRepositorySystem = mavenRepositorySystem;
+ }
public DefaultRepositorySystemSession newRepositorySession( MavenExecutionRequest request )
{
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java b/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
index b164f08..c8b4c2d 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
@@ -62,33 +62,38 @@ public class DefaultLifecycleExecutor
implements LifecycleExecutor
{
- @Inject
- private LifeCyclePluginAnalyzer lifeCyclePluginAnalyzer;
-
- @Inject
- private DefaultLifecycles defaultLifeCycles;
-
- @Inject
- private LifecycleTaskSegmentCalculator lifecycleTaskSegmentCalculator;
-
- @Inject
- private LifecycleExecutionPlanCalculator lifecycleExecutionPlanCalculator;
+ private final LifeCyclePluginAnalyzer lifeCyclePluginAnalyzer;
+ private final DefaultLifecycles defaultLifeCycles;
+ private final LifecycleTaskSegmentCalculator lifecycleTaskSegmentCalculator;
+ private final LifecycleExecutionPlanCalculator lifecycleExecutionPlanCalculator;
+ private final MojoExecutor mojoExecutor;
+ private final LifecycleStarter lifecycleStarter;
+ private final MojoDescriptorCreator mojoDescriptorCreator;
@Inject
- private MojoExecutor mojoExecutor;
-
- @Inject
- private LifecycleStarter lifecycleStarter;
-
+ public DefaultLifecycleExecutor(
+ LifeCyclePluginAnalyzer lifeCyclePluginAnalyzer,
+ DefaultLifecycles defaultLifeCycles,
+ LifecycleTaskSegmentCalculator lifecycleTaskSegmentCalculator,
+ LifecycleExecutionPlanCalculator lifecycleExecutionPlanCalculator,
+ MojoExecutor mojoExecutor,
+ LifecycleStarter lifecycleStarter,
+ MojoDescriptorCreator mojoDescriptorCreator )
+ {
+ this.lifeCyclePluginAnalyzer = lifeCyclePluginAnalyzer;
+ this.defaultLifeCycles = defaultLifeCycles;
+ this.lifecycleTaskSegmentCalculator = lifecycleTaskSegmentCalculator;
+ this.lifecycleExecutionPlanCalculator = lifecycleExecutionPlanCalculator;
+ this.mojoExecutor = mojoExecutor;
+ this.lifecycleStarter = lifecycleStarter;
+ this.mojoDescriptorCreator = mojoDescriptorCreator;
+ }
public void execute( MavenSession session )
{
lifecycleStarter.execute( session );
}
- @Inject
- private MojoDescriptorCreator mojoDescriptorCreator;
-
// These methods deal with construction intact Plugin object that look like they come from a standard
// <plugin/> block in a Maven POM. We have to do some wiggling to pull the sources of information
// together and this really shows the problem of constructing a sensible default configuration but
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleExecutionPlanCalculator.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleExecutionPlanCalculator.java
index fc64b92..f22f028 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleExecutionPlanCalculator.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleExecutionPlanCalculator.java
@@ -56,7 +56,6 @@ import org.apache.maven.plugin.lifecycle.Execution;
import org.apache.maven.plugin.lifecycle.Phase;
import org.apache.maven.plugin.prefix.NoPluginFoundForPrefixException;
import org.apache.maven.plugin.version.PluginVersionResolutionException;
-import org.apache.maven.plugin.version.PluginVersionResolver;
import org.apache.maven.project.MavenProject;
import org.codehaus.plexus.util.StringUtils;
import org.codehaus.plexus.util.xml.Xpp3Dom;
@@ -75,34 +74,38 @@ import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
public class DefaultLifecycleExecutionPlanCalculator
implements LifecycleExecutionPlanCalculator
{
- @Inject
- private PluginVersionResolver pluginVersionResolver;
- @Inject
- private BuildPluginManager pluginManager;
+ private final BuildPluginManager pluginManager;
- @Inject
- private DefaultLifecycles defaultLifeCycles;
+ private final DefaultLifecycles defaultLifeCycles;
- @Inject
- private MojoDescriptorCreator mojoDescriptorCreator;
+ private final MojoDescriptorCreator mojoDescriptorCreator;
- @Inject
- private LifecyclePluginResolver lifecyclePluginResolver;
+ private final LifecyclePluginResolver lifecyclePluginResolver;
- @Inject
- @Named( DefaultLifecycleMappingDelegate.HINT )
- private LifecycleMappingDelegate standardDelegate;
+ private final LifecycleMappingDelegate standardDelegate;
- @Inject
- private Map<String, LifecycleMappingDelegate> delegates;
+ private final Map<String, LifecycleMappingDelegate> delegates;
- @Inject
- private Map<String, MojoExecutionConfigurator> mojoExecutionConfigurators;
+ private final Map<String, MojoExecutionConfigurator> mojoExecutionConfigurators;
- @SuppressWarnings( { "UnusedDeclaration" } )
- public DefaultLifecycleExecutionPlanCalculator()
+ @Inject
+ public DefaultLifecycleExecutionPlanCalculator(
+ BuildPluginManager pluginManager,
+ DefaultLifecycles defaultLifeCycles,
+ MojoDescriptorCreator mojoDescriptorCreator,
+ LifecyclePluginResolver lifecyclePluginResolver,
+ @Named( DefaultLifecycleMappingDelegate.HINT ) LifecycleMappingDelegate standardDelegate,
+ Map<String, LifecycleMappingDelegate> delegates,
+ Map<String, MojoExecutionConfigurator> mojoExecutionConfigurators )
{
+ this.pluginManager = pluginManager;
+ this.defaultLifeCycles = defaultLifeCycles;
+ this.mojoDescriptorCreator = mojoDescriptorCreator;
+ this.lifecyclePluginResolver = lifecyclePluginResolver;
+ this.standardDelegate = standardDelegate;
+ this.delegates = delegates;
+ this.mojoExecutionConfigurators = mojoExecutionConfigurators;
}
// Only used for testing
@@ -115,6 +118,8 @@ public class DefaultLifecycleExecutionPlanCalculator
this.defaultLifeCycles = defaultLifeCycles;
this.mojoDescriptorCreator = mojoDescriptorCreator;
this.lifecyclePluginResolver = lifecyclePluginResolver;
+ this.standardDelegate = null;
+ this.delegates = null;
this.mojoExecutionConfigurators = Collections.singletonMap(
"default", (MojoExecutionConfigurator) new DefaultMojoExecutionConfigurator() );
}
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleTaskSegmentCalculator.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleTaskSegmentCalculator.java
index e98e0fb..8d4c324 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleTaskSegmentCalculator.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleTaskSegmentCalculator.java
@@ -58,14 +58,17 @@ import org.codehaus.plexus.util.StringUtils;
public class DefaultLifecycleTaskSegmentCalculator
implements LifecycleTaskSegmentCalculator
{
- @Inject
- private MojoDescriptorCreator mojoDescriptorCreator;
+ private final MojoDescriptorCreator mojoDescriptorCreator;
- @Inject
- private LifecyclePluginResolver lifecyclePluginResolver;
+ private final LifecyclePluginResolver lifecyclePluginResolver;
- public DefaultLifecycleTaskSegmentCalculator()
+ @Inject
+ public DefaultLifecycleTaskSegmentCalculator(
+ MojoDescriptorCreator mojoDescriptorCreator,
+ LifecyclePluginResolver lifecyclePluginResolver )
{
+ this.mojoDescriptorCreator = mojoDescriptorCreator;
+ this.lifecyclePluginResolver = lifecyclePluginResolver;
}
public List<TaskSegment> calculateTaskSegments( MavenSession session )
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDebugLogger.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDebugLogger.java
index 9ffb3d4..2feaca5 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDebugLogger.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDebugLogger.java
@@ -52,20 +52,14 @@ import org.codehaus.plexus.util.StringUtils;
@Singleton
public class LifecycleDebugLogger
{
- @Inject
- private Logger logger;
-
-
- public LifecycleDebugLogger()
- {
- }
+ private final Logger logger;
+ @Inject
public LifecycleDebugLogger( Logger logger )
{
this.logger = logger;
}
-
public void debug( String s )
{
logger.debug( s );
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java
index 44d6cef..e2a4c73 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java
@@ -67,29 +67,29 @@ import org.eclipse.aether.util.filter.ScopeDependencyFilter;
public class LifecycleDependencyResolver
{
- @Inject
- private ProjectDependenciesResolver dependenciesResolver;
+ private final ProjectDependenciesResolver dependenciesResolver;
- @Inject
- private Logger logger;
+ private final Logger logger;
- @Inject
- private ProjectArtifactFactory artifactFactory;
+ private final ProjectArtifactFactory artifactFactory;
- @Inject
- private EventSpyDispatcher eventSpyDispatcher;
+ private final EventSpyDispatcher eventSpyDispatcher;
- @Inject
- private ProjectArtifactsCache projectArtifactsCache;
+ private final ProjectArtifactsCache projectArtifactsCache;
- public LifecycleDependencyResolver()
- {
- }
-
- public LifecycleDependencyResolver( ProjectDependenciesResolver projectDependenciesResolver, Logger logger )
+ @Inject
+ public LifecycleDependencyResolver(
+ ProjectDependenciesResolver dependenciesResolver,
+ Logger logger,
+ ProjectArtifactFactory artifactFactory,
+ EventSpyDispatcher eventSpyDispatcher,
+ ProjectArtifactsCache projectArtifactsCache )
{
- this.dependenciesResolver = projectDependenciesResolver;
+ this.dependenciesResolver = dependenciesResolver;
this.logger = logger;
+ this.artifactFactory = artifactFactory;
+ this.eventSpyDispatcher = eventSpyDispatcher;
+ this.projectArtifactsCache = projectArtifactsCache;
}
public static List<MavenProject> getProjects( MavenProject project, MavenSession session, boolean aggregator )
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleModuleBuilder.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleModuleBuilder.java
index 73839fc..a2f90be 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleModuleBuilder.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleModuleBuilder.java
@@ -53,24 +53,25 @@ import org.apache.maven.session.scope.internal.SessionScope;
public class LifecycleModuleBuilder
{
- @Inject
- private MojoExecutor mojoExecutor;
-
- @Inject
- private BuilderCommon builderCommon;
-
- @Inject
- private ExecutionEventCatapult eventCatapult;
-
- private ProjectExecutionListener projectExecutionListener;
-
- @Inject
- private SessionScope sessionScope;
+ private final MojoExecutor mojoExecutor;
+ private final BuilderCommon builderCommon;
+ private final ExecutionEventCatapult eventCatapult;
+ private final ProjectExecutionListener projectExecutionListener;
+ private final SessionScope sessionScope;
@Inject
- public void setProjectExecutionListeners( final List<ProjectExecutionListener> listeners )
+ public LifecycleModuleBuilder(
+ MojoExecutor mojoExecutor,
+ BuilderCommon builderCommon,
+ ExecutionEventCatapult eventCatapult,
+ List<ProjectExecutionListener> listeners,
+ SessionScope sessionScope )
{
+ this.mojoExecutor = mojoExecutor;
+ this.builderCommon = builderCommon;
+ this.eventCatapult = eventCatapult;
this.projectExecutionListener = new CompoundProjectExecutionListener( listeners );
+ this.sessionScope = sessionScope;
}
public void buildProject( MavenSession session, ReactorContext reactorContext, MavenProject currentProject,
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleStarter.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleStarter.java
index e3d886d..06ba60d 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleStarter.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleStarter.java
@@ -48,29 +48,42 @@ import org.codehaus.plexus.logging.Logger;
@Singleton
public class LifecycleStarter
{
- @Inject
- private ExecutionEventCatapult eventCatapult;
+ private final ExecutionEventCatapult eventCatapult;
- @Inject
- private DefaultLifecycles defaultLifeCycles;
+ private final DefaultLifecycles defaultLifeCycles;
- @Inject
- private Logger logger;
+ private final Logger logger;
- @Inject
- private BuildListCalculator buildListCalculator;
+ private final BuildListCalculator buildListCalculator;
- @Inject
- private LifecycleDebugLogger lifecycleDebugLogger;
+ private final LifecycleDebugLogger lifecycleDebugLogger;
- @Inject
- private LifecycleTaskSegmentCalculator lifecycleTaskSegmentCalculator;
+ private final LifecycleTaskSegmentCalculator lifecycleTaskSegmentCalculator;
- @Inject
- private Map<String, Builder> builders;
+ private final Map<String, Builder> builders;
+
+ private final SessionScope sessionScope;
@Inject
- private SessionScope sessionScope;
+ public LifecycleStarter(
+ ExecutionEventCatapult eventCatapult,
+ DefaultLifecycles defaultLifeCycles,
+ Logger logger,
+ BuildListCalculator buildListCalculator,
+ LifecycleDebugLogger lifecycleDebugLogger,
+ LifecycleTaskSegmentCalculator lifecycleTaskSegmentCalculator,
+ Map<String, Builder> builders,
+ SessionScope sessionScope )
+ {
+ this.eventCatapult = eventCatapult;
+ this.defaultLifeCycles = defaultLifeCycles;
+ this.logger = logger;
+ this.buildListCalculator = buildListCalculator;
+ this.lifecycleDebugLogger = lifecycleDebugLogger;
+ this.lifecycleTaskSegmentCalculator = lifecycleTaskSegmentCalculator;
+ this.builders = builders;
+ this.sessionScope = sessionScope;
+ }
public void execute( MavenSession session )
{
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/MojoDescriptorCreator.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/MojoDescriptorCreator.java
index 03eae37..e584966 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/MojoDescriptorCreator.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/MojoDescriptorCreator.java
@@ -67,29 +67,21 @@ import org.codehaus.plexus.util.xml.Xpp3Dom;
public class MojoDescriptorCreator
{
- @Inject
- private Logger logger;
-
- @Inject
- private PluginVersionResolver pluginVersionResolver;
+ private final Logger logger;
+ private final PluginVersionResolver pluginVersionResolver;
+ private final BuildPluginManager pluginManager;
+ private final PluginPrefixResolver pluginPrefixResolver;
+ private final LifecyclePluginResolver lifecyclePluginResolver;
@Inject
- private BuildPluginManager pluginManager;
-
- @Inject
- private PluginPrefixResolver pluginPrefixResolver;
-
- @Inject
- private LifecyclePluginResolver lifecyclePluginResolver;
-
- public MojoDescriptorCreator()
- {
- }
-
- public MojoDescriptorCreator( PluginVersionResolver pluginVersionResolver, BuildPluginManager pluginManager,
- PluginPrefixResolver pluginPrefixResolver,
- LifecyclePluginResolver lifecyclePluginResolver )
+ public MojoDescriptorCreator(
+ Logger logger,
+ PluginVersionResolver pluginVersionResolver,
+ BuildPluginManager pluginManager,
+ PluginPrefixResolver pluginPrefixResolver,
+ LifecyclePluginResolver lifecyclePluginResolver )
{
+ this.logger = logger;
this.pluginVersionResolver = pluginVersionResolver;
this.pluginManager = pluginManager;
this.pluginPrefixResolver = pluginPrefixResolver;
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/MojoExecutor.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/MojoExecutor.java
index 89fadfd..c28f218 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/MojoExecutor.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/MojoExecutor.java
@@ -67,20 +67,22 @@ import org.codehaus.plexus.util.StringUtils;
public class MojoExecutor
{
- @Inject
- private BuildPluginManager pluginManager;
-
- @Inject
- private MavenPluginManager mavenPluginManager;
+ private final BuildPluginManager pluginManager;
+ private final MavenPluginManager mavenPluginManager;
+ private final LifecycleDependencyResolver lifeCycleDependencyResolver;
+ private final ExecutionEventCatapult eventCatapult;
@Inject
- private LifecycleDependencyResolver lifeCycleDependencyResolver;
-
- @Inject
- private ExecutionEventCatapult eventCatapult;
-
- public MojoExecutor()
+ public MojoExecutor(
+ BuildPluginManager pluginManager,
+ MavenPluginManager mavenPluginManager,
+ LifecycleDependencyResolver lifeCycleDependencyResolver,
+ ExecutionEventCatapult eventCatapult )
{
+ this.pluginManager = pluginManager;
+ this.mavenPluginManager = mavenPluginManager;
+ this.lifeCycleDependencyResolver = lifeCycleDependencyResolver;
+ this.eventCatapult = eventCatapult;
}
public DependencyContext newDependencyContext( MavenSession session, List<MojoExecution> mojoExecutions )
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/BuilderCommon.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/BuilderCommon.java
index d16b27d..e956dd2 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/BuilderCommon.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/BuilderCommon.java
@@ -71,28 +71,22 @@ import org.codehaus.plexus.logging.Logger;
@Singleton
public class BuilderCommon
{
- @Inject
- private LifecycleDebugLogger lifecycleDebugLogger;
-
- @Inject
- private LifecycleExecutionPlanCalculator lifeCycleExecutionPlanCalculator;
+ private final Logger logger;
+ private final LifecycleDebugLogger lifecycleDebugLogger;
+ private final LifecycleExecutionPlanCalculator lifeCycleExecutionPlanCalculator;
+ private final ExecutionEventCatapult eventCatapult;
@Inject
- private ExecutionEventCatapult eventCatapult;
-
- @Inject
- private Logger logger;
-
- public BuilderCommon()
- {
- }
-
- public BuilderCommon( LifecycleDebugLogger lifecycleDebugLogger,
- LifecycleExecutionPlanCalculator lifeCycleExecutionPlanCalculator, Logger logger )
+ public BuilderCommon(
+ Logger logger,
+ LifecycleDebugLogger lifecycleDebugLogger,
+ LifecycleExecutionPlanCalculator lifeCycleExecutionPlanCalculator,
+ ExecutionEventCatapult eventCatapult )
{
+ this.logger = logger;
this.lifecycleDebugLogger = lifecycleDebugLogger;
this.lifeCycleExecutionPlanCalculator = lifeCycleExecutionPlanCalculator;
- this.logger = logger;
+ this.eventCatapult = eventCatapult;
}
public MavenExecutionPlan resolveBuildPlan( MavenSession session, MavenProject project, TaskSegment taskSegment,
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/multithreaded/MultiThreadedBuilder.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/multithreaded/MultiThreadedBuilder.java
index 285217f..fd2676b 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/multithreaded/MultiThreadedBuilder.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/multithreaded/MultiThreadedBuilder.java
@@ -65,14 +65,14 @@ public class MultiThreadedBuilder
implements Builder
{
- @Inject
- private Logger logger;
+ private final Logger logger;
+ private final LifecycleModuleBuilder lifecycleModuleBuilder;
@Inject
- private LifecycleModuleBuilder lifecycleModuleBuilder;
-
- public MultiThreadedBuilder()
+ public MultiThreadedBuilder( Logger logger, LifecycleModuleBuilder lifecycleModuleBuilder )
{
+ this.logger = logger;
+ this.lifecycleModuleBuilder = lifecycleModuleBuilder;
}
@Override
diff --git a/maven-core/src/main/java/org/apache/maven/model/plugin/DefaultLifecycleBindingsInjector.java b/maven-core/src/main/java/org/apache/maven/model/plugin/DefaultLifecycleBindingsInjector.java
index 6ffcb06..378ebf1 100644
--- a/maven-core/src/main/java/org/apache/maven/model/plugin/DefaultLifecycleBindingsInjector.java
+++ b/maven-core/src/main/java/org/apache/maven/model/plugin/DefaultLifecycleBindingsInjector.java
@@ -55,10 +55,15 @@ public class DefaultLifecycleBindingsInjector
implements LifecycleBindingsInjector
{
- private LifecycleBindingsMerger merger = new LifecycleBindingsMerger();
+ private final LifecycleBindingsMerger merger = new LifecycleBindingsMerger();
+
+ private final LifeCyclePluginAnalyzer lifecycle;
@Inject
- private LifeCyclePluginAnalyzer lifecycle;
+ public DefaultLifecycleBindingsInjector( LifeCyclePluginAnalyzer lifecycle )
+ {
+ this.lifecycle = lifecycle;
+ }
public void injectLifecycleBindings( Model model, ModelBuildingRequest request, ModelProblemCollector problems )
{
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/DefaultBuildPluginManager.java b/maven-core/src/main/java/org/apache/maven/plugin/DefaultBuildPluginManager.java
index 15a35ea..272371a 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/DefaultBuildPluginManager.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/DefaultBuildPluginManager.java
@@ -51,21 +51,22 @@ public class DefaultBuildPluginManager
implements BuildPluginManager
{
- @Inject
- private MavenPluginManager mavenPluginManager;
-
- @Inject
- private LegacySupport legacySupport;
-
- @Inject
- private MojoExecutionScope scope;
-
- private MojoExecutionListener mojoExecutionListener;
+ private final MavenPluginManager mavenPluginManager;
+ private final LegacySupport legacySupport;
+ private final MojoExecutionScope scope;
+ private final MojoExecutionListener mojoExecutionListener;
@Inject
- public void setMojoExecutionListeners( final List<MojoExecutionListener> listeners )
+ public DefaultBuildPluginManager(
+ MavenPluginManager mavenPluginManager,
+ LegacySupport legacySupport,
+ MojoExecutionScope scope,
+ List<MojoExecutionListener> mojoExecutionListeners )
{
- this.mojoExecutionListener = new CompoundMojoExecutionListener( listeners );
+ this.mavenPluginManager = mavenPluginManager;
+ this.legacySupport = legacySupport;
+ this.scope = scope;
+ this.mojoExecutionListener = new CompoundMojoExecutionListener( mojoExecutionListeners );
}
/**
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
index 7bb19bb..398846e 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultMavenPluginManager.java
@@ -132,48 +132,53 @@ public class DefaultMavenPluginManager
*/
public static final String KEY_EXTENSIONS_REALMS = DefaultMavenPluginManager.class.getName() + "/extensionsRealms";
- @Inject
private Logger logger;
-
- @Inject
private LoggerManager loggerManager;
-
- @Inject
private PlexusContainer container;
-
- @Inject
private ClassRealmManager classRealmManager;
-
- @Inject
private PluginDescriptorCache pluginDescriptorCache;
-
- @Inject
private PluginRealmCache pluginRealmCache;
-
- @Inject
private PluginDependenciesResolver pluginDependenciesResolver;
-
- @Inject
private RuntimeInformation runtimeInformation;
-
- @Inject
private ExtensionRealmCache extensionRealmCache;
-
- @Inject
private PluginVersionResolver pluginVersionResolver;
-
- @Inject
private PluginArtifactsCache pluginArtifactsCache;
-
- @Inject
private MavenPluginValidator pluginValidator;
- private ExtensionDescriptorBuilder extensionDescriptorBuilder = new ExtensionDescriptorBuilder();
+ private final ExtensionDescriptorBuilder extensionDescriptorBuilder = new ExtensionDescriptorBuilder();
+ private final PluginDescriptorBuilder builder = new PluginDescriptorBuilder();
- private PluginDescriptorBuilder builder = new PluginDescriptorBuilder();
+ @Inject
+ public DefaultMavenPluginManager(
+ Logger logger,
+ LoggerManager loggerManager,
+ PlexusContainer container,
+ ClassRealmManager classRealmManager,
+ PluginDescriptorCache pluginDescriptorCache,
+ PluginRealmCache pluginRealmCache,
+ PluginDependenciesResolver pluginDependenciesResolver,
+ RuntimeInformation runtimeInformation,
+ ExtensionRealmCache extensionRealmCache,
+ PluginVersionResolver pluginVersionResolver,
+ PluginArtifactsCache pluginArtifactsCache,
+ MavenPluginValidator pluginValidator )
+ {
+ this.logger = logger;
+ this.loggerManager = loggerManager;
+ this.container = container;
+ this.classRealmManager = classRealmManager;
+ this.pluginDescriptorCache = pluginDescriptorCache;
+ this.pluginRealmCache = pluginRealmCache;
+ this.pluginDependenciesResolver = pluginDependenciesResolver;
+ this.runtimeInformation = runtimeInformation;
+ this.extensionRealmCache = extensionRealmCache;
+ this.pluginVersionResolver = pluginVersionResolver;
+ this.pluginArtifactsCache = pluginArtifactsCache;
+ this.pluginValidator = pluginValidator;
+ }
public synchronized PluginDescriptor getPluginDescriptor( Plugin plugin, List<RemoteRepository> repositories,
- RepositorySystemSession session )
+ RepositorySystemSession session )
throws PluginResolutionException, PluginDescriptorParsingException, InvalidPluginDescriptorException
{
PluginDescriptorCache.Key cacheKey = pluginDescriptorCache.createKey( plugin, repositories, session );
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
index 709bd72..9fa424e 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginDependenciesResolver.java
@@ -78,11 +78,15 @@ public class DefaultPluginDependenciesResolver
private static final String REPOSITORY_CONTEXT = "plugin";
- @Inject
- private Logger logger;
+ private final Logger logger;
+ private final RepositorySystem repoSystem;
@Inject
- private RepositorySystem repoSystem;
+ public DefaultPluginDependenciesResolver( Logger logger, RepositorySystem repoSystem )
+ {
+ this.logger = logger;
+ this.repoSystem = repoSystem;
+ }
private Artifact toArtifact( Plugin plugin, RepositorySystemSession session )
{
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginManager.java b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginManager.java
index 547e457..24f7135 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginManager.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginManager.java
@@ -70,20 +70,26 @@ public class DefaultPluginManager
implements PluginManager
{
- @Inject
- private PlexusContainer container;
-
- @Inject
- private MavenPluginManager pluginManager;
-
- @Inject
- private PluginVersionResolver pluginVersionResolver;
+ private final PlexusContainer container;
+ private final MavenPluginManager pluginManager;
+ private final PluginVersionResolver pluginVersionResolver;
+ private final PluginPrefixResolver pluginPrefixResolver;
+ private final LegacySupport legacySupport;
@Inject
- private PluginPrefixResolver pluginPrefixResolver;
-
- @Inject
- private LegacySupport legacySupport;
+ public DefaultPluginManager(
+ PlexusContainer container,
+ MavenPluginManager pluginManager,
+ PluginVersionResolver pluginVersionResolver,
+ PluginPrefixResolver pluginPrefixResolver,
+ LegacySupport legacySupport )
+ {
+ this.container = container;
+ this.pluginManager = pluginManager;
+ this.pluginVersionResolver = pluginVersionResolver;
+ this.pluginPrefixResolver = pluginPrefixResolver;
+ this.legacySupport = legacySupport;
+ }
public void executeMojo( MavenProject project, MojoExecution execution, MavenSession session )
throws MojoExecutionException, ArtifactResolutionException, MojoFailureException, ArtifactNotFoundException,
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/prefix/internal/DefaultPluginPrefixResolver.java b/maven-core/src/main/java/org/apache/maven/plugin/prefix/internal/DefaultPluginPrefixResolver.java
index 7b98e80..86ada01 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/prefix/internal/DefaultPluginPrefixResolver.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/prefix/internal/DefaultPluginPrefixResolver.java
@@ -68,17 +68,23 @@ public class DefaultPluginPrefixResolver
private static final String REPOSITORY_CONTEXT = "plugin";
- @Inject
- private Logger logger;
-
- @Inject
- private BuildPluginManager pluginManager;
+ private final Logger logger;
+ private final BuildPluginManager pluginManager;
+ private final RepositorySystem repositorySystem;
+ private final MetadataReader metadataReader;
@Inject
- private RepositorySystem repositorySystem;
-
- @Inject
- private MetadataReader metadataReader;
+ public DefaultPluginPrefixResolver(
+ Logger logger,
+ BuildPluginManager pluginManager,
+ RepositorySystem repositorySystem,
+ MetadataReader metadataReader )
+ {
+ this.logger = logger;
+ this.pluginManager = pluginManager;
+ this.repositorySystem = repositorySystem;
+ this.metadataReader = metadataReader;
+ }
public PluginPrefixResult resolve( PluginPrefixRequest request )
throws NoPluginFoundForPrefixException
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/version/internal/DefaultPluginVersionResolver.java b/maven-core/src/main/java/org/apache/maven/plugin/version/internal/DefaultPluginVersionResolver.java
index ec72f2a..9517af7 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/version/internal/DefaultPluginVersionResolver.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/version/internal/DefaultPluginVersionResolver.java
@@ -81,17 +81,23 @@ public class DefaultPluginVersionResolver
private static final Object CACHE_KEY = new Object();
- @Inject
- private Logger logger;
-
- @Inject
- private RepositorySystem repositorySystem;
+ private final Logger logger;
+ private final RepositorySystem repositorySystem;
+ private final MetadataReader metadataReader;
+ private final MavenPluginManager pluginManager;
@Inject
- private MetadataReader metadataReader;
-
- @Inject
- private MavenPluginManager pluginManager;
+ public DefaultPluginVersionResolver(
+ Logger logger,
+ RepositorySystem repositorySystem,
+ MetadataReader metadataReader,
+ MavenPluginManager pluginManager )
+ {
+ this.logger = logger;
+ this.repositorySystem = repositorySystem;
+ this.metadataReader = metadataReader;
+ this.pluginManager = pluginManager;
+ }
public PluginVersionResult resolve( PluginVersionRequest request )
throws PluginVersionResolutionException
diff --git a/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuilder.java b/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuilder.java
index 3aaf8ee..80145c5 100644
--- a/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuilder.java
+++ b/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuilder.java
@@ -75,6 +75,7 @@ import org.apache.maven.repository.internal.DefaultModelCache;
import org.codehaus.plexus.logging.Logger;
import org.codehaus.plexus.util.Os;
import org.codehaus.plexus.util.StringUtils;
+import org.eclipse.aether.RepositorySystem;
import org.eclipse.aether.RepositorySystemSession;
import org.eclipse.aether.RequestTrace;
import org.eclipse.aether.impl.RemoteRepositoryManager;
@@ -93,31 +94,36 @@ public class DefaultProjectBuilder
implements ProjectBuilder
{
- @Inject
- private Logger logger;
-
- @Inject
- private ModelBuilder modelBuilder;
-
- @Inject
- private ModelProcessor modelProcessor;
-
- @Inject
- private ProjectBuildingHelper projectBuildingHelper;
-
- @Inject
- private MavenRepositorySystem repositorySystem;
+ private final Logger logger;
+ private final ModelBuilder modelBuilder;
+ private final ModelProcessor modelProcessor;
+ private final ProjectBuildingHelper projectBuildingHelper;
+ private final MavenRepositorySystem repositorySystem;
+ private final org.eclipse.aether.RepositorySystem repoSystem;
+ private final RemoteRepositoryManager repositoryManager;
+ private final ProjectDependenciesResolver dependencyResolver;
@Inject
- private org.eclipse.aether.RepositorySystem repoSystem;
-
- @Inject
- private RemoteRepositoryManager repositoryManager;
-
- @Inject
- private ProjectDependenciesResolver dependencyResolver;
-
- // ----------------------------------------------------------------------
+ public DefaultProjectBuilder(
+ Logger logger,
+ ModelBuilder modelBuilder,
+ ModelProcessor modelProcessor,
+ ProjectBuildingHelper projectBuildingHelper,
+ MavenRepositorySystem repositorySystem,
+ RepositorySystem repoSystem,
+ RemoteRepositoryManager repositoryManager,
+ ProjectDependenciesResolver dependencyResolver )
+ {
+ this.logger = logger;
+ this.modelBuilder = modelBuilder;
+ this.modelProcessor = modelProcessor;
+ this.projectBuildingHelper = projectBuildingHelper;
+ this.repositorySystem = repositorySystem;
+ this.repoSystem = repoSystem;
+ this.repositoryManager = repositoryManager;
+ this.dependencyResolver = dependencyResolver;
+ }
+// ----------------------------------------------------------------------
// MavenProjectBuilder Implementation
// ----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuildingHelper.java b/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuildingHelper.java
index e5c89e6..eeb2dbc 100644
--- a/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuildingHelper.java
+++ b/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuildingHelper.java
@@ -68,23 +68,29 @@ public class DefaultProjectBuildingHelper
implements ProjectBuildingHelper
{
- @Inject
- private Logger logger;
-
- @Inject
- private PlexusContainer container;
+ private final Logger logger;
+ private final PlexusContainer container;
+ private final ClassRealmManager classRealmManager;
+ private final ProjectRealmCache projectRealmCache;
+ private final RepositorySystem repositorySystem;
+ private final MavenPluginManager pluginManager;
@Inject
- private ClassRealmManager classRealmManager;
-
- @Inject
- private ProjectRealmCache projectRealmCache;
-
- @Inject
- private RepositorySystem repositorySystem;
-
- @Inject
- private MavenPluginManager pluginManager;
+ public DefaultProjectBuildingHelper(
+ Logger logger,
+ PlexusContainer container,
+ ClassRealmManager classRealmManager,
+ ProjectRealmCache projectRealmCache,
+ RepositorySystem repositorySystem,
+ MavenPluginManager pluginManager )
+ {
+ this.logger = logger;
+ this.container = container;
+ this.classRealmManager = classRealmManager;
+ this.projectRealmCache = projectRealmCache;
+ this.repositorySystem = repositorySystem;
+ this.pluginManager = pluginManager;
+ }
public List<ArtifactRepository> createArtifactRepositories( List<Repository> pomRepositories,
List<ArtifactRepository> externalRepositories,
diff --git a/maven-core/src/main/java/org/apache/maven/project/DefaultProjectDependenciesResolver.java b/maven-core/src/main/java/org/apache/maven/project/DefaultProjectDependenciesResolver.java
index 267dc2d..2f6bebf 100644
--- a/maven-core/src/main/java/org/apache/maven/project/DefaultProjectDependenciesResolver.java
+++ b/maven-core/src/main/java/org/apache/maven/project/DefaultProjectDependenciesResolver.java
@@ -62,14 +62,20 @@ public class DefaultProjectDependenciesResolver
implements ProjectDependenciesResolver
{
- @Inject
- private Logger logger;
-
- @Inject
- private RepositorySystem repoSystem;
+ private final Logger logger;
+ private final RepositorySystem repoSystem;
+ private final List<RepositorySessionDecorator> decorators;
@Inject
- private List<RepositorySessionDecorator> decorators;
+ public DefaultProjectDependenciesResolver(
+ Logger logger,
+ RepositorySystem repoSystem,
+ List<RepositorySessionDecorator> decorators )
+ {
+ this.logger = logger;
+ this.repoSystem = repoSystem;
+ this.decorators = decorators;
+ }
public DependencyResolutionResult resolve( DependencyResolutionRequest request )
throws DependencyResolutionException
diff --git a/maven-core/src/main/java/org/apache/maven/project/artifact/DefaultMetadataSource.java b/maven-core/src/main/java/org/apache/maven/project/artifact/DefaultMetadataSource.java
index 9f22f99..fd1c3e0 100644
--- a/maven-core/src/main/java/org/apache/maven/project/artifact/DefaultMetadataSource.java
+++ b/maven-core/src/main/java/org/apache/maven/project/artifact/DefaultMetadataSource.java
@@ -19,9 +19,16 @@ package org.apache.maven.project.artifact;
* under the License.
*/
+import javax.inject.Inject;
import javax.inject.Named;
import javax.inject.Singleton;
+import org.apache.maven.artifact.factory.ArtifactFactory;
+import org.apache.maven.artifact.repository.metadata.RepositoryMetadataManager;
+import org.apache.maven.plugin.LegacySupport;
+import org.apache.maven.project.ProjectBuilder;
+import org.codehaus.plexus.logging.Logger;
+
/**
* This realizes the metadata source via the default hint to provide backward-compat with Maven 2.x whose Plexus version
* registered component descriptors twice: once keyed by role+roleHint and once keyed by role only. This effectively
@@ -34,5 +41,11 @@ import javax.inject.Singleton;
public class DefaultMetadataSource
extends MavenMetadataSource
{
-
+ @Inject
+ public DefaultMetadataSource(
+ Logger logger, RepositoryMetadataManager repositoryMetadataManager, ArtifactFactory repositorySystem,
+ ProjectBuilder projectBuilder, MavenMetadataCache cache, LegacySupport legacySupport )
+ {
+ super( logger, repositoryMetadataManager, repositorySystem, projectBuilder, cache, legacySupport );
+ }
}
diff --git a/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java b/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java
index 271e6d6..31d239a 100644
--- a/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java
+++ b/maven-core/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java
@@ -78,8 +78,6 @@ import org.apache.maven.properties.internal.SystemProperties;
import org.apache.maven.repository.internal.MavenWorkspaceReader;
import org.apache.maven.repository.legacy.metadata.DefaultMetadataResolutionRequest;
import org.apache.maven.repository.legacy.metadata.MetadataResolutionRequest;
-import org.codehaus.plexus.PlexusContainer;
-import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
import org.codehaus.plexus.logging.Logger;
import org.eclipse.aether.RepositorySystemSession;
import org.eclipse.aether.repository.RepositoryPolicy;
@@ -94,27 +92,30 @@ import org.eclipse.aether.transfer.ArtifactNotFoundException;
public class MavenMetadataSource
implements ArtifactMetadataSource
{
- @Inject
- private RepositoryMetadataManager repositoryMetadataManager;
- @Inject
+ private Logger logger;
+ private RepositoryMetadataManager repositoryMetadataManager;
private ArtifactFactory repositorySystem;
-
- //TODO This prevents a cycle in the composition which shows us another problem we need to deal with.
- //@Inject
private ProjectBuilder projectBuilder;
-
- @Inject
- private PlexusContainer container;
-
- @Inject
- private Logger logger;
-
- @Inject
private MavenMetadataCache cache;
+ private LegacySupport legacySupport;
@Inject
- private LegacySupport legacySupport;
+ public MavenMetadataSource(
+ Logger logger,
+ RepositoryMetadataManager repositoryMetadataManager,
+ ArtifactFactory repositorySystem,
+ ProjectBuilder projectBuilder,
+ MavenMetadataCache cache,
+ LegacySupport legacySupport )
+ {
+ this.logger = logger;
+ this.repositoryMetadataManager = repositoryMetadataManager;
+ this.repositorySystem = repositorySystem;
+ this.projectBuilder = projectBuilder;
+ this.cache = cache;
+ this.legacySupport = legacySupport;
+ }
private void injectSession( MetadataResolutionRequest request )
{
@@ -535,24 +536,6 @@ public class MavenMetadataSource
return artifacts;
}
- private ProjectBuilder getProjectBuilder()
- {
- if ( projectBuilder != null )
- {
- return projectBuilder;
- }
-
- try
- {
- projectBuilder = container.lookup( ProjectBuilder.class );
- }
- catch ( ComponentLookupException e )
- {
- // Won't happen
- }
-
- return projectBuilder;
- }
@SuppressWarnings( "checkstyle:methodlength" )
private ProjectRelocation retrieveRelocatedProject( Artifact artifact, MetadataResolutionRequest repositoryRequest )
throws ArtifactMetadataRetrievalException
@@ -593,7 +576,7 @@ public class MavenMetadataSource
configuration.setSystemProperties( getSystemProperties() );
configuration.setRepositorySession( legacySupport.getRepositorySession() );
- project = getProjectBuilder().build( pomArtifact, configuration ).getProject();
+ project = projectBuilder.build( pomArtifact, configuration ).getProject();
}
catch ( ProjectBuildingException e )
{
diff --git a/maven-core/src/main/java/org/apache/maven/rtinfo/internal/DefaultRuntimeInformation.java b/maven-core/src/main/java/org/apache/maven/rtinfo/internal/DefaultRuntimeInformation.java
index fbb817e..9c01ba6 100644
--- a/maven-core/src/main/java/org/apache/maven/rtinfo/internal/DefaultRuntimeInformation.java
+++ b/maven-core/src/main/java/org/apache/maven/rtinfo/internal/DefaultRuntimeInformation.java
@@ -46,11 +46,16 @@ public class DefaultRuntimeInformation
implements RuntimeInformation
{
- @Inject
- private Logger logger;
+ private final Logger logger;
private String mavenVersion;
+ @Inject
+ public DefaultRuntimeInformation( Logger logger )
+ {
+ this.logger = logger;
+ }
+
public String getMavenVersion()
{
if ( mavenVersion == null )
diff --git a/maven-core/src/main/java/org/apache/maven/settings/DefaultMavenSettingsBuilder.java b/maven-core/src/main/java/org/apache/maven/settings/DefaultMavenSettingsBuilder.java
index 8b12796..3c173ec 100644
--- a/maven-core/src/main/java/org/apache/maven/settings/DefaultMavenSettingsBuilder.java
+++ b/maven-core/src/main/java/org/apache/maven/settings/DefaultMavenSettingsBuilder.java
@@ -46,8 +46,13 @@ public class DefaultMavenSettingsBuilder
implements MavenSettingsBuilder
{
+ private final SettingsBuilder settingsBuilder;
+
@Inject
- private SettingsBuilder settingsBuilder;
+ public DefaultMavenSettingsBuilder( SettingsBuilder settingsBuilder )
+ {
+ this.settingsBuilder = settingsBuilder;
+ }
public Settings buildSettings()
throws IOException, XmlPullParserException
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/DefaultToolchainManager.java b/maven-core/src/main/java/org/apache/maven/toolchain/DefaultToolchainManager.java
index cfe22cb..7bb6db6 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/DefaultToolchainManager.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/DefaultToolchainManager.java
@@ -43,11 +43,15 @@ import org.codehaus.plexus.logging.Logger;
public class DefaultToolchainManager
implements ToolchainManager
{
- @Inject
- Logger logger;
+ final Logger logger;
+ final Map<String, ToolchainFactory> factories;
@Inject
- Map<String, ToolchainFactory> factories;
+ public DefaultToolchainManager( Logger logger, Map<String, ToolchainFactory> factories )
+ {
+ this.logger = logger;
+ this.factories = factories;
+ }
@Override
public Toolchain getToolchainFromBuildContext( String type, MavenSession session )
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/DefaultToolchainManagerPrivate.java b/maven-core/src/main/java/org/apache/maven/toolchain/DefaultToolchainManagerPrivate.java
index 538c99d..bfe3a4b 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/DefaultToolchainManagerPrivate.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/DefaultToolchainManagerPrivate.java
@@ -23,11 +23,13 @@ import java.util.ArrayList;
import java.util.List;
import java.util.Map;
+import javax.inject.Inject;
import javax.inject.Named;
import javax.inject.Singleton;
import org.apache.maven.execution.MavenSession;
import org.apache.maven.toolchain.model.ToolchainModel;
+import org.codehaus.plexus.logging.Logger;
/**
* @author mkleint
@@ -40,6 +42,12 @@ public class DefaultToolchainManagerPrivate
implements ToolchainManagerPrivate
{
+ @Inject
+ public DefaultToolchainManagerPrivate( Logger logger, Map<String, ToolchainFactory> factories )
+ {
+ super( logger, factories );
+ }
+
@Override
public ToolchainPrivate[] getToolchainsForType( String type, MavenSession context )
throws MisconfiguredToolchainException
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/DefaultToolchainsBuilder.java b/maven-core/src/main/java/org/apache/maven/toolchain/DefaultToolchainsBuilder.java
index 94f3114..5bdbccb 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/DefaultToolchainsBuilder.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/DefaultToolchainsBuilder.java
@@ -42,8 +42,13 @@ public class DefaultToolchainsBuilder
implements ToolchainsBuilder
{
+ private final Logger logger;
+
@Inject
- private Logger logger;
+ public DefaultToolchainsBuilder( Logger logger )
+ {
+ this.logger = logger;
+ }
public PersistedToolchains build( File userToolchainsFile )
throws MisconfiguredToolchainException
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilder.java b/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilder.java
index 6b337a6..66b3aa5 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilder.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/building/DefaultToolchainsBuilder.java
@@ -53,13 +53,18 @@ import java.util.Map;
public class DefaultToolchainsBuilder
implements ToolchainsBuilder
{
- private MavenToolchainMerger toolchainsMerger = new MavenToolchainMerger();
-
- @Inject
+ private final MavenToolchainMerger toolchainsMerger = new MavenToolchainMerger();
private ToolchainsWriter toolchainsWriter;
+ private ToolchainsReader toolchainsReader;
@Inject
- private ToolchainsReader toolchainsReader;
+ public DefaultToolchainsBuilder(
+ ToolchainsWriter toolchainsWriter,
+ ToolchainsReader toolchainsReader )
+ {
+ this.toolchainsWriter = toolchainsWriter;
+ this.toolchainsReader = toolchainsReader;
+ }
@Override
public ToolchainsBuildingResult build( ToolchainsBuildingRequest request )
diff --git a/maven-core/src/main/java/org/apache/maven/toolchain/java/JavaToolchainFactory.java b/maven-core/src/main/java/org/apache/maven/toolchain/java/JavaToolchainFactory.java
index f2e45a3..e32e35c 100644
--- a/maven-core/src/main/java/org/apache/maven/toolchain/java/JavaToolchainFactory.java
+++ b/maven-core/src/main/java/org/apache/maven/toolchain/java/JavaToolchainFactory.java
@@ -51,9 +51,14 @@ public class JavaToolchainFactory
implements ToolchainFactory
{
- @Inject
private Logger logger;
+ @Inject
+ public JavaToolchainFactory( Logger logger )
+ {
+ this.logger = logger;
+ }
+
public ToolchainPrivate createToolchain( ToolchainModel model )
throws MisconfiguredToolchainException
{
diff --git a/maven-core/src/test/java/org/apache/maven/lifecycle/DelegatingMojoExecutionListener.java b/maven-core/src/test/java/org/apache/maven/lifecycle/DelegatingMojoExecutionListener.java
index b111969..6da190c 100644
--- a/maven-core/src/test/java/org/apache/maven/lifecycle/DelegatingMojoExecutionListener.java
+++ b/maven-core/src/test/java/org/apache/maven/lifecycle/DelegatingMojoExecutionListener.java
@@ -28,6 +28,7 @@ import javax.inject.Singleton;
import org.apache.maven.execution.MojoExecutionEvent;
import org.apache.maven.execution.MojoExecutionListener;
import org.apache.maven.plugin.MojoExecutionException;
+import org.eclipse.sisu.Priority;
@Named
@Singleton
diff --git a/maven-core/src/test/java/org/apache/maven/lifecycle/internal/BuilderCommonTest.java b/maven-core/src/test/java/org/apache/maven/lifecycle/internal/BuilderCommonTest.java
index fe0776e..88c2dab 100644
--- a/maven-core/src/test/java/org/apache/maven/lifecycle/internal/BuilderCommonTest.java
+++ b/maven-core/src/test/java/org/apache/maven/lifecycle/internal/BuilderCommonTest.java
@@ -98,8 +98,7 @@ public class BuilderCommonTest
public BuilderCommon getBuilderCommon()
{
final LifecycleDebugLogger debugLogger = new LifecycleDebugLogger( logger );
- return new BuilderCommon( debugLogger, new LifecycleExecutionPlanCalculatorStub(),
- logger );
+ return new BuilderCommon( logger, debugLogger, new LifecycleExecutionPlanCalculatorStub(), null );
}
}
diff --git a/maven-core/src/test/java/org/apache/maven/lifecycle/internal/LifecycleExecutionPlanCalculatorTest.java b/maven-core/src/test/java/org/apache/maven/lifecycle/internal/LifecycleExecutionPlanCalculatorTest.java
index 28d552a..f669bdb 100644
--- a/maven-core/src/test/java/org/apache/maven/lifecycle/internal/LifecycleExecutionPlanCalculatorTest.java
+++ b/maven-core/src/test/java/org/apache/maven/lifecycle/internal/LifecycleExecutionPlanCalculatorTest.java
@@ -72,7 +72,7 @@ public class LifecycleExecutionPlanCalculatorTest
public static MojoDescriptorCreator createMojoDescriptorCreator()
{
- return new MojoDescriptorCreator( new PluginVersionResolverStub(), new BuildPluginManagerStub(),
+ return new MojoDescriptorCreator( null, new PluginVersionResolverStub(), new BuildPluginManagerStub(),
new PluginPrefixResolverStub(),
new LifecyclePluginResolver( new PluginVersionResolverStub() ) );
}
diff --git a/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/LifecycleTaskSegmentCalculatorStub.java b/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/LifecycleTaskSegmentCalculatorStub.java
index ae613cc..80c4ab7 100644
--- a/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/LifecycleTaskSegmentCalculatorStub.java
+++ b/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/LifecycleTaskSegmentCalculatorStub.java
@@ -17,8 +17,10 @@ package org.apache.maven.lifecycle.internal.stub;
import org.apache.maven.execution.MavenSession;
import org.apache.maven.lifecycle.internal.GoalTask;
+import org.apache.maven.lifecycle.internal.LifecyclePluginResolver;
import org.apache.maven.lifecycle.internal.LifecycleTask;
import org.apache.maven.lifecycle.internal.DefaultLifecycleTaskSegmentCalculator;
+import org.apache.maven.lifecycle.internal.MojoDescriptorCreator;
import org.apache.maven.lifecycle.internal.TaskSegment;
import org.apache.maven.plugin.InvalidPluginDescriptorException;
import org.apache.maven.plugin.MojoNotFoundException;
@@ -43,8 +45,12 @@ public class LifecycleTaskSegmentCalculatorStub
public static final String install = "install";
+ public LifecycleTaskSegmentCalculatorStub()
+ {
+ super( null, null );
+ }
- public List<TaskSegment> calculateTaskSegments( MavenSession session, List<String> tasks )
+ public List<TaskSegment> calculateTaskSegments(MavenSession session, List<String> tasks )
throws PluginNotFoundException, PluginResolutionException, PluginDescriptorParsingException,
MojoNotFoundException, NoPluginFoundForPrefixException, InvalidPluginDescriptorException,
PluginVersionResolutionException
diff --git a/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/MojoExecutorStub.java b/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/MojoExecutorStub.java
index 250e60d..f035351 100644
--- a/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/MojoExecutorStub.java
+++ b/maven-core/src/test/java/org/apache/maven/lifecycle/internal/stub/MojoExecutorStub.java
@@ -18,9 +18,13 @@ package org.apache.maven.lifecycle.internal.stub;
import org.apache.maven.execution.MavenSession;
import org.apache.maven.lifecycle.LifecycleExecutionException;
import org.apache.maven.lifecycle.internal.DependencyContext;
+import org.apache.maven.lifecycle.internal.ExecutionEventCatapult;
+import org.apache.maven.lifecycle.internal.LifecycleDependencyResolver;
import org.apache.maven.lifecycle.internal.MojoExecutor;
import org.apache.maven.lifecycle.internal.PhaseRecorder;
import org.apache.maven.lifecycle.internal.ProjectIndex;
+import org.apache.maven.plugin.BuildPluginManager;
+import org.apache.maven.plugin.MavenPluginManager;
import org.apache.maven.plugin.MojoExecution;
import org.apache.maven.plugin.descriptor.MojoDescriptor;
import org.apache.maven.plugin.descriptor.PluginDescriptor;
@@ -36,7 +40,16 @@ public class MojoExecutorStub
extends MojoExecutor
{ // This is being lazy instead of making interface
- public List<MojoExecution> executions = Collections.synchronizedList(new ArrayList<>() );
+ public final List<MojoExecution> executions = Collections.synchronizedList(new ArrayList<>() );
+
+ public MojoExecutorStub(
+ BuildPluginManager pluginManager,
+ MavenPluginManager mavenPluginManager,
+ LifecycleDependencyResolver lifeCycleDependencyResolver,
+ ExecutionEventCatapult eventCatapult )
+ {
+ super( pluginManager, mavenPluginManager, lifeCycleDependencyResolver, eventCatapult );
+ }
@Override
public void execute( MavenSession session, MojoExecution mojoExecution, ProjectIndex projectIndex,
diff --git a/maven-core/src/test/java/org/apache/maven/project/TestMetadataSource.java b/maven-core/src/test/java/org/apache/maven/project/TestMetadataSource.java
index d39f4c6..e07bf93 100644
--- a/maven-core/src/test/java/org/apache/maven/project/TestMetadataSource.java
+++ b/maven-core/src/test/java/org/apache/maven/project/TestMetadataSource.java
@@ -25,10 +25,15 @@ import javax.inject.Named;
import javax.inject.Singleton;
import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.factory.ArtifactFactory;
import org.apache.maven.artifact.metadata.ArtifactMetadataRetrievalException;
import org.apache.maven.artifact.metadata.ResolutionGroup;
import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.repository.metadata.RepositoryMetadataManager;
+import org.apache.maven.plugin.LegacySupport;
+import org.apache.maven.project.artifact.MavenMetadataCache;
import org.apache.maven.project.artifact.MavenMetadataSource;
+import org.codehaus.plexus.logging.Logger;
@SuppressWarnings( "deprecation" )
@Named( "classpath" )
@@ -36,6 +41,11 @@ import org.apache.maven.project.artifact.MavenMetadataSource;
public class TestMetadataSource
extends MavenMetadataSource
{
+
+ public TestMetadataSource( Logger logger, RepositoryMetadataManager repositoryMetadataManager, ArtifactFactory repositorySystem, ProjectBuilder projectBuilder, MavenMetadataCache cache, LegacySupport legacySupport) {
+ super( logger, repositoryMetadataManager, repositorySystem, projectBuilder, cache, legacySupport );
+ }
+
@Override
public ResolutionGroup retrieve( Artifact artifact, ArtifactRepository localRepository,
List<ArtifactRepository> remoteRepositories )
diff --git a/maven-core/src/test/java/org/apache/maven/toolchain/DefaultToolchainManagerPrivateTest.java b/maven-core/src/test/java/org/apache/maven/toolchain/DefaultToolchainManagerPrivateTest.java
index 523645f..cbdf6f5 100644
--- a/maven-core/src/test/java/org/apache/maven/toolchain/DefaultToolchainManagerPrivateTest.java
+++ b/maven-core/src/test/java/org/apache/maven/toolchain/DefaultToolchainManagerPrivateTest.java
@@ -60,13 +60,13 @@ public class DefaultToolchainManagerPrivateTest
@BeforeEach
public void setUp()
{
- toolchainManager = new DefaultToolchainManagerPrivate();
MockitoAnnotations.initMocks( this );
- toolchainManager.factories = new HashMap<>();
- toolchainManager.factories.put( "basic", toolchainFactory_basicType );
- toolchainManager.factories.put( "rare", toolchainFactory_rareType );
+ Map<String, ToolchainFactory> factories = new HashMap<>();
+ factories.put( "basic", toolchainFactory_basicType );
+ factories.put( "rare", toolchainFactory_rareType );
+ toolchainManager = new DefaultToolchainManagerPrivate( logger, factories );
}
@Test
diff --git a/maven-core/src/test/java/org/apache/maven/toolchain/DefaultToolchainManagerTest.java b/maven-core/src/test/java/org/apache/maven/toolchain/DefaultToolchainManagerTest.java
index c5b808f..5358a5b 100644
--- a/maven-core/src/test/java/org/apache/maven/toolchain/DefaultToolchainManagerTest.java
+++ b/maven-core/src/test/java/org/apache/maven/toolchain/DefaultToolchainManagerTest.java
@@ -61,13 +61,12 @@ public class DefaultToolchainManagerTest
@BeforeEach
public void onSetup() throws Exception
{
- toolchainManager = new DefaultToolchainManager();
-
MockitoAnnotations.initMocks( this );
- toolchainManager.factories = new HashMap<>();
- toolchainManager.factories.put( "basic", toolchainFactory_basicType );
- toolchainManager.factories.put( "rare", toolchainFactory_rareType );
+ Map<String, ToolchainFactory> factories = new HashMap<>();
+ factories.put( "basic", toolchainFactory_basicType );
+ factories.put( "rare", toolchainFactory_rareType );
+ toolchainManager = new DefaultToolchainManager( logger, factories );
}
@Test
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/configuration/SettingsXmlConfigurationProcessor.java b/maven-embedder/src/main/java/org/apache/maven/cli/configuration/SettingsXmlConfigurationProcessor.java
index 5197f32..ef0c553 100644
--- a/maven-embedder/src/main/java/org/apache/maven/cli/configuration/SettingsXmlConfigurationProcessor.java
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/configuration/SettingsXmlConfigurationProcessor.java
@@ -73,11 +73,17 @@ public class SettingsXmlConfigurationProcessor
private static final Logger LOGGER = LoggerFactory.getLogger( SettingsXmlConfigurationProcessor.class );
- @Inject
- private SettingsBuilder settingsBuilder;
+ private final SettingsBuilder settingsBuilder;
+ private final SettingsDecrypter settingsDecrypter;
@Inject
- private SettingsDecrypter settingsDecrypter;
+ public SettingsXmlConfigurationProcessor(
+ SettingsBuilder settingsBuilder,
+ SettingsDecrypter settingsDecrypter )
+ {
+ this.settingsBuilder = settingsBuilder;
+ this.settingsDecrypter = settingsDecrypter;
+ }
@Override
public void process( CliRequest cliRequest )
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java b/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java
index b16819d..a45fa2c 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilder.java
@@ -103,170 +103,321 @@ import org.eclipse.sisu.Nullable;
public class DefaultModelBuilder
implements ModelBuilder
{
- @Inject
- private ModelProcessor modelProcessor;
-
- @Inject
- private ModelValidator modelValidator;
-
- @Inject
- private ModelNormalizer modelNormalizer;
-
- @Inject
- private ModelInterpolator modelInterpolator;
-
- @Inject
- private ModelPathTranslator modelPathTranslator;
-
- @Inject
- private ModelUrlNormalizer modelUrlNormalizer;
-
- @Inject
- private SuperPomProvider superPomProvider;
-
- @Inject
- private InheritanceAssembler inheritanceAssembler;
-
- @Inject
- private ProfileSelector profileSelector;
-
- @Inject
- private ProfileInjector profileInjector;
-
- @Inject
- private PluginManagementInjector pluginManagementInjector;
-
- @Inject
- private DependencyManagementInjector dependencyManagementInjector;
-
- @Inject
- private DependencyManagementImporter dependencyManagementImporter;
-
- @Inject
- @Nullable
- private LifecycleBindingsInjector lifecycleBindingsInjector;
-
- @Inject
- private PluginConfigurationExpander pluginConfigurationExpander;
+ private final ModelMerger modelMerger = new FileToRawModelMerger();
+
+ private final ModelProcessor modelProcessor;
+ private final ModelValidator modelValidator;
+ private final ModelNormalizer modelNormalizer;
+ private final ModelInterpolator modelInterpolator;
+ private final ModelPathTranslator modelPathTranslator;
+ private final ModelUrlNormalizer modelUrlNormalizer;
+ private final SuperPomProvider superPomProvider;
+ private final InheritanceAssembler inheritanceAssembler;
+ private final ProfileSelector profileSelector;
+ private final ProfileInjector profileInjector;
+ private final PluginManagementInjector pluginManagementInjector;
+ private final DependencyManagementInjector dependencyManagementInjector;
+ private final DependencyManagementImporter dependencyManagementImporter;
+ private final LifecycleBindingsInjector lifecycleBindingsInjector;
+ private final PluginConfigurationExpander pluginConfigurationExpander;
+ private final ReportConfigurationExpander reportConfigurationExpander;
+ private final ReportingConverter reportingConverter;
+ private final ProfileActivationFilePathInterpolator profileActivationFilePathInterpolator;
@Inject
- private ReportConfigurationExpander reportConfigurationExpander;
-
- @Inject
- private ReportingConverter reportingConverter;
-
- private ModelMerger modelMerger = new FileToRawModelMerger();
-
- @Inject
- private ProfileActivationFilePathInterpolator profileActivationFilePathInterpolator;
+ public DefaultModelBuilder(
+ ModelProcessor modelProcessor,
+ ModelValidator modelValidator,
+ ModelNormalizer modelNormalizer,
+ ModelInterpolator modelInterpolator,
+ ModelPathTranslator modelPathTranslator,
+ ModelUrlNormalizer modelUrlNormalizer,
+ SuperPomProvider superPomProvider,
+ InheritanceAssembler inheritanceAssembler,
+ ProfileSelector profileSelector,
+ ProfileInjector profileInjector,
+ PluginManagementInjector pluginManagementInjector,
+ DependencyManagementInjector dependencyManagementInjector,
+ DependencyManagementImporter dependencyManagementImporter,
+ @Nullable LifecycleBindingsInjector lifecycleBindingsInjector,
+ PluginConfigurationExpander pluginConfigurationExpander,
+ ReportConfigurationExpander reportConfigurationExpander,
+ ReportingConverter reportingConverter,
+ ProfileActivationFilePathInterpolator profileActivationFilePathInterpolator )
+ {
+ this.modelProcessor = modelProcessor;
+ this.modelValidator = modelValidator;
+ this.modelNormalizer = modelNormalizer;
+ this.modelInterpolator = modelInterpolator;
+ this.modelPathTranslator = modelPathTranslator;
+ this.modelUrlNormalizer = modelUrlNormalizer;
+ this.superPomProvider = superPomProvider;
+ this.inheritanceAssembler = inheritanceAssembler;
+ this.profileSelector = profileSelector;
+ this.profileInjector = profileInjector;
+ this.pluginManagementInjector = pluginManagementInjector;
+ this.dependencyManagementInjector = dependencyManagementInjector;
+ this.dependencyManagementImporter = dependencyManagementImporter;
+ this.lifecycleBindingsInjector = lifecycleBindingsInjector;
+ this.pluginConfigurationExpander = pluginConfigurationExpander;
+ this.reportConfigurationExpander = reportConfigurationExpander;
+ this.reportingConverter = reportingConverter;
+ this.profileActivationFilePathInterpolator = profileActivationFilePathInterpolator;
+ }
+ /**
+ * @deprecated since Maven 4
+ * @see DefaultModelBuilderFactory#set
+ */
+ @Deprecated
public DefaultModelBuilder setModelProcessor( ModelProcessor modelProcessor )
{
- this.modelProcessor = modelProcessor;
- return this;
+ return new DefaultModelBuilder( modelProcessor, modelValidator, modelNormalizer, modelInterpolator,
+ modelPathTranslator, modelUrlNormalizer, superPomProvider, inheritanceAssembler, profileSelector,
+ profileInjector, pluginManagementInjector, dependencyManagementInjector, dependencyManagementImporter,
+ lifecycleBindingsInjector, pluginConfigurationExpander, reportConfigurationExpander,
+ reportingConverter, profileActivationFilePathInterpolator );
}
+ /**
+ * @deprecated since Maven 4
+ * @see DefaultModelBuilderFactory#setModelProcessor(ModelProcessor)
+ */
+ @Deprecated
public DefaultModelBuilder setModelValidator( ModelValidator modelValidator )
{
- this.modelValidator = modelValidator;
- return this;
+ return new DefaultModelBuilder( modelProcessor, modelValidator, modelNormalizer, modelInterpolator,
+ modelPathTranslator, modelUrlNormalizer, superPomProvider, inheritanceAssembler, profileSelector,
+ profileInjector, pluginManagementInjector, dependencyManagementInjector, dependencyManagementImporter,
+ lifecycleBindingsInjector, pluginConfigurationExpander, reportConfigurationExpander,
+ reportingConverter, profileActivationFilePathInterpolator );
}
+ /**
+ * @deprecated since Maven 4
+ * @see DefaultModelBuilderFactory#setModelNormalizer(ModelNormalizer)
+ */
+ @Deprecated
public DefaultModelBuilder setModelNormalizer( ModelNormalizer modelNormalizer )
{
- this.modelNormalizer = modelNormalizer;
- return this;
+ return new DefaultModelBuilder( modelProcessor, modelValidator, modelNormalizer, modelInterpolator,
+ modelPathTranslator, modelUrlNormalizer, superPomProvider, inheritanceAssembler, profileSelector,
+ profileInjector, pluginManagementInjector, dependencyManagementInjector, dependencyManagementImporter,
+ lifecycleBindingsInjector, pluginConfigurationExpander, reportConfigurationExpander,
+ reportingConverter, profileActivationFilePathInterpolator );
}
+ /**
+ * @deprecated since Maven 4
+ * @see DefaultModelBuilderFactory#setModelInterpolator(ModelInterpolator)
+ */
+ @Deprecated
public DefaultModelBuilder setModelInterpolator( ModelInterpolator modelInterpolator )
{
- this.modelInterpolator = modelInterpolator;
- return this;
+ return new DefaultModelBuilder( modelProcessor, modelValidator, modelNormalizer, modelInterpolator,
+ modelPathTranslator, modelUrlNormalizer, superPomProvider, inheritanceAssembler, profileSelector,
+ profileInjector, pluginManagementInjector, dependencyManagementInjector, dependencyManagementImporter,
+ lifecycleBindingsInjector, pluginConfigurationExpander, reportConfigurationExpander,
+ reportingConverter, profileActivationFilePathInterpolator );
}
+ /**
+ * @deprecated since Maven 4
+ * @see DefaultModelBuilderFactory#set
+ */
+ @Deprecated
public DefaultModelBuilder setModelPathTranslator( ModelPathTranslator modelPathTranslator )
{
- this.modelPathTranslator = modelPathTranslator;
- return this;
+ return new DefaultModelBuilder( modelProcessor, modelValidator, modelNormalizer, modelInterpolator,
+ modelPathTranslator, modelUrlNormalizer, superPomProvider, inheritanceAssembler, profileSelector,
+ profileInjector, pluginManagementInjector, dependencyManagementInjector, dependencyManagementImporter,
+ lifecycleBindingsInjector, pluginConfigurationExpander, reportConfigurationExpander,
+ reportingConverter, profileActivationFilePathInterpolator );
}
+ /**
+ * @deprecated since Maven 4
+ * @see DefaultModelBuilderFactory#setModelUrlNormalizer(ModelUrlNormalizer)
+ */
+ @Deprecated
public DefaultModelBuilder setModelUrlNormalizer( ModelUrlNormalizer modelUrlNormalizer )
{
- this.modelUrlNormalizer = modelUrlNormalizer;
- return this;
+ return new DefaultModelBuilder( modelProcessor, modelValidator, modelNormalizer, modelInterpolator,
+ modelPathTranslator, modelUrlNormalizer, superPomProvider, inheritanceAssembler, profileSelector,
+ profileInjector, pluginManagementInjector, dependencyManagementInjector, dependencyManagementImporter,
+ lifecycleBindingsInjector, pluginConfigurationExpander, reportConfigurationExpander,
+ reportingConverter, profileActivationFilePathInterpolator );
}
+ /**
+ * @deprecated since Maven 4
+ * @see DefaultModelBuilderFactory#setSuperPomProvider(SuperPomProvider)
+ */
+ @Deprecated
public DefaultModelBuilder setSuperPomProvider( SuperPomProvider superPomProvider )
{
- this.superPomProvider = superPomProvider;
- return this;
+ return new DefaultModelBuilder( modelProcessor, modelValidator, modelNormalizer, modelInterpolator,
+ modelPathTranslator, modelUrlNormalizer, superPomProvider, inheritanceAssembler, profileSelector,
+ profileInjector, pluginManagementInjector, dependencyManagementInjector, dependencyManagementImporter,
+ lifecycleBindingsInjector, pluginConfigurationExpander, reportConfigurationExpander,
+ reportingConverter, profileActivationFilePathInterpolator );
+ }
+
+ /**
+ * @deprecated since Maven 4
+ * @see DefaultModelBuilderFactory#setInheritanceAssembler(InheritanceAssembler)
+ */
+ @Deprecated
+ public DefaultModelBuilder setInheritanceAssembler( InheritanceAssembler inheritanceAssembler )
+ {
+ return new DefaultModelBuilder( modelProcessor, modelValidator, modelNormalizer, modelInterpolator,
+ modelPathTranslator, modelUrlNormalizer, superPomProvider, inheritanceAssembler, profileSelector,
+ profileInjector, pluginManagementInjector, dependencyManagementInjector, dependencyManagementImporter,
+ lifecycleBindingsInjector, pluginConfigurationExpander, reportConfigurationExpander,
+ reportingConverter, profileActivationFilePathInterpolator );
}
+ /**
+ * @deprecated since Maven 4
+ * @see DefaultModelBuilderFactory#set
+ */
+ @Deprecated
public DefaultModelBuilder setProfileSelector( ProfileSelector profileSelector )
{
- this.profileSelector = profileSelector;
- return this;
+ return new DefaultModelBuilder( modelProcessor, modelValidator, modelNormalizer, modelInterpolator,
+ modelPathTranslator, modelUrlNormalizer, superPomProvider, inheritanceAssembler, profileSelector,
+ profileInjector, pluginManagementInjector, dependencyManagementInjector, dependencyManagementImporter,
+ lifecycleBindingsInjector, pluginConfigurationExpander, reportConfigurationExpander,
+ reportingConverter, profileActivationFilePathInterpolator );
}
+ /**
+ * @deprecated since Maven 4
+ * @see DefaultModelBuilderFactory#setProfileInjector(ProfileInjector)
+ */
+ @Deprecated
public DefaultModelBuilder setProfileInjector( ProfileInjector profileInjector )
{
- this.profileInjector = profileInjector;
- return this;
+ return new DefaultModelBuilder( modelProcessor, modelValidator, modelNormalizer, modelInterpolator,
+ modelPathTranslator, modelUrlNormalizer, superPomProvider, inheritanceAssembler, profileSelector,
+ profileInjector, pluginManagementInjector, dependencyManagementInjector, dependencyManagementImporter,
+ lifecycleBindingsInjector, pluginConfigurationExpander, reportConfigurationExpander,
+ reportingConverter, profileActivationFilePathInterpolator );
}
- public DefaultModelBuilder setInheritanceAssembler( InheritanceAssembler inheritanceAssembler )
+ /**
+ * @deprecated since Maven 4
+ * @see DefaultModelBuilderFactory#setPluginManagementInjector(PluginManagementInjector)
+ */
+ @Deprecated
+ public DefaultModelBuilder setPluginManagementInjector( PluginManagementInjector pluginManagementInjector )
{
- this.inheritanceAssembler = inheritanceAssembler;
- return this;
+ return new DefaultModelBuilder( modelProcessor, modelValidator, modelNormalizer, modelInterpolator,
+ modelPathTranslator, modelUrlNormalizer, superPomProvider, inheritanceAssembler, profileSelector,
+ profileInjector, pluginManagementInjector, dependencyManagementInjector, dependencyManagementImporter,
+ lifecycleBindingsInjector, pluginConfigurationExpander, reportConfigurationExpander,
+ reportingConverter, profileActivationFilePathInterpolator );
}
- public DefaultModelBuilder setDependencyManagementImporter( DependencyManagementImporter depMgmtImporter )
+ /**
+ * @deprecated since Maven 4
+ * @see DefaultModelBuilderFactory#setDependencyManagementInjector(DependencyManagementInjector)
+ */
+ @Deprecated
+ public DefaultModelBuilder setDependencyManagementInjector(
+ DependencyManagementInjector dependencyManagementInjector )
{
- this.dependencyManagementImporter = depMgmtImporter;
- return this;
+ return new DefaultModelBuilder( modelProcessor, modelValidator, modelNormalizer, modelInterpolator,
+ modelPathTranslator, modelUrlNormalizer, superPomProvider, inheritanceAssembler, profileSelector,
+ profileInjector, pluginManagementInjector, dependencyManagementInjector, dependencyManagementImporter,
+ lifecycleBindingsInjector, pluginConfigurationExpander, reportConfigurationExpander,
+ reportingConverter, profileActivationFilePathInterpolator );
}
- public DefaultModelBuilder setDependencyManagementInjector( DependencyManagementInjector depMgmtInjector )
+ /**
+ * @deprecated since Maven 4
+ * @see DefaultModelBuilderFactory#setDependencyManagementImporter(DependencyManagementImporter)
+ */
+ @Deprecated
+ public DefaultModelBuilder setDependencyManagementImporter(
+ DependencyManagementImporter dependencyManagementImporter )
{
- this.dependencyManagementInjector = depMgmtInjector;
- return this;
+ return new DefaultModelBuilder( modelProcessor, modelValidator, modelNormalizer, modelInterpolator,
+ modelPathTranslator, modelUrlNormalizer, superPomProvider, inheritanceAssembler, profileSelector,
+ profileInjector, pluginManagementInjector, dependencyManagementInjector, dependencyManagementImporter,
+ lifecycleBindingsInjector, pluginConfigurationExpander, reportConfigurationExpander,
+ reportingConverter, profileActivationFilePathInterpolator );
}
+ /**
+ * @deprecated since Maven 4
+ * @see DefaultModelBuilderFactory#setLifecycleBindingsInjector(LifecycleBindingsInjector)
+ */
+ @Deprecated
public DefaultModelBuilder setLifecycleBindingsInjector( LifecycleBindingsInjector lifecycleBindingsInjector )
{
- this.lifecycleBindingsInjector = lifecycleBindingsInjector;
- return this;
+ return new DefaultModelBuilder( modelProcessor, modelValidator, modelNormalizer, modelInterpolator,
+ modelPathTranslator, modelUrlNormalizer, superPomProvider, inheritanceAssembler, profileSelector,
+ profileInjector, pluginManagementInjector, dependencyManagementInjector, dependencyManagementImporter,
+ lifecycleBindingsInjector, pluginConfigurationExpander, reportConfigurationExpander,
+ reportingConverter, profileActivationFilePathInterpolator );
}
+ /**
+ * @deprecated since Maven 4
+ * @see DefaultModelBuilderFactory#setPluginConfigurationExpander(PluginConfigurationExpander)
+ */
+ @Deprecated
public DefaultModelBuilder setPluginConfigurationExpander( PluginConfigurationExpander pluginConfigurationExpander )
{
- this.pluginConfigurationExpander = pluginConfigurationExpander;
- return this;
- }
-
- public DefaultModelBuilder setPluginManagementInjector( PluginManagementInjector pluginManagementInjector )
- {
- this.pluginManagementInjector = pluginManagementInjector;
- return this;
+ return new DefaultModelBuilder( modelProcessor, modelValidator, modelNormalizer, modelInterpolator,
+ modelPathTranslator, modelUrlNormalizer, superPomProvider, inheritanceAssembler, profileSelector,
+ profileInjector, pluginManagementInjector, dependencyManagementInjector, dependencyManagementImporter,
+ lifecycleBindingsInjector, pluginConfigurationExpander, reportConfigurationExpander,
+ reportingConverter, profileActivationFilePathInterpolator );
}
+ /**
+ * @deprecated since Maven 4
+ * @see DefaultModelBuilderFactory#setReportConfigurationExpander(ReportConfigurationExpander)
+ */
+ @Deprecated
public DefaultModelBuilder setReportConfigurationExpander( ReportConfigurationExpander reportConfigurationExpander )
{
- this.reportConfigurationExpander = reportConfigurationExpander;
- return this;
+ return new DefaultModelBuilder( modelProcessor, modelValidator, modelNormalizer, modelInterpolator,
+ modelPathTranslator, modelUrlNormalizer, superPomProvider, inheritanceAssembler, profileSelector,
+ profileInjector, pluginManagementInjector, dependencyManagementInjector, dependencyManagementImporter,
+ lifecycleBindingsInjector, pluginConfigurationExpander, reportConfigurationExpander,
+ reportingConverter, profileActivationFilePathInterpolator );
}
+ /**
+ * @deprecated since Maven 4
+ * @see DefaultModelBuilderFactory#setReportingConverter(ReportingConverter)
+ */
+ @Deprecated
public DefaultModelBuilder setReportingConverter( ReportingConverter reportingConverter )
{
- this.reportingConverter = reportingConverter;
- return this;
+ return new DefaultModelBuilder( modelProcessor, modelValidator, modelNormalizer, modelInterpolator,
+ modelPathTranslator, modelUrlNormalizer, superPomProvider, inheritanceAssembler, profileSelector,
+ profileInjector, pluginManagementInjector, dependencyManagementInjector, dependencyManagementImporter,
+ lifecycleBindingsInjector, pluginConfigurationExpander, reportConfigurationExpander,
+ reportingConverter, profileActivationFilePathInterpolator );
}
+ /**
+ * @deprecated since Maven 4
+ * @see DefaultModelBuilderFactory#setProfileActivationFilePathInterpolator(ProfileActivationFilePathInterpolator)
+ */
+ @Deprecated
public DefaultModelBuilder setProfileActivationFilePathInterpolator(
ProfileActivationFilePathInterpolator profileActivationFilePathInterpolator )
{
- this.profileActivationFilePathInterpolator = profileActivationFilePathInterpolator;
- return this;
+ return new DefaultModelBuilder( modelProcessor, modelValidator, modelNormalizer, modelInterpolator,
+ modelPathTranslator, modelUrlNormalizer, superPomProvider, inheritanceAssembler, profileSelector,
+ profileInjector, pluginManagementInjector, dependencyManagementInjector, dependencyManagementImporter,
+ lifecycleBindingsInjector, pluginConfigurationExpander, reportConfigurationExpander,
+ reportingConverter, profileActivationFilePathInterpolator );
}
@Override
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilderFactory.java b/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilderFactory.java
index 027db20..6334f1b 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilderFactory.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelBuilderFactory.java
@@ -19,6 +19,8 @@ package org.apache.maven.model.building;
* under the License.
*/
+import java.util.Arrays;
+
import org.apache.maven.model.Model;
import org.apache.maven.model.composition.DefaultDependencyManagementImporter;
import org.apache.maven.model.composition.DependencyManagementImporter;
@@ -70,19 +72,151 @@ import org.apache.maven.model.validation.ModelValidator;
* A factory to create model builder instances when no dependency injection is available. <em>Note:</em> This class is
* only meant as a utility for developers that want to employ the model builder outside of the Maven build system, Maven
* plugins should always acquire model builder instances via dependency injection. Developers might want to subclass
- * this factory to provide custom implementations for some of the components used by the model builder.
+ * this factory to provide custom implementations for some of the components used by the model builder, or use the
+ * builder API to inject custom instances.
*
* @author Benjamin Bentmann
+ * @author Guillaume Nodet
*/
public class DefaultModelBuilderFactory
{
+ private ModelProcessor modelProcessor;
+ private ModelValidator modelValidator;
+ private ModelNormalizer modelNormalizer;
+ private ModelInterpolator modelInterpolator;
+ private ModelPathTranslator modelPathTranslator;
+ private ModelUrlNormalizer modelUrlNormalizer;
+ private SuperPomProvider superPomProvider;
+ private InheritanceAssembler inheritanceAssembler;
+ private ProfileSelector profileSelector;
+ private ProfileInjector profileInjector;
+ private PluginManagementInjector pluginManagementInjector;
+ private DependencyManagementInjector dependencyManagementInjector;
+ private DependencyManagementImporter dependencyManagementImporter;
+ private LifecycleBindingsInjector lifecycleBindingsInjector;
+ private PluginConfigurationExpander pluginConfigurationExpander;
+ private ReportConfigurationExpander reportConfigurationExpander;
+ private ReportingConverter reportingConverter;
+ private ProfileActivationFilePathInterpolator profileActivationFilePathInterpolator;
+
+ public DefaultModelBuilderFactory setModelProcessor( ModelProcessor modelProcessor )
+ {
+ this.modelProcessor = modelProcessor;
+ return this;
+ }
+
+ public DefaultModelBuilderFactory setModelValidator( ModelValidator modelValidator )
+ {
+ this.modelValidator = modelValidator;
+ return this;
+ }
+
+ public DefaultModelBuilderFactory setModelNormalizer( ModelNormalizer modelNormalizer )
+ {
+ this.modelNormalizer = modelNormalizer;
+ return this;
+ }
+
+ public DefaultModelBuilderFactory setModelInterpolator( ModelInterpolator modelInterpolator )
+ {
+ this.modelInterpolator = modelInterpolator;
+ return this;
+ }
+
+ public DefaultModelBuilderFactory setModelPathTranslator( ModelPathTranslator modelPathTranslator )
+ {
+ this.modelPathTranslator = modelPathTranslator;
+ return this;
+ }
+
+ public DefaultModelBuilderFactory setModelUrlNormalizer( ModelUrlNormalizer modelUrlNormalizer )
+ {
+ this.modelUrlNormalizer = modelUrlNormalizer;
+ return this;
+ }
+
+ public DefaultModelBuilderFactory setSuperPomProvider( SuperPomProvider superPomProvider )
+ {
+ this.superPomProvider = superPomProvider;
+ return this;
+ }
+
+ public DefaultModelBuilderFactory setInheritanceAssembler( InheritanceAssembler inheritanceAssembler )
+ {
+ this.inheritanceAssembler = inheritanceAssembler;
+ return this;
+ }
+
+ public DefaultModelBuilderFactory setProfileSelector( ProfileSelector profileSelector )
+ {
+ this.profileSelector = profileSelector;
+ return this;
+ }
+
+ public DefaultModelBuilderFactory setProfileInjector( ProfileInjector profileInjector )
+ {
+ this.profileInjector = profileInjector;
+ return this;
+ }
+
+ public DefaultModelBuilderFactory setPluginManagementInjector( PluginManagementInjector pluginManagementInjector )
+ {
+ this.pluginManagementInjector = pluginManagementInjector;
+ return this;
+ }
+
+ public DefaultModelBuilderFactory setDependencyManagementInjector(
+ DependencyManagementInjector dependencyManagementInjector )
+ {
+ this.dependencyManagementInjector = dependencyManagementInjector;
+ return this;
+ }
+
+ public DefaultModelBuilderFactory setDependencyManagementImporter(
+ DependencyManagementImporter dependencyManagementImporter )
+ {
+ this.dependencyManagementImporter = dependencyManagementImporter;
+ return this;
+ }
+
+ public DefaultModelBuilderFactory setLifecycleBindingsInjector(
+ LifecycleBindingsInjector lifecycleBindingsInjector )
+ {
+ this.lifecycleBindingsInjector = lifecycleBindingsInjector;
+ return this;
+ }
+
+ public DefaultModelBuilderFactory setPluginConfigurationExpander(
+ PluginConfigurationExpander pluginConfigurationExpander )
+ {
+ this.pluginConfigurationExpander = pluginConfigurationExpander;
+ return this;
+ }
+
+ public DefaultModelBuilderFactory setReportConfigurationExpander(
+ ReportConfigurationExpander reportConfigurationExpander )
+ {
+ this.reportConfigurationExpander = reportConfigurationExpander;
+ return this;
+ }
+
+ public DefaultModelBuilderFactory setReportingConverter( ReportingConverter reportingConverter )
+ {
+ this.reportingConverter = reportingConverter;
+ return this;
+ }
+
+ public DefaultModelBuilderFactory setProfileActivationFilePathInterpolator(
+ ProfileActivationFilePathInterpolator profileActivationFilePathInterpolator )
+ {
+ this.profileActivationFilePathInterpolator = profileActivationFilePathInterpolator;
+ return this;
+ }
+
protected ModelProcessor newModelProcessor()
{
- DefaultModelProcessor processor = new DefaultModelProcessor();
- processor.setModelLocator( newModelLocator() );
- processor.setModelReader( newModelReader() );
- return processor;
+ return new DefaultModelProcessor( newModelLocator(), newModelReader() );
}
protected ModelLocator newModelLocator()
@@ -92,33 +226,23 @@ public class DefaultModelBuilderFactory
protected ModelReader newModelReader()
{
- DefaultModelReader reader = new DefaultModelReader();
- reader.setTransformer( newModelSourceTransformer() );
- return reader;
+ return new DefaultModelReader( newModelSourceTransformer() );
}
protected ProfileSelector newProfileSelector()
{
- DefaultProfileSelector profileSelector = new DefaultProfileSelector();
-
- for ( ProfileActivator activator : newProfileActivators() )
- {
- profileSelector.addProfileActivator( activator );
- }
-
- return profileSelector;
+ return new DefaultProfileSelector( Arrays.asList( newProfileActivators() ) );
}
protected ProfileActivator[] newProfileActivators()
{
return new ProfileActivator[] { new JdkVersionProfileActivator(), new OperatingSystemProfileActivator(),
- new PropertyProfileActivator(), new FileProfileActivator()
- .setProfileActivationFilePathInterpolator( newProfileActivationFilePathInterpolator() ) };
+ new PropertyProfileActivator(), new FileProfileActivator( newProfileActivationFilePathInterpolator() ) };
}
protected ProfileActivationFilePathInterpolator newProfileActivationFilePathInterpolator()
{
- return new ProfileActivationFilePathInterpolator().setPathTranslator( newPathTranslator() );
+ return new ProfileActivationFilePathInterpolator( newPathTranslator() );
}
protected UrlNormalizer newUrlNormalizer()
@@ -135,7 +259,7 @@ public class DefaultModelBuilderFactory
{
UrlNormalizer normalizer = newUrlNormalizer();
PathTranslator pathTranslator = newPathTranslator();
- return new StringVisitorModelInterpolator().setPathTranslator( pathTranslator ).setUrlNormalizer( normalizer );
+ return new StringVisitorModelInterpolator( pathTranslator, normalizer );
}
protected ModelValidator newModelValidator()
@@ -150,12 +274,12 @@ public class DefaultModelBuilderFactory
protected ModelPathTranslator newModelPathTranslator()
{
- return new DefaultModelPathTranslator().setPathTranslator( newPathTranslator() );
+ return new DefaultModelPathTranslator( newPathTranslator() );
}
protected ModelUrlNormalizer newModelUrlNormalizer()
{
- return new DefaultModelUrlNormalizer().setUrlNormalizer( newUrlNormalizer() );
+ return new DefaultModelUrlNormalizer( newUrlNormalizer() );
}
protected InheritanceAssembler newInheritanceAssembler()
@@ -170,7 +294,7 @@ public class DefaultModelBuilderFactory
protected SuperPomProvider newSuperPomProvider()
{
- return new DefaultSuperPomProvider().setModelProcessor( newModelProcessor() );
+ return new DefaultSuperPomProvider( newModelProcessor() );
}
protected DependencyManagementImporter newDependencyManagementImporter()
@@ -220,28 +344,27 @@ public class DefaultModelBuilderFactory
*/
public DefaultModelBuilder newInstance()
{
- DefaultModelBuilder modelBuilder = new DefaultModelBuilder();
-
- modelBuilder.setModelProcessor( newModelProcessor() );
- modelBuilder.setModelValidator( newModelValidator() );
- modelBuilder.setModelNormalizer( newModelNormalizer() );
- modelBuilder.setModelPathTranslator( newModelPathTranslator() );
- modelBuilder.setModelUrlNormalizer( newModelUrlNormalizer() );
- modelBuilder.setModelInterpolator( newModelInterpolator() );
- modelBuilder.setInheritanceAssembler( newInheritanceAssembler() );
- modelBuilder.setProfileInjector( newProfileInjector() );
- modelBuilder.setProfileSelector( newProfileSelector() );
- modelBuilder.setSuperPomProvider( newSuperPomProvider() );
- modelBuilder.setDependencyManagementImporter( newDependencyManagementImporter() );
- modelBuilder.setDependencyManagementInjector( newDependencyManagementInjector() );
- modelBuilder.setLifecycleBindingsInjector( newLifecycleBindingsInjector() );
- modelBuilder.setPluginManagementInjector( newPluginManagementInjector() );
- modelBuilder.setPluginConfigurationExpander( newPluginConfigurationExpander() );
- modelBuilder.setReportConfigurationExpander( newReportConfigurationExpander() );
- modelBuilder.setReportingConverter( newReportingConverter() );
- modelBuilder.setProfileActivationFilePathInterpolator( newProfileActivationFilePathInterpolator() );
-
- return modelBuilder;
+ return new DefaultModelBuilder(
+ modelProcessor != null ? modelProcessor : newModelProcessor(),
+ modelValidator != null ? modelValidator : newModelValidator(),
+ modelNormalizer != null ? modelNormalizer : newModelNormalizer(),
+ modelInterpolator != null ? modelInterpolator : newModelInterpolator(),
+ modelPathTranslator != null ? modelPathTranslator : newModelPathTranslator(),
+ modelUrlNormalizer != null ? modelUrlNormalizer : newModelUrlNormalizer(),
+ superPomProvider != null ? superPomProvider : newSuperPomProvider(),
+ inheritanceAssembler != null ? inheritanceAssembler : newInheritanceAssembler(),
+ profileSelector != null ? profileSelector : newProfileSelector(),
+ profileInjector != null ? profileInjector : newProfileInjector(),
+ pluginManagementInjector != null ? pluginManagementInjector : newPluginManagementInjector(),
+ dependencyManagementInjector != null ? dependencyManagementInjector : newDependencyManagementInjector(),
+ dependencyManagementImporter != null ? dependencyManagementImporter : newDependencyManagementImporter(),
+ lifecycleBindingsInjector != null ? lifecycleBindingsInjector : newLifecycleBindingsInjector(),
+ pluginConfigurationExpander != null ? pluginConfigurationExpander : newPluginConfigurationExpander(),
+ reportConfigurationExpander != null ? reportConfigurationExpander : newReportConfigurationExpander(),
+ reportingConverter != null ? reportingConverter : newReportingConverter(),
+ profileActivationFilePathInterpolator != null
+ ? profileActivationFilePathInterpolator : newProfileActivationFilePathInterpolator()
+ );
}
private static class StubLifecycleBindingsInjector
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelProcessor.java b/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelProcessor.java
index 76370ac..cc2daf8 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelProcessor.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/building/DefaultModelProcessor.java
@@ -66,22 +66,14 @@ public class DefaultModelProcessor
implements ModelProcessor
{
- @Inject
- private ModelLocator locator;
+ private final ModelLocator locator;
+ private final ModelReader reader;
@Inject
- private ModelReader reader;
-
- public DefaultModelProcessor setModelLocator( ModelLocator locator )
+ public DefaultModelProcessor( ModelLocator locator, ModelReader reader )
{
this.locator = locator;
- return this;
- }
-
- public DefaultModelProcessor setModelReader( ModelReader reader )
- {
this.reader = reader;
- return this;
}
@Override
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/AbstractStringBasedModelInterpolator.java b/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/AbstractStringBasedModelInterpolator.java
index 388671d..588b913 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/AbstractStringBasedModelInterpolator.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/AbstractStringBasedModelInterpolator.java
@@ -82,26 +82,14 @@ public abstract class AbstractStringBasedModelInterpolator
TRANSLATED_PATH_EXPRESSIONS = translatedPrefixes;
}
- @Inject
- private PathTranslator pathTranslator;
+ private final PathTranslator pathTranslator;
+ private final UrlNormalizer urlNormalizer;
@Inject
- private UrlNormalizer urlNormalizer;
-
- public AbstractStringBasedModelInterpolator()
- {
- }
-
- public AbstractStringBasedModelInterpolator setPathTranslator( PathTranslator pathTranslator )
+ public AbstractStringBasedModelInterpolator( PathTranslator pathTranslator, UrlNormalizer urlNormalizer )
{
this.pathTranslator = pathTranslator;
- return this;
- }
-
- public AbstractStringBasedModelInterpolator setUrlNormalizer( UrlNormalizer urlNormalizer )
- {
this.urlNormalizer = urlNormalizer;
- return this;
}
protected List<ValueSource> createValueSources( final Model model, final File projectDir,
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/StringSearchModelInterpolator.java b/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/StringSearchModelInterpolator.java
index 93e53b7..d775fe3 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/StringSearchModelInterpolator.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/StringSearchModelInterpolator.java
@@ -26,6 +26,8 @@ import org.apache.maven.model.building.ModelProblem.Severity;
import org.apache.maven.model.building.ModelProblem.Version;
import org.apache.maven.model.building.ModelProblemCollector;
import org.apache.maven.model.building.ModelProblemCollectorRequest;
+import org.apache.maven.model.path.PathTranslator;
+import org.apache.maven.model.path.UrlNormalizer;
import org.codehaus.plexus.interpolation.InterpolationException;
import org.codehaus.plexus.interpolation.InterpolationPostProcessor;
import org.codehaus.plexus.interpolation.RecursionInterceptor;
@@ -46,6 +48,8 @@ import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
+import javax.inject.Inject;
+
/**
* StringSearchModelInterpolator
* @deprecated replaced by StringVisitorModelInterpolator (MNG-6697)
@@ -63,6 +67,17 @@ public class StringSearchModelInterpolator
String interpolate( String value );
}
+ @Inject
+ public StringSearchModelInterpolator( PathTranslator pathTranslator, UrlNormalizer urlNormalizer )
+ {
+ super( pathTranslator, urlNormalizer );
+ }
+
+ StringSearchModelInterpolator()
+ {
+ super( null, null );
+ }
+
@Override
public Model interpolateModel( Model model, File projectDir, ModelBuildingRequest config,
ModelProblemCollector problems )
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/StringVisitorModelInterpolator.java b/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/StringVisitorModelInterpolator.java
index a12eb10..e639a50 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/StringVisitorModelInterpolator.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/interpolation/StringVisitorModelInterpolator.java
@@ -26,6 +26,7 @@ import java.util.ListIterator;
import java.util.Map;
import java.util.Properties;
+import javax.inject.Inject;
import javax.inject.Named;
import javax.inject.Singleton;
@@ -71,6 +72,8 @@ import org.apache.maven.model.building.ModelProblem.Severity;
import org.apache.maven.model.building.ModelProblem.Version;
import org.apache.maven.model.building.ModelProblemCollector;
import org.apache.maven.model.building.ModelProblemCollectorRequest;
+import org.apache.maven.model.path.PathTranslator;
+import org.apache.maven.model.path.UrlNormalizer;
import org.codehaus.plexus.interpolation.InterpolationException;
import org.codehaus.plexus.interpolation.InterpolationPostProcessor;
import org.codehaus.plexus.interpolation.RecursionInterceptor;
@@ -88,6 +91,11 @@ import org.codehaus.plexus.util.xml.Xpp3Dom;
public class StringVisitorModelInterpolator
extends AbstractStringBasedModelInterpolator
{
+ @Inject
+ public StringVisitorModelInterpolator( PathTranslator pathTranslator, UrlNormalizer urlNormalizer )
+ {
+ super( pathTranslator, urlNormalizer );
+ }
interface InnerInterpolator
{
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/io/DefaultModelReader.java b/maven-model-builder/src/main/java/org/apache/maven/model/io/DefaultModelReader.java
index 1d8b264..eeafabe 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/io/DefaultModelReader.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/io/DefaultModelReader.java
@@ -52,10 +52,10 @@ import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
public class DefaultModelReader
implements ModelReader
{
- @Inject
- private ModelSourceTransformer transformer;
+ private final ModelSourceTransformer transformer;
- public void setTransformer( ModelSourceTransformer transformer )
+ @Inject
+ public DefaultModelReader( ModelSourceTransformer transformer )
{
this.transformer = transformer;
}
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/path/DefaultModelPathTranslator.java b/maven-model-builder/src/main/java/org/apache/maven/model/path/DefaultModelPathTranslator.java
index 26fe10c..801499f 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/path/DefaultModelPathTranslator.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/path/DefaultModelPathTranslator.java
@@ -44,13 +44,12 @@ public class DefaultModelPathTranslator
implements ModelPathTranslator
{
- @Inject
- private PathTranslator pathTranslator;
+ private final PathTranslator pathTranslator;
- public DefaultModelPathTranslator setPathTranslator( PathTranslator pathTranslator )
+ @Inject
+ public DefaultModelPathTranslator( PathTranslator pathTranslator )
{
this.pathTranslator = pathTranslator;
- return this;
}
@Override
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/path/DefaultModelUrlNormalizer.java b/maven-model-builder/src/main/java/org/apache/maven/model/path/DefaultModelUrlNormalizer.java
index 22ace6f..92d7bbd 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/path/DefaultModelUrlNormalizer.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/path/DefaultModelUrlNormalizer.java
@@ -41,13 +41,12 @@ public class DefaultModelUrlNormalizer
implements ModelUrlNormalizer
{
- @Inject
- private UrlNormalizer urlNormalizer;
+ private final UrlNormalizer urlNormalizer;
- public DefaultModelUrlNormalizer setUrlNormalizer( UrlNormalizer urlNormalizer )
+ @Inject
+ public DefaultModelUrlNormalizer( UrlNormalizer urlNormalizer )
{
this.urlNormalizer = urlNormalizer;
- return this;
}
@Override
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/path/ProfileActivationFilePathInterpolator.java b/maven-model-builder/src/main/java/org/apache/maven/model/path/ProfileActivationFilePathInterpolator.java
index c2f815b..41257ac 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/path/ProfileActivationFilePathInterpolator.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/path/ProfileActivationFilePathInterpolator.java
@@ -41,13 +41,12 @@ import java.io.File;
public class ProfileActivationFilePathInterpolator
{
- @Inject
- private PathTranslator pathTranslator;
+ private final PathTranslator pathTranslator;
- public ProfileActivationFilePathInterpolator setPathTranslator( PathTranslator pathTranslator )
+ @Inject
+ public ProfileActivationFilePathInterpolator( PathTranslator pathTranslator )
{
this.pathTranslator = pathTranslator;
- return this;
}
/**
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/profile/DefaultProfileSelector.java b/maven-model-builder/src/main/java/org/apache/maven/model/profile/DefaultProfileSelector.java
index 178789f..75dc10f 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/profile/DefaultProfileSelector.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/profile/DefaultProfileSelector.java
@@ -47,8 +47,13 @@ public class DefaultProfileSelector
implements ProfileSelector
{
+ private final List<ProfileActivator> activators;
+
@Inject
- private List<ProfileActivator> activators = new ArrayList<>();
+ public DefaultProfileSelector( List<ProfileActivator> activators )
+ {
+ this.activators = activators;
+ }
public DefaultProfileSelector addProfileActivator( ProfileActivator profileActivator )
{
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/profile/activation/FileProfileActivator.java b/maven-model-builder/src/main/java/org/apache/maven/model/profile/activation/FileProfileActivator.java
index 923ffd2..999e070 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/profile/activation/FileProfileActivator.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/profile/activation/FileProfileActivator.java
@@ -55,14 +55,12 @@ public class FileProfileActivator
implements ProfileActivator
{
- @Inject
- private ProfileActivationFilePathInterpolator profileActivationFilePathInterpolator;
+ private final ProfileActivationFilePathInterpolator profileActivationFilePathInterpolator;
- public FileProfileActivator setProfileActivationFilePathInterpolator(
- ProfileActivationFilePathInterpolator profileActivationFilePathInterpolator )
+ @Inject
+ public FileProfileActivator( ProfileActivationFilePathInterpolator profileActivationFilePathInterpolator )
{
this.profileActivationFilePathInterpolator = profileActivationFilePathInterpolator;
- return this;
}
@Override
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/superpom/DefaultSuperPomProvider.java b/maven-model-builder/src/main/java/org/apache/maven/model/superpom/DefaultSuperPomProvider.java
index 9d71623..31df92f 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/superpom/DefaultSuperPomProvider.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/superpom/DefaultSuperPomProvider.java
@@ -43,18 +43,17 @@ public class DefaultSuperPomProvider
implements SuperPomProvider
{
+ private final ModelProcessor modelProcessor;
+
/**
* The cached super POM, lazily created.
*/
private Model superModel;
@Inject
- private ModelProcessor modelProcessor;
-
- public DefaultSuperPomProvider setModelProcessor( ModelProcessor modelProcessor )
+ public DefaultSuperPomProvider( ModelProcessor modelProcessor )
{
this.modelProcessor = modelProcessor;
- return this;
}
@Override
diff --git a/maven-model-builder/src/test/java/org/apache/maven/model/inheritance/DefaultInheritanceAssemblerTest.java b/maven-model-builder/src/test/java/org/apache/maven/model/inheritance/DefaultInheritanceAssemblerTest.java
index b499fc0..52400d8 100644
--- a/maven-model-builder/src/test/java/org/apache/maven/model/inheritance/DefaultInheritanceAssemblerTest.java
+++ b/maven-model-builder/src/test/java/org/apache/maven/model/inheritance/DefaultInheritanceAssemblerTest.java
@@ -61,8 +61,7 @@ public class DefaultInheritanceAssemblerTest
public void setUp()
throws Exception
{
- reader = new DefaultModelReader();
- reader.setTransformer( new AbstractModelSourceTransformer()
+ reader = new DefaultModelReader( new AbstractModelSourceTransformer()
{
@Override
protected AbstractSAXFilter getSAXFilter( Path pomFile, TransformerContext context,
diff --git a/maven-model-builder/src/test/java/org/apache/maven/model/interpolation/StringVisitorModelInterpolatorTest.java b/maven-model-builder/src/test/java/org/apache/maven/model/interpolation/StringVisitorModelInterpolatorTest.java
index 7c90b07..e4b11cc 100644
--- a/maven-model-builder/src/test/java/org/apache/maven/model/interpolation/StringVisitorModelInterpolatorTest.java
+++ b/maven-model-builder/src/test/java/org/apache/maven/model/interpolation/StringVisitorModelInterpolatorTest.java
@@ -23,6 +23,6 @@ public class StringVisitorModelInterpolatorTest extends AbstractModelInterpolato
{
protected ModelInterpolator createInterpolator()
{
- return new StringVisitorModelInterpolator();
+ return new StringVisitorModelInterpolator( null, null );
}
}
\ No newline at end of file
diff --git a/maven-model-builder/src/test/java/org/apache/maven/model/profile/activation/AbstractProfileActivatorTest.java b/maven-model-builder/src/test/java/org/apache/maven/model/profile/activation/AbstractProfileActivatorTest.java
index c665125..cbdb850 100644
--- a/maven-model-builder/src/test/java/org/apache/maven/model/profile/activation/AbstractProfileActivatorTest.java
+++ b/maven-model-builder/src/test/java/org/apache/maven/model/profile/activation/AbstractProfileActivatorTest.java
@@ -39,25 +39,13 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
public abstract class AbstractProfileActivatorTest<T extends ProfileActivator>
{
- private Class<T> activatorClass;
-
protected T activator;
- public AbstractProfileActivatorTest( Class<T> activatorClass )
- {
- this.activatorClass = Objects.requireNonNull( activatorClass, "activatorClass cannot be null" );;
- }
-
@BeforeEach
- public void setUp()
- throws Exception
- {
- activator = activatorClass.getConstructor().newInstance();
- }
+ abstract void setUp() throws Exception;
@AfterEach
- public void tearDown()
- throws Exception
+ void tearDown() throws Exception
{
activator = null;
}
diff --git a/maven-model-builder/src/test/java/org/apache/maven/model/profile/activation/FileProfileActivatorTest.java b/maven-model-builder/src/test/java/org/apache/maven/model/profile/activation/FileProfileActivatorTest.java
index acca982..300fc13 100644
--- a/maven-model-builder/src/test/java/org/apache/maven/model/profile/activation/FileProfileActivatorTest.java
+++ b/maven-model-builder/src/test/java/org/apache/maven/model/profile/activation/FileProfileActivatorTest.java
@@ -48,17 +48,11 @@ public class FileProfileActivatorTest extends AbstractProfileActivatorTest<FileP
private final DefaultProfileActivationContext context = new DefaultProfileActivationContext();
- public FileProfileActivatorTest()
- {
- super( FileProfileActivator.class );
- }
-
@BeforeEach
- public void setUp() throws Exception
+ @Override
+ void setUp() throws Exception
{
- super.setUp();
- activator.setProfileActivationFilePathInterpolator(
- new ProfileActivationFilePathInterpolator().setPathTranslator( new DefaultPathTranslator() ) );
+ activator = new FileProfileActivator( new ProfileActivationFilePathInterpolator( new DefaultPathTranslator() ) );
context.setProjectDirectory( new File( tempDir.toString() ) );
diff --git a/maven-model-builder/src/test/java/org/apache/maven/model/profile/activation/JdkVersionProfileActivatorTest.java b/maven-model-builder/src/test/java/org/apache/maven/model/profile/activation/JdkVersionProfileActivatorTest.java
index 51bd93f..ce57bf0 100644
--- a/maven-model-builder/src/test/java/org/apache/maven/model/profile/activation/JdkVersionProfileActivatorTest.java
+++ b/maven-model-builder/src/test/java/org/apache/maven/model/profile/activation/JdkVersionProfileActivatorTest.java
@@ -23,6 +23,7 @@ import java.util.Properties;
import org.apache.maven.model.Activation;
import org.apache.maven.model.Profile;
+import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
/**
@@ -34,12 +35,14 @@ public class JdkVersionProfileActivatorTest
extends AbstractProfileActivatorTest<JdkVersionProfileActivator>
{
- public JdkVersionProfileActivatorTest()
+ @Override
+ @BeforeEach
+ void setUp() throws Exception
{
- super( JdkVersionProfileActivator.class );
+ activator = new JdkVersionProfileActivator();
}
- private Profile newProfile( String jdkVersion )
+ private Profile newProfile(String jdkVersion )
{
Activation a = new Activation();
a.setJdk( jdkVersion );
diff --git a/maven-model-builder/src/test/java/org/apache/maven/model/profile/activation/PropertyProfileActivatorTest.java b/maven-model-builder/src/test/java/org/apache/maven/model/profile/activation/PropertyProfileActivatorTest.java
index 251ea7d..72a6775 100644
--- a/maven-model-builder/src/test/java/org/apache/maven/model/profile/activation/PropertyProfileActivatorTest.java
+++ b/maven-model-builder/src/test/java/org/apache/maven/model/profile/activation/PropertyProfileActivatorTest.java
@@ -24,6 +24,7 @@ import java.util.Properties;
import org.apache.maven.model.Activation;
import org.apache.maven.model.ActivationProperty;
import org.apache.maven.model.Profile;
+import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
/**
@@ -35,12 +36,14 @@ public class PropertyProfileActivatorTest
extends AbstractProfileActivatorTest<PropertyProfileActivator>
{
- public PropertyProfileActivatorTest()
+ @BeforeEach
+ @Override
+ void setUp() throws Exception
{
- super( PropertyProfileActivator.class );
+ activator = new PropertyProfileActivator();
}
- private Profile newProfile( String key, String value )
+ private Profile newProfile(String key, String value )
{
ActivationProperty ap = new ActivationProperty();
ap.setName( key );
diff --git a/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java
index 24c8570..147f8b8 100644
--- a/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java
+++ b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java
@@ -73,80 +73,35 @@ import org.slf4j.LoggerFactory;
*/
@Named
@Singleton
-public class DefaultArtifactDescriptorReader
- implements ArtifactDescriptorReader
+public class DefaultArtifactDescriptorReader implements ArtifactDescriptorReader
{
private static final Logger LOGGER = LoggerFactory.getLogger( DefaultArtifactDescriptorReader.class );
- private RemoteRepositoryManager remoteRepositoryManager;
-
- private VersionResolver versionResolver;
-
- private VersionRangeResolver versionRangeResolver;
-
- private ArtifactResolver artifactResolver;
-
- private RepositoryEventDispatcher repositoryEventDispatcher;
-
- private ModelBuilder modelBuilder;
-
- public DefaultArtifactDescriptorReader()
- {
- // enable no-arg constructor
- }
+ private final RemoteRepositoryManager remoteRepositoryManager;
+ private final VersionResolver versionResolver;
+ private final VersionRangeResolver versionRangeResolver;
+ private final ArtifactResolver artifactResolver;
+ private final RepositoryEventDispatcher repositoryEventDispatcher;
+ private final ModelBuilder modelBuilder;
@Inject
- DefaultArtifactDescriptorReader( RemoteRepositoryManager remoteRepositoryManager, VersionResolver versionResolver,
- VersionRangeResolver versionRangeResolver, ArtifactResolver artifactResolver,
- ModelBuilder modelBuilder, RepositoryEventDispatcher repositoryEventDispatcher )
- {
- setRemoteRepositoryManager( remoteRepositoryManager );
- setVersionResolver( versionResolver );
- setVersionRangeResolver( versionRangeResolver );
- setArtifactResolver( artifactResolver );
- setModelBuilder( modelBuilder );
- setRepositoryEventDispatcher( repositoryEventDispatcher );
- }
-
- public DefaultArtifactDescriptorReader setRemoteRepositoryManager( RemoteRepositoryManager remoteRepositoryManager )
+ public DefaultArtifactDescriptorReader(
+ RemoteRepositoryManager remoteRepositoryManager,
+ VersionResolver versionResolver,
+ VersionRangeResolver versionRangeResolver,
+ ArtifactResolver artifactResolver,
+ ModelBuilder modelBuilder,
+ RepositoryEventDispatcher repositoryEventDispatcher )
{
this.remoteRepositoryManager = Objects.requireNonNull( remoteRepositoryManager,
- "remoteRepositoryManager cannot be null" );
- return this;
- }
-
- public DefaultArtifactDescriptorReader setVersionResolver( VersionResolver versionResolver )
- {
+ "remoteRepositoryManager cannot be null" );
this.versionResolver = Objects.requireNonNull( versionResolver, "versionResolver cannot be null" );
- return this;
- }
-
- /** @since 3.2.2 */
- public DefaultArtifactDescriptorReader setVersionRangeResolver( VersionRangeResolver versionRangeResolver )
- {
this.versionRangeResolver =
- Objects.requireNonNull( versionRangeResolver, "versionRangeResolver cannot be null" );
- return this;
- }
-
- public DefaultArtifactDescriptorReader setArtifactResolver( ArtifactResolver artifactResolver )
- {
+ Objects.requireNonNull( versionRangeResolver, "versionRangeResolver cannot be null" );
this.artifactResolver = Objects.requireNonNull( artifactResolver, "artifactResolver cannot be null" );
- return this;
- }
-
- public DefaultArtifactDescriptorReader setRepositoryEventDispatcher(
- RepositoryEventDispatcher repositoryEventDispatcher )
- {
- this.repositoryEventDispatcher = Objects.requireNonNull( repositoryEventDispatcher,
- "repositoryEventDispatcher cannot be null" );
- return this;
- }
-
- public DefaultArtifactDescriptorReader setModelBuilder( ModelBuilder modelBuilder )
- {
this.modelBuilder = Objects.requireNonNull( modelBuilder, "modelBuilder cannot be null" );
- return this;
+ this.repositoryEventDispatcher = Objects.requireNonNull( repositoryEventDispatcher,
+ "repositoryEventDispatcher cannot be null" );
}
public ArtifactDescriptorResult readArtifactDescriptor( RepositorySystemSession session,
diff --git a/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionRangeResolver.java b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionRangeResolver.java
index f2b736e..379d05c 100644
--- a/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionRangeResolver.java
+++ b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionRangeResolver.java
@@ -70,46 +70,19 @@ public class DefaultVersionRangeResolver
private static final String MAVEN_METADATA_XML = "maven-metadata.xml";
- private MetadataResolver metadataResolver;
-
- private SyncContextFactory syncContextFactory;
-
- private RepositoryEventDispatcher repositoryEventDispatcher;
-
- public DefaultVersionRangeResolver()
- {
- // enable default constructor
- }
+ private final MetadataResolver metadataResolver;
+ private final SyncContextFactory syncContextFactory;
+ private final RepositoryEventDispatcher repositoryEventDispatcher;
@Inject
- DefaultVersionRangeResolver( MetadataResolver metadataResolver, SyncContextFactory syncContextFactory,
- RepositoryEventDispatcher repositoryEventDispatcher )
- {
- setMetadataResolver( metadataResolver );
- setSyncContextFactory( syncContextFactory );
- setRepositoryEventDispatcher( repositoryEventDispatcher );
- }
-
- public DefaultVersionRangeResolver setMetadataResolver( MetadataResolver metadataResolver )
+ public DefaultVersionRangeResolver( MetadataResolver metadataResolver, SyncContextFactory syncContextFactory,
+ RepositoryEventDispatcher repositoryEventDispatcher )
{
this.metadataResolver = Objects.requireNonNull( metadataResolver, "metadataResolver cannot be null" );
- return this;
- }
-
- public DefaultVersionRangeResolver setSyncContextFactory( SyncContextFactory syncContextFactory )
- {
this.syncContextFactory = Objects.requireNonNull( syncContextFactory, "syncContextFactory cannot be null" );
- return this;
- }
-
- public DefaultVersionRangeResolver setRepositoryEventDispatcher(
- RepositoryEventDispatcher repositoryEventDispatcher )
- {
this.repositoryEventDispatcher = Objects.requireNonNull( repositoryEventDispatcher,
- "repositoryEventDispatcher cannot be null" );
- return this;
+ "repositoryEventDispatcher cannot be null" );
}
-
public VersionRangeResult resolveVersionRange( RepositorySystemSession session, VersionRangeRequest request )
throws VersionRangeResolutionException
{
diff --git a/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionResolver.java b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionResolver.java
index fefd60a..e70a8b9 100644
--- a/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionResolver.java
+++ b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultVersionResolver.java
@@ -81,43 +81,18 @@ public class DefaultVersionResolver
private static final String SNAPSHOT = "SNAPSHOT";
- private MetadataResolver metadataResolver;
-
- private SyncContextFactory syncContextFactory;
-
- private RepositoryEventDispatcher repositoryEventDispatcher;
-
- public DefaultVersionResolver()
- {
- // enable no-arg constructor
- }
+ private final MetadataResolver metadataResolver;
+ private final SyncContextFactory syncContextFactory;
+ private final RepositoryEventDispatcher repositoryEventDispatcher;
@Inject
- DefaultVersionResolver( MetadataResolver metadataResolver, SyncContextFactory syncContextFactory,
+ public DefaultVersionResolver( MetadataResolver metadataResolver, SyncContextFactory syncContextFactory,
RepositoryEventDispatcher repositoryEventDispatcher )
{
- setMetadataResolver( metadataResolver );
- setSyncContextFactory( syncContextFactory );
- setRepositoryEventDispatcher( repositoryEventDispatcher );
- }
-
- public DefaultVersionResolver setMetadataResolver( MetadataResolver metadataResolver )
- {
this.metadataResolver = Objects.requireNonNull( metadataResolver, "metadataResolver cannot be null" );
- return this;
- }
-
- public DefaultVersionResolver setSyncContextFactory( SyncContextFactory syncContextFactory )
- {
this.syncContextFactory = Objects.requireNonNull( syncContextFactory, "syncContextFactory cannot be null" );
- return this;
- }
-
- public DefaultVersionResolver setRepositoryEventDispatcher( RepositoryEventDispatcher repositoryEventDispatcher )
- {
this.repositoryEventDispatcher = Objects.requireNonNull( repositoryEventDispatcher,
- "repositoryEventDispatcher cannot be null" );
- return this;
+ "repositoryEventDispatcher cannot be null" );
}
@SuppressWarnings( "checkstyle:methodlength" )
diff --git a/maven-resolver-provider/src/test/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReaderTest.java b/maven-resolver-provider/src/test/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReaderTest.java
index a68a42f..733fa59 100644
--- a/maven-resolver-provider/src/test/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReaderTest.java
+++ b/maven-resolver-provider/src/test/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReaderTest.java
@@ -19,6 +19,8 @@ package org.apache.maven.repository.internal;
* under the License.
*/
+import java.lang.reflect.Field;
+
import org.eclipse.aether.RepositoryEvent;
import org.eclipse.aether.RepositoryEvent.EventType;
import org.eclipse.aether.artifact.DefaultArtifact;
@@ -48,7 +50,9 @@ public class DefaultArtifactDescriptorReaderTest
ArgumentCaptor<RepositoryEvent> event = ArgumentCaptor.forClass( RepositoryEvent.class );
- reader.setRepositoryEventDispatcher( eventDispatcher );
+ Field field = DefaultArtifactDescriptorReader.class.getDeclaredField( "repositoryEventDispatcher" );
+ field.setAccessible( true );
+ field.set( reader, eventDispatcher );
ArtifactDescriptorRequest request = new ArtifactDescriptorRequest();