Package org.apache.tools.ant.listener

# Class CommonsLoggingListener

java.lang.Object
org.apache.tools.ant.listener.CommonsLoggingListener

All Implemented Interfaces:
  `java.util.EventListener`, `BuildListener`, `BuildLogger`

    public class CommonsLoggingListener
    extends java.lang.Object
    implements BuildListener, BuildLogger

Jakarta Commons Logging listener. Note: do not use the SimpleLog as your logger implementation as it causes an infinite loop since it writes to System.err, which Ant traps and reroutes to the logger/listener layer. The following names are used for the log: org.apache.tools.ant.Project.PROJECT_NAME - for project events org.apache.tools.ant.Target.TARGET_NAME - for target events TASK_CLASS_NAME.TARGET_NAME - for events in individual targets. In all target and project names we replace "." and " " with "-". TODO: we should use the advanced context logging features (and expose them in c-l first :-) TODO: this is _very_ inefficient. Switching the out and tracking the logs can be optimized a lot - but may require few more changes to the core.

Since:
  Ant 1.5

## Field Summary

Fields
Modifier and Type | Field | Description
--- | --- | ---
`static java.lang.String` | `PROJECT_LOG` | name of the category under which project events are logged
`static java.lang.String` | `TARGET_LOG` | name of the category under which target events are logged

## Constructor Summary

Constructors
Constructor | Description
--- | ---
`CommonsLoggingListener()` | Construct the listener and make sure that a LogFactory can be obtained.

## Method Summary

Modifier and Type | Method | Description
--- | --- | ---
`void` | `buildFinished​(BuildEvent event)` | Signals that the last target has finished.
`void` | `buildStarted​(BuildEvent event)` | Signals that a build has started.
`void` | `messageLogged​(BuildEvent event)` | Signals a message logging event.
`void` | `setEmacsMode​(boolean emacsMode)` | Set emacs mode.
`void` | `setErrorPrintStream​(java.io.PrintStream err)` | Set the error print stream.
`void` | `setMessageOutputLevel​(int level)` | Set the the output level.
`void` | `setOutputPrintStream​(java.io.PrintStream output)` | Set the output print stream.
`void` | `targetFinished​(BuildEvent event)` | Signals that a target has finished.
`void` | `targetStarted​(BuildEvent event)` | Signals that a target is starting.
`void` | `taskFinished​(BuildEvent event)` | Signals that a task has finished.
`void` | `taskStarted​(BuildEvent event)` | Signals that a task is starting.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### TARGET_LOG

public static final java.lang.String TARGET_LOG
name of the category under which target events are logged

See Also:
  Constant Field Values

### PROJECT_LOG

public static final java.lang.String PROJECT_LOG
name of the category under which project events are logged

See Also:
  Constant Field Values

## Constructor Details

### CommonsLoggingListener

public CommonsLoggingListener()
Construct the listener and make sure that a LogFactory can be obtained.

## Method Details

### buildStarted

public void buildStarted​(BuildEvent event)
Signals that a build has started. This event is fired before any targets have started.

This event is fired before the project instance is fully configured. In particular no properties have been set and the project may not know its name or default target, yet.

.

Specified by:
  `buildStarted` in interface `BuildListener`
Parameters:
  `event` - An event with any relevant extra information. Must not be `null`.

### buildFinished

public void buildFinished​(BuildEvent event)
Signals that the last target has finished. This event will still be fired if an error occurred during the build..

Specified by:
  `buildFinished` in interface `BuildListener`
Parameters:
  `event` - An event with any relevant extra information. Must not be `null`.
See Also:
  `BuildEvent.getException()`

### targetStarted

public void targetStarted​(BuildEvent event)
Description copied from interface: `BuildListener`
Signals that a target is starting.

Specified by:
  `targetStarted` in interface `BuildListener`
Parameters:
  `event` - An event with any relevant extra information. Must not be `null`.
See Also:
  `.`

### targetFinished

public void targetFinished​(BuildEvent event)
Description copied from interface: `BuildListener`
Signals that a target has finished. This event will still be fired if an error occurred during the build.

Specified by:
  `targetFinished` in interface `BuildListener`
Parameters:
  `event` - An event with any relevant extra information. Must not be `null`.
See Also:
  `.`

### taskStarted

public void taskStarted​(BuildEvent event)
Description copied from interface: `BuildListener`
Signals that a task is starting.

Specified by:
  `taskStarted` in interface `BuildListener`
Parameters:
  `event` - An event with any relevant extra information. Must not be `null`.
See Also:
  `.`

### taskFinished

public void taskFinished​(BuildEvent event)
Description copied from interface: `BuildListener`
Signals that a task has finished. This event will still be fired if an error occurred during the build.

Specified by:
  `taskFinished` in interface `BuildListener`
Parameters:
  `event` - An event with any relevant extra information. Must not be `null`.
See Also:
  `.`

### messageLogged

public void messageLogged​(BuildEvent event)
Description copied from interface: `BuildListener`
Signals a message logging event.

Specified by:
  `messageLogged` in interface `BuildListener`
Parameters:
  `event` - An event with any relevant extra information. Must not be `null`.
See Also:
  `.`

### setMessageOutputLevel

public void setMessageOutputLevel​(int level)
Set the the output level. This is not used, the logger config is used instead.

Specified by:
  `setMessageOutputLevel` in interface `BuildLogger`
Parameters:
  `level` - ignored

### setOutputPrintStream

public void setOutputPrintStream​(java.io.PrintStream output)
Set the output print stream.

Specified by:
  `setOutputPrintStream` in interface `BuildLogger`
Parameters:
  `output` - the output stream

### setEmacsMode

public void setEmacsMode​(boolean emacsMode)
Set emacs mode. This is ignored.

Specified by:
  `setEmacsMode` in interface `BuildLogger`
Parameters:
  `emacsMode` - ignored

### setErrorPrintStream

public void setErrorPrintStream​(java.io.PrintStream err)
Set the error print stream.

Specified by:
  `setErrorPrintStream` in interface `BuildLogger`
Parameters:
  `err` - the error stream