Interface BlockMgr

All Superinterfaces:
org.apache.jena.atlas.lib.Closeable, org.apache.jena.atlas.lib.Sync
All Known Implementing Classes:
BlockMgrBase, BlockMgrCache, BlockMgrFileAccess, BlockMgrFreeChain, BlockMgrJournal, BlockMgrLogger, BlockMgrReadonly, BlockMgrSwitcher, BlockMgrSync, BlockMgrTracker, BlockMgrWrapper

public interface BlockMgr extends org.apache.jena.atlas.lib.Sync, org.apache.jena.atlas.lib.Closeable
  • Method Summary

    Modifier and Type
    Method
    Description
    allocate(int blockSize)
    Allocate an uninitialized block - writable - call only inside a update sequence.
    void
    beginIterator(Iterator<?> iterator)
    Start of iterator
    void
    Start of read
    void
    Start of update
    void
    Close the block manager
    void
    endIterator(Iterator<?> iterator)
    Completion of iterator
    void
    Completion of read
    void
    Completion of update
    void
    free(Block block)
    Announce a block is no longer in use (i.e it's now freed)
     
    getRead(long id)
    Fetch a block, use for read only
    getReadIterator(long id)
    Fetch a block, use for read only in an iterator
    getWrite(long id)
    Fetch a block, use for write and read - only inside "update"
    boolean
    Is this block manager still usable?
    boolean
    Answer whether there are any blocks in the collection being managed
    void
    Replace the contents of a block slot with new contents.
    promote(Block block)
    Promote to writeable : it's OK to promote an already writeable block
    void
    release(Block block)
    Release a block, unmodified.
    void
    Sync the block manager
    void
    Sync the block manager : system operation to ensure sync() is passed down
    boolean
    valid(int id)
    Is this a valid block id?
    void
    write(Block block)
    Write a block back - it still needs releasing.
  • Method Details

    • allocate

      Block allocate(int blockSize)
      Allocate an uninitialized block - writable - call only inside a update sequence. If blockSize is -1, means "default/fixed size" for this BlockMgr
    • isEmpty

      boolean isEmpty()
      Answer whether there are any blocks in the collection being managed
    • getRead

      Block getRead(long id)
      Fetch a block, use for read only
    • getReadIterator

      Block getReadIterator(long id)
      Fetch a block, use for read only in an iterator
    • getWrite

      Block getWrite(long id)
      Fetch a block, use for write and read - only inside "update"
    • release

      void release(Block block)
      Release a block, unmodified.
    • promote

      Block promote(Block block)
      Promote to writeable : it's OK to promote an already writeable block
    • write

      void write(Block block)
      Write a block back - it still needs releasing.
    • overwrite

      void overwrite(Block blk)
      Replace the contents of a block slot with new contents. Block does not need releasing. The write() operation may not do real work if the block is mapped - this operation really does replace the contents with the new contents.
    • free

      void free(Block block)
      Announce a block is no longer in use (i.e it's now freed)
    • valid

      boolean valid(int id)
      Is this a valid block id? (may be a free block)
    • close

      void close()
      Close the block manager
      Specified by:
      close in interface org.apache.jena.atlas.lib.Closeable
    • isClosed

      boolean isClosed()
      Is this block manager still usable? Closed block managers can not perform any operations except this one.
    • sync

      void sync()
      Sync the block manager
      Specified by:
      sync in interface org.apache.jena.atlas.lib.Sync
    • syncForce

      void syncForce()
      Sync the block manager : system operation to ensure sync() is passed down
    • beginUpdate

      void beginUpdate()
      Start of update
    • endUpdate

      void endUpdate()
      Completion of update
    • beginRead

      void beginRead()
      Start of read
    • endRead

      void endRead()
      Completion of read
    • beginIterator

      void beginIterator(Iterator<?> iterator)
      Start of iterator
    • endIterator

      void endIterator(Iterator<?> iterator)
      Completion of iterator
    • getLabel

      String getLabel()