Class w3c.tools.dbm.jdbm
All Packages  Class Hierarchy  This Package  Previous  Next  Index

Class w3c.tools.dbm.jdbm

java.lang.Object
   |
   +----w3c.tools.dbm.jdbm

public class jdbm
extends Object
An dbm like database in Java. This database is a transcription of what I have understood of gdbm into Java. Some of the code here I don't understand, but it looks like it works.

Variable Index

 o BLOCK_SIZE
 o CACHE_SIZE
Default cache size.
 o DIR_BITS
Default directory bits for this database.
 o STORE_INSERT
Mode for store - Only insert this element if it is not already defined.
 o STORE_REPLACE
Mode for store - Replace any existing entry with the new provided one.

Constructor Index

 o jdbm(File)

Method Index

 o allocateSpace(int)
Allocate space in the file.
 o delete(byte[])
Delete the association for the provided key.
 o delete(String)
Delete the association for the provided String key.
 o getBytes(String)
 o loadBucket(int)
Load the bucket whose file pointer is given.
 o lookup(byte[])
Lookup the value associated with the provided key.
 o lookup(String)
Lookup the value associated to the given String key.
 o main(String[])
 o printAvail(PrintStream)
Print the list of available blocks:
 o printHeader(PrintStream)
Print various database options to the given stream.
 o save()
Save thisdatabase to disk.
 o store(byte[], byte[], int)
Store the given association of key/value.
 o trace(String)
 o unloadBucket()
Select a bucket to be removed from the cache, unload it.
 o write(jdbmBucket, byte[], byte[])
Allocate and write the provided key/value.

Variables

 o STORE_REPLACE
  public final static int STORE_REPLACE
Mode for store - Replace any existing entry with the new provided one.
 o STORE_INSERT
  public final static int STORE_INSERT
Mode for store - Only insert this element if it is not already defined.
 o BLOCK_SIZE
  protected final static int BLOCK_SIZE
 o DIR_BITS
  protected final static int DIR_BITS
Default directory bits for this database.
 o CACHE_SIZE
  protected final static int CACHE_SIZE
Default cache size.

Constructors

 o jdbm
  public jdbm(File file) throws IOException

Methods

 o trace
  protected void trace(String msg)
 o printHeader
  public void printHeader(PrintStream out)
Print various database options to the given stream.
Parameters:
out - The PrintStream to display info to.
 o printAvail
  public void printAvail(PrintStream out)
Print the list of available blocks:
Parameters:
out - The print stream to print to.
 o allocateSpace
  protected int allocateSpace(int size)
Allocate space in the file.
Parameters:
size - The size of the file block we want.
Returns:
The file pointer to the allocated block.
 o write
  protected int write(jdbmBucket bucket,
                      byte key[],
                      byte data[]) throws IOException
Allocate and write the provided key/value. This is a short end for writing new associations to the file.
Parameters:
bucket - Suggested bucket to allocate data from.
key - The key part of the item to write.
data - The data part of the item to write.
Returns:
The file position of the written element.
 o unloadBucket
  protected synchronized jdbmBucket unloadBucket() throws IOException
Select a bucket to be removed from the cache, unload it.
Returns:
A bucket ready to be reused.
 o loadBucket
  protected synchronized LRUEntry loadBucket(int fileptr) throws IOException
Load the bucket whose file pointer is given.
Parameters:
fileptr - The file pointer of the bucket to be loaded.
into - The bucket to resue (or null).
 o store
  public void store(byte key[],
                    byte value[],
                    int mode) throws IOException
Store the given association of key/value.
Parameters:
key - The bytes that makes the key.
value - The bytes that makes the value.
mode - The mode of the storing, can be...
 o lookup
  public byte[] lookup(byte key[]) throws IOException
Lookup the value associated with the provided key.
Parameters:
key - The bits of the key to look for.
Returns:
The bits that makes the associated value, or null if not found.
 o lookup
  public byte[] lookup(String key) throws IOException
Lookup the value associated to the given String key.
Parameters:
key - The string that we are looking for.
Returns:
The bits that makes the associated value, or null if not found.
 o delete
  public boolean delete(byte key[]) throws IOException
Delete the association for the provided key.
Parameters:
key - The key of the element to remove.
Returns:
A boolean true if deletion was succesfull.
 o delete
  public boolean delete(String key) throws IOException
Delete the association for the provided String key.
Parameters:
key - The key of the element to remove.
Returns:
A boolean true if deletion was succesfull.
 o save
  public void save() throws IOException
Save thisdatabase to disk.
 o getBytes
  public static byte[] getBytes(String str)
 o main
  public static void main(String args[]) throws Exception

All Packages  Class Hierarchy  This Package  Previous  Next  Index