# listener/AnsiColorLogger.php

## \AnsiColorLogger
jump to top

Package: phing\listener

Uses ANSI Color Code Sequences to colorize messages sent to the console.

If used with the -logfile option, the output file will contain all the necessary escape codes to display the text in colorized mode when displayed in the console using applications like cat, more, etc.

This is designed to work on terminals that support ANSI color codes. It works on XTerm, ETerm, Mindterm, etc. It also works on Win9x (with ANSI.SYS loaded.)

NOTE: It doesn't work on WinNT's COMMAND.COM even with ANSI.SYS loaded.

The default colors used for differentiating the message levels can be changed by editing the phing/listener/defaults.properties file.

This file contains 5 key/value pairs: AnsiColorLogger.ERROR_COLOR=2;31 AnsiColorLogger.WARNING_COLOR=2;35 AnsiColorLogger.INFO_COLOR=2;36 AnsiColorLogger.VERBOSE_COLOR=2;32 AnsiColorLogger.DEBUG_COLOR=2;34

Another option is to pass a system variable named ant.logger.defaults, with value set to the path of the file that contains user defined Ansi Color Codes, to the java command using -D option.

To change these colors use the following chart:

     <B>ANSI COLOR LOGGER CONFIGURATION</B>

Format for AnsiColorLogger.*= Attribute;Foreground;Background

Attribute is one of the following: 0 -> Reset All Attributes (return to normal mode) 1 -> Bright (Usually turns on BOLD) 2 -> Dim 3 -> Underline 5 -> link 7 -> Reverse 8 -> Hidden

Foreground is one of the following: 30 -> Black 31 -> Red 32 -> Green 33 -> Yellow 34 -> Blue 35 -> Magenta 36 -> Cyan 37 -> White

Background is one of the following: 40 -> Black 41 -> Red 42 -> Green 43 -> Yellow 44 -> Blue 45 -> Magenta 46 -> Cyan 47 -> White

Parent(s)
  \DefaultLogger
Author
  Hans Lellelid (Phing)
Author
  Magesh Umasankar (Ant)
Copyright
  2001,2002 THYRELL. All rights reserved
Version
  $Revision: 526 $

### Constants

`ATTR_NORMAL = 0`

`ATTR_BRIGHT = 1`

`ATTR_DIM = 2`

`ATTR_UNDERLINE = 3`

`ATTR_BLINK = 5`

`ATTR_REVERSE = 7`

`ATTR_HIDDEN = 8`

`FG_BLACK = 30`

`FG_RED = 31`

`FG_GREEN = 32`

`FG_YELLOW = 33`

`FG_BLUE = 34`

`FG_MAGENTA = 35`

`FG_CYAN = 36`

`FG_WHITE = 37`

`BG_BLACK = 40`

`BG_RED = 41`

`BG_GREEN = 42`

`BG_YELLOW = 44`

`BG_BLUE = 44`

`BG_MAGENTA = 45`

`BG_CYAN = 46`

`BG_WHITE = 47`

`PREFIX = "\x1b["`

`SUFFIX = "m"`

`SEPARATOR = ';'`

`END_COLOR = "\x1b[m"`

### Properties

`$colorsSet= 'false'`
Default value `false` Details

Type

`$debugColor= ''`
Details

Type

`\OutputStream $err= ''`
inheritedStream to use for error output.

Inherited from: \DefaultLogger::$err
Details

Type
  \OutputStream
Inherited_from
  \DefaultLogger::$err

`$errColor= ''`
Details

Type

`$infoColor= ''`
Details

Type

`$msgOutputLevel= 'Project::MSG_ERR'`
inherited

The message output level that should be used. The default is <code>Project::MSG_VERBOSE</code>.

Inherited from: \DefaultLogger::$msgOutputLevel

@var int

Default value `Project::MSG_ERR` Details

Type
Inherited_from
  \DefaultLogger::$msgOutputLevel

`\OutputStream $out= ''`
inheritedStream to use for standard output.

Inherited from: \DefaultLogger::$out
Details

Type
  \OutputStream
Inherited_from
  \DefaultLogger::$out

`$startTime= ''`
inherited

Time that the build started

Inherited from: \DefaultLogger::$startTime

@var int

Details

Type
Inherited_from
  \DefaultLogger::$startTime

`$verboseColor= ''`
Details

Type

`$warnColor= ''`
Details

Type

### Methods

`__construct( ) : void`

Construct new AnsiColorLogger Perform initializations that cannot be done in var declarations.

`buildFinished( \BuildEvent $event ) : void`
inherited

Prints whether the build succeeded or failed, and any errors that occured during the build. Also outputs the total build-time.

Inherited from: \DefaultLogger::buildFinished()

@param object The BuildEvent

Parameters

Name | Type | Description
--- | --- | ---
$event | \BuildEvent | The BuildEvent

Details

See
  \BuildEvent::getException()

`buildStarted( \BuildEvent $event ) : void`
inherited

Sets the start-time when the build started. Used for calculating the build-time.

Inherited from: \DefaultLogger::buildStarted()

@param object The BuildEvent

Parameters

Name | Type | Description
--- | --- | ---
$event | \BuildEvent | The BuildEvent

Details

Access
  public

`formatTime( $micros ) : void`
static inherited

Formats a time micro integer to human readable format.

Inherited from: \DefaultLogger::formatTime()

@param integer The time stamp

Parameters

Name | Type | Description
--- | --- | ---
$micros |  |

Details

Access
  private

`getBuildFailedMessage( ) : string`
inherited

Get the message to return when a build failed.

Inherited from: \DefaultLogger::getBuildFailedMessage()
Returns

Type | Description
--- | ---
string | The classic "BUILD FAILED"

`getBuildSuccessfulMessage( ) : string`
inherited

Get the message to return when a build succeeded.

Inherited from: \DefaultLogger::getBuildSuccessfulMessage()
Returns

Type | Description
--- | ---
string | The classic "BUILD FINISHED"

`messageLogged( $event ) : void`
inherited

Print a message to the stdout.

Inherited from: \DefaultLogger::messageLogged()

@param object The BuildEvent

Parameters

Name | Type | Description
--- | --- | ---
$event |  |

Details

Access
  public
See
  \BuildEvent::getMessage()

`printMessage( string $message, \OutputStream $stream, int $priority ) : void`
final

Prints a message to console.

Parameters

Name | Type | Description
--- | --- | ---
$message | string |
$stream | \OutputStream |
$priority | int |

Details

See
  \DefaultLogger#printMessage

`setColors( ) : void`
final

Set the colors to use from a property file specified by the special ant property ant.logger.defaults

`setErrorStream( \OutputStream $err ) : void`
inherited

Sets the error stream.

Inherited from: \DefaultLogger::setErrorStream()
Parameters

Name | Type | Description
--- | --- | ---
$err | \OutputStream |

Details

See
  \BuildLogger#setErrorStream()

`setMessageOutputLevel( int $level ) : void`
inherited

Set the msgOutputLevel this logger is to respond to.

Inherited from: \DefaultLogger::setMessageOutputLevel()

Only messages with a message level lower than or equal to the given level are output to the log.

<

p> Constants for the message levels are in Project.php. The order of the levels, from least to most verbose, is:

- Project::MSG_ERR
- Project::MSG_WARN
- Project::MSG_INFO
- Project::MSG_VERBOSE
- Project::MSG_DEBUG

The default message level for DefaultLogger is Project::MSG_ERR.

Parameters

Name | Type | Description
--- | --- | ---
$level | int | The logging level for the logger.

Details

See
  \BuildLogger#setMessageOutputLevel()

`setOutputStream( \OutputStream $output ) : void`
inherited

Sets the output stream.

Inherited from: \DefaultLogger::setOutputStream()
Parameters

Name | Type | Description
--- | --- | ---
$output | \OutputStream |

Details

See
  \BuildLogger#setOutputStream()

`targetFinished( \BuildEvent $event ) : void`
inherited

Fired when a target has finished. We don't need specific action on this event. So the methods are empty.

Inherited from: \DefaultLogger::targetFinished()

@param object The BuildEvent

Parameters

Name | Type | Description
--- | --- | ---
$event | \BuildEvent | The BuildEvent

Details

See
  \BuildEvent::getException()

`targetStarted( \BuildEvent $event ) : void`
inherited

Prints the current target name

Inherited from: \DefaultLogger::targetStarted()

@param object The BuildEvent

Parameters

Name | Type | Description
--- | --- | ---
$event | \BuildEvent | The BuildEvent

Details

Access
  public
See
  \BuildEvent::getTarget()

`taskFinished( $event ) : void`
inherited

Fired when a task has finished. We don't need specific action on this event. So the methods are empty.

Inherited from: \DefaultLogger::taskFinished()

@param object The BuildEvent

Parameters

Name | Type | Description
--- | --- | ---
$event |  |

Details

Access
  public
See
  \BuildEvent::getException()

`taskStarted( \BuildEvent $event ) : void`
inherited

Fired when a task is started. We don't need specific action on this event. So the methods are empty.

Inherited from: \DefaultLogger::taskStarted()

@param object The BuildEvent

Parameters

Name | Type | Description
--- | --- | ---
$event | \BuildEvent | The BuildEvent

Details

Access
  public
See
  \BuildEvent::getTask()

Documentation was generated by DocBlox 0.15.1.