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
Modifier and Type Method Description void
close()
Closes the underlying file stream.void
consumeLine(java.lang.String line)
Writes the specified line to the log file and invokeFileLoggerMirrorHandler.consumeOutput(String)
if is given.java.io.File
getOutputFile()
Gets the path to the output file.java.io.PrintStream
getPrintStream()
Gets the underlying stream used to write message to the log file.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
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.
-
-
Method Details
-
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:
getPrintStream
in 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:
consumeLine
in interfaceExecutionLogger
- Parameters:
line
- The message to log.
-
close
public void close()Closes the underlying file stream.- Specified by:
close
in interfacejava.lang.AutoCloseable
-