Class FileLogger
- java.lang.Object
-
- org.apache.maven.shared.scriptinterpreter.FileLogger
-
- All Implemented Interfaces:
java.lang.AutoCloseable,ExecutionLogger
public class FileLogger extends java.lang.Object implements ExecutionLogger, java.lang.AutoCloseable
FileLogger class.
-
-
Constructor Summary
Constructors Constructor Description FileLogger(java.io.File outputFile)Creates a new logger that writes to the specified file.FileLogger(java.io.File outputFile, FileLoggerMirrorHandler mirrorHandler)Creates a new logger that writes to the specified file and optionally mirrors messages.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Closes the underlying file stream.voidconsumeLine(java.lang.String line)Writes the specified line to the log file and invokeFileLoggerMirrorHandler.consumeOutput(String)if is given.java.io.FilegetOutputFile()Gets the path to the output file.java.io.PrintStreamgetPrintStream()Gets the underlying stream used to write message to the log file.
-
-
-
Constructor Detail
-
FileLogger
public FileLogger(java.io.File outputFile) throws java.io.IOExceptionCreates a new logger that writes to the specified file.- Parameters:
outputFile- The path to the output file, if null all message will be discarded.- Throws:
java.io.IOException- If the output file could not be created.
-
FileLogger
public FileLogger(java.io.File outputFile, FileLoggerMirrorHandler mirrorHandler) throws java.io.IOExceptionCreates a new logger that writes to the specified file and optionally mirrors messages.- Parameters:
outputFile- The path to the output file, if null all message will be discarded.mirrorHandler- The class which handle mirrored message, can benull.- Throws:
java.io.IOException- If the output file could not be created.
-
-
Method Detail
-
getOutputFile
public java.io.File getOutputFile()
Gets the path to the output file.- Returns:
- The path to the output file, never
null.
-
getPrintStream
public java.io.PrintStream getPrintStream()
Gets the underlying stream used to write message to the log file.- Specified by:
getPrintStreamin interfaceExecutionLogger- Returns:
- The underlying stream used to write message to the log file, never
null.
-
consumeLine
public void consumeLine(java.lang.String line)
Writes the specified line to the log file and invokeFileLoggerMirrorHandler.consumeOutput(String)if is given.- Specified by:
consumeLinein interfaceExecutionLogger- Parameters:
line- The message to log.
-
close
public void close()
Closes the underlying file stream.- Specified by:
closein interfacejava.lang.AutoCloseable
-
-