jdbm.recman
Class FreeLogicalRowIdPage

java.lang.Object
  extended byjdbm.recman.PageHeader
      extended byjdbm.recman.FreeLogicalRowIdPage
All Implemented Interfaces:
BlockView

class FreeLogicalRowIdPage
extends PageHeader

Class describing a page that holds logical rowids that were freed. Note that the methods have *physical* rowids in their signatures - this is because logical and physical rowids are internally the same, only their external representation (i.e. in the client API) differs.


Field Summary
(package private) static short ELEMS_PER_PAGE
           
(package private) static short O_FREE
           
(package private)  PhysicalRowId[] slots
           
 
Fields inherited from class jdbm.recman.PageHeader
block, SIZE
 
Constructor Summary
(package private) FreeLogicalRowIdPage(BlockIo block)
          Constructs a data page view from the indicated block.
 
Method Summary
(package private)  PhysicalRowId alloc(int slot)
          Allocates a slot
(package private)  void free(int slot)
          Frees a slot
(package private)  PhysicalRowId get(int slot)
          Returns the value of the indicated slot
(package private)  short getCount()
          Returns the number of free rowids
(package private)  int getFirstAllocated()
          Returns first allocated slot, -1 if no slots are available.
(package private)  int getFirstFree()
          Returns first free slot, -1 if no slots are available
(package private) static FreeLogicalRowIdPage getFreeLogicalRowIdPageView(BlockIo block)
          Factory method to create or return a data page for the indicated block.
(package private)  boolean isAllocated(int slot)
          Returns true if a slot is allocated
(package private)  boolean isFree(int slot)
          Returns true if a slot is free
 
Methods inherited from class jdbm.recman.PageHeader
getMagic, getNext, getPrev, getView, paranoiaMagicOk, setNext, setPrev, setType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

O_FREE

static final short O_FREE
See Also:
Constant Field Values

ELEMS_PER_PAGE

static final short ELEMS_PER_PAGE
See Also:
Constant Field Values

slots

final PhysicalRowId[] slots
Constructor Detail

FreeLogicalRowIdPage

FreeLogicalRowIdPage(BlockIo block)
Constructs a data page view from the indicated block.

Method Detail

getFreeLogicalRowIdPageView

static FreeLogicalRowIdPage getFreeLogicalRowIdPageView(BlockIo block)
Factory method to create or return a data page for the indicated block.


getCount

short getCount()
Returns the number of free rowids


free

void free(int slot)
Frees a slot


alloc

PhysicalRowId alloc(int slot)
Allocates a slot


isAllocated

boolean isAllocated(int slot)
Returns true if a slot is allocated


isFree

boolean isFree(int slot)
Returns true if a slot is free


get

PhysicalRowId get(int slot)
Returns the value of the indicated slot


getFirstFree

int getFirstFree()
Returns first free slot, -1 if no slots are available


getFirstAllocated

int getFirstAllocated()
Returns first allocated slot, -1 if no slots are available.



Cees de Groot (C) 2000-2001. All rights reserved http://jdbm.sourceforge.net