dbXML API

com.dbxml.db.common.btree
Class Paged

java.lang.Object
  extended bycom.dbxml.db.common.btree.Paged
All Implemented Interfaces:
Configurable
Direct Known Subclasses:
BTree

public abstract class Paged
extends java.lang.Object
implements Configurable

Paged is a paged file foundation that is used by both the BTree class and the ValueIndexer. It provides flexible paged I/O and page caching functionality.


Nested Class Summary
 class Paged.FileHeader
          FileHeader
 class Paged.Page
          Page
 class Paged.PageHeader
          PageHeader
 
Constructor Summary
Paged()
           
Paged(java.io.File file)
           
 
Method Summary
static void addPageFilter(PageFilter pageFilter)
          setPageFilter adds a PageFilter to the PageFilter chain.
 boolean close()
           
 boolean create()
           
abstract  Paged.FileHeader createFileHeader()
          createFileHeader must be implemented by a Paged implementation in order to create an appropriate subclass instance of a FileHeader.
abstract  Paged.FileHeader createFileHeader(boolean read)
          createFileHeader must be implemented by a Paged implementation in order to create an appropriate subclass instance of a FileHeader.
abstract  Paged.FileHeader createFileHeader(long pageCount)
          createFileHeader must be implemented by a Paged implementation in order to create an appropriate subclass instance of a FileHeader.
abstract  Paged.FileHeader createFileHeader(long pageCount, int pageSize)
          createFileHeader must be implemented by a Paged implementation in order to create an appropriate subclass instance of a FileHeader.
abstract  Paged.PageHeader createPageHeader()
          createPageHeader must be implemented by a Paged implementation in order to create an appropriate subclass instance of a PageHeader.
static Value[] deleteArrayValue(Value[] vals, int idx)
           
 boolean drop()
           
 boolean exists()
           
 void flush(Transaction tx)
           
 Configuration getConfig()
          getConfig retrieves the configuration information for the Configurable object instance.
 Paged.FileHeader getFileHeader()
          getFileHeader returns the FileHeader
 TransactionLog getTransactionLog()
           
static Value[] insertArrayValue(Value[] vals, Value val, int idx)
           
 boolean isOpened()
           
static PageFilter[] listPageFilters()
          listPageFilters returns a list of the PageFilters in the PageFilter chain.
 boolean open()
           
static void removePageFilter(PageFilter pageFilter)
          removePageFilter removes the PageFilter from the PageFilter chain.
 void setConfig(Configuration config)
          setConfig sets the configuration information for the Configurable object instance.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Paged

public Paged()

Paged

public Paged(java.io.File file)
Method Detail

setConfig

public void setConfig(Configuration config)
               throws dbXMLException
Description copied from interface: Configurable
setConfig sets the configuration information for the Configurable object instance.

Specified by:
setConfig in interface Configurable
Parameters:
config - The configuration Node
Throws:
dbXMLException

getConfig

public Configuration getConfig()
Description copied from interface: Configurable
getConfig retrieves the configuration information for the Configurable object instance.

Specified by:
getConfig in interface Configurable
Returns:
The configuration Node

addPageFilter

public static final void addPageFilter(PageFilter pageFilter)
setPageFilter adds a PageFilter to the PageFilter chain.

Parameters:
pageFilter - The PageFilter

removePageFilter

public static final void removePageFilter(PageFilter pageFilter)
removePageFilter removes the PageFilter from the PageFilter chain.

Parameters:
pageFilter - The PageFilter

listPageFilters

public static final PageFilter[] listPageFilters()
listPageFilters returns a list of the PageFilters in the PageFilter chain.

Returns:
The PageFilter list

getFileHeader

public Paged.FileHeader getFileHeader()
getFileHeader returns the FileHeader

Returns:
The FileHeader

exists

public boolean exists()

create

public boolean create()
               throws DBException
Throws:
DBException

open

public boolean open()
             throws DBException
Throws:
DBException

close

public boolean close()
              throws DBException
Throws:
DBException

isOpened

public boolean isOpened()

drop

public boolean drop()
             throws DBException
Throws:
DBException

flush

public void flush(Transaction tx)
           throws DBException
Throws:
DBException

getTransactionLog

public TransactionLog getTransactionLog()

createFileHeader

public abstract Paged.FileHeader createFileHeader()
createFileHeader must be implemented by a Paged implementation in order to create an appropriate subclass instance of a FileHeader.

Returns:
a new FileHeader

createFileHeader

public abstract Paged.FileHeader createFileHeader(boolean read)
                                           throws java.io.IOException
createFileHeader must be implemented by a Paged implementation in order to create an appropriate subclass instance of a FileHeader.

Parameters:
read - If true, reads the FileHeader from disk
Returns:
a new FileHeader
Throws:
java.io.IOException - if an exception occurs

createFileHeader

public abstract Paged.FileHeader createFileHeader(long pageCount)
createFileHeader must be implemented by a Paged implementation in order to create an appropriate subclass instance of a FileHeader.

Parameters:
pageCount - The number of pages to allocate for primary storage
Returns:
a new FileHeader

createFileHeader

public abstract Paged.FileHeader createFileHeader(long pageCount,
                                                  int pageSize)
createFileHeader must be implemented by a Paged implementation in order to create an appropriate subclass instance of a FileHeader.

Parameters:
pageCount - The number of pages to allocate for primary storage
pageSize - The size of a Page (should be a multiple of a FS block)
Returns:
a new FileHeader

createPageHeader

public abstract Paged.PageHeader createPageHeader()
createPageHeader must be implemented by a Paged implementation in order to create an appropriate subclass instance of a PageHeader.

Returns:
a new PageHeader

insertArrayValue

public static Value[] insertArrayValue(Value[] vals,
                                       Value val,
                                       int idx)

deleteArrayValue

public static Value[] deleteArrayValue(Value[] vals,
                                       int idx)

dbXML API

Copyright (c) 2004 The dbXML Group