Class LogFileManager


  • public final class LogFileManager
    extends java.lang.Object
    Provides a logical view of many separate files as one single long log file. The separate files that compose the LogFile are Segments of the LogFile.

    This class is not thread safe.

    Version:
    $Revision: 1.1 $
    • Field Detail

      • DEFAULT_LOGFILE_COUNT

        public static final int DEFAULT_LOGFILE_COUNT
      • DEFAULT_LOGFILE_SIZE

        public static final int DEFAULT_LOGFILE_SIZE
    • Constructor Detail

      • LogFileManager

        public LogFileManager​(java.io.File logDirectory)
                       throws java.io.IOException
        Throws:
        java.io.IOException
      • LogFileManager

        public LogFileManager​(java.io.File logDirectory,
                              int onlineLogFileCount,
                              int initialLogFileSize,
                              java.io.File archiveDirectory)
                       throws java.io.IOException
        Throws:
        java.io.IOException
    • Method Detail

      • dispose

        public void dispose()
      • append

        public void append​(BatchedWrite write)
                    throws java.io.IOException
        Parameters:
        write -
        Throws:
        java.io.IOException
      • getInitialLogFileSize

        public int getInitialLogFileSize()
      • getFirstActiveLogLocation

        public Location getFirstActiveLogLocation()
      • getLogDirectory

        public java.io.File getLogDirectory()
        Returns:
        Returns the logDirectory.
      • getLastMarkedRecordLocation

        public Location getLastMarkedRecordLocation()
        Returns:
        Returns the lastMark.
      • getNextAppendLocation

        public Location getNextAppendLocation()
      • getOnlineLogFileCount

        public int getOnlineLogFileCount()
        Returns:
        Returns the onlineLogFileCount.
      • isPastHalfActive

        public boolean isPastHalfActive()
      • getFirstRecordLocationOfSecondActiveLogFile

        public Location getFirstRecordLocationOfSecondActiveLogFile()
      • canActivateNextLogFile

        public boolean canActivateNextLogFile()