This is an automated email from the ASF dual-hosted git repository. elharo pushed a commit to branch guice in repository https://gitbox.apache.org/repos/asf/maven-plugin-tools.git
commit 54b012af35eddfd5be85de56e2ef72518158740f Author: Elliotte Rusty Harold <elh...@ibiblio.org> AuthorDate: Fri Dec 13 14:53:36 2024 -0500 Prefer Guice injection --- maven-plugin-plugin/pom.xml | 6 ++++++ .../maven/plugin/plugin/AbstractGeneratorMojo.java | 15 +++++++++------ .../maven/plugin/plugin/DescriptorGeneratorMojo.java | 16 ++++++++++++---- .../apache/maven/plugin/plugin/HelpGeneratorMojo.java | 12 +++++++++--- .../maven/plugin/plugin/HelpGeneratorMojoTest.java | 3 +-- 5 files changed, 37 insertions(+), 15 deletions(-) diff --git a/maven-plugin-plugin/pom.xml b/maven-plugin-plugin/pom.xml index daf2ecff..572d9c9f 100644 --- a/maven-plugin-plugin/pom.xml +++ b/maven-plugin-plugin/pom.xml @@ -112,6 +112,12 @@ <artifactId>maven-resolver-util</artifactId> <version>${resolverVersion}</version> </dependency> + <dependency> + <groupId>javax.inject</groupId> + <artifactId>javax.inject</artifactId> + <version>1</version> + <scope>provided</scope> + </dependency> <!-- plexus --> <dependency> diff --git a/maven-plugin-plugin/src/main/java/org/apache/maven/plugin/plugin/AbstractGeneratorMojo.java b/maven-plugin-plugin/src/main/java/org/apache/maven/plugin/plugin/AbstractGeneratorMojo.java index d6524aae..3dda7fd2 100644 --- a/maven-plugin-plugin/src/main/java/org/apache/maven/plugin/plugin/AbstractGeneratorMojo.java +++ b/maven-plugin-plugin/src/main/java/org/apache/maven/plugin/plugin/AbstractGeneratorMojo.java @@ -23,7 +23,6 @@ import java.util.List; import org.apache.maven.plugin.AbstractMojo; import org.apache.maven.plugin.MojoExecutionException; -import org.apache.maven.plugins.annotations.Component; import org.apache.maven.plugins.annotations.Parameter; import org.apache.maven.project.MavenProject; @@ -34,11 +33,6 @@ import org.apache.maven.project.MavenProject; * */ public abstract class AbstractGeneratorMojo extends AbstractMojo { - /** - * The project currently being built. - */ - @Component - protected MavenProject project; /** * The goal prefix that will appear before the ":". @@ -67,6 +61,15 @@ public abstract class AbstractGeneratorMojo extends AbstractMojo { */ protected static final String LS = System.lineSeparator(); + /** + * The project currently being built. + */ + protected final MavenProject project; + + protected AbstractGeneratorMojo(MavenProject project) { + this.project = project; + } + protected abstract void generate() throws MojoExecutionException; @Override diff --git a/maven-plugin-plugin/src/main/java/org/apache/maven/plugin/plugin/DescriptorGeneratorMojo.java b/maven-plugin-plugin/src/main/java/org/apache/maven/plugin/plugin/DescriptorGeneratorMojo.java index 73a0e561..b55bf156 100644 --- a/maven-plugin-plugin/src/main/java/org/apache/maven/plugin/plugin/DescriptorGeneratorMojo.java +++ b/maven-plugin-plugin/src/main/java/org/apache/maven/plugin/plugin/DescriptorGeneratorMojo.java @@ -18,6 +18,8 @@ */ package org.apache.maven.plugin.plugin; +import javax.inject.Inject; + import java.io.File; import java.io.IOException; import java.io.InputStream; @@ -43,6 +45,7 @@ import org.apache.maven.plugins.annotations.LifecyclePhase; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; import org.apache.maven.plugins.annotations.ResolutionScope; +import org.apache.maven.project.MavenProject; import org.apache.maven.tools.plugin.DefaultPluginToolsRequest; import org.apache.maven.tools.plugin.ExtendedMojoDescriptor; import org.apache.maven.tools.plugin.ExtendedPluginDescriptor; @@ -280,11 +283,16 @@ public class DescriptorGeneratorMojo extends AbstractGeneratorMojo { /** * The component used for scanning the source tree for mojos. */ - @Component - private MojoScanner mojoScanner; + private final MojoScanner mojoScanner; - @Component - protected BuildContext buildContext; + protected final BuildContext buildContext; + + @Inject + protected DescriptorGeneratorMojo(MavenProject project, MojoScanner mojoScanner, BuildContext buildContext) { + super(project); + this.mojoScanner = mojoScanner; + this.buildContext = buildContext; + } public void generate() throws MojoExecutionException { if (!"maven-plugin".equalsIgnoreCase(project.getArtifactId()) diff --git a/maven-plugin-plugin/src/main/java/org/apache/maven/plugin/plugin/HelpGeneratorMojo.java b/maven-plugin-plugin/src/main/java/org/apache/maven/plugin/plugin/HelpGeneratorMojo.java index eeadd65e..00a7f3d6 100644 --- a/maven-plugin-plugin/src/main/java/org/apache/maven/plugin/plugin/HelpGeneratorMojo.java +++ b/maven-plugin-plugin/src/main/java/org/apache/maven/plugin/plugin/HelpGeneratorMojo.java @@ -18,6 +18,7 @@ */ package org.apache.maven.plugin.plugin; +import javax.inject.Inject; import javax.lang.model.SourceVersion; import java.io.File; @@ -25,11 +26,11 @@ import java.util.Arrays; import java.util.stream.Collectors; import org.apache.maven.plugin.MojoExecutionException; -import org.apache.maven.plugins.annotations.Component; import org.apache.maven.plugins.annotations.LifecyclePhase; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; import org.apache.maven.plugins.annotations.ResolutionScope; +import org.apache.maven.project.MavenProject; import org.apache.maven.tools.plugin.generator.GeneratorException; import org.apache.maven.tools.plugin.generator.PluginHelpGenerator; import org.codehaus.plexus.util.StringUtils; @@ -71,8 +72,13 @@ public class HelpGeneratorMojo extends AbstractGeneratorMojo { /** * Velocity component. */ - @Component - private VelocityComponent velocity; + private final VelocityComponent velocity; + + @Inject + public HelpGeneratorMojo(MavenProject project, VelocityComponent velocity) { + super(project); + this.velocity = velocity; + } String getHelpPackageName() { String packageName = null; diff --git a/maven-plugin-plugin/src/test/java/org/apache/maven/plugin/plugin/HelpGeneratorMojoTest.java b/maven-plugin-plugin/src/test/java/org/apache/maven/plugin/plugin/HelpGeneratorMojoTest.java index 748a4ad2..3473ce35 100644 --- a/maven-plugin-plugin/src/test/java/org/apache/maven/plugin/plugin/HelpGeneratorMojoTest.java +++ b/maven-plugin-plugin/src/test/java/org/apache/maven/plugin/plugin/HelpGeneratorMojoTest.java @@ -40,8 +40,7 @@ class HelpGeneratorMojoTest { @ParameterizedTest @MethodSource void packageNameShouldBeCorrect(MavenProject project, String expectedPackageName) { - HelpGeneratorMojo mojo = new HelpGeneratorMojo(); - mojo.project = project; + HelpGeneratorMojo mojo = new HelpGeneratorMojo(project, null); String packageName = mojo.getHelpPackageName(); assertEquals(expectedPackageName, packageName);