You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by sj...@apache.org on 2022/12/27 10:40:54 UTC
[maven-enforcer] 01/01: [MENFORCER-450] Code cleanup
This is an automated email from the ASF dual-hosted git repository.
sjaranowski pushed a commit to branch MENFORCER-450
in repository https://gitbox.apache.org/repos/asf/maven-enforcer.git
commit 8c624b48e6436df3eba66a1595824f243bafcf53
Author: Slawomir Jaranowski <s....@gmail.com>
AuthorDate: Tue Dec 27 11:40:28 2022 +0100
[MENFORCER-450] Code cleanup
- remove not needed throws
- remove custom EnforcerExpressionEvaluator
- remove not needed toString()
- use diamond operator
---
.../apache/maven/plugins/enforcer/AlwaysPass.java | 3 +-
.../enforcer/BanDependencyManagementScope.java | 6 +---
.../BanDuplicatePomDependencyVersions.java | 2 +-
.../maven/plugins/enforcer/BanDynamicVersions.java | 7 +---
.../enforcer/BanTransitiveDependencies.java | 14 ++------
.../enforcer/EnforcerExpressionEvaluator.java | 42 ----------------------
.../maven/plugins/enforcer/EvaluateBeanshell.java | 7 +---
.../plugins/enforcer/ReactorModuleConvergence.java | 11 +++---
.../plugins/enforcer/RequireFileChecksum.java | 4 +--
.../plugins/enforcer/RequirePluginVersions.java | 16 +++------
.../plugins/enforcer/RequirePrerequisite.java | 4 +--
.../plugins/enforcer/RequireSameVersions.java | 2 +-
.../plugins/enforcer/utils/ArtifactMatcher.java | 8 ++---
.../enforcer/utils/DependencyVersionMap.java | 7 ++--
.../utils/NormalizeLineSeparatorReader.java | 2 +-
.../enforcer/BanDependencyManagementScopeTest.java | 4 +--
.../utils/MockEnforcerExpressionEvaluator.java | 7 ++--
.../enforcer/utils/TestArtifactMatcher.java | 8 ++---
.../utils/TestMockEnforcerExpressionEvaluator.java | 6 ++--
.../maven/plugins/enforcer/DisplayInfoMojo.java | 32 ++---------------
.../apache/maven/plugins/enforcer/EnforceMojo.java | 18 +++-------
21 files changed, 44 insertions(+), 166 deletions(-)
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/AlwaysPass.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/AlwaysPass.java
index 75bfc63..4ffca41 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/AlwaysPass.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/AlwaysPass.java
@@ -18,7 +18,6 @@
*/
package org.apache.maven.plugins.enforcer;
-import org.apache.maven.enforcer.rule.api.EnforcerRuleException;
import org.apache.maven.enforcer.rule.api.EnforcerRuleHelper;
import org.apache.maven.plugin.logging.Log;
@@ -29,7 +28,7 @@ import org.apache.maven.plugin.logging.Log;
public class AlwaysPass extends AbstractNonCacheableEnforcerRule {
@Override
- public void execute(EnforcerRuleHelper helper) throws EnforcerRuleException {
+ public void execute(EnforcerRuleHelper helper) {
final Log log = helper.getLog();
String message = getMessage();
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanDependencyManagementScope.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanDependencyManagementScope.java
index 89a7b33..7507f24 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanDependencyManagementScope.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanDependencyManagementScope.java
@@ -22,7 +22,6 @@ import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
-import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
import org.apache.maven.enforcer.rule.api.EnforcerRule2;
import org.apache.maven.enforcer.rule.api.EnforcerRuleException;
import org.apache.maven.enforcer.rule.api.EnforcerRuleHelper;
@@ -85,13 +84,10 @@ public class BanDependencyManagementScope extends AbstractNonCacheableEnforcerRu
}
} catch (ExpressionEvaluationException e) {
throw new EnforcerRuleException("Cannot resolve expression: " + e.getCause(), e);
- } catch (InvalidVersionSpecificationException e) {
- throw new EnforcerRuleException("Invalid version range give in excludes " + e.getCause(), e);
}
}
- protected List<Dependency> getViolatingDependencies(Log logger, DependencyManagement depMgmt)
- throws InvalidVersionSpecificationException {
+ protected List<Dependency> getViolatingDependencies(Log logger, DependencyManagement depMgmt) {
final ArtifactMatcher excludesMatcher;
if (excludes != null) {
excludesMatcher = new ArtifactMatcher(excludes, Collections.emptyList());
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanDuplicatePomDependencyVersions.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanDuplicatePomDependencyVersions.java
index 3eeaac1..e985262 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanDuplicatePomDependencyVersions.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanDuplicatePomDependencyVersions.java
@@ -156,7 +156,7 @@ public class BanDuplicatePomDependencyVersions extends AbstractNonCacheableEnfor
}
}
- private Map<String, Integer> validateDependencies(List<Dependency> dependencies) throws EnforcerRuleException {
+ private Map<String, Integer> validateDependencies(List<Dependency> dependencies) {
Map<String, Integer> duplicateDeps = new HashMap<>();
Set<String> deps = new HashSet<>();
for (Dependency dependency : dependencies) {
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanDynamicVersions.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanDynamicVersions.java
index 2212fb6..8dadd4c 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanDynamicVersions.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanDynamicVersions.java
@@ -30,7 +30,6 @@ import java.util.function.Predicate;
import java.util.stream.Collectors;
import org.apache.maven.RepositoryUtils;
-import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
import org.apache.maven.enforcer.rule.api.EnforcerRuleException;
import org.apache.maven.enforcer.rule.api.EnforcerRuleHelper;
import org.apache.maven.plugin.logging.Log;
@@ -292,11 +291,7 @@ public class BanDynamicVersions extends AbstractNonCacheableEnforcerRule {
@Override
public boolean test(DependencyNode depNode) {
- try {
- return artifactMatcher.match(ArtifactUtils.toArtifact(depNode));
- } catch (InvalidVersionSpecificationException e) {
- throw new IllegalArgumentException("Invalid version found for dependency node " + depNode, e);
- }
+ return artifactMatcher.match(ArtifactUtils.toArtifact(depNode));
}
}
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanTransitiveDependencies.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanTransitiveDependencies.java
index 3bc5de0..bf52d19 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanTransitiveDependencies.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/BanTransitiveDependencies.java
@@ -24,7 +24,6 @@ import java.util.stream.Collectors;
import com.google.common.base.Strings;
import org.apache.maven.RepositoryUtils;
-import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
import org.apache.maven.enforcer.rule.api.EnforcerRule;
import org.apache.maven.enforcer.rule.api.EnforcerRuleException;
import org.apache.maven.enforcer.rule.api.EnforcerRuleHelper;
@@ -67,16 +66,13 @@ public class BanTransitiveDependencies extends AbstractNonCacheableEnforcerRule
/**
* Searches dependency tree recursively for transitive dependencies that are not excluded, while generating nice
* info message along the way.
- *
- * @throws InvalidVersionSpecificationException
*/
private static boolean searchTree(
DependencyNode node,
int level,
ArtifactMatcher excludes,
Set<Dependency> directDependencies,
- StringBuilder message)
- throws InvalidVersionSpecificationException {
+ StringBuilder message) {
List<DependencyNode> children = node.getChildren();
@@ -146,12 +142,8 @@ public class BanTransitiveDependencies extends AbstractNonCacheableEnforcerRule
DependencyNode rootNode = ArtifactUtils.resolveTransitiveDependencies(helper);
StringBuilder generatedMessage = new StringBuilder();
- try {
- if (searchTree(rootNode, 0, exclusions, directDependencies, generatedMessage)) {
- throw new EnforcerRuleException(ofNullable(getMessage()).orElse(generatedMessage.toString()));
- }
- } catch (InvalidVersionSpecificationException e) {
- throw new EnforcerRuleException("Error: Invalid version range.", e);
+ if (searchTree(rootNode, 0, exclusions, directDependencies, generatedMessage)) {
+ throw new EnforcerRuleException(ofNullable(getMessage()).orElse(generatedMessage.toString()));
}
}
}
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/EnforcerExpressionEvaluator.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/EnforcerExpressionEvaluator.java
deleted file mode 100644
index 0065b24..0000000
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/EnforcerExpressionEvaluator.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.maven.plugins.enforcer;
-
-import org.apache.maven.execution.MavenSession;
-import org.apache.maven.plugin.MojoExecution;
-import org.apache.maven.plugin.PluginParameterExpressionEvaluator;
-
-/**
- * The Class EnforcerExpressionEvaluator. This class wraps the PluginParameterExpressionEvaluator because it can't be
- * accessed directly in 2.0.x so we must create a new one.
- *
- * @author <a href="mailto:brianf@apache.org">Brian Fox</a>
- */
-public class EnforcerExpressionEvaluator extends PluginParameterExpressionEvaluator {
-
- /**
- * The Constructor.
- *
- * @param mavenSession {@link MavenSession}
- * @param theExecution {@link MojoExecution}
- */
- public EnforcerExpressionEvaluator(MavenSession mavenSession, MojoExecution theExecution) {
- super(mavenSession, theExecution);
- }
-}
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/EvaluateBeanshell.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/EvaluateBeanshell.java
index c80b9ca..9adf525 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/EvaluateBeanshell.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/EvaluateBeanshell.java
@@ -34,12 +34,7 @@ import org.codehaus.plexus.util.StringUtils;
public class EvaluateBeanshell extends AbstractNonCacheableEnforcerRule {
/** Beanshell interpreter. */
- private static final ThreadLocal<Interpreter> INTERPRETER = new ThreadLocal<Interpreter>() {
- @Override
- protected Interpreter initialValue() {
- return new Interpreter();
- }
- };
+ private static final ThreadLocal<Interpreter> INTERPRETER = ThreadLocal.withInitial(Interpreter::new);
/** The condition to be evaluated.
*
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/ReactorModuleConvergence.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/ReactorModuleConvergence.java
index e1e2082..b08479b 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/ReactorModuleConvergence.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/ReactorModuleConvergence.java
@@ -80,7 +80,7 @@ public class ReactorModuleConvergence extends AbstractNonCacheableEnforcerRule {
sb.append(System.lineSeparator());
}
throw new EnforcerRuleException(
- "Module parents have been found which could not be found in the reactor." + sb.toString());
+ "Module parents have been found which could not be found in the reactor." + sb);
}
}
@@ -100,7 +100,7 @@ public class ReactorModuleConvergence extends AbstractNonCacheableEnforcerRule {
sb.append(mavenProject.getId());
sb.append(System.lineSeparator());
}
- throw new EnforcerRuleException("Reactor contains modules without parents." + sb.toString());
+ throw new EnforcerRuleException("Reactor contains modules without parents." + sb);
}
}
@@ -128,7 +128,7 @@ public class ReactorModuleConvergence extends AbstractNonCacheableEnforcerRule {
}
}
throw new EnforcerRuleException(
- "Reactor modules contains dependencies which do not reference the reactor." + sb.toString());
+ "Reactor modules contains dependencies which do not reference the reactor." + sb);
// CHECKSTYLE_ON: LineLength
}
}
@@ -154,8 +154,7 @@ public class ReactorModuleConvergence extends AbstractNonCacheableEnforcerRule {
sb.append(mavenProject.getParent().getId());
sb.append(System.lineSeparator());
}
- throw new EnforcerRuleException(
- "Reactor modules have parents which contain a wrong version." + sb.toString());
+ throw new EnforcerRuleException("Reactor modules have parents which contain a wrong version." + sb);
}
}
@@ -175,7 +174,7 @@ public class ReactorModuleConvergence extends AbstractNonCacheableEnforcerRule {
sb.append(mavenProject.getId());
sb.append(System.lineSeparator());
}
- throw new EnforcerRuleException("The reactor contains different versions." + sb.toString());
+ throw new EnforcerRuleException("The reactor contains different versions." + sb);
}
}
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireFileChecksum.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireFileChecksum.java
index c2a9379..80003ba 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireFileChecksum.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireFileChecksum.java
@@ -19,9 +19,9 @@
package org.apache.maven.plugins.enforcer;
import java.io.File;
-import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
+import java.nio.file.Files;
import org.apache.commons.codec.digest.DigestUtils;
import org.apache.maven.enforcer.rule.api.EnforcerRuleException;
@@ -124,7 +124,7 @@ public class RequireFileChecksum extends AbstractNonCacheableEnforcerRule {
}
protected String calculateChecksum() throws EnforcerRuleException {
- try (InputStream inputStream = new FileInputStream(this.file)) {
+ try (InputStream inputStream = Files.newInputStream(this.file.toPath())) {
return calculateChecksum(inputStream);
} catch (IOException e) {
throw new EnforcerRuleException("Unable to calculate checksum", e);
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequirePluginVersions.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequirePluginVersions.java
index 2b76b9a..429adce 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequirePluginVersions.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequirePluginVersions.java
@@ -18,7 +18,6 @@
*/
package org.apache.maven.plugins.enforcer;
-import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
@@ -65,7 +64,6 @@ import org.apache.maven.settings.Settings;
import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluationException;
import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
import org.codehaus.plexus.util.StringUtils;
-import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
import org.eclipse.aether.RepositorySystem;
import org.eclipse.aether.resolution.ArtifactRequest;
import org.eclipse.aether.resolution.ArtifactResolutionException;
@@ -233,7 +231,7 @@ public class RequirePluginVersions extends AbstractNonCacheableEnforcerRule {
+ pluginWrapper.getVersion() + " source: " + pluginWrapper.getSource());
}
// now look for the versions that aren't valid and add to a list.
- List<Plugin> failures = new ArrayList<Plugin>();
+ List<Plugin> failures = new ArrayList<>();
for (Plugin plugin : allPlugins) {
if (!hasValidVersionSpecified(helper, plugin, pluginWrappers)) {
@@ -353,7 +351,7 @@ public class RequirePluginVersions extends AbstractNonCacheableEnforcerRule {
if (StringUtils.isNotEmpty(uncheckedPluginsList)) {
// make sure there is a collection to add to.
if (uncheckedPlugins == null) {
- uncheckedPlugins = new HashSet<String>();
+ uncheckedPlugins = new HashSet<>();
} else if (!uncheckedPlugins.isEmpty() && log != null) {
log.warn("The parameter 'unCheckedPlugins' is deprecated. Use 'unCheckedPluginList' instead");
}
@@ -484,10 +482,9 @@ public class RequirePluginVersions extends AbstractNonCacheableEnforcerRule {
* @return the bound plugins
* @throws PluginNotFoundException the plugin not found exception
* @throws LifecycleExecutionException the lifecycle execution exception
- * @throws IllegalAccessException the illegal access exception
*/
protected Set<Plugin> getBoundPlugins(MavenProject project, String thePhases)
- throws PluginNotFoundException, LifecycleExecutionException, IllegalAccessException {
+ throws PluginNotFoundException, LifecycleExecutionException {
Set<Plugin> allPlugins = new HashSet<>();
@@ -813,13 +810,8 @@ public class RequirePluginVersions extends AbstractNonCacheableEnforcerRule {
*
* @param project the project
* @return the all plugin entries wrapped in a PluginWrapper Object
- * @throws ArtifactResolutionException the artifact resolution exception
- * @throws ArtifactNotFoundException the artifact not found exception
- * @throws IOException Signals that an I/O exception has occurred.
- * @throws XmlPullParserException the xml pull parser exception
*/
- protected List<PluginWrapper> getAllPluginEntries(MavenProject project)
- throws ArtifactResolutionException, ArtifactNotFoundException, IOException, XmlPullParserException {
+ protected List<PluginWrapper> getAllPluginEntries(MavenProject project) {
List<PluginWrapper> plugins = new ArrayList<>();
// now find all the plugin entries, either in
// build.plugins or build.pluginManagement.plugins, profiles.plugins and reporting
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequirePrerequisite.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequirePrerequisite.java
index 255bf28..4d950aa 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequirePrerequisite.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequirePrerequisite.java
@@ -104,9 +104,7 @@ public class RequirePrerequisite extends AbstractNonCacheableEnforcerRule {
+ " ) doesn't match the required version: " + mavenVersion);
}
}
- } catch (ExpressionEvaluationException e) {
- throw new EnforcerRuleException(e.getMessage(), e);
- } catch (InvalidVersionSpecificationException e) {
+ } catch (ExpressionEvaluationException | InvalidVersionSpecificationException e) {
throw new EnforcerRuleException(e.getMessage(), e);
}
}
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireSameVersions.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireSameVersions.java
index c3c8a3d..800e5ec 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireSameVersions.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireSameVersions.java
@@ -104,7 +104,7 @@ public class RequireSameVersions extends AbstractNonCacheableEnforcerRule {
if (regEx.matcher(artifact.getDependencyConflictId()).matches()) {
String version = uniqueVersions ? artifact.getVersion() : artifact.getBaseVersion();
if (!versionMembers.containsKey(version)) {
- versionMembers.put(version, new ArrayList<String>());
+ versionMembers.put(version, new ArrayList<>());
}
versionMembers.get(version).add(artifact.getDependencyConflictId() + source);
}
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/ArtifactMatcher.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/ArtifactMatcher.java
index cbc9d64..c3e8653 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/ArtifactMatcher.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/ArtifactMatcher.java
@@ -190,7 +190,7 @@ public final class ArtifactMatcher {
.forEach(includePatterns::add));
}
- private boolean match(Function<Pattern, Boolean> matcher) throws InvalidVersionSpecificationException {
+ private boolean match(Function<Pattern, Boolean> matcher) {
return excludePatterns.stream().anyMatch(matcher::apply)
&& includePatterns.stream().noneMatch(matcher::apply);
}
@@ -201,9 +201,8 @@ public final class ArtifactMatcher {
* @param artifact the artifact to match
* @return {@code true} if artifact matches any {@link #excludePatterns} and none of the {@link #includePatterns}, otherwise
* {@code false}
- * @throws InvalidVersionSpecificationException if any pattern contains an invalid version range
*/
- public boolean match(Artifact artifact) throws InvalidVersionSpecificationException {
+ public boolean match(Artifact artifact) {
return match(p -> p.match(artifact));
}
@@ -213,9 +212,8 @@ public final class ArtifactMatcher {
* @param dependency the dependency to match
* @return {@code true} if dependency matches any {@link #excludePatterns} and none of the {@link #includePatterns},
* otherwise {@code false}
- * @throws InvalidVersionSpecificationException if any pattern contains an invalid version range
*/
- public boolean match(Dependency dependency) throws InvalidVersionSpecificationException {
+ public boolean match(Dependency dependency) {
return match(p -> p.match(dependency));
}
}
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/DependencyVersionMap.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/DependencyVersionMap.java
index 858d390..5f3ce3b 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/DependencyVersionMap.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/DependencyVersionMap.java
@@ -24,7 +24,6 @@ import java.util.List;
import java.util.Map;
import org.apache.commons.lang3.StringUtils;
-import org.apache.maven.enforcer.rule.api.EnforcerRuleException;
import org.apache.maven.plugin.logging.Log;
import org.eclipse.aether.artifact.Artifact;
import org.eclipse.aether.graph.DependencyNode;
@@ -102,8 +101,7 @@ public class DependencyVersionMap implements DependencyVisitor, ParentNodeProvid
return false;
}
- public List<List<DependencyNode>> getConflictedVersionNumbers(List<String> includes, List<String> excludes)
- throws EnforcerRuleException {
+ public List<List<DependencyNode>> getConflictedVersionNumbers(List<String> includes, List<String> excludes) {
List<String> formattedIncludes = formatPatterns(includes);
List<String> formattedExcludes = formatPatterns(excludes);
List<List<DependencyNode>> output = new ArrayList<>();
@@ -124,8 +122,7 @@ public class DependencyVersionMap implements DependencyVisitor, ParentNodeProvid
return output;
}
- private static boolean includeArtifact(DependencyNode node, List<String> includes, List<String> excludes)
- throws EnforcerRuleException {
+ private static boolean includeArtifact(DependencyNode node, List<String> includes, List<String> excludes) {
boolean included = includes == null || includes.isEmpty();
if (!included) {
for (String pattern : includes) {
diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/NormalizeLineSeparatorReader.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/NormalizeLineSeparatorReader.java
index 8904386..50fbe02 100644
--- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/NormalizeLineSeparatorReader.java
+++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/utils/NormalizeLineSeparatorReader.java
@@ -76,7 +76,7 @@ public class NormalizeLineSeparatorReader extends FilterReader {
}
return MatchResult.NO_MATCH;
}
- };
+ }
final LineSeparator lineSeparator;
diff --git a/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/BanDependencyManagementScopeTest.java b/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/BanDependencyManagementScopeTest.java
index 7b08d69..c74fc3e 100644
--- a/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/BanDependencyManagementScopeTest.java
+++ b/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/BanDependencyManagementScopeTest.java
@@ -20,8 +20,6 @@ package org.apache.maven.plugins.enforcer;
import java.util.Collections;
-import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
-import org.apache.maven.enforcer.rule.api.EnforcerRuleException;
import org.apache.maven.model.Dependency;
import org.apache.maven.model.DependencyManagement;
import org.apache.maven.plugin.logging.SystemStreamLog;
@@ -31,7 +29,7 @@ import org.junit.jupiter.api.Test;
class BanDependencyManagementScopeTest {
@Test
- void testGetViolatingDependencies() throws EnforcerRuleException, InvalidVersionSpecificationException {
+ void testGetViolatingDependencies() {
BanDependencyManagementScope rule = new BanDependencyManagementScope();
DependencyManagement depMgmt = new DependencyManagement();
Dependency depWithoutScope = createDependency("myGroup", "artifact1", null);
diff --git a/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/utils/MockEnforcerExpressionEvaluator.java b/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/utils/MockEnforcerExpressionEvaluator.java
index 7aaee0b..893ca70 100644
--- a/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/utils/MockEnforcerExpressionEvaluator.java
+++ b/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/utils/MockEnforcerExpressionEvaluator.java
@@ -20,14 +20,13 @@ package org.apache.maven.plugins.enforcer.utils;
import org.apache.maven.execution.MavenSession;
import org.apache.maven.plugin.MojoExecution;
+import org.apache.maven.plugin.PluginParameterExpressionEvaluator;
import org.apache.maven.plugin.descriptor.MojoDescriptor;
-import org.apache.maven.plugins.enforcer.EnforcerExpressionEvaluator;
-import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluationException;
/**
* The Class MockEnforcerExpressionEvaluator.
*/
-public class MockEnforcerExpressionEvaluator extends EnforcerExpressionEvaluator {
+public class MockEnforcerExpressionEvaluator extends PluginParameterExpressionEvaluator {
/**
* Instantiates a new mock enforcer expression evaluator.
*
@@ -38,7 +37,7 @@ public class MockEnforcerExpressionEvaluator extends EnforcerExpressionEvaluator
}
@Override
- public Object evaluate(String expr) throws ExpressionEvaluationException {
+ public Object evaluate(String expr) {
if (expr != null) {
// just remove the ${ } and return the name as the value
return expr.replaceAll("\\$\\{|}", "");
diff --git a/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/utils/TestArtifactMatcher.java b/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/utils/TestArtifactMatcher.java
index 66ebb98..ffdc9df 100644
--- a/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/utils/TestArtifactMatcher.java
+++ b/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/utils/TestArtifactMatcher.java
@@ -40,7 +40,7 @@ public class TestArtifactMatcher {
Collection<String> ignorePatterns = new ArrayList<>();
@Test
- public void testPatternInvalidInput() throws InvalidVersionSpecificationException {
+ public void testPatternInvalidInput() {
try {
new Pattern(null);
fail("NullPointerException expected.");
@@ -140,8 +140,7 @@ public class TestArtifactMatcher {
final String scope,
final String type,
final String classifier,
- boolean expectedResult)
- throws InvalidVersionSpecificationException {
+ boolean expectedResult) {
assertEquals(
expectedResult,
new ArtifactMatcher.Pattern(pattern)
@@ -155,8 +154,7 @@ public class TestArtifactMatcher {
final String versionRange,
final String scope,
final String type,
- final boolean expectedResult)
- throws InvalidVersionSpecificationException {
+ final boolean expectedResult) {
assertEquals(
expectedResult, matcher.match(createMockArtifact(groupId, artifactId, versionRange, scope, type, "")));
}
diff --git a/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/utils/TestMockEnforcerExpressionEvaluator.java b/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/utils/TestMockEnforcerExpressionEvaluator.java
index fc6c84c..4a9feff 100644
--- a/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/utils/TestMockEnforcerExpressionEvaluator.java
+++ b/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/utils/TestMockEnforcerExpressionEvaluator.java
@@ -19,7 +19,7 @@
package org.apache.maven.plugins.enforcer.utils;
import org.apache.maven.execution.MavenSession;
-import org.apache.maven.plugins.enforcer.EnforcerExpressionEvaluator;
+import org.apache.maven.plugin.PluginParameterExpressionEvaluator;
import org.apache.maven.plugins.enforcer.EnforcerTestUtils;
import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluationException;
import org.junit.jupiter.api.Test;
@@ -39,7 +39,7 @@ public class TestMockEnforcerExpressionEvaluator {
public void testEvaluate() {
MavenSession session = EnforcerTestUtils.getMavenSession();
- EnforcerExpressionEvaluator ev = new MockEnforcerExpressionEvaluator(session);
+ PluginParameterExpressionEvaluator ev = new MockEnforcerExpressionEvaluator(session);
assertMatch(ev, "SNAPSHOT");
assertMatch(ev, "RELEASE");
assertMatch(ev, "SNAPSHOT");
@@ -53,7 +53,7 @@ public class TestMockEnforcerExpressionEvaluator {
* @param ev the ev
* @param exp the exp
*/
- public void assertMatch(EnforcerExpressionEvaluator ev, String exp) {
+ public void assertMatch(PluginParameterExpressionEvaluator ev, String exp) {
// the mock enforcer should return the name of the expression as the value.
try {
assertEquals(exp, ev.evaluate("${" + exp + "}"));
diff --git a/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/DisplayInfoMojo.java b/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/DisplayInfoMojo.java
index 0545552..5e77260 100644
--- a/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/DisplayInfoMojo.java
+++ b/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/DisplayInfoMojo.java
@@ -20,16 +20,8 @@ package org.apache.maven.plugins.enforcer;
import org.apache.maven.execution.MavenSession;
import org.apache.maven.plugin.AbstractMojo;
-import org.apache.maven.plugin.MojoExecution;
-import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugins.annotations.Mojo;
import org.apache.maven.plugins.annotations.Parameter;
-import org.apache.maven.project.MavenProject;
-import org.codehaus.plexus.PlexusConstants;
-import org.codehaus.plexus.PlexusContainer;
-import org.codehaus.plexus.context.Context;
-import org.codehaus.plexus.context.ContextException;
-import org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable;
/**
* This goal displays the current platform information.
@@ -37,13 +29,7 @@ import org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable;
* @author <a href="mailto:brianf@apache.org">Brian Fox</a>
*/
@Mojo(name = "display-info", threadSafe = true)
-public class DisplayInfoMojo extends AbstractMojo implements Contextualizable {
-
- /**
- * MojoExecution needed by the ExpressionEvaluator
- */
- @Parameter(defaultValue = "${mojoExecution}", readonly = true, required = true)
- protected MojoExecution mojoExecution;
+public class DisplayInfoMojo extends AbstractMojo {
/**
* The MavenSession
@@ -51,24 +37,10 @@ public class DisplayInfoMojo extends AbstractMojo implements Contextualizable {
@Parameter(defaultValue = "${session}", readonly = true, required = true)
protected MavenSession session;
- /**
- * POM
- */
- @Parameter(defaultValue = "${project}", readonly = true, required = true)
- protected MavenProject project;
-
- // set by the contextualize method. Only way to get the
- // plugin's container in 2.0.x
- protected PlexusContainer container;
-
- public void contextualize(Context context) throws ContextException {
- container = (PlexusContainer) context.get(PlexusConstants.PLEXUS_KEY);
- }
-
/**
* Entry point to the mojo
*/
- public void execute() throws MojoExecutionException {
+ public void execute() {
String mavenVersion = session.getSystemProperties().getProperty("maven.version");
String javaVersion = System.getProperty("java.version");
String javaVendor = System.getProperty("java.vendor");
diff --git a/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/EnforceMojo.java b/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/EnforceMojo.java
index a62738a..361e970 100644
--- a/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/EnforceMojo.java
+++ b/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/EnforceMojo.java
@@ -31,17 +31,15 @@ import org.apache.maven.execution.MavenSession;
import org.apache.maven.plugin.AbstractMojo;
import org.apache.maven.plugin.MojoExecution;
import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugin.PluginParameterExpressionEvaluator;
import org.apache.maven.plugin.logging.Log;
+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.codehaus.plexus.PlexusConstants;
import org.codehaus.plexus.PlexusContainer;
-import org.codehaus.plexus.context.Context;
-import org.codehaus.plexus.context.ContextException;
-import org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable;
/**
* This goal executes the defined enforcer-rules once per module.
@@ -55,7 +53,7 @@ import org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable;
requiresDependencyCollection = ResolutionScope.TEST,
threadSafe = true)
// CHECKSTYLE_ON: LineLength
-public class EnforceMojo extends AbstractMojo implements Contextualizable {
+public class EnforceMojo extends AbstractMojo {
/**
* This is a static variable used to persist the cached results across plugin invocations.
*/
@@ -124,15 +122,9 @@ public class EnforceMojo extends AbstractMojo implements Contextualizable {
@Parameter(property = "enforcer.ignoreCache", defaultValue = "false")
protected boolean ignoreCache = false;
- // set by the contextualize method. Only way to get the
- // plugin's container in 2.0.x
+ @Component
protected PlexusContainer container;
- @Override
- public void contextualize(Context context) throws ContextException {
- container = (PlexusContainer) context.get(PlexusConstants.PLEXUS_KEY);
- }
-
private boolean havingRules() {
return rules != null && rules.length > 0;
}
@@ -141,7 +133,7 @@ public class EnforceMojo extends AbstractMojo implements Contextualizable {
public void execute() throws MojoExecutionException {
Log log = this.getLog();
- EnforcerExpressionEvaluator evaluator = new EnforcerExpressionEvaluator(session, mojoExecution);
+ PluginParameterExpressionEvaluator evaluator = new PluginParameterExpressionEvaluator(session, mojoExecution);
if (commandLineRules != null && commandLineRules.length > 0) {
this.rules = createRulesFromCommandLineOptions();
}