|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.w3c.tools.dbm.jdbm
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.
Field Summary | |
protected static int |
BLOCK_SIZE
|
protected static int |
CACHE_SIZE
Default cache size. |
protected static int |
DIR_BITS
Default directory bits for this database. |
static int |
STORE_INSERT
Mode for store - Only insert this element if it is not already defined. |
static int |
STORE_REPLACE
Mode for store - Replace any existing entry with the new provided one. |
Constructor Summary | |
jdbm(java.io.File file)
|
Method Summary | |
protected int |
allocateSpace(int size)
Allocate space in the file. |
void |
close()
|
boolean |
delete(byte[] key)
Delete the association for the provided key. |
boolean |
delete(java.lang.String key)
Delete the association for the provided String key. |
java.util.Enumeration |
elements()
Enumerate the elements of the database. |
static byte[] |
getBytes(java.lang.String str)
|
protected boolean |
getNextBucket(org.w3c.tools.dbm.jdbmEnumerator enum)
Update this enumeration current bucket to the next one. |
java.util.Enumeration |
keys()
Enumerate the keys of this database. |
protected org.w3c.tools.dbm.LRUEntry |
loadBucket(int fileptr)
Load the bucket whose file pointer is given. |
byte[] |
lookup(byte[] key)
Lookup the value associated with the provided key. |
byte[] |
lookup(java.lang.String key)
Lookup the value associated to the given String key. |
static void |
main(java.lang.String[] args)
|
void |
printAvail(java.io.PrintStream out)
Print the list of available blocks: |
void |
printHeader(java.io.PrintStream out)
Print various database options to the given stream. |
jdbm |
reorganize(boolean trace)
Return a clean instance of that database, after reorganization. |
void |
save()
Save thisdatabase to disk. |
void |
store(byte[] key,
byte[] value,
int mode)
Store the given association of key/value. |
protected void |
trace(java.lang.String msg)
|
protected org.w3c.tools.dbm.jdbmBucket |
unloadBucket()
Select a bucket to be removed from the cache, unload it. |
protected int |
write(org.w3c.tools.dbm.jdbmBucket bucket,
byte[] key,
byte[] data)
Allocate and write the provided key/value. |
Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
Field Detail |
public static final int STORE_REPLACE
public static final int STORE_INSERT
protected static final int BLOCK_SIZE
protected static final int DIR_BITS
protected static final int CACHE_SIZE
Constructor Detail |
public jdbm(java.io.File file) throws java.io.IOException
Method Detail |
protected final void trace(java.lang.String msg)
public void printHeader(java.io.PrintStream out)
out
- The PrintStream to display info to.public void printAvail(java.io.PrintStream out)
out
- The print stream to print to.protected int allocateSpace(int size)
size
- The size of the file block we want.protected int write(org.w3c.tools.dbm.jdbmBucket bucket, byte[] key, byte[] data) throws java.io.IOException
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.protected org.w3c.tools.dbm.jdbmBucket unloadBucket() throws java.io.IOException
protected org.w3c.tools.dbm.LRUEntry loadBucket(int fileptr) throws java.io.IOException
fileptr
- The file pointer of the bucket to be loaded.into
- The bucket to resue (or null).public void store(byte[] key, byte[] value, int mode) throws java.io.IOException
key
- The bytes that makes the key.value
- The bytes that makes the value.mode
- The mode of the storing, can be...public byte[] lookup(byte[] key) throws java.io.IOException
key
- The bits of the key to look for.public byte[] lookup(java.lang.String key) throws java.io.IOException
key
- The string that we are looking for.public boolean delete(byte[] key) throws java.io.IOException
key
- The key of the element to remove.public boolean delete(java.lang.String key) throws java.io.IOException
key
- The key of the element to remove.public void save() throws java.io.IOException
protected boolean getNextBucket(org.w3c.tools.dbm.jdbmEnumerator enum) throws java.io.IOException
enum
- The current enumeration state.public java.util.Enumeration keys()
You are guaranteed, however that you will walk at least once through all the keys that were present at the time you created the enumeration (but not through the one that were deleted while you are walking through the database).
public java.util.Enumeration elements()
keys
counterpart.public void close() throws java.io.IOException
public jdbm reorganize(boolean trace)
public static byte[] getBytes(java.lang.String str)
public static void main(java.lang.String[] args) throws java.lang.Exception
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |