You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by hb...@apache.org on 2016/06/19 22:37:45 UTC
[1/2] maven git commit: [MNG-3507] use AnsiUtils API to use colors
consistently
Repository: maven
Updated Branches:
refs/heads/master 162c7403e -> 70e824b2f
[MNG-3507] use AnsiUtils API to use colors consistently
Project: http://git-wip-us.apache.org/repos/asf/maven/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven/commit/402ce4c3
Tree: http://git-wip-us.apache.org/repos/asf/maven/tree/402ce4c3
Diff: http://git-wip-us.apache.org/repos/asf/maven/diff/402ce4c3
Branch: refs/heads/master
Commit: 402ce4c3cd1e970d2d4186aa6fc3e10c612241fb
Parents: 162c740
Author: Herv� Boutemy <hb...@apache.org>
Authored: Mon Jun 20 00:35:17 2016 +0200
Committer: Herv� Boutemy <hb...@apache.org>
Committed: Mon Jun 20 00:35:41 2016 +0200
----------------------------------------------------------------------
maven-core/pom.xml | 10 +++-
.../lifecycle/LifecycleExecutionException.java | 19 ++++----
maven-embedder/pom.xml | 4 +-
.../org/apache/maven/cli/CLIReportingUtils.java | 4 +-
.../java/org/apache/maven/cli/MavenCli.java | 21 ++++----
.../maven/cli/event/ExecutionEventLogger.java | 50 ++++++++++----------
.../cli/logging/impl/gossip/ColorRenderer.java | 26 +++++-----
pom.xml | 6 +--
8 files changed, 72 insertions(+), 68 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/maven/blob/402ce4c3/maven-core/pom.xml
----------------------------------------------------------------------
diff --git a/maven-core/pom.xml b/maven-core/pom.xml
index cc648be..f03eead 100644
--- a/maven-core/pom.xml
+++ b/maven-core/pom.xml
@@ -85,8 +85,14 @@ under the License.
<artifactId>aether-util</artifactId>
</dependency>
<dependency>
- <groupId>org.fusesource.jansi</groupId>
- <artifactId>jansi</artifactId>
+ <groupId>org.apache.maven.shared</groupId>
+ <artifactId>maven-project-utils</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>org.apache.maven</groupId>
+ <artifactId>maven-core</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<!-- Plexus -->
<dependency>
http://git-wip-us.apache.org/repos/asf/maven/blob/402ce4c3/maven-core/src/main/java/org/apache/maven/lifecycle/LifecycleExecutionException.java
----------------------------------------------------------------------
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/LifecycleExecutionException.java b/maven-core/src/main/java/org/apache/maven/lifecycle/LifecycleExecutionException.java
index fd4bca0..5645abd 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/LifecycleExecutionException.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/LifecycleExecutionException.java
@@ -19,11 +19,11 @@ package org.apache.maven.lifecycle;
* under the License.
*/
-import static org.fusesource.jansi.Ansi.ansi;
+import static org.apache.maven.shared.project.utils.AnsiUtils.ansi;
import org.apache.maven.plugin.MojoExecution;
import org.apache.maven.project.MavenProject;
-import org.fusesource.jansi.Ansi;
+import org.apache.maven.shared.project.utils.AnsiUtils;
/**
* @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
@@ -78,26 +78,27 @@ public class LifecycleExecutionException
private static String createMessage( MojoExecution execution, MavenProject project, Throwable cause )
{
- Ansi buffer = ansi( /*256*/ );
+ AnsiUtils buffer = ansi( 256 );
- buffer.a( "Failed to execute goal" ).reset();
+ buffer.a( "Failed to execute goal" );
if ( execution != null )
{
- buffer.a( ' ' ).a( execution.getGroupId() ).a( ':' ).fgGreen().a( execution.getArtifactId() );
- buffer.a( ':' ).a( execution.getVersion() ).a( ':' ).a( execution.getGoal() ).reset();
- buffer.bold().a( " (" ).a( execution.getExecutionId() ).a( ')' ).reset();
+ buffer.a( ' ' ).a( execution.getGroupId() ).a( ':' );
+ buffer.mojo().a( execution.getArtifactId() ).a( ':' );
+ buffer.a( execution.getVersion() ).a( ':' ).a( execution.getGoal() ).reset();
+ buffer.strong().a( " (" ).a( execution.getExecutionId() ).a( ')' ).reset();
}
if ( project != null )
{
buffer.a( " on project " );
- buffer.fgCyan().a( project.getArtifactId() ).reset();
+ buffer.project( project.getArtifactId() );
}
if ( cause != null )
{
- buffer.a( ": " ).bold().fgRed().a( cause.getMessage() ).reset();
+ buffer.a( ": " ).failure( cause.getMessage() );
}
return buffer.toString();
http://git-wip-us.apache.org/repos/asf/maven/blob/402ce4c3/maven-embedder/pom.xml
----------------------------------------------------------------------
diff --git a/maven-embedder/pom.xml b/maven-embedder/pom.xml
index eb72f93..7e4032f 100644
--- a/maven-embedder/pom.xml
+++ b/maven-embedder/pom.xml
@@ -80,8 +80,8 @@ under the License.
<artifactId>plexus-cipher</artifactId>
</dependency>
<dependency>
- <groupId>org.fusesource.jansi</groupId>
- <artifactId>jansi</artifactId>
+ <groupId>org.apache.maven.shared</groupId>
+ <artifactId>maven-project-utils</artifactId>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
http://git-wip-us.apache.org/repos/asf/maven/blob/402ce4c3/maven-embedder/src/main/java/org/apache/maven/cli/CLIReportingUtils.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/CLIReportingUtils.java b/maven-embedder/src/main/java/org/apache/maven/cli/CLIReportingUtils.java
index 18e43ef..aa28b27 100644
--- a/maven-embedder/src/main/java/org/apache/maven/cli/CLIReportingUtils.java
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/CLIReportingUtils.java
@@ -19,7 +19,7 @@ package org.apache.maven.cli;
* under the License.
*/
-import static org.fusesource.jansi.Ansi.ansi;
+import static org.apache.maven.shared.project.utils.AnsiUtils.ansi;
import java.io.IOException;
import java.io.InputStream;
@@ -57,7 +57,7 @@ public final class CLIReportingUtils
final String ls = System.getProperty( "line.separator" );
Properties properties = getBuildProperties();
StringBuilder version = new StringBuilder( 256 );
- version.append( ansi().bold().a( createMavenVersionString( properties ) ).reset() ).append( ls );
+ version.append( ansi().strong( createMavenVersionString( properties ) ) ).append( ls );
version.append( reduce(
properties.getProperty( "distributionShortName" ) + " home: " + System.getProperty( "maven.home",
"<unknown Maven "
http://git-wip-us.apache.org/repos/asf/maven/blob/402ce4c3/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
index b07fdc9..fd0a81a 100644
--- a/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java
@@ -19,7 +19,7 @@ package org.apache.maven.cli;
* under the License.
*/
-import static org.fusesource.jansi.Ansi.ansi;
+import static org.apache.maven.shared.project.utils.AnsiUtils.ansi;
import java.io.BufferedInputStream;
import java.io.Console;
@@ -91,6 +91,7 @@ import org.apache.maven.model.profile.ProfileSelector;
import org.apache.maven.project.MavenProject;
import org.apache.maven.properties.internal.EnvironmentUtils;
import org.apache.maven.properties.internal.SystemProperties;
+import org.apache.maven.shared.project.utils.AnsiUtils;
import org.apache.maven.toolchain.building.DefaultToolchainsBuildingRequest;
import org.apache.maven.toolchain.building.ToolchainsBuilder;
import org.apache.maven.toolchain.building.ToolchainsBuildingResult;
@@ -110,8 +111,6 @@ import com.google.common.base.Charsets;
import com.google.common.io.Files;
import com.google.inject.AbstractModule;
import org.eclipse.aether.transfer.TransferListener;
-import org.fusesource.jansi.Ansi;
-import org.fusesource.jansi.AnsiConsole;
import org.slf4j.ILoggerFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -212,9 +211,9 @@ public class MavenCli
{
MavenCli cli = new MavenCli();
- AnsiConsole.systemInstall();
+ AnsiUtils.systemInstall();
int result = cli.doMain( new CliRequest( args, classWorld ) );
- AnsiConsole.systemUninstall();
+ AnsiUtils.systemUninstall();
return result;
}
@@ -476,7 +475,7 @@ public class MavenCli
if ( cliRequest.commandLine.hasOption( CLIManager.BATCH_MODE ) )
{
- Ansi.setEnabled( false );
+ AnsiUtils.setEnabled( false );
}
if ( cliRequest.commandLine.hasOption( CLIManager.LOG_FILE ) )
@@ -484,7 +483,7 @@ public class MavenCli
File logFile = new File( cliRequest.commandLine.getOptionValue( CLIManager.LOG_FILE ) );
logFile = resolveFile( logFile, cliRequest.workingDirectory );
- Ansi.setEnabled( false );
+ AnsiUtils.setEnabled( false );
// redirect stdout and stderr to file
try
@@ -1021,11 +1020,11 @@ public class MavenCli
if ( !cliRequest.showErrors )
{
slf4jLogger.error( "To see the full stack trace of the errors, re-run Maven with the "
- + ansi().bold().a( "-e" ).reset() + " switch." );
+ + ansi().strong( "-e" ) + " switch." );
}
if ( !slf4jLogger.isDebugEnabled() )
{
- slf4jLogger.error( "Re-run Maven using the " + ansi().bold().a( "-X" ).reset()
+ slf4jLogger.error( "Re-run Maven using the " + ansi().strong( "-X" )
+ " switch to enable full debug logging." );
}
@@ -1037,7 +1036,7 @@ public class MavenCli
for ( Map.Entry<String, String> entry : references.entrySet() )
{
- slf4jLogger.error( ansi().bold().a( entry.getValue() ).reset() + " " + entry.getKey() );
+ slf4jLogger.error( ansi().strong( entry.getValue() ) + " " + entry.getKey() );
}
}
@@ -1045,7 +1044,7 @@ public class MavenCli
{
slf4jLogger.error( "" );
slf4jLogger.error( "After correcting the problems, you can resume the build with the command" );
- slf4jLogger.error( ansi().bold().a( " mvn <goals> -rf :" )
+ slf4jLogger.error( ansi().strong().a( " mvn <goals> -rf :" )
.a( project.getArtifactId() ).reset().toString() );
}
http://git-wip-us.apache.org/repos/asf/maven/blob/402ce4c3/maven-embedder/src/main/java/org/apache/maven/cli/event/ExecutionEventLogger.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/event/ExecutionEventLogger.java b/maven-embedder/src/main/java/org/apache/maven/cli/event/ExecutionEventLogger.java
index ee57121..9b3bad4 100644
--- a/maven-embedder/src/main/java/org/apache/maven/cli/event/ExecutionEventLogger.java
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/event/ExecutionEventLogger.java
@@ -21,7 +21,7 @@ package org.apache.maven.cli.event;
import static org.apache.maven.cli.CLIReportingUtils.formatDuration;
import static org.apache.maven.cli.CLIReportingUtils.formatTimestamp;
-import static org.fusesource.jansi.Ansi.ansi;
+import static org.apache.maven.shared.project.utils.AnsiUtils.ansi;
import org.apache.commons.lang3.Validate;
import org.apache.maven.execution.AbstractExecutionListener;
@@ -34,8 +34,8 @@ import org.apache.maven.execution.MavenSession;
import org.apache.maven.plugin.MojoExecution;
import org.apache.maven.plugin.descriptor.MojoDescriptor;
import org.apache.maven.project.MavenProject;
+import org.apache.maven.shared.project.utils.AnsiUtils;
import org.codehaus.plexus.util.StringUtils;
-import org.fusesource.jansi.Ansi;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -83,7 +83,7 @@ public class ExecutionEventLogger
private void infoMain( String msg )
{
- logger.info( ansi().bold().a( msg ).reset().toString() );
+ logger.info( ansi().strong( msg ).toString() );
}
@Override
@@ -161,11 +161,11 @@ public class ExecutionEventLogger
if ( buildSummary == null )
{
- buffer.append( ansi().bold().fgYellow().a( "SKIPPED" ).reset() );
+ buffer.append( ansi().warning( "SKIPPED" ) );
}
else if ( buildSummary instanceof BuildSuccess )
{
- buffer.append( ansi().bold().fgGreen().a( "SUCCESS" ).reset() );
+ buffer.append( ansi().success( "SUCCESS" ) );
buffer.append( " [" );
String buildTimeDuration = formatDuration( buildSummary.getTime() );
int padSize = MAX_PADDED_BUILD_TIME_DURATION_LENGTH - buildTimeDuration.length();
@@ -178,7 +178,7 @@ public class ExecutionEventLogger
}
else if ( buildSummary instanceof BuildFailure )
{
- buffer.append( ansi().bold().fgRed().a( "FAILURE" ).reset() );
+ buffer.append( ansi().failure( "FAILURE" ) );
buffer.append( " [" );
String buildTimeDuration = formatDuration( buildSummary.getTime() );
int padSize = MAX_PADDED_BUILD_TIME_DURATION_LENGTH - buildTimeDuration.length();
@@ -197,17 +197,17 @@ public class ExecutionEventLogger
private void logResult( MavenSession session )
{
infoLine( '-' );
- Ansi ansi = ansi().bold();
+ AnsiUtils ansi = ansi();
if ( session.getResult().hasExceptions() )
{
- ansi.fgRed().a( "BUILD FAILURE" );
+ ansi.failure( "BUILD FAILURE" );
}
else
{
- ansi.fgGreen().a( "BUILD SUCCESS" );
+ ansi.success( "BUILD SUCCESS" );
}
- logger.info( ansi.reset().toString() );
+ logger.info( ansi.toString() );
}
private void logStats( MavenSession session )
@@ -282,10 +282,10 @@ public class ExecutionEventLogger
{
logger.info( "" );
- Ansi ansi = ansi().bold().a( "--- " ).reset();
+ AnsiUtils ansi = ansi().strong( "--- " );
append( ansi, event.getMojoExecution() );
append( ansi, event.getProject() );
- ansi.bold().a( " ---" ).reset();
+ ansi.strong( " ---" );
logger.info( ansi.toString() );
}
@@ -302,12 +302,12 @@ public class ExecutionEventLogger
{
logger.info( "" );
- Ansi ansi = ansi().bold().a( ">>> " ).reset();
+ AnsiUtils ansi = ansi().strong( ">>> " );
append( ansi, event.getMojoExecution() );
- ansi.bold().a( " > " ).reset();
+ ansi.strong( " > " );
appendForkInfo( ansi, event.getMojoExecution().getMojoDescriptor() );
append( ansi, event.getProject() );
- ansi.bold().a( " >>>" ).reset();
+ ansi.strong( " >>>" );
logger.info( ansi.toString() );
}
@@ -326,30 +326,30 @@ public class ExecutionEventLogger
{
logger.info( "" );
- Ansi ansi = ansi().bold().a( "<<< " ).reset();
+ AnsiUtils ansi = ansi().strong( "<<< " );
append( ansi, event.getMojoExecution() );
- ansi.bold().a( " < " ).reset();
+ ansi.strong( " < " );
appendForkInfo( ansi, event.getMojoExecution().getMojoDescriptor() );
append( ansi, event.getProject() );
- ansi.bold().a( " <<<" ).reset();
+ ansi.strong( " <<<" );
logger.info( ansi.toString() );
}
}
- private void append( Ansi ansi, MojoExecution me )
+ private void append( AnsiUtils ansi, MojoExecution me )
{
- ansi.fgGreen().a( me.getArtifactId() ).a( ':' ).a( me.getVersion() );
+ ansi.mojo().a( me.getArtifactId() ).a( ':' ).a( me.getVersion() );
ansi.a( ':' ).a( me.getGoal() ).reset();
if ( me.getExecutionId() != null )
{
- ansi.bold().a( " (" ).a( me.getExecutionId() ).a( ')' ).reset();
+ ansi.strong( " (" ).a( me.getExecutionId() ).a( ')' );
}
}
- private void appendForkInfo( Ansi ansi, MojoDescriptor md )
+ private void appendForkInfo( AnsiUtils ansi, MojoDescriptor md )
{
- ansi.bold();
+ ansi.strong();
if ( StringUtils.isNotEmpty( md.getExecutePhase() ) )
{
// forked phase
@@ -370,9 +370,9 @@ public class ExecutionEventLogger
ansi.reset();
}
- private void append( Ansi ansi, MavenProject project )
+ private void append( AnsiUtils ansi, MavenProject project )
{
- ansi.a( " @ " ).fgCyan().a( project.getArtifactId() ).reset();
+ ansi.a( " @ " ).project( project.getArtifactId() );
}
@Override
http://git-wip-us.apache.org/repos/asf/maven/blob/402ce4c3/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/gossip/ColorRenderer.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/gossip/ColorRenderer.java b/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/gossip/ColorRenderer.java
index 52e0489..ba0c20a 100644
--- a/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/gossip/ColorRenderer.java
+++ b/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/gossip/ColorRenderer.java
@@ -19,7 +19,7 @@ package org.apache.maven.cli.logging.impl.gossip;
* under the License.
*/
-import static org.fusesource.jansi.Ansi.ansi;
+import static org.apache.maven.shared.project.utils.AnsiUtils.ansi;
import com.planet57.gossip.Event;
import com.planet57.gossip.Level;
@@ -46,20 +46,20 @@ extends com.planet57.gossip.render.PatternRenderer
{
case TRACE:
case DEBUG:
- buff.append( ansi().bold().fgCyan().a( level.name() ).reset() );
+ buff.append( ansi().debug().a( level.name() ).reset() );
break;
case INFO:
- buff.append( ansi().bold().fgBlue().a( level.name() ).reset() );
+ buff.append( ansi().info().a( level.name() ).reset() );
break;
case WARN:
// Maven uses WARNING instead of WARN
- buff.append( ansi().bold().fgYellow().a( WARNING ).reset() );
+ buff.append( ansi().warning().a( WARNING ).reset() );
break;
case ERROR:
- buff.append( ansi().bold().fgRed().a( level.name() ).reset() );
+ buff.append( ansi().error().a( level.name() ).reset() );
break;
default:
@@ -72,7 +72,7 @@ extends com.planet57.gossip.render.PatternRenderer
{
StringBuilder tmp = new StringBuilder();
super.renderName( event, tmp, shortName );
- buff.append( ansi().fgGreen().a( tmp ).reset() );
+ buff.append( ansi().success( tmp ) );
}
@@ -88,11 +88,11 @@ extends com.planet57.gossip.render.PatternRenderer
return;
}
- buff.append( ansi().bold().fgRed().a( cause.getClass().getName() ).reset() );
+ buff.append( ansi().failure( cause.getClass().getName() ) );
if ( cause.getMessage() != null )
{
buff.append( ": " );
- buff.append( ansi().bold().fgRed().a( cause.getMessage() ).reset() );
+ buff.append( ansi().failure( cause.getMessage() ) );
}
renderNewLine( buff );
@@ -101,21 +101,19 @@ extends com.planet57.gossip.render.PatternRenderer
for ( StackTraceElement e : cause.getStackTrace() )
{
buff.append( " " );
- buff.append( ansi().bold().a( "at" ).reset().a( " " )
- .a( e.getClassName() ).a( "." ).a( e.getMethodName() ) );
- buff.append( ansi().a( " (" ).bold().a( getLocation( e ) ).reset().a( ")" ) );
+ buff.append( ansi().strong( "at" ).a( " " ).a( e.getClassName() ).a( "." ).a( e.getMethodName() ) );
+ buff.append( ansi().a( " (" ).strong( getLocation( e ) ).a( ")" ) );
renderNewLine( buff );
}
cause = cause.getCause();
if ( cause != null )
{
- buff.append( ansi().bold().a( "Caused by" ).reset().a( ": " )
- .a( cause.getClass().getName() ) );
+ buff.append( ansi().strong( "Caused by" ).a( ": " ).a( cause.getClass().getName() ) );
if ( cause.getMessage() != null )
{
buff.append( ": " );
- buff.append( ansi().bold().fgRed().a( cause.getMessage() ).reset() );
+ buff.append( ansi().failure( cause.getMessage() ) );
}
renderNewLine( buff );
}
http://git-wip-us.apache.org/repos/asf/maven/blob/402ce4c3/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 6698f94..2547ed5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -276,9 +276,9 @@ under the License.
<version>${plexusInterpolationVersion}</version>
</dependency>
<dependency>
- <groupId>org.fusesource.jansi</groupId>
- <artifactId>jansi</artifactId>
- <version>1.13</version>
+ <groupId>org.apache.maven.shared</groupId>
+ <artifactId>maven-project-utils</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
[2/2] maven git commit: [MNG-3507] removed unused code
Posted by hb...@apache.org.
[MNG-3507] removed unused code
Project: http://git-wip-us.apache.org/repos/asf/maven/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven/commit/70e824b2
Tree: http://git-wip-us.apache.org/repos/asf/maven/tree/70e824b2
Diff: http://git-wip-us.apache.org/repos/asf/maven/diff/70e824b2
Branch: refs/heads/master
Commit: 70e824b2fdb6b2f4ee0de10b60f39828f66db15d
Parents: 402ce4c
Author: Herv� Boutemy <hb...@apache.org>
Authored: Mon Jun 20 00:37:43 2016 +0200
Committer: Herv� Boutemy <hb...@apache.org>
Committed: Mon Jun 20 00:37:43 2016 +0200
----------------------------------------------------------------------
.../impl/gossip/ColorConsoleListener.java | 72 --------------------
1 file changed, 72 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/maven/blob/70e824b2/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/gossip/ColorConsoleListener.java
----------------------------------------------------------------------
diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/gossip/ColorConsoleListener.java b/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/gossip/ColorConsoleListener.java
deleted file mode 100644
index b9c97a9..0000000
--- a/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/gossip/ColorConsoleListener.java
+++ /dev/null
@@ -1,72 +0,0 @@
-package org.apache.maven.cli.logging.impl.gossip;
-
-/*
- * 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.
- */
-
-import java.io.PrintStream;
-
-import com.planet57.gossip.listener.ConsoleListener;
-import org.fusesource.jansi.AnsiConsole;
-import org.fusesource.jansi.internal.CLibrary;
-
-/**
- * Specialized {@link com.planet57.gossip.listener.Listener} which is aware of ANSI streams.
- *
- * @author <a href="mailto:jason@planet57.com">Jason Dillon</a>
- * @since 3.4.0
- */
-public class ColorConsoleListener
- extends ConsoleListener
-{
- private PrintStream out;
-
- /**
- * Returns file descriptor identifier for the configured stream.
- */
- private int getFileno()
- {
- switch ( getStream() )
- {
- case OUT:
- return CLibrary.STDOUT_FILENO;
-
- case ERR:
- return CLibrary.STDERR_FILENO;
-
- default:
- throw new InternalError();
- }
- }
-
- /**
- * Returns an ANSI aware wrapped stream.
- *
- * Needed so that jansi (limited) logic to detect supported streams is applied and copes with
- * redirection of stream to file to strip out ANSI sequences.
- */
- @Override
- protected PrintStream getOut()
- {
- if ( out == null )
- {
- out = new PrintStream( AnsiConsole.wrapOutputStream( super.getOut(), getFileno() ) );
- }
- return out;
- }
-}