|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
Implementations need to load an object given a key from secondary storage, or store an object under a given
key in secondary storage (e.g. DB, filesystem).
Lifecycle: first an instance of the loader is created, then the configuration (#setConfig(String))
and cache (setCache(TreeCache)) are set. After this, Service.create() is called. Then @start() is
called. When re-deployed, Service.stop() will be called, followed by another Service.start(). Finally, when
shut down, Service.destroy() is called, after which the loader is unusable.
| Method Summary | |
void |
commit(Object tx)
Commit the transaction. |
boolean |
exists(Fqn name)
Checks whether the CacheLoader has a node with Fqn |
Map |
get(Fqn name)
Returns all keys and values from the persistent store, given a fully qualified name |
Object |
get(Fqn name,
Object key)
Returns the value for a given key. |
Set |
getChildrenNames(Fqn fqn)
Returns a list of children names, all names are relative. |
byte[] |
loadEntireState()
Fetch the entire state for this cache from secondary storage (disk, DB) and return it as a byte buffer. |
void |
prepare(Object tx,
List modifications,
boolean one_phase)
Prepare the modifications. |
void |
put(Fqn name,
Map attributes)
Inserts all elements of attributes into the attributes hashmap of the given node, overwriting existing attributes, but not clearing the existing hashmap before insertion (making it a union of existing and new attributes) If the node does not exist, all parent nodes from the root down are created automatically |
Object |
put(Fqn name,
Object key,
Object value)
Inserts key and value into the attributes hashmap of the given node. |
void |
put(List modifications)
Inserts all modifications to the backend store. |
void |
remove(Fqn name)
Removes the given node. |
Object |
remove(Fqn name,
Object key)
Removes the given key and value from the attributes of the given node. |
void |
removeData(Fqn name)
Removes all attributes from a given node, but doesn't delete the node itself |
void |
rollback(Object tx)
Roll the transaction back. |
void |
setCache(TreeCache c)
This method allows the CacheLoader to set the TreeCache, therefore allowing the CacheLoader to invoke methods of the TreeCache. |
void |
setConfig(Properties url)
Sets the configuration. |
void |
storeEntireState(byte[] state)
Store the given state in secondary storage. |
| Methods inherited from interface org.jboss.system.Service |
create, destroy, start, stop |
| Method Detail |
public void setConfig(Properties url)
Service.create() and Service.start()
url - A list of properties, defined in the XML filepublic void setCache(TreeCache c)
c - The cache on which this loader works
public Set getChildrenNames(Fqn fqn)
throws Exception
fqn - The FQN of the parent
Exception
public Object get(Fqn name,
Object key)
throws Exception
name -
Exception
public Map get(Fqn name)
throws Exception
name -
public boolean exists(Fqn name)
throws Exception
name -
Exception
public Object put(Fqn name,
Object key,
Object value)
throws Exception
Exception
public void put(Fqn name,
Map attributes)
throws Exception
name - The fully qualified name of the nodeattributes - A Map of attributes. Can be null
Exception
public void put(List modifications)
throws Exception
modifications - A ListException
public Object remove(Fqn name,
Object key)
throws Exception
Exception
public void remove(Fqn name)
throws Exception
Exception
public void removeData(Fqn name)
throws Exception
name -
Exception
public void prepare(Object tx,
List modifications,
boolean one_phase)
throws Exception
tx (tx is the key)
tx - The transaction, just used as a hashmap keymodifications - Listone_phase - Persist immediately and (for example) commit the local JDBC transaction as well. When true,
we won't get a commit(Object) or rollback(Object) method call later
Exception
public void commit(Object tx)
throws Exception
tx and commit that transactiontx key, to (for example) a file system (note this only holds if the previous prepare() did
not define one_phase=true
tx -
Exceptionpublic void rollback(Object tx)
tx and roll back that transaction
tx -
public byte[] loadEntireState()
throws Exception
Exception
public void storeEntireState(byte[] state)
throws Exception
Exception
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||