|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.arjuna.ats.arjuna.objectstore.ObjectStore
public abstract class ObjectStore
The object store interface is the application's route to using a specific object store implementation. The interface dynamically binds to an implementation of the right type. This is the base class from which all object store types are derived. Note that because object store instances are stateless, to improve efficiency we try to only create one instance of each type per process. Therefore, the create and destroy methods are used instead of new and delete. If an object store is accessed via create it *must* be deleted using destroy. Of course it is still possible to make use of new directly.
Field Summary | |
---|---|
protected int |
shareStatus
|
Constructor Summary | |
---|---|
protected |
ObjectStore()
|
protected |
ObjectStore(int ss)
|
Method Summary | |
---|---|
boolean |
allObjUids(java.lang.String s,
InputObjectState buff)
|
boolean |
fullCommitNeeded()
Does this store need to do the full write_uncommitted/commit protocol? |
void |
initialise(Uid u,
java.lang.String tn)
Initialise the object store. |
boolean |
isType(Uid u,
java.lang.String tn,
int st)
Is the current state of the object the same as that provided as the last parameter? |
java.lang.String |
locateStore(java.lang.String localOSRoot)
|
void |
pack(OutputBuffer buff)
Pack up the object store state. |
protected java.lang.String |
revealedId(java.lang.String name)
Given a type id which is possibly hidden (e.g., has a ! at the end), make it a valid Uid so we can return it. |
int |
shareState()
|
java.lang.String |
storeDir()
|
java.lang.String |
storeRoot()
|
protected abstract boolean |
supressEntry(java.lang.String name)
Suppress directories of the specified type from allTypes etc? |
void |
sync()
Some object store implementations may be running with automatic sync disabled. |
void |
unpack(InputBuffer buff)
Unpack an object store. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface com.arjuna.ats.arjuna.objectstore.ParticipantStore |
---|
commit_state, read_uncommitted, remove_uncommitted, write_uncommitted |
Methods inherited from interface com.arjuna.ats.arjuna.objectstore.RecoveryStore |
---|
allObjUids, allTypes, currentState, hide_state, read_committed, reveal_state |
Methods inherited from interface com.arjuna.ats.arjuna.objectstore.TxLog |
---|
remove_committed, write_committed |
Methods inherited from interface com.arjuna.ats.arjuna.objectstore.BaseStore |
---|
getStoreName, typeIs |
Field Detail |
---|
protected int shareStatus
Constructor Detail |
---|
protected ObjectStore()
protected ObjectStore(int ss)
Method Detail |
---|
public boolean allObjUids(java.lang.String s, InputObjectState buff) throws ObjectStoreException
allObjUids
in interface RecoveryStore
ObjectStoreException
public void sync() throws java.io.SyncFailedException, ObjectStoreException
sync
in interface TxLog
java.io.SyncFailedException
ObjectStoreException
public java.lang.String locateStore(java.lang.String localOSRoot) throws ObjectStoreException
localOSRoot
- the root of the store.
ObjectStoreException
public boolean fullCommitNeeded()
true
if full commit is needed, false
otherwise.public boolean isType(Uid u, java.lang.String tn, int st) throws ObjectStoreException
isType
in interface RecoveryStore
u
- The object to work on.tn
- The type of the object.st
- The expected type of the object.
true
if the current state is as expected,
false
otherwise.
ObjectStoreException
public void initialise(Uid u, java.lang.String tn)
public void pack(OutputBuffer buff) throws java.io.IOException
java.io.IOException
public void unpack(InputBuffer buff) throws java.io.IOException
java.io.IOException
public final int shareState()
public final java.lang.String storeDir()
public final java.lang.String storeRoot()
protected abstract boolean supressEntry(java.lang.String name)
protected java.lang.String revealedId(java.lang.String name)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |