org.apache.tools.ant.taskdefs

Class Recorder

  • All Implemented Interfaces:
    java.lang.Cloneable, java.util.EventListener, BuildListener, SubBuildListener


    public class Recorder
    extends Task
    implements SubBuildListener
    Adds a listener to the current build process that records the output to a file.

    Several recorders can exist at the same time. Each recorder is associated with a file. The filename is used as a unique identifier for the recorders. The first call to the recorder task with an unused filename will create a recorder (using the parameters provided) and add it to the listeners of the build. All subsequent calls to the recorder task using this filename will modify that recorders state (recording or not) or other properties (like logging level).

    Some technical issues: the file's print stream is flushed for "finished" events (buildFinished, targetFinished and taskFinished), and is closed on a buildFinished event.

    Since:
    Ant 1.4
    Version:
    0.5
    See Also:
    RecorderEntry
    • Constructor Detail

      • Recorder

        public Recorder()
    • Method Detail

      • init

        public void init()
        Overridden so we can add the task as build listener.
        Overrides:
        init in class Task
        Since:
        Ant 1.7
      • setName

        public void setName(java.lang.String fname)
        Sets the name of the file to log to, and the name of the recorder entry.
        Parameters:
        fname - File name of logfile.
      • setAction

        public void setAction(Recorder.ActionChoices action)
        Sets the action for the associated recorder entry.
        Parameters:
        action - The action for the entry to take: start or stop.
      • setAppend

        public void setAppend(boolean append)
        Whether or not the logger should append to a previous file.
        Parameters:
        append - if true, append to a previous file.
      • setEmacsMode

        public void setEmacsMode(boolean emacsMode)
        Set emacs mode.
        Parameters:
        emacsMode - if true use emacs mode
      • getRecorder

        protected RecorderEntry getRecorder(java.lang.String name,
                                            Project proj)
                                     throws BuildException
        Gets the recorder that's associated with the passed in name. If the recorder doesn't exist, then a new one is created.
        Parameters:
        name - the name of the recorder
        proj - the current project
        Returns:
        a recorder
        Throws:
        BuildException - on error
      • buildStarted

        public void buildStarted(BuildEvent event)
        Empty implementation required by SubBuildListener interface.
        Specified by:
        buildStarted in interface BuildListener
        Parameters:
        event - ignored.
        Since:
        Ant 1.7
      • subBuildStarted

        public void subBuildStarted(BuildEvent event)
        Empty implementation required by SubBuildListener interface.
        Specified by:
        subBuildStarted in interface SubBuildListener
        Parameters:
        event - ignored.
        Since:
        Ant 1.7