[java-mvn-enforcer] branch main updated: JMVN-83 Warning about future enforcer API changes
Codeberg
noreply at shibboleth.net
Thu Sep 24 18:27:08 UTC 2026
This is an automated email from the git hooks/post-receive script.
codeberg pushed a commit to branch main
in repository java-mvn-enforcer.
View the commit online:
https://codeberg.org/Shibboleth/java-mvn-enforcer/commit/efd27e669c4d92e22fb91d4becde82c8d71ecdcc
The following commit(s) were added to refs/heads/main by this push:
new efd27e6 JMVN-83 Warning about future enforcer API changes
efd27e6 is described below
commit efd27e669c4d92e22fb91d4becde82c8d71ecdcc
Author: Rod Widdowson <rdw at steadingsoftware.com>
AuthorDate: Thu Sep 24 19:21:01 2026 +0100
JMVN-83 Warning about future enforcer API changes
https://shibboleth.atlassian.net/browse/JMVN-83
Initial port to new API.
---
.settings/org.eclipse.jdt.core.prefs | 113 ---------------------
pom.xml | 49 ++++++++-
.../mvn/enforcer/impl/BaseSigChecker.java | 2 +-
.../mvn/enforcer/impl/DependencyChecker.java | 2 +-
.../shibboleth/mvn/enforcer/impl/GPGKeyRing.java | 5 +-
.../shibboleth/mvn/enforcer/impl/JarEnforcer.java | 106 +++++++++----------
.../shibboleth/mvn/enforcer/impl/M2SigChecker.java | 2 +-
...{EnforcerLogger.java => MvnEnforcerLogger.java} | 38 +++----
.../shibboleth/mvn/enforcer/impl/SigChecker.java | 2 +-
9 files changed, 116 insertions(+), 203 deletions(-)
diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 2fb8ec2..0000000
--- a/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,113 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.builder.annotationPath.allLocations=disabled
-org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
-org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
-org.eclipse.jdt.core.compiler.annotation.nonnull=javax.annotation.Nonnull
-org.eclipse.jdt.core.compiler.annotation.nonnull.secondary=org.springframework.lang.NonNull
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.springframework.lang.NonNullApi
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullable=javax.annotation.Nullable
-org.eclipse.jdt.core.compiler.annotation.nullable.secondary=org.springframework.lang.Nullable
-org.eclipse.jdt.core.compiler.annotation.nullanalysis=enabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=17
-org.eclipse.jdt.core.compiler.compliance=17
-org.eclipse.jdt.core.compiler.problem.APILeak=warning
-org.eclipse.jdt.core.compiler.problem.annotatedTypeArgumentToUnannotated=info
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
-org.eclipse.jdt.core.compiler.problem.deadCode=warning
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
-org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=ignore
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=enabled
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
-org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning
-org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
-org.eclipse.jdt.core.compiler.problem.nullReference=error
-org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
-org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=error
-org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.suppressWarningsNotFullyAnalysed=info
-org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=enabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.terminalDeprecation=warning
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentType=warning
-org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentTypeStrict=disabled
-org.eclipse.jdt.core.compiler.problem.unlikelyEqualsArgumentType=info
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unstableAutoModuleName=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.release=enabled
-org.eclipse.jdt.core.compiler.source=17
diff --git a/pom.xml b/pom.xml
index 1b74bcb..6f41b59 100644
--- a/pom.xml
+++ b/pom.xml
@@ -9,9 +9,8 @@
<version>2.0.1</version>
</parent>
- <groupId>net.shibboleth.maven.enforcer.rules</groupId>
<artifactId>maven-dist-enforcer</artifactId>
- <version>4.0.1-SNAPSHOT</version>
+ <version>4.1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Shibboleth Maven Enforcer</name>
@@ -21,6 +20,13 @@
<automatic.module.name>net.shibboleth.maven.enforcer.rules.dist</automatic.module.name>
<current-dist-enforcer-data.version>2.0.3</current-dist-enforcer-data.version>
<current-dist-enforcer.version>4.0.0</current-dist-enforcer.version>
+ <!-- https://maven.apache.org/enforcer/enforcer-api/writing-a-custom-rule.html -->
+ <enforcer.api.version>3.6.3</enforcer.api.version>
+ <resolver.api.version>1.9.22</resolver.api.version>
+ <mavenVersion>3.9.15</mavenVersion>
+ <maven.compiler.source>17</maven.compiler.source>
+ <maven.compiler.target>17</maven.compiler.target>
+ <maven.compiler.release>17</maven.compiler.release>
</properties>
<dependencies>
@@ -71,16 +77,51 @@
</dependency>
<!-- Provided
(because we are inside) maven
+ https://maven.apache.org/enforcer/enforcer-api/writing-a-custom-rule.html
-->
<dependency>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-enforcer-plugin</artifactId>
+ <groupId>org.apache.maven.enforcer</groupId>
+ <artifactId>enforcer-api</artifactId>
+ <version>${enforcer.api.version}</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <!-- required in all cases -->
+ <groupId>org.apache.maven.resolver</groupId>
+ <artifactId>maven-resolver-api</artifactId>
+ <version>${resolver.api.version}</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven</groupId>
+ <artifactId>maven-core</artifactId>
+ <version>${mavenVersion}</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.inject</groupId>
+ <artifactId>javax.inject</artifactId>
+ <version>1</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<plugins>
+ <plugin>
+ <!-- generate index of project components
+ https://maven.apache.org/enforcer/enforcer-api/writing-a-custom-rule.html -->
+ <groupId>org.eclipse.sisu</groupId>
+ <artifactId>sisu-maven-plugin</artifactId>
+ <version>1.0.0</version>
+ <executions>
+ <execution>
+ <goals>
+ <goal>main-index</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
diff --git a/src/main/java/net/shibboleth/mvn/enforcer/impl/BaseSigChecker.java b/src/main/java/net/shibboleth/mvn/enforcer/impl/BaseSigChecker.java
index 187732a..9c5480d 100644
--- a/src/main/java/net/shibboleth/mvn/enforcer/impl/BaseSigChecker.java
+++ b/src/main/java/net/shibboleth/mvn/enforcer/impl/BaseSigChecker.java
@@ -45,7 +45,7 @@ import net.shibboleth.shared.logic.Constraint;
public class BaseSigChecker {
/** Our log. */
- private final Logger log = EnforcerLogger.getLogger(BaseSigChecker.class);
+ private final Logger log = MvnEnforcerLogger.getLogger(BaseSigChecker.class);
/** where we are writing to (target/dependencyReport.txt).*/
private final PrintWriter report;
diff --git a/src/main/java/net/shibboleth/mvn/enforcer/impl/DependencyChecker.java b/src/main/java/net/shibboleth/mvn/enforcer/impl/DependencyChecker.java
index b020343..93e1c09 100644
--- a/src/main/java/net/shibboleth/mvn/enforcer/impl/DependencyChecker.java
+++ b/src/main/java/net/shibboleth/mvn/enforcer/impl/DependencyChecker.java
@@ -57,7 +57,7 @@ import net.shibboleth.shared.logic.Constraint;
public class DependencyChecker {
/** Our log. */
- private final Logger log = EnforcerLogger.getLogger(DependencyChecker.class);
+ private final Logger log = MvnEnforcerLogger.getLogger(DependencyChecker.class);
/** where we are writing to (target/dependencyReport.txt).*/
private final PrintWriter report;
diff --git a/src/main/java/net/shibboleth/mvn/enforcer/impl/GPGKeyRing.java b/src/main/java/net/shibboleth/mvn/enforcer/impl/GPGKeyRing.java
index ebda222..b83e07c 100644
--- a/src/main/java/net/shibboleth/mvn/enforcer/impl/GPGKeyRing.java
+++ b/src/main/java/net/shibboleth/mvn/enforcer/impl/GPGKeyRing.java
@@ -56,11 +56,8 @@ import org.slf4j.Logger;
@NotThreadSafe public final class GPGKeyRing {
/** logger. */
- @Nonnull private final Logger log = EnforcerLogger.getLogger(GPGKeyRing.class);
+ @Nonnull private final Logger log = MvnEnforcerLogger.getLogger(GPGKeyRing.class);
- /** The key store backup. */
- //@Nullable private Path backup;
-
/** KeyRing. */
@Nonnull private final PGPPublicKeyRingCollection keyRings;
diff --git a/src/main/java/net/shibboleth/mvn/enforcer/impl/JarEnforcer.java b/src/main/java/net/shibboleth/mvn/enforcer/impl/JarEnforcer.java
index efc570a..9351abe 100644
--- a/src/main/java/net/shibboleth/mvn/enforcer/impl/JarEnforcer.java
+++ b/src/main/java/net/shibboleth/mvn/enforcer/impl/JarEnforcer.java
@@ -35,31 +35,36 @@ import java.util.List;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
+import javax.inject.Inject;
+import javax.inject.Named;
import org.apache.commons.compress.archivers.tar.TarArchiveInputStream;
import org.apache.commons.compress.archivers.zip.ZipArchiveInputStream;
import org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream;
-import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.resolver.ArtifactResolutionRequest;
-import org.apache.maven.artifact.resolver.ArtifactResolutionResult;
-import org.apache.maven.artifact.resolver.ArtifactResolver;
-import org.apache.maven.enforcer.rule.api.EnforcerRule;
+import org.apache.maven.enforcer.rule.api.AbstractEnforcerRule;
import org.apache.maven.enforcer.rule.api.EnforcerRuleException;
-import org.apache.maven.enforcer.rule.api.EnforcerRuleHelper;
import org.apache.maven.execution.MavenSession;
import org.apache.maven.project.MavenProject;
-import org.apache.maven.repository.RepositorySystem;
+import org.eclipse.aether.RepositorySystem;
+import org.eclipse.aether.artifact.Artifact;
+import org.eclipse.aether.artifact.DefaultArtifact;
+import org.eclipse.aether.resolution.ArtifactRequest;
+import org.eclipse.aether.resolution.ArtifactResolutionException;
+import org.eclipse.aether.resolution.ArtifactResult;
import org.slf4j.Logger;
import net.shibboleth.mvn.enforcer.impl.GPGKeyRing.Signature;
+import net.shibboleth.shared.logic.Constraint;
import net.shibboleth.shared.primitive.StringSupport;
-import net.shibboleth.shared.xml.impl.BasicParserPool;
import net.shibboleth.shared.xml.XMLConstants;
+import net.shibboleth.shared.xml.impl.BasicParserPool;
-/** {@link EnforcerRule} implementation to check various
- * things of interest about our distributions.
+/**
+ * The implementation of {@link AbstractEnforcerRule} that
+ * does the work.
*/
-public class JarEnforcer implements EnforcerRule, MavenLoader{
+ at Named("jarEnforcer")
+public class JarEnforcer extends AbstractEnforcerRule implements MavenLoader{
/*
* Parameters added to the pom.
@@ -122,23 +127,28 @@ public class JarEnforcer implements EnforcerRule, MavenLoader{
/** The list of classifiers we know about*/
@Nonnull private String classifiers = "";
- /** Our artifact resolver. */
- private ArtifactResolver artifactResolver;
-
/** Our Maven Session . */
- private MavenSession session;
+ @Nonnull private final MavenSession session;
- /** Our Maven Project. */
- private MavenProject project;
+ /** Our Maven project . */
+ @Nonnull private final MavenProject project;
- /** Our Maven log. */
+ /** The thing used to do resolution. */
+ @Nonnull private final RepositorySystem repositorySystem;
+
+ /** Our logger. Setup at the start of {@link #execute()}. */
private Logger log;
- /** The {@link RepositorySystem} we will use. */
- private RepositorySystem repositorySystem;
+ /** {@literal ${basedir}}\target}. */
+ private final Path targetDir;
- /** {@literal ${basedir}\target} */
- private Path targetDir;
+ @Inject
+ public JarEnforcer(MavenProject theProject, MavenSession theSession, RepositorySystem theRepoSystem) {
+ project = Constraint.isNotNull(theProject, "project must not be null");
+ session = Constraint.isNotNull(theSession, "session must not be null");
+ targetDir = session.getCurrentProject().getBasedir().toPath();
+ repositorySystem = Constraint.isNotNull(theRepoSystem, "repository System must not be null");
+ }
/**
* Get the path for the m2 Sig check - as configured or the default
@@ -177,9 +187,9 @@ public class JarEnforcer implements EnforcerRule, MavenLoader{
* {@inheritDoc}
*/
@Override
- public void execute(@Nonnull final EnforcerRuleHelper helper) throws EnforcerRuleException {
- EnforcerLogger.setMavenLogger(helper.getLog());
- log = EnforcerLogger.getLogger(JarEnforcer.class);
+ public void execute() throws EnforcerRuleException {
+ MvnEnforcerLogger.setMavenLogger(getLog());
+ log = MvnEnforcerLogger.getLogger(JarEnforcer.class);
final List<Path> tgzPaths = new ArrayList<>();
for (final String name: StringSupport.stringToList(tgzFiles, XMLConstants.LIST_DELIMITERS)) {
@@ -203,14 +213,6 @@ public class JarEnforcer implements EnforcerRule, MavenLoader{
throw new EnforcerRuleException("No <tgzFiles/> or <zipFiles/> provided that exist");
}
try {
- repositorySystem = helper.getComponent(org.apache.maven.repository.RepositorySystem.class);
- artifactResolver = helper.getComponent(ArtifactResolver.class);
- session = (MavenSession) helper.evaluate( "${session}" );
- project = (MavenProject) helper.evaluate( "${project}" );
- targetDir = Path.of(helper.evaluate( "${basedir}" ).toString()).resolve("target");
- if (repositorySystem == null || artifactResolver == null || session == null || project == null) {
- throw new EnforcerRuleException("Could not set up artifact environment");
- }
final Path pom = Path.of(parentPomDir).resolve("pom.xml");
if (Files.notExists(pom)) {
throw new EnforcerRuleException("Pom File " + parentPomDir + "/pom.xml does not exist");
@@ -220,7 +222,7 @@ public class JarEnforcer implements EnforcerRule, MavenLoader{
try (final ProjectPomContext pomContext =
new ProjectPomContext(this,
- EnforcerLogger.getLogger(ProjectPomContext.class),
+ MvnEnforcerLogger.getLogger(ProjectPomContext.class),
pool,
getGPGDataClassLoader(),
StringSupport.stringToList(versionExtensions, XMLConstants.LIST_DELIMITERS),
@@ -447,15 +449,6 @@ public class JarEnforcer implements EnforcerRule, MavenLoader{
return null;
}
- @Override
- public boolean isCacheable() {
- return false;
- }
-
- @Override
- public boolean isResultValid(@Nonnull final EnforcerRule a) {
- return false;
- }
/** Helper function to download an artitfact.
* @param groupId Group Id
@@ -467,22 +460,17 @@ public class JarEnforcer implements EnforcerRule, MavenLoader{
* @throws Exception on various issues from the (maven) resolver
*/
@Nullable public File downloadArtifact(final String groupId, final String artifactId, final String version, final String classifier, final String type) throws Exception {
- final Artifact mavenArtifact = repositorySystem.createArtifactWithClassifier(groupId,artifactId, version, type, classifier);
-
- if (mavenArtifact == null) {
- log.error("Could not create {}:{}:{}:{}", groupId, artifactId, version, type);
- } else {
- final ArtifactResolutionRequest request = new ArtifactResolutionRequest()
- .setArtifact( mavenArtifact )
- .setResolveRoot( true )
- .setLocalRepository( session.getLocalRepository())
- .setRemoteRepositories( project.getRemoteArtifactRepositories());
- final ArtifactResolutionResult result = artifactResolver.resolve(request);
- if (result.isSuccess()) {
- log.debug("Resolved OK {}:{}:{}:{}", groupId, artifactId, version, type);
- return mavenArtifact.getFile();
- }
- log.info("Could not resolve " + groupId +":" + artifactId + ":" + version + ":" + type);
+
+ final Artifact artifact = new DefaultArtifact(groupId, artifactId, classifier, type, version);
+ final ArtifactRequest req = new ArtifactRequest(artifact, project.getRemoteProjectRepositories(), null);
+ log.debug("Resolving ", artifact);
+ try {
+ final ArtifactResult res = repositorySystem.resolveArtifact(session.getRepositorySession(), req);
+ final File file = res.getArtifact().getFile();
+ log.debug("Resolved to ", file.getAbsolutePath());
+ return file;
+ } catch (final ArtifactResolutionException e) {
+ log.error("Resolution failed", e);
}
return null;
}
diff --git a/src/main/java/net/shibboleth/mvn/enforcer/impl/M2SigChecker.java b/src/main/java/net/shibboleth/mvn/enforcer/impl/M2SigChecker.java
index f159f9f..4b87d35 100644
--- a/src/main/java/net/shibboleth/mvn/enforcer/impl/M2SigChecker.java
+++ b/src/main/java/net/shibboleth/mvn/enforcer/impl/M2SigChecker.java
@@ -40,7 +40,7 @@ import net.shibboleth.mvn.enforcer.impl.ParsedPom.DependencyPomArtifact;
public class M2SigChecker extends BaseSigChecker {
/** Our log. */
- private final Logger log = EnforcerLogger.getLogger(M2SigChecker.class);
+ private final Logger log = MvnEnforcerLogger.getLogger(M2SigChecker.class);
/** How many things have failed? */
private int failCount;
diff --git a/src/main/java/net/shibboleth/mvn/enforcer/impl/EnforcerLogger.java b/src/main/java/net/shibboleth/mvn/enforcer/impl/MvnEnforcerLogger.java
similarity index 92%
rename from src/main/java/net/shibboleth/mvn/enforcer/impl/EnforcerLogger.java
rename to src/main/java/net/shibboleth/mvn/enforcer/impl/MvnEnforcerLogger.java
index cd3a23c..528f4de 100644
--- a/src/main/java/net/shibboleth/mvn/enforcer/impl/EnforcerLogger.java
+++ b/src/main/java/net/shibboleth/mvn/enforcer/impl/MvnEnforcerLogger.java
@@ -20,23 +20,23 @@
import java.util.regex.Pattern;
import javax.annotation.Nonnull;
-import org.slf4j.LoggerFactory;
-
-import org.apache.maven.plugin.logging.Log;
+import org.apache.maven.enforcer.rule.api.EnforcerLogger;
import org.slf4j.Logger;
import org.slf4j.Marker;
+import net.shibboleth.shared.primitive.LoggerFactory;
+
/** Shim between a maven logger and an sl4j logger.
*
*/
-public final class EnforcerLogger implements Logger {
+public final class MvnEnforcerLogger implements Logger {
/** If non null we are inside maven and have to shim out. */
private static Logger encapsulatedLogger;
/** The Maven logger. */
- private final Log encapsulated;
+ private final EnforcerLogger encapsulated;
/** Pattern to change {{} to %s.*/
private final Pattern pat = Pattern.compile("\\{\\}");
@@ -45,7 +45,7 @@ public final class EnforcerLogger implements Logger {
* Constructor.
* @param what - logger to encapsulate.
*/
- private EnforcerLogger(final Log what) {
+ private MvnEnforcerLogger(final EnforcerLogger what) {
encapsulated = what;
}
@@ -109,7 +109,7 @@ public final class EnforcerLogger implements Logger {
/** {@inheritDoc} */
public void trace(final String msg, final Throwable t) {
- encapsulated.debug(msg,t);
+ encapsulated.debug(msg + t.toString());
}
/** {@inheritDoc} */
@@ -139,7 +139,7 @@ public final class EnforcerLogger implements Logger {
/** {@inheritDoc} */
public void trace(final Marker marker, final String msg, final Throwable t) {
- encapsulated.debug(msg,t);
+ encapsulated.debug(msg + t.toString());
}
/** {@inheritDoc} */
@@ -169,7 +169,7 @@ public final class EnforcerLogger implements Logger {
/** {@inheritDoc} */
public void debug(final String msg, final Throwable t) {
- encapsulated.debug(msg,t);
+ encapsulated.debug(msg + t.toString());
}
/** {@inheritDoc} */
@@ -199,7 +199,7 @@ public final class EnforcerLogger implements Logger {
/** {@inheritDoc} */
public void debug(final Marker marker, final String msg, final Throwable t) {
- encapsulated.debug(msg,t);
+ encapsulated.debug(msg + t.toString());
}
/** {@inheritDoc} */
@@ -229,7 +229,7 @@ public final class EnforcerLogger implements Logger {
/** {@inheritDoc} */
public void info(final String msg, final Throwable t) {
- encapsulated.info(msg,t);
+ encapsulated.info(msg + t.toString());
}
/** {@inheritDoc} */
@@ -259,7 +259,7 @@ public final class EnforcerLogger implements Logger {
/** {@inheritDoc} */
public void info(final Marker marker, final String msg, final Throwable t) {
- encapsulated.info(msg, t);
+ encapsulated.info(msg + t.toString());
}
/** {@inheritDoc} */
@@ -289,7 +289,7 @@ public final class EnforcerLogger implements Logger {
/** {@inheritDoc} */
public void warn(final String msg, final Throwable t) {
- encapsulated.warn(msg, t);
+ encapsulated.warn(msg + t.toString());
}
/** {@inheritDoc} */
@@ -319,7 +319,7 @@ public final class EnforcerLogger implements Logger {
/** {@inheritDoc} */
public void warn(final Marker marker, final String msg, final Throwable t) {
- encapsulated.warn(msg, t);
+ encapsulated.warn(msg + t.toString());
}
/** {@inheritDoc} */
@@ -349,7 +349,7 @@ public final class EnforcerLogger implements Logger {
/** {@inheritDoc} */
public void error(final String msg, final Throwable t) {
- encapsulated.error(msg, t);
+ encapsulated.error(msg + t.toString());
}
/** {@inheritDoc} */
@@ -379,21 +379,21 @@ public final class EnforcerLogger implements Logger {
/** {@inheritDoc} */
public void error(final Marker marker, final String msg, final Throwable t) {
- encapsulated.error(msg, t);
+ encapsulated.error(msg + t.toString());
}
/** setup the (one off) maven bridge.
* @param mavenLogger What we are workingto.
*/
- public static void setMavenLogger(final Log mavenLogger) {
- encapsulatedLogger = new EnforcerLogger(mavenLogger);
+ public static void setMavenLogger(final EnforcerLogger mavenLogger) {
+ encapsulatedLogger = new MvnEnforcerLogger(mavenLogger);
}
/** Replacement for {@link LoggerFactory#getLogger(Class)}.
* @param clazz what to log
* @return a logger
*/
- @Nonnull public static Logger getLogger(final Class<?> clazz) {
+ @Nonnull public static Logger getLogger(@Nonnull final Class<?> clazz) {
if (encapsulatedLogger != null) {
return encapsulatedLogger;
}
diff --git a/src/main/java/net/shibboleth/mvn/enforcer/impl/SigChecker.java b/src/main/java/net/shibboleth/mvn/enforcer/impl/SigChecker.java
index 297015a..5776abb 100644
--- a/src/main/java/net/shibboleth/mvn/enforcer/impl/SigChecker.java
+++ b/src/main/java/net/shibboleth/mvn/enforcer/impl/SigChecker.java
@@ -35,7 +35,7 @@ import org.slf4j.Logger;
public class SigChecker extends BaseSigChecker {
/** Our log. */
- private final Logger log = EnforcerLogger.getLogger(SigChecker.class);
+ private final Logger log = MvnEnforcerLogger.getLogger(SigChecker.class);
/** Constructor.
* @param project The project
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the commits
mailing list