info.aduna.logging.file.logback
Class MultipleFileLogReader

java.lang.Object
  extended by info.aduna.logging.base.LogReaderBase
      extended by info.aduna.logging.file.logback.MultipleFileLogReader
All Implemented Interfaces:
LogReader, Iterator<LogRecord>

public class MultipleFileLogReader
extends LogReaderBase
implements LogReader

Date range-enabled wrapper for FileLogReader. Reads multiple logfiles chunked by dates as a single log.

Author:
alex

Nested Class Summary
 class MultipleFileLogReader.DateRangeFilenameFilter
           
 
Constructor Summary
MultipleFileLogReader()
           
 
Method Summary
 void destroy()
          Destroy the log reader and release all used resources.
 Date getEndDate()
          End (latest) date of of the log records returned by this log reader.
 Date getMaxDate()
          Max (latest) available date of the log records.
 Date getMinDate()
          Min (earliest) available date of the log records.
 Date getStartDate()
          Start (earliest) date of the log records returned by this log reader.
 boolean hasNext()
           
 void init()
          Initialize the log reader.
 boolean isMoreAvailable()
          Check if more records are available after limit is reached.
 LogRecord next()
           
 void setAppender(ch.qos.logback.core.Appender<?> appender)
          Logging appender associated with this reader.
 void setEndDate(Date endDate)
          End (latest) date of of the log records returned by this log reader.
 void setStartDate(Date startDate)
          Start (earliest) date of the log records returned by this log reader.
 boolean supportsDateRanges()
          Test if this LogReader implementation supports date-based records filtering.
 
Methods inherited from class info.aduna.logging.base.LogReaderBase
getAppender, getLevel, getLimit, getOffset, getThread, getThreadNames, remove, setLevel, setLimit, setOffset, setThread, supportsLevelFilter, supportsThreadFilter
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface info.aduna.logging.LogReader
getAppender, getLevel, getLimit, getOffset, getThread, getThreadNames, setLevel, setLimit, setOffset, setThread, supportsLevelFilter, supportsThreadFilter
 
Methods inherited from interface java.util.Iterator
remove
 

Constructor Detail

MultipleFileLogReader

public MultipleFileLogReader()
Method Detail

supportsDateRanges

public boolean supportsDateRanges()
Description copied from interface: LogReader
Test if this LogReader implementation supports date-based records filtering.

Specified by:
supportsDateRanges in interface LogReader
Overrides:
supportsDateRanges in class LogReaderBase
Returns:
true if date filtering is supported

setAppender

public void setAppender(ch.qos.logback.core.Appender<?> appender)
Description copied from interface: LogReader
Logging appender associated with this reader.

Specified by:
setAppender in interface LogReader
Overrides:
setAppender in class LogReaderBase
Parameters:
appender - logging appender associated with this reader

init

public void init()
          throws Exception
Description copied from interface: LogReader
Initialize the log reader.

Specified by:
init in interface LogReader
Throws:
Exception

hasNext

public boolean hasNext()
Specified by:
hasNext in interface Iterator<LogRecord>
Specified by:
hasNext in class LogReaderBase

isMoreAvailable

public boolean isMoreAvailable()
Description copied from interface: LogReader
Check if more records are available after limit is reached.

Specified by:
isMoreAvailable in interface LogReader
Returns:
true if more records are available

next

public LogRecord next()
Specified by:
next in interface Iterator<LogRecord>
Specified by:
next in class LogReaderBase

destroy

public void destroy()
             throws IOException
Description copied from interface: LogReader
Destroy the log reader and release all used resources.

Specified by:
destroy in interface LogReader
Throws:
IOException

getStartDate

public Date getStartDate()
Description copied from interface: LogReader
Start (earliest) date of the log records returned by this log reader.

Specified by:
getStartDate in interface LogReader
Overrides:
getStartDate in class LogReaderBase
Returns:
Returns the startDate.

setStartDate

public void setStartDate(Date startDate)
Description copied from interface: LogReader
Start (earliest) date of the log records returned by this log reader.

Specified by:
setStartDate in interface LogReader
Overrides:
setStartDate in class LogReaderBase
Parameters:
startDate - The startDate to set.

getEndDate

public Date getEndDate()
Description copied from interface: LogReader
End (latest) date of of the log records returned by this log reader.

Specified by:
getEndDate in interface LogReader
Overrides:
getEndDate in class LogReaderBase
Returns:
Returns the endDate.

setEndDate

public void setEndDate(Date endDate)
Description copied from interface: LogReader
End (latest) date of of the log records returned by this log reader.

Specified by:
setEndDate in interface LogReader
Overrides:
setEndDate in class LogReaderBase
Parameters:
endDate - The endDate to set.

getMaxDate

public Date getMaxDate()
Description copied from interface: LogReader
Max (latest) available date of the log records.

Specified by:
getMaxDate in interface LogReader
Overrides:
getMaxDate in class LogReaderBase

getMinDate

public Date getMinDate()
Description copied from interface: LogReader
Min (earliest) available date of the log records.

Specified by:
getMinDate in interface LogReader
Overrides:
getMinDate in class LogReaderBase


Copyright © 2001-2012 Aduna. All Rights Reserved.