public interface RecordManager
The set of record operations is simple: fetch, insert, update and delete. Each record is identified using a "rowid" and contains a byte[] data block. Rowids are returned on inserts and you can store them someplace safe to be able to get back to them. Data blocks can be as long as you wish, and may have lengths different from the original when updating.
Modifier and Type | Field and Description |
---|---|
static int |
NAME_DIRECTORY_ROOT
Reserved slot for name directory.
|
Modifier and Type | Method and Description |
---|---|
void |
close()
Closes the record manager.
|
void |
commit()
Commit (make persistent) all changes since beginning of transaction.
|
void |
delete(long recid)
Deletes a record.
|
Object |
fetch(long recid)
Fetches a record using standard java object serialization.
|
Object |
fetch(long recid,
Serializer serializer)
Fetches a record using a custom serializer.
|
long |
getNamedObject(String name)
Obtain the record id of a named object.
|
long |
getRoot(int id)
Returns the indicated root rowid.
|
int |
getRootCount()
Returns the number of slots available for "root" rowids.
|
long |
insert(Object obj)
Inserts a new record using standard java object serialization.
|
long |
insert(Object obj,
Serializer serializer)
Inserts a new record using a custom serializer.
|
void |
rollback()
Rollback (cancel) all changes since beginning of transaction.
|
void |
setNamedObject(String name,
long recid)
Set the record id of a named object.
|
void |
setRoot(int id,
long rowid)
Sets the indicated root rowid.
|
void |
update(long recid,
Object obj)
Updates a record using standard java object serialization.
|
void |
update(long recid,
Object obj,
Serializer serializer)
Updates a record using a custom serializer.
|
static final int NAME_DIRECTORY_ROOT
long insert(Object obj) throws IOException
obj
- the object for the new record.IOException
- when one of the underlying I/O operations fails.long insert(Object obj, Serializer serializer) throws IOException
obj
- the object for the new record.serializer
- a custom serializerIOException
- when one of the underlying I/O operations fails.void delete(long recid) throws IOException
recid
- the rowid for the record that should be deleted.IOException
- when one of the underlying I/O operations fails.void update(long recid, Object obj) throws IOException
recid
- the recid for the record that is to be updated.obj
- the new object for the record.IOException
- when one of the underlying I/O operations fails.void update(long recid, Object obj, Serializer serializer) throws IOException
recid
- the recid for the record that is to be updated.obj
- the new object for the record.serializer
- a custom serializerIOException
- when one of the underlying I/O operations fails.Object fetch(long recid) throws IOException
recid
- the recid for the record that must be fetched.IOException
- when one of the underlying I/O operations fails.Object fetch(long recid, Serializer serializer) throws IOException
recid
- the recid for the record that must be fetched.serializer
- a custom serializerIOException
- when one of the underlying I/O operations fails.void close() throws IOException
IOException
- when one of the underlying I/O operations fails.int getRootCount()
long getRoot(int id) throws IOException
IOException
getRootCount()
void setRoot(int id, long rowid) throws IOException
IOException
getRootCount()
void commit() throws IOException
IOException
void rollback() throws IOException
IOException
long getNamedObject(String name) throws IOException
IOException
void setNamedObject(String name, long recid) throws IOException
IOException
Copyright © 2003–2013 The Apache Software Foundation. All rights reserved.