public class SnapshotRecordManager extends Object implements ActionRecordManager
Modifier and Type | Field and Description |
---|---|
protected RecordManager |
recordManager
Wrapped RecordManager
|
NAME_DIRECTORY_ROOT
Constructor and Description |
---|
SnapshotRecordManager(RecordManager recordManager,
int size)
Construct a SanshotRecordManager wrapping another RecordManager
|
Modifier and Type | Method and Description |
---|---|
void |
abortAction(ActionContext actionContext)
Aborts the given action.
|
ActionContext |
beginAction(boolean readOnly,
String whoStarted)
Initializes the context for the action.
|
void |
close()
Closes the record manager.
|
void |
commit()
Commit (make persistent) all changes since beginning of transaction.
|
void |
delete(long recid)
Deletes a record.
|
void |
endAction(ActionContext actionContext)
Ends the action associated with the context.
|
Object |
fetch(long recid)
Fetches a record using standard Java 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.
|
RecordManager |
getRecordManager()
Get the underlying Record Manager.
|
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 a custom serializer.
|
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 |
setCurrentActionContext(ActionContext context)
Set the context as the current action context for
the given thread
|
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.
|
String |
toString() |
void |
unsetCurrentActionContext(ActionContext context)
Unsets the context as the current action context.
|
void |
update(long recid,
Object obj)
Updates a record using standard Java serialization.
|
void |
update(long recid,
Object obj,
Serializer serializer)
Updates a record using a custom serializer.
|
protected RecordManager recordManager
public SnapshotRecordManager(RecordManager recordManager, int size)
recordManager
- Wrapped RecordManagerpublic ActionContext beginAction(boolean readOnly, String whoStarted)
beginAction
in interface ActionRecordManager
readOnly
- true if action does not do any modificationwhoStarted
- caller can use this for debuggingpublic void setCurrentActionContext(ActionContext context)
setCurrentActionContext
in interface ActionRecordManager
context
- identifies the contextpublic void unsetCurrentActionContext(ActionContext context)
unsetCurrentActionContext
in interface ActionRecordManager
context
- identifies the context.public void endAction(ActionContext actionContext)
endAction
in interface ActionRecordManager
actionContext
- identifies the action to endpublic void abortAction(ActionContext actionContext)
abortAction
in interface ActionRecordManager
actionContext
- identifies the action to abortpublic RecordManager getRecordManager()
public long insert(Object obj) throws IOException
insert
in interface RecordManager
obj
- the object for the new record.IOException
- when one of the underlying I/O operations fails.public long insert(Object obj, Serializer serializer) throws IOException
insert
in interface RecordManager
obj
- the object for the new record.serializer
- a custom serializerIOException
- when one of the underlying I/O operations fails.public void delete(long recid) throws IOException
delete
in interface RecordManager
recid
- the rowid for the record that should be deleted.IOException
- when one of the underlying I/O operations fails.public void update(long recid, Object obj) throws IOException
update
in interface RecordManager
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.public void update(long recid, Object obj, Serializer serializer) throws IOException
update
in interface RecordManager
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.public Object fetch(long recid) throws IOException
fetch
in interface RecordManager
recid
- the recid for the record that must be fetched.IOException
- when one of the underlying I/O operations fails.public Object fetch(long recid, Serializer serializer) throws IOException
fetch
in interface RecordManager
recid
- the recid for the record that must be fetched.serializer
- a custom serializerIOException
- when one of the underlying I/O operations fails.public void close() throws IOException
close
in interface RecordManager
IOException
- when one of the underlying I/O operations fails.public int getRootCount()
getRootCount
in interface RecordManager
public long getRoot(int id) throws IOException
getRoot
in interface RecordManager
IOException
getRootCount()
public void setRoot(int id, long rowid) throws IOException
setRoot
in interface RecordManager
IOException
getRootCount()
public void commit() throws IOException
commit
in interface RecordManager
IOException
public void rollback() throws IOException
rollback
in interface RecordManager
IOException
public long getNamedObject(String name) throws IOException
getNamedObject
in interface RecordManager
IOException
public void setNamedObject(String name, long recid) throws IOException
setNamedObject
in interface RecordManager
IOException
Copyright © 2016. All rights reserved.