|
Xindice API version 1.1 |
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Object | +--org.apache.xindice.core.filer.Paged
Paged is a paged file implementation that is foundation for both the
BTree class and the HashFiler. It provides flexible paged I/O and
page caching functionality.
Paged has folowing configuration attributes:
| Inner Class Summary | |
protected class |
Paged.FileHeader
Paged file's header |
protected class |
Paged.Page
Paged file's page |
protected static class |
Paged.PageHeader
Paged file page's header |
protected static class |
Paged.PageKey
The object wrapping page number. |
| Field Summary | |
protected static String |
CONFIG_DESCRIPTORS_MAX
Name of the configuration attribute "max-descriptors" |
protected static String |
CONFIG_KEYSIZE_MAX
Name of the configuration attribute "maxkeysize" |
protected static String |
CONFIG_PAGECOUNT
Name of the configuration attribute "pagecount" |
protected static String |
CONFIG_PAGESIZE
Name of the configuration attribute "pagesize" |
protected static byte |
DELETED
Deleted page status |
protected static int |
NO_PAGE
Page ID of non-existent page |
protected static byte |
OVERFLOW
Overflow page status |
protected static byte |
UNUSED
Unused page status |
| Constructor Summary | |
Paged()
|
|
Paged(File file)
|
|
| Method Summary | |
protected void |
checkOpened()
|
boolean |
close()
close closes the DBObject |
protected void |
closeDescriptor(RandomAccessFile raf)
Closes a RandomAccessFile ('descriptor') and removes it from the pool. |
boolean |
create()
create creates a new DBObject and any associated resources for the new DBObject, such as disk files, etc. |
protected abstract Paged.FileHeader |
createFileHeader()
createFileHeader must be implemented by a Paged implementation in order to create an appropriate subclass instance of a FileHeader. |
protected abstract Paged.PageHeader |
createPageHeader()
createPageHeader must be implemented by a Paged implementation in order to create an appropriate subclass instance of a PageHeader. |
static int[] |
deleteArrayInt(int[] vals,
int idx)
|
static long[] |
deleteArrayLong(long[] vals,
int idx)
|
static short[] |
deleteArrayShort(short[] vals,
int idx)
|
static Value[] |
deleteArrayValue(Value[] vals,
int idx)
|
boolean |
drop()
drop instructs the DBObjectimplementation to remove itself from existence. |
boolean |
exists()
exists returns whether or not a physical representation of this DBObject actually exists. |
void |
flush()
|
Configuration |
getConfig()
getConfig retrieves the configuration information for the Configurable object instance. |
protected RandomAccessFile |
getDescriptor()
Obtain RandomAccessFile ('descriptor') object out of the pool. |
protected File |
getFile()
getFile returns the file object for this Paged. |
protected Paged.FileHeader |
getFileHeader()
getFileHeader returns the FileHeader |
protected Paged.Page |
getFreePage()
getFreePage returns the first free Page from secondary storage. |
protected Paged.Page |
getPage(long pageNum)
getPage returns the page specified by pageNum. |
static int[] |
insertArrayInt(int[] vals,
int val,
int idx)
|
static long[] |
insertArrayLong(long[] vals,
long val,
int idx)
|
static short[] |
insertArrayShort(short[] vals,
short val,
int idx)
|
static Value[] |
insertArrayValue(Value[] vals,
Value val,
int idx)
|
boolean |
isOpened()
isOpened returns whether or not the DBObject is opened for business. |
boolean |
open()
open opens the DBObject |
protected void |
putDescriptor(RandomAccessFile raf)
Puts a RandomAccessFile ('descriptor') back into the descriptor pool. |
protected Value |
readValue(long page)
readValue reads the multi-Paged Value starting at the specified page number. |
protected Value |
readValue(Paged.Page page)
readValue reads the multi-Paged Value starting at the specified Page. |
void |
setConfig(Configuration config)
setConfig sets the configuration information for the Configurable object instance. |
protected void |
setFile(File file)
setFile sets the file object for this Paged. |
protected void |
unlinkPages(long pageNum)
unlinkPages unlinks a set of pages starting at the specified page number. |
protected void |
unlinkPages(Paged.Page page)
unlinkPages unlinks a set of pages starting at the specified Page. |
protected void |
writeValue(long page,
Value value)
writeValue writes the multi-Paged Value starting at the specified page number. |
protected void |
writeValue(Paged.Page page,
Value value)
writeValue writes the multi-Paged Value starting at the specified Page. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
protected static final String CONFIG_PAGESIZE
protected static final String CONFIG_PAGECOUNT
protected static final String CONFIG_KEYSIZE_MAX
protected static final String CONFIG_DESCRIPTORS_MAX
protected static final byte UNUSED
protected static final byte OVERFLOW
protected static final byte DELETED
protected static final int NO_PAGE
| Constructor Detail |
public Paged()
public Paged(File file)
| Method Detail |
public void setConfig(Configuration config)
ConfigurablesetConfig in interface Configurableorg.apache.xindice.util.Configurableconfig - The configuration Nodepublic Configuration getConfig()
ConfigurablegetConfig in interface Configurableorg.apache.xindice.util.Configurableprotected final void setFile(File file)
file - The Fileprotected final File getFile()
protected final RandomAccessFile getDescriptor()
throws IOException
protected final void putDescriptor(RandomAccessFile raf)
protected final void closeDescriptor(RandomAccessFile raf)
protected final Paged.Page getPage(long pageNum)
throws IOException
pageNum - The Page numberIOException - if an Exception occurs
protected final Value readValue(Paged.Page page)
throws IOException
page - The starting PageIOException - if an Exception occurs
protected final Value readValue(long page)
throws IOException
page - The starting page numberIOException - if an Exception occurs
protected final void writeValue(Paged.Page page,
Value value)
throws IOException
page - The starting Pagevalue - The Value to writeIOException - if an Exception occurs
protected final void writeValue(long page,
Value value)
throws IOException
page - The starting page numbervalue - The Value to writeIOException - if an Exception occurs
protected void unlinkPages(Paged.Page page)
throws IOException
page - The starting Page to unlinkIOException - if an Exception occurs
protected final void unlinkPages(long pageNum)
throws IOException
pageNum - The starting page number to unlinkIOException - if an Exception occurs
protected final Paged.Page getFreePage()
throws IOException
IOException - if an Exception occurs
protected final void checkOpened()
throws DBException
DBException - COL_COLLECTION_CLOSED if paged file is closedprotected Paged.FileHeader getFileHeader()
public boolean exists()
DBObjectexists in interface DBObject
public boolean create()
throws DBException
DBObjectcreate in interface DBObjectorg.apache.xindice.core.DBObject
public boolean open()
throws DBException
DBObjectopen in interface DBObjectorg.apache.xindice.core.DBObject
public boolean close()
throws DBException
DBObjectclose in interface DBObjectorg.apache.xindice.core.DBObjectpublic boolean isOpened()
DBObjectisOpened in interface DBObjectorg.apache.xindice.core.DBObject
public boolean drop()
throws DBException
DBObjectdrop in interface DBObjectorg.apache.xindice.core.DBObject
public void flush()
throws DBException
protected abstract Paged.FileHeader createFileHeader()
protected abstract Paged.PageHeader createPageHeader()
public static Value[] insertArrayValue(Value[] vals,
Value val,
int idx)
public static Value[] deleteArrayValue(Value[] vals,
int idx)
public static long[] insertArrayLong(long[] vals,
long val,
int idx)
public static long[] deleteArrayLong(long[] vals,
int idx)
public static int[] insertArrayInt(int[] vals,
int val,
int idx)
public static int[] deleteArrayInt(int[] vals,
int idx)
public static short[] insertArrayShort(short[] vals,
short val,
int idx)
public static short[] deleteArrayShort(short[] vals,
int idx)
|
Xindice API version 1.1 |
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||