Interface IBmWal


public interface IBmWal
Write-ahead log.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static interface 
    Entry processor.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    close(boolean onError)
    Closes the log.
    void
    log(byte[] data, int offset, int length)
    Adds log entry.
    void
    Invokes entry processor for each log entry if any.
    void
    Resets the log (all the entries are removed).
    long
    Gets the size of the log.
  • Method Details

    • close

      void close(boolean onError) throws IOException
      Closes the log. Deletes the log if the closing was not requested due to an error.
      Parameters:
      onError - The flag indicating whether the closing was requested due to an error.
      Throws:
      IOException - if any I/O error occurs.
    • log

      void log(byte[] data, int offset, int length) throws IOException
      Adds log entry.
      Parameters:
      data - A byte array containing the log entry data. May not be null.
      offset - The offset of the log entry data within the array.
      length - The length of the entry data.
      Throws:
      IOException - if any I/O error occurs.
    • reset

      void reset() throws IOException
      Resets the log (all the entries are removed).
      Throws:
      IOException - if any I/O error occurs.
    • size

      long size() throws IOException
      Gets the size of the log.
      Returns:
      the size of the log in bytes.
      Throws:
      IOException - if any I/O error occurs.
    • processEntries

      void processEntries(IBmWal.IEntryProcessor processor) throws IOException
      Invokes entry processor for each log entry if any.
      Parameters:
      entryProcessor - The entry processor. May not be null.
      Throws:
      IOException - if any I/O error occurs.