Class BlockMgrWrapper

java.lang.Object
org.apache.jena.dboe.base.block.BlockMgrWrapper
All Implemented Interfaces:
org.apache.jena.atlas.lib.Closeable, org.apache.jena.atlas.lib.Sync, BlockMgr
Direct Known Subclasses:
BlockMgrFreeChain, BlockMgrReadonly, BlockMgrSwitcher

public class BlockMgrWrapper extends Object implements BlockMgr
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    allocate(int blockSize)
    Allocate an uninitialized block - writable - call only inside a update sequence.
    long
    The fixed allocated blocks are in the range [0,allocLimit).
    void
    Start of read
    void
    Start of update
    void
    Close the block manager
    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
     
    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 writable : it's OK to promote an already writable block
    void
    release(Block block)
    Release a block, unmodified or already written.
    void
    resetAlloc(long boundary)
    Reset the allocation limit, should be a number previously obtained from allocLimit
    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.

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • BlockMgrWrapper

      public BlockMgrWrapper(BlockMgr blockMgr)
  • Method Details

    • getWrapped

      public BlockMgr getWrapped()
    • allocate

      public Block allocate(int blockSize)
      Description copied from interface: BlockMgr
      Allocate an uninitialized block - writable - call only inside a update sequence. If blockSize is -1, means "default/fixed size" for this BlockMgr
      Specified by:
      allocate in interface BlockMgr
    • getRead

      public Block getRead(long id)
      Description copied from interface: BlockMgr
      Fetch a block, use for read only
      Specified by:
      getRead in interface BlockMgr
    • getWrite

      public Block getWrite(long id)
      Description copied from interface: BlockMgr
      Fetch a block, use for write and read - only inside "update"
      Specified by:
      getWrite in interface BlockMgr
    • promote

      public Block promote(Block block)
      Description copied from interface: BlockMgr
      Promote to writable : it's OK to promote an already writable block
      Specified by:
      promote in interface BlockMgr
    • release

      public void release(Block block)
      Description copied from interface: BlockMgr
      Release a block, unmodified or already written.
      Specified by:
      release in interface BlockMgr
    • write

      public void write(Block block)
      Description copied from interface: BlockMgr
      Write a block back - it still needs releasing.
      Specified by:
      write in interface BlockMgr
    • overwrite

      public void overwrite(Block block)
      Description copied from interface: BlockMgr
      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.
      Specified by:
      overwrite in interface BlockMgr
    • free

      public void free(Block block)
      Description copied from interface: BlockMgr
      Announce a block is no longer in use (i.e it's now freed)
      Specified by:
      free in interface BlockMgr
    • isEmpty

      public boolean isEmpty()
      Description copied from interface: BlockMgr
      Answer whether there are any blocks in the collection being managed
      Specified by:
      isEmpty in interface BlockMgr
    • allocLimit

      public long allocLimit()
      Description copied from interface: BlockMgr
      The fixed allocated blocks are in the range [0,allocLimit). Allocation units need not be +1 increments
      Specified by:
      allocLimit in interface BlockMgr
    • resetAlloc

      public void resetAlloc(long boundary)
      Description copied from interface: BlockMgr
      Reset the allocation limit, should be a number previously obtained from allocLimit
      Specified by:
      resetAlloc in interface BlockMgr
    • sync

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

      public void syncForce()
      Description copied from interface: BlockMgr
      Sync the block manager : system operation to ensure sync() is passed down
      Specified by:
      syncForce in interface BlockMgr
    • valid

      public boolean valid(int id)
      Description copied from interface: BlockMgr
      Is this a valid block id? (may be a free block)
      Specified by:
      valid in interface BlockMgr
    • isClosed

      public boolean isClosed()
      Description copied from interface: BlockMgr
      Is this block manager still usable? Closed block managers can not perform any operations except this one.
      Specified by:
      isClosed in interface BlockMgr
    • close

      public void close()
      Description copied from interface: BlockMgr
      Close the block manager
      Specified by:
      close in interface BlockMgr
      Specified by:
      close in interface org.apache.jena.atlas.lib.Closeable
    • beginRead

      public void beginRead()
      Description copied from interface: BlockMgr
      Start of read
      Specified by:
      beginRead in interface BlockMgr
    • endRead

      public void endRead()
      Description copied from interface: BlockMgr
      Completion of read
      Specified by:
      endRead in interface BlockMgr
    • beginUpdate

      public void beginUpdate()
      Description copied from interface: BlockMgr
      Start of update
      Specified by:
      beginUpdate in interface BlockMgr
    • endUpdate

      public void endUpdate()
      Description copied from interface: BlockMgr
      Completion of update
      Specified by:
      endUpdate in interface BlockMgr
    • getLabel

      public String getLabel()
      Specified by:
      getLabel in interface BlockMgr
    • toString

      public String toString()
      Overrides:
      toString in class Object