|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectorg.jboss.cache.loader.DelegatingCacheLoader
CacheLoader implementation which delegates to another TreeCache. This allows to stack caches on top of each other, allowing for hierarchical cache levels. For example, first level cache delegates to a second level cache, which delegates to a persistent cache. Sample code:
TreeCache firstLevel=new TreeCache(); TreeCache secondLevel=new TreeCache(); DelegatingCacheLoader l=new DelegatingCacheLoader(secondLevel); l.setCache(firstLevel); firstLevel.setCacheLoader(l); secondLevel.start(); firstLevel.start();
| Constructor Summary | |
DelegatingCacheLoader(TreeCache delegate)
|
|
| Method Summary | |
void |
commit(Object tx)
Commit the transaction. |
void |
create()
|
void |
destroy()
|
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 |
void |
put(Fqn fqn,
Map attributes,
boolean erase)
|
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 props)
Sets the configuration. |
void |
start()
|
void |
stop()
|
void |
storeEntireState(byte[] state)
Store the given state in secondary storage. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public DelegatingCacheLoader(TreeCache delegate)
| Method Detail |
public void setConfig(Properties props)
CacheLoaderService.create() and Service.start()
setConfig in interface CacheLoaderprops - A list of properties, defined in the XML filepublic void setCache(TreeCache c)
CacheLoader
setCache in interface CacheLoaderc - The cache on which this loader workspublic Set getChildrenNames(Fqn fqn) throws Exception
CacheLoader
getChildrenNames in interface CacheLoaderfqn - The FQN of the parent
Exceptionpublic Object get(Fqn name, Object key) throws Exception
CacheLoader
get in interface CacheLoadername -
Exceptionpublic Map get(Fqn name) throws Exception
CacheLoader
get in interface CacheLoadername -
public boolean exists(Fqn name) throws Exception
CacheLoader
exists in interface CacheLoadername -
Exceptionpublic Object put(Fqn name, Object key, Object value) throws Exception
CacheLoader
put in interface CacheLoaderExceptionpublic void put(Fqn name, Map attributes) throws Exception
CacheLoader
put in interface CacheLoadername - The fully qualified name of the nodeattributes - A Map of attributes. Can be null
Exceptionpublic void put(Fqn fqn, Map attributes, boolean erase) throws Exception
Exceptionpublic void put(List modifications) throws Exception
CacheLoader
put in interface CacheLoadermodifications - A ListExceptionpublic Object remove(Fqn name, Object key) throws Exception
CacheLoader
remove in interface CacheLoaderExceptionpublic void remove(Fqn name) throws Exception
CacheLoader
remove in interface CacheLoaderExceptionpublic void removeData(Fqn name) throws Exception
CacheLoader
removeData in interface CacheLoadername -
Exceptionpublic void prepare(Object tx, List modifications, boolean one_phase) throws Exception
CacheLoadertx (tx is the key)
prepare in interface CacheLoadertx - 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 CacheLoader.commit(Object) or CacheLoader.rollback(Object) method call later
Exceptionpublic void commit(Object tx) throws Exception
CacheLoadertx 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
commit in interface CacheLoadertx -
Exceptionpublic void rollback(Object tx)
CacheLoadertx and roll back that transaction
rollback in interface CacheLoadertx -
public byte[] loadEntireState()
throws Exception
CacheLoader
loadEntireState in interface CacheLoaderException
public void storeEntireState(byte[] state)
throws Exception
CacheLoader
storeEntireState in interface CacheLoaderException
public void create()
throws Exception
create in interface org.jboss.system.ServiceException
public void start()
throws Exception
start in interface org.jboss.system.ServiceExceptionpublic void stop()
stop in interface org.jboss.system.Servicepublic void destroy()
destroy in interface org.jboss.system.Service
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||