You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by mi...@apache.org on 2022/05/21 20:41:45 UTC

[maven-scm] 04/08: Cleanup logging

This is an automated email from the ASF dual-hosted git repository.

michaelo pushed a commit to branch scm-979-deplexus
in repository https://gitbox.apache.org/repos/asf/maven-scm.git

commit 135507cec8c0dddd9e539522ef445a53d69c0b39
Author: Tamas Cservenak <ta...@cservenak.net>
AuthorDate: Fri May 20 13:03:58 2022 +0200

    Cleanup logging
---
 .../org/apache/maven/scm/command/AbstractCommand.java    |  3 ++-
 .../java/org/apache/maven/scm/log/Slf4jScmLogger.java    |  7 +------
 .../java/org/apache/maven/scm/util/AbstractConsumer.java |  2 +-
 .../org/apache/maven/scm/client/cli/MavenScmCli.java     | 16 ++++++++--------
 .../scm/provider/git/command/diff/GitDiffConsumer.java   | 14 ++++++--------
 .../git/gitexe/command/AbstractFileCheckingConsumer.java | 10 ++++------
 .../git/gitexe/command/diff/GitDiffRawConsumer.java      | 10 ++++------
 .../gitexe/command/remoteinfo/GitRemoteInfoConsumer.java | 10 ++++------
 .../git/gitexe/command/remove/GitRemoveConsumer.java     | 10 ++++------
 .../git/gitexe/command/status/GitStatusConsumer.java     | 10 ++++------
 .../maven-scm-provider-jgit/pom.xml                      | 10 ++++++++++
 .../scm/provider/svn/command/diff/SvnDiffConsumer.java   | 14 ++++++--------
 .../svn/svnexe/command/AbstractFileCheckingConsumer.java | 10 ++++------
 .../provider/svn/svnexe/command/add/SvnAddConsumer.java  | 10 ++++------
 .../provider/svn/svnexe/command/info/SvnInfoCommand.java |  2 +-
 .../svn/svnexe/command/info/SvnInfoConsumer.java         | 12 +++++++++---
 .../provider/svn/svnexe/command/list/SvnListCommand.java |  2 +-
 .../svn/svnexe/command/list/SvnListConsumer.java         | 12 +++++++++---
 .../svn/svnexe/command/mkdir/SvnMkdirConsumer.java       |  8 +++-----
 .../svn/svnexe/command/remove/SvnRemoveConsumer.java     | 10 ++++------
 .../svn/svnexe/command/status/SvnStatusConsumer.java     | 13 +++++--------
 pom.xml                                                  |  7 ++++++-
 22 files changed, 100 insertions(+), 102 deletions(-)

diff --git a/maven-scm-api/src/main/java/org/apache/maven/scm/command/AbstractCommand.java b/maven-scm-api/src/main/java/org/apache/maven/scm/command/AbstractCommand.java
index 81785297e..4673e0df9 100644
--- a/maven-scm-api/src/main/java/org/apache/maven/scm/command/AbstractCommand.java
+++ b/maven-scm-api/src/main/java/org/apache/maven/scm/command/AbstractCommand.java
@@ -24,6 +24,7 @@ import org.apache.maven.scm.ScmException;
 import org.apache.maven.scm.ScmFileSet;
 import org.apache.maven.scm.ScmResult;
 import org.apache.maven.scm.log.ScmLogger;
+import org.apache.maven.scm.log.Slf4jScmLogger;
 import org.apache.maven.scm.provider.ScmProviderRepository;
 
 /**
@@ -34,7 +35,7 @@ import org.apache.maven.scm.provider.ScmProviderRepository;
 public abstract class AbstractCommand
     implements Command
 {
-    private ScmLogger logger;
+    private ScmLogger logger = new Slf4jScmLogger( getClass() );
 
     protected abstract ScmResult executeCommand( ScmProviderRepository repository, ScmFileSet fileSet,
                                                  CommandParameters parameters )
diff --git a/maven-scm-api/src/main/java/org/apache/maven/scm/log/Slf4jScmLogger.java b/maven-scm-api/src/main/java/org/apache/maven/scm/log/Slf4jScmLogger.java
index 268acff98..c978f9190 100644
--- a/maven-scm-api/src/main/java/org/apache/maven/scm/log/Slf4jScmLogger.java
+++ b/maven-scm-api/src/main/java/org/apache/maven/scm/log/Slf4jScmLogger.java
@@ -30,15 +30,10 @@ import static java.util.Objects.requireNonNull;
  * @since TBD
  */
 public class Slf4jScmLogger
-    implements ScmLogger
+        implements ScmLogger
 {
     private final Logger logger;
 
-    public Slf4jScmLogger()
-    {
-        this( Slf4jScmLogger.class );
-    }
-
     public Slf4jScmLogger( final Class<?> owner )
     {
         this( LoggerFactory.getLogger( requireNonNull( owner ) ) );
diff --git a/maven-scm-api/src/main/java/org/apache/maven/scm/util/AbstractConsumer.java b/maven-scm-api/src/main/java/org/apache/maven/scm/util/AbstractConsumer.java
index 20e30f5ca..144ff5b87 100644
--- a/maven-scm-api/src/main/java/org/apache/maven/scm/util/AbstractConsumer.java
+++ b/maven-scm-api/src/main/java/org/apache/maven/scm/util/AbstractConsumer.java
@@ -38,7 +38,7 @@ import static java.util.Objects.requireNonNull;
 public abstract class AbstractConsumer
     implements StreamConsumer
 {
-    private final ScmLogger logger;
+    protected final ScmLogger logger;
 
     /**
      * AbstractConsumer constructor.
diff --git a/maven-scm-client/src/main/java/org/apache/maven/scm/client/cli/MavenScmCli.java b/maven-scm-client/src/main/java/org/apache/maven/scm/client/cli/MavenScmCli.java
index 17b5f7f7b..c27911fcd 100644
--- a/maven-scm-client/src/main/java/org/apache/maven/scm/client/cli/MavenScmCli.java
+++ b/maven-scm-client/src/main/java/org/apache/maven/scm/client/cli/MavenScmCli.java
@@ -69,14 +69,12 @@ public class MavenScmCli
         scmManager = plexus.lookup( ScmManager.class );
     }
 
-    /**
-     * Method that creates Plexus container: we must create a Plexus container, as we must pick up any possible
-     * Plexus XML component definition (not used since Maven 3.8.1, but present in older Mavens).
-     */
-    private PlexusContainer createPlexusContainer() {
+    private PlexusContainer createPlexusContainer()
+    {
         final Context context = new DefaultContext();
         String path = System.getProperty( "basedir" );
-        if (path == null) {
+        if ( path == null )
+        {
             path = new File( "" ).getAbsolutePath();
         }
         context.put( "basedir", path );
@@ -86,10 +84,12 @@ public class MavenScmCli
                 .setContext( context.getContextData() )
                 .setClassPathScanning( PlexusConstants.SCANNING_CACHE )
                 .setAutoWiring( true );
-        try {
+        try
+        {
             return new DefaultPlexusContainer( plexusConfiguration );
         }
-        catch ( PlexusContainerException e ) {
+        catch ( PlexusContainerException e )
+        {
             throw new IllegalStateException( "Could not create Plexus container", e );
         }
     }
diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/main/java/org/apache/maven/scm/provider/git/command/diff/GitDiffConsumer.java b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/main/java/org/apache/maven/scm/provider/git/command/diff/GitDiffConsumer.java
index 67f7f52a1..e7ba3361e 100644
--- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/main/java/org/apache/maven/scm/provider/git/command/diff/GitDiffConsumer.java
+++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-git-commons/src/main/java/org/apache/maven/scm/provider/git/command/diff/GitDiffConsumer.java
@@ -22,7 +22,7 @@ package org.apache.maven.scm.provider.git.command.diff;
 import org.apache.maven.scm.ScmFile;
 import org.apache.maven.scm.ScmFileStatus;
 import org.apache.maven.scm.log.ScmLogger;
-import org.codehaus.plexus.util.cli.StreamConsumer;
+import org.apache.maven.scm.util.AbstractConsumer;
 
 import java.io.File;
 import java.util.ArrayList;
@@ -39,7 +39,7 @@ import java.util.regex.Pattern;
  *
  */
 public class GitDiffConsumer
-    implements StreamConsumer
+        extends AbstractConsumer
 {
     // diff --git a/readme.txt b/readme.txt
     // index fea1611..9e131cf 100644
@@ -78,17 +78,15 @@ public class GitDiffConsumer
 
     private static final String DELETED_FILE_MODE_TOKEN = "deleted file mode ";
 
-    private ScmLogger logger;
-
     private String currentFile;
 
     private StringBuilder currentDifference;
 
-    private List<ScmFile> changedFiles = new ArrayList<ScmFile>();
+    private final List<ScmFile> changedFiles = new ArrayList<>();
 
-    private Map<String, CharSequence> differences = new HashMap<String, CharSequence>();
+    private final Map<String, CharSequence> differences = new HashMap<>();
 
-    private StringBuilder patch = new StringBuilder();
+    private final StringBuilder patch = new StringBuilder();
 
     // ----------------------------------------------------------------------
     //
@@ -96,7 +94,7 @@ public class GitDiffConsumer
 
     public GitDiffConsumer( ScmLogger logger, File workingDirectory )
     {
-        this.logger = logger;
+        super( logger );
     }
 
     // ----------------------------------------------------------------------
diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/AbstractFileCheckingConsumer.java b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/AbstractFileCheckingConsumer.java
index 696dc9884..cbba785ee 100644
--- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/AbstractFileCheckingConsumer.java
+++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/AbstractFileCheckingConsumer.java
@@ -21,7 +21,7 @@ package org.apache.maven.scm.provider.git.gitexe.command;
 
 import org.apache.maven.scm.ScmFile;
 import org.apache.maven.scm.log.ScmLogger;
-import org.codehaus.plexus.util.cli.StreamConsumer;
+import org.apache.maven.scm.util.AbstractConsumer;
 
 import java.io.File;
 import java.util.ArrayList;
@@ -34,13 +34,11 @@ import java.util.List;
  *
  */
 public abstract class AbstractFileCheckingConsumer
-    implements StreamConsumer
+        extends AbstractConsumer
 {
-    protected ScmLogger logger;
-
     protected File workingDirectory;
 
-    private List<ScmFile> files = new ArrayList<ScmFile>();
+    private final List<ScmFile> files = new ArrayList<>();
 
     protected int revision;
 
@@ -48,7 +46,7 @@ public abstract class AbstractFileCheckingConsumer
 
     public AbstractFileCheckingConsumer( ScmLogger logger, File workingDirectory )
     {
-        this.logger = logger;
+        super( logger );
         this.workingDirectory = workingDirectory;
     }
 
diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/diff/GitDiffRawConsumer.java b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/diff/GitDiffRawConsumer.java
index 4f0ce1a70..0b5d74b9d 100644
--- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/diff/GitDiffRawConsumer.java
+++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/diff/GitDiffRawConsumer.java
@@ -25,19 +25,17 @@ import java.util.List;
 import org.apache.maven.scm.ScmFile;
 import org.apache.maven.scm.ScmFileStatus;
 import org.apache.maven.scm.log.ScmLogger;
+import org.apache.maven.scm.util.AbstractConsumer;
 import org.codehaus.plexus.util.StringUtils;
-import org.codehaus.plexus.util.cli.StreamConsumer;
 
 /**
  * @author <a href="mailto:struberg@yahoo.de">Mark Struberg</a>
  *
  */
 public class GitDiffRawConsumer
-    implements StreamConsumer
+        extends AbstractConsumer
 {
-    private ScmLogger logger;
-
-    private List<ScmFile> changedFiles = new ArrayList<ScmFile>();
+    private final List<ScmFile> changedFiles = new ArrayList<>();
 
     // ----------------------------------------------------------------------
     //
@@ -45,7 +43,7 @@ public class GitDiffRawConsumer
 
     public GitDiffRawConsumer( ScmLogger logger )
     {
-        this.logger = logger;
+        super( logger );
     }
 
     // ----------------------------------------------------------------------
diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/remoteinfo/GitRemoteInfoConsumer.java b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/remoteinfo/GitRemoteInfoConsumer.java
index b3d022ce1..22dbb4aaf 100644
--- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/remoteinfo/GitRemoteInfoConsumer.java
+++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/remoteinfo/GitRemoteInfoConsumer.java
@@ -21,7 +21,7 @@ package org.apache.maven.scm.provider.git.gitexe.command.remoteinfo;
 
 import org.apache.maven.scm.command.remoteinfo.RemoteInfoScmResult;
 import org.apache.maven.scm.log.ScmLogger;
-import org.codehaus.plexus.util.cli.StreamConsumer;
+import org.apache.maven.scm.util.AbstractConsumer;
 
 import java.util.HashMap;
 import java.util.regex.Matcher;
@@ -31,7 +31,7 @@ import java.util.regex.Pattern;
  * @author Bertrand Paquet
  */
 public class GitRemoteInfoConsumer
-    implements StreamConsumer
+        extends AbstractConsumer
 {
 
     /**
@@ -44,9 +44,7 @@ public class GitRemoteInfoConsumer
      */
     private static final Pattern TAGS_PATTERN = Pattern.compile( "^(.*)\\s+refs/tags/(.*)" );
 
-    private ScmLogger logger;
-
-    private RemoteInfoScmResult remoteInfoScmResult;
+    private final RemoteInfoScmResult remoteInfoScmResult;
 
     // ----------------------------------------------------------------------
     //
@@ -54,7 +52,7 @@ public class GitRemoteInfoConsumer
 
     public GitRemoteInfoConsumer( ScmLogger logger, String commandLine )
     {
-        this.logger = logger;
+        super( logger );
         this.remoteInfoScmResult =
             new RemoteInfoScmResult( commandLine, new HashMap<String, String>(), new HashMap<String, String>() );
     }
diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/remove/GitRemoveConsumer.java b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/remove/GitRemoveConsumer.java
index 730a5aae4..9c623abe3 100644
--- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/remove/GitRemoveConsumer.java
+++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/remove/GitRemoveConsumer.java
@@ -22,7 +22,7 @@ package org.apache.maven.scm.provider.git.gitexe.command.remove;
 import org.apache.maven.scm.ScmFile;
 import org.apache.maven.scm.ScmFileStatus;
 import org.apache.maven.scm.log.ScmLogger;
-import org.codehaus.plexus.util.cli.StreamConsumer;
+import org.apache.maven.scm.util.AbstractConsumer;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -35,16 +35,14 @@ import java.util.regex.Pattern;
  *
  */
 public class GitRemoveConsumer
-    implements StreamConsumer
+        extends AbstractConsumer
 {
     /**
      * The pattern used to match deleted file lines
      */
     private static final Pattern REMOVED_PATTERN = Pattern.compile( "^rm\\s'(.*)'" );
 
-    private ScmLogger logger;
-
-    private List<ScmFile> removedFiles = new ArrayList<ScmFile>();
+    private final List<ScmFile> removedFiles = new ArrayList<>();
 
     // ----------------------------------------------------------------------
     //
@@ -52,7 +50,7 @@ public class GitRemoveConsumer
 
     public GitRemoveConsumer( ScmLogger logger )
     {
-        this.logger = logger;
+        super( logger );
     }
 
     // ----------------------------------------------------------------------
diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/status/GitStatusConsumer.java b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/status/GitStatusConsumer.java
index d01eb215b..11342de72 100644
--- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/status/GitStatusConsumer.java
+++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/status/GitStatusConsumer.java
@@ -33,13 +33,13 @@ import org.apache.maven.scm.ScmFile;
 import org.apache.maven.scm.ScmFileStatus;
 import org.apache.maven.scm.ScmFileSet;
 import org.apache.maven.scm.log.ScmLogger;
-import org.codehaus.plexus.util.cli.StreamConsumer;
+import org.apache.maven.scm.util.AbstractConsumer;
 
 /**
  * @author <a href="mailto:struberg@yahoo.de">Mark Struberg</a>
  */
 public class GitStatusConsumer
-    implements StreamConsumer
+        extends AbstractConsumer
 {
 
     /**
@@ -62,8 +62,6 @@ public class GitStatusConsumer
      */
     private static final Pattern RENAMED_PATTERN = Pattern.compile( "^R  (.*) -> (.*)$" );
 
-    private ScmLogger logger;
-
     private File workingDirectory;
 
     private ScmFileSet scmFileSet;
@@ -71,7 +69,7 @@ public class GitStatusConsumer
     /**
      * Entries are relative to working directory, not to the repositoryroot
      */
-    private List<ScmFile> changedFiles = new ArrayList<ScmFile>();
+    private final List<ScmFile> changedFiles = new ArrayList<>();
 
     private URI relativeRepositoryPath;
     
@@ -87,7 +85,7 @@ public class GitStatusConsumer
      */
     public GitStatusConsumer( ScmLogger logger, File workingDirectory )
     {
-        this.logger = logger;
+        super( logger );
         this.workingDirectory = workingDirectory;
     }
 
diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/pom.xml b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/pom.xml
index 5c6a0aae5..cebff98df 100644
--- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/pom.xml
+++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/pom.xml
@@ -48,6 +48,16 @@
       <groupId>org.eclipse.jgit</groupId>
       <artifactId>org.eclipse.jgit</artifactId>
       <version>4.5.4.201711221230-r</version>
+      <exclusions>
+        <exclusion>
+          <groupId>commons-logging</groupId>
+          <artifactId>commons-logging</artifactId>
+        </exclusion>
+      </exclusions>
+    </dependency>
+    <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>jcl-over-slf4j</artifactId>
     </dependency>
 
     <!-- Test -->
diff --git a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svn-commons/src/main/java/org/apache/maven/scm/provider/svn/command/diff/SvnDiffConsumer.java b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svn-commons/src/main/java/org/apache/maven/scm/provider/svn/command/diff/SvnDiffConsumer.java
index 088af74d7..9b8301b98 100644
--- a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svn-commons/src/main/java/org/apache/maven/scm/provider/svn/command/diff/SvnDiffConsumer.java
+++ b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svn-commons/src/main/java/org/apache/maven/scm/provider/svn/command/diff/SvnDiffConsumer.java
@@ -22,7 +22,7 @@ package org.apache.maven.scm.provider.svn.command.diff;
 import org.apache.maven.scm.ScmFile;
 import org.apache.maven.scm.ScmFileStatus;
 import org.apache.maven.scm.log.ScmLogger;
-import org.codehaus.plexus.util.cli.StreamConsumer;
+import org.apache.maven.scm.util.AbstractConsumer;
 
 import java.io.File;
 import java.util.ArrayList;
@@ -36,7 +36,7 @@ import java.util.Map;
  *
  */
 public class SvnDiffConsumer
-    implements StreamConsumer
+        extends AbstractConsumer
 {
     //
     // Index: plugin.jelly
@@ -63,17 +63,15 @@ public class SvnDiffConsumer
 
     private static final String NO_NEWLINE_TOKEN = "\\ No newline at end of file";
 
-    private ScmLogger logger;
-
     private String currentFile;
 
     private StringBuilder currentDifference;
 
-    private List<ScmFile> changedFiles = new ArrayList<ScmFile>();
+    private final List<ScmFile> changedFiles = new ArrayList<ScmFile>();
 
-    private Map<String, CharSequence> differences = new HashMap<String, CharSequence>();
+    private final Map<String, CharSequence> differences = new HashMap<String, CharSequence>();
 
-    private StringBuilder patch = new StringBuilder();
+    private final StringBuilder patch = new StringBuilder();
 
     // ----------------------------------------------------------------------
     //
@@ -81,7 +79,7 @@ public class SvnDiffConsumer
 
     public SvnDiffConsumer( ScmLogger logger, File workingDirectory )
     {
-        this.logger = logger;
+        super( logger );
     }
 
     // ----------------------------------------------------------------------
diff --git a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/AbstractFileCheckingConsumer.java b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/AbstractFileCheckingConsumer.java
index 0a92d6a56..bbf9f74e8 100644
--- a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/AbstractFileCheckingConsumer.java
+++ b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/AbstractFileCheckingConsumer.java
@@ -27,20 +27,18 @@ import java.util.List;
 import org.apache.maven.scm.ScmFile;
 import org.apache.maven.scm.ScmFileStatus;
 import org.apache.maven.scm.log.ScmLogger;
-import org.codehaus.plexus.util.cli.StreamConsumer;
+import org.apache.maven.scm.util.AbstractConsumer;
 
 /**
  * @author <a href="mailto:kenney@apache.org">Kenney Westerhof</a>
  *
  */
 public abstract class AbstractFileCheckingConsumer
-    implements StreamConsumer
+        extends AbstractConsumer
 {
-    protected ScmLogger logger;
-
     protected File workingDirectory;
 
-    private List<ScmFile> files = new ArrayList<ScmFile>();
+    private final List<ScmFile> files = new ArrayList<>();
 
     protected int revision;
 
@@ -48,7 +46,7 @@ public abstract class AbstractFileCheckingConsumer
 
     public AbstractFileCheckingConsumer( ScmLogger logger, File workingDirectory )
     {
-        this.logger = logger;
+        super( logger );
         this.workingDirectory = workingDirectory;
     }
 
diff --git a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/add/SvnAddConsumer.java b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/add/SvnAddConsumer.java
index bf5384ffb..237a2bb96 100644
--- a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/add/SvnAddConsumer.java
+++ b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/add/SvnAddConsumer.java
@@ -22,7 +22,7 @@ package org.apache.maven.scm.provider.svn.svnexe.command.add;
 import org.apache.maven.scm.ScmFile;
 import org.apache.maven.scm.ScmFileStatus;
 import org.apache.maven.scm.log.ScmLogger;
-import org.codehaus.plexus.util.cli.StreamConsumer;
+import org.apache.maven.scm.util.AbstractConsumer;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -32,11 +32,9 @@ import java.util.List;
  *
  */
 public class SvnAddConsumer
-    implements StreamConsumer
+        extends AbstractConsumer
 {
-    private ScmLogger logger;
-
-    private List<ScmFile> addedFiles = new ArrayList<ScmFile>();
+    private final List<ScmFile> addedFiles = new ArrayList<>();
 
     // ----------------------------------------------------------------------
     //
@@ -44,7 +42,7 @@ public class SvnAddConsumer
 
     public SvnAddConsumer( ScmLogger logger )
     {
-        this.logger = logger;
+        super( logger );
     }
 
     // ----------------------------------------------------------------------
diff --git a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/info/SvnInfoCommand.java b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/info/SvnInfoCommand.java
index 438c7c777..d30ea6bda 100644
--- a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/info/SvnInfoCommand.java
+++ b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/info/SvnInfoCommand.java
@@ -61,7 +61,7 @@ public class SvnInfoCommand
     {
         Commandline cl = createCommandLine( repository, fileSet, recursive, revision );
 
-        SvnInfoConsumer consumer = new SvnInfoConsumer();
+        SvnInfoConsumer consumer = new SvnInfoConsumer( getLogger() );
 
         CommandLineUtils.StringStreamConsumer stderr = new CommandLineUtils.StringStreamConsumer();
 
diff --git a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/info/SvnInfoConsumer.java b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/info/SvnInfoConsumer.java
index e4f824d68..05f7b8f08 100644
--- a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/info/SvnInfoConsumer.java
+++ b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/info/SvnInfoConsumer.java
@@ -23,19 +23,25 @@ import java.util.ArrayList;
 import java.util.List;
 
 import org.apache.maven.scm.command.info.InfoItem;
-import org.codehaus.plexus.util.cli.StreamConsumer;
+import org.apache.maven.scm.log.ScmLogger;
+import org.apache.maven.scm.util.AbstractConsumer;
 
 /**
  * @author <a href="mailto:kenney@apache.org">Kenney Westerhof</a>
  *
  */
 public class SvnInfoConsumer
-    implements StreamConsumer
+        extends AbstractConsumer
 {
-    private List<InfoItem> infoItems = new ArrayList<InfoItem>();
+    private final List<InfoItem> infoItems = new ArrayList<>();
 
     private InfoItem currentItem = new InfoItem();
 
+    public SvnInfoConsumer( ScmLogger logger )
+    {
+        super( logger );
+    }
+
     /** {@inheritDoc} */
     public void consumeLine( String s )
     {
diff --git a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/list/SvnListCommand.java b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/list/SvnListCommand.java
index 553b080c5..f888d50f2 100644
--- a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/list/SvnListCommand.java
+++ b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/list/SvnListCommand.java
@@ -57,7 +57,7 @@ public class SvnListCommand
     {
         Commandline cl = createCommandLine( (SvnScmProviderRepository) repository, fileSet, recursive, version );
 
-        SvnListConsumer consumer = new SvnListConsumer();
+        SvnListConsumer consumer = new SvnListConsumer( getLogger() );
 
         CommandLineUtils.StringStreamConsumer stderr = new CommandLineUtils.StringStreamConsumer();
 
diff --git a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/list/SvnListConsumer.java b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/list/SvnListConsumer.java
index b7d7c556d..c87a167a7 100644
--- a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/list/SvnListConsumer.java
+++ b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/list/SvnListConsumer.java
@@ -21,7 +21,8 @@ package org.apache.maven.scm.provider.svn.svnexe.command.list;
 
 import org.apache.maven.scm.ScmFile;
 import org.apache.maven.scm.ScmFileStatus;
-import org.codehaus.plexus.util.cli.StreamConsumer;
+import org.apache.maven.scm.log.ScmLogger;
+import org.apache.maven.scm.util.AbstractConsumer;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -31,9 +32,14 @@ import java.util.List;
  *
  */
 public class SvnListConsumer
-    implements StreamConsumer
+        extends AbstractConsumer
 {
-    private List<ScmFile> files = new ArrayList<ScmFile>();
+    private final List<ScmFile> files = new ArrayList<>();
+
+    public SvnListConsumer( ScmLogger logger )
+    {
+        super( logger );
+    }
 
     // ----------------------------------------------------------------------
     // StreamConsumer Implementation
diff --git a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/mkdir/SvnMkdirConsumer.java b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/mkdir/SvnMkdirConsumer.java
index 0b9ebe6ac..54c287f8b 100644
--- a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/mkdir/SvnMkdirConsumer.java
+++ b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/mkdir/SvnMkdirConsumer.java
@@ -25,18 +25,16 @@ import java.util.List;
 import org.apache.maven.scm.ScmFile;
 import org.apache.maven.scm.ScmFileStatus;
 import org.apache.maven.scm.log.ScmLogger;
+import org.apache.maven.scm.util.AbstractConsumer;
 import org.codehaus.plexus.util.StringUtils;
-import org.codehaus.plexus.util.cli.StreamConsumer;
 
 /**
  * @author <a href="mailto:oching@apache.org">Maria Odea Ching</a>
  *
  */
 public class SvnMkdirConsumer
-    implements StreamConsumer
+        extends AbstractConsumer
 {
-    private ScmLogger logger;
-
     private static final String COMMITTED_REVISION_TOKEN = "Committed revision";
 
     private int revision;
@@ -45,7 +43,7 @@ public class SvnMkdirConsumer
     
     public SvnMkdirConsumer( ScmLogger logger )
     {
-        this.logger = logger;
+        super( logger );
     }
     
     /** {@inheritDoc} */
diff --git a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/remove/SvnRemoveConsumer.java b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/remove/SvnRemoveConsumer.java
index 94ed57dad..b9fdbba12 100644
--- a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/remove/SvnRemoveConsumer.java
+++ b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/remove/SvnRemoveConsumer.java
@@ -22,7 +22,7 @@ package org.apache.maven.scm.provider.svn.svnexe.command.remove;
 import org.apache.maven.scm.ScmFile;
 import org.apache.maven.scm.ScmFileStatus;
 import org.apache.maven.scm.log.ScmLogger;
-import org.codehaus.plexus.util.cli.StreamConsumer;
+import org.apache.maven.scm.util.AbstractConsumer;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -33,11 +33,9 @@ import java.util.List;
  *
  */
 public class SvnRemoveConsumer
-    implements StreamConsumer
+        extends AbstractConsumer
 {
-    private ScmLogger logger;
-
-    private List<ScmFile> removedFiles = new ArrayList<ScmFile>();
+    private final List<ScmFile> removedFiles = new ArrayList<>();
 
     // ----------------------------------------------------------------------
     //
@@ -45,7 +43,7 @@ public class SvnRemoveConsumer
 
     public SvnRemoveConsumer( ScmLogger logger )
     {
-        this.logger = logger;
+        super( logger );
     }
 
     // ----------------------------------------------------------------------
diff --git a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/status/SvnStatusConsumer.java b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/status/SvnStatusConsumer.java
index db40c4824..1fcaec5ce 100644
--- a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/status/SvnStatusConsumer.java
+++ b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/status/SvnStatusConsumer.java
@@ -22,8 +22,8 @@ package org.apache.maven.scm.provider.svn.svnexe.command.status;
 import org.apache.maven.scm.ScmFile;
 import org.apache.maven.scm.ScmFileStatus;
 import org.apache.maven.scm.log.ScmLogger;
+import org.apache.maven.scm.util.AbstractConsumer;
 import org.codehaus.plexus.util.StringUtils;
-import org.codehaus.plexus.util.cli.StreamConsumer;
 
 import java.io.File;
 import java.util.ArrayList;
@@ -34,13 +34,11 @@ import java.util.List;
  *
  */
 public class SvnStatusConsumer
-    implements StreamConsumer
+        extends AbstractConsumer
 {
-    private ScmLogger logger;
+    private final File workingDirectory;
 
-    private File workingDirectory;
-
-    private List<ScmFile> changedFiles = new ArrayList<ScmFile>();
+    private final List<ScmFile> changedFiles = new ArrayList<>();
 
     // ----------------------------------------------------------------------
     //
@@ -48,8 +46,7 @@ public class SvnStatusConsumer
 
     public SvnStatusConsumer( ScmLogger logger, File workingDirectory )
     {
-        this.logger = logger;
-
+        super( logger );
         this.workingDirectory = workingDirectory;
     }
 
diff --git a/pom.xml b/pom.xml
index fc7a0667b..ee953d112 100644
--- a/pom.xml
+++ b/pom.xml
@@ -127,7 +127,7 @@
     <javaVersion>8</javaVersion>
     <maven.site.path>scm-archives/scm-LATEST</maven.site.path>
     <checkstyle.violation.ignore>RedundantThrows,NewlineAtEndOfFile,ParameterNumber,MethodLength,FileLength,InnerAssignment,MagicNumber</checkstyle.violation.ignore>
-    <checkstyle.failOnViolation>false</checkstyle.failOnViolation>
+    <checkstyle.failOnViolation>true</checkstyle.failOnViolation>
     <project.build.outputTimestamp>2022-01-08T20:02:10Z</project.build.outputTimestamp>
   </properties>
 
@@ -193,6 +193,11 @@
         <artifactId>slf4j-simple</artifactId>
         <version>1.7.36</version>
       </dependency>
+      <dependency>
+        <groupId>org.slf4j</groupId>
+        <artifactId>jcl-over-slf4j</artifactId>
+        <version>1.7.36</version>
+      </dependency>
       <dependency>
         <groupId>org.codehaus.plexus</groupId>
         <artifactId>plexus-classworlds</artifactId>