From c7da33ebe3cc99f9c33a611490833fc362a4568e Mon Sep 17 00:00:00 2001 From: Tim te Beek Date: Fri, 9 Feb 2024 11:55:34 +0100 Subject: [PATCH] Pull up State to ConfigurableRewriteMojo for use in additional Mojo (#736) As added in https://github.com/openrewrite/rewrite-maven-plugin/pull/726 --- .../maven/AbstractRewriteMojo.java | 28 ------------------- .../maven/ConfigurableRewriteMojo.java | 28 +++++++++++++++++++ 2 files changed, 28 insertions(+), 28 deletions(-) diff --git a/src/main/java/org/openrewrite/maven/AbstractRewriteMojo.java b/src/main/java/org/openrewrite/maven/AbstractRewriteMojo.java index 041e7eaf..0393919f 100644 --- a/src/main/java/org/openrewrite/maven/AbstractRewriteMojo.java +++ b/src/main/java/org/openrewrite/maven/AbstractRewriteMojo.java @@ -17,9 +17,7 @@ import io.micrometer.core.instrument.Metrics; import org.apache.maven.artifact.DependencyResolutionRequiredException; -import org.apache.maven.execution.MavenSession; import org.apache.maven.plugin.MojoExecutionException; -import org.apache.maven.plugin.descriptor.PluginDescriptor; import org.apache.maven.plugins.annotations.Component; import org.apache.maven.plugins.annotations.Parameter; import org.apache.maven.project.MavenProject; @@ -75,34 +73,8 @@ public abstract class AbstractRewriteMojo extends ConfigurableRewriteMojo { @Component protected RepositorySystem repositorySystem; - @Parameter(defaultValue = "${session}", readonly = true) - protected MavenSession mavenSession; - - @Parameter(defaultValue = "${plugin}", required = true, readonly = true) - protected PluginDescriptor pluginDescriptor; - private static final String RECIPE_NOT_FOUND_EXCEPTION_MSG = "Could not find recipe '%s' among available recipes"; - protected enum State { - SKIPPED, - PROCESSED, - TO_BE_PROCESSED - } - private static final String OPENREWRITE_PROCESSED_MARKER = "openrewrite.processed"; - - protected void putState(State state) { - getPluginContext().put(OPENREWRITE_PROCESSED_MARKER, state.name()); - } - - private boolean hasState(MavenProject project) { - Map pluginContext = mavenSession.getPluginContext(pluginDescriptor, project); - return pluginContext.containsKey(OPENREWRITE_PROCESSED_MARKER); - } - - protected boolean allProjectsMarked() { - return mavenSession.getProjects().stream().allMatch(this::hasState); - } - protected Environment environment() throws MojoExecutionException { return environment(getRecipeArtifactCoordinatesClassloader()); } diff --git a/src/main/java/org/openrewrite/maven/ConfigurableRewriteMojo.java b/src/main/java/org/openrewrite/maven/ConfigurableRewriteMojo.java index d0b76b54..1eb0e45b 100644 --- a/src/main/java/org/openrewrite/maven/ConfigurableRewriteMojo.java +++ b/src/main/java/org/openrewrite/maven/ConfigurableRewriteMojo.java @@ -16,8 +16,10 @@ package org.openrewrite.maven; import com.puppycrawl.tools.checkstyle.Checker; +import org.apache.maven.execution.MavenSession; import org.apache.maven.model.Plugin; import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.descriptor.PluginDescriptor; import org.apache.maven.plugins.annotations.Parameter; import org.apache.maven.project.MavenProject; import org.codehaus.plexus.util.xml.Xpp3Dom; @@ -179,6 +181,32 @@ protected Set getPlainTextMasks() { @Parameter(property = "rewrite.runPerSubmodule", alias = "runPerSubmodule", defaultValue = "false") protected boolean runPerSubmodule; + @Parameter(defaultValue = "${session}", readonly = true) + protected MavenSession mavenSession; + + @Parameter(defaultValue = "${plugin}", required = true, readonly = true) + protected PluginDescriptor pluginDescriptor; + + protected enum State { + SKIPPED, + PROCESSED, + TO_BE_PROCESSED + } + private static final String OPENREWRITE_PROCESSED_MARKER = "openrewrite.processed"; + + protected void putState(State state) { + getPluginContext().put(OPENREWRITE_PROCESSED_MARKER, state.name()); + } + + private boolean hasState(MavenProject project) { + Map pluginContext = mavenSession.getPluginContext(pluginDescriptor, project); + return pluginContext.containsKey(OPENREWRITE_PROCESSED_MARKER); + } + + protected boolean allProjectsMarked() { + return mavenSession.getProjects().stream().allMatch(this::hasState); + } + @Nullable @Parameter(property = "rewrite.recipeArtifactCoordinates") private LinkedHashSet recipeArtifactCoordinates;