|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.jboss.cache.loader.DelegatingCacheLoader
public abstract class 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.
Field Summary | |
---|---|
static int |
delegateExists
|
static int |
delegateGet
|
static int |
delegateGetChildrenNames
|
static int |
delegateGetKey
|
static int |
delegateLoadEntireState
|
static int |
delegatePut
|
static int |
delegatePutKeyVal
|
static int |
delegateRemove
|
static int |
delegateRemoveData
|
static int |
delegateRemoveKey
|
static int |
delegateStoreEntireState
|
static int |
putList
|
Constructor Summary | |
---|---|
DelegatingCacheLoader()
|
Method Summary | |
---|---|
void |
commit(java.lang.Object tx)
Commits the transaction. |
void |
create()
|
protected abstract boolean |
delegateExists(Fqn name)
|
protected abstract java.util.Map |
delegateGet(Fqn name)
|
protected abstract java.util.Set |
delegateGetChildrenNames(Fqn fqn)
|
protected abstract byte[] |
delegateLoadEntireState()
|
protected abstract void |
delegatePut(Fqn name,
java.util.Map attributes)
|
protected abstract java.lang.Object |
delegatePut(Fqn name,
java.lang.Object key,
java.lang.Object value)
|
protected abstract void |
delegatePut(java.util.List modifications)
|
protected abstract void |
delegateRemove(Fqn name)
|
protected abstract java.lang.Object |
delegateRemove(Fqn name,
java.lang.Object key)
|
protected abstract void |
delegateRemoveData(Fqn name)
|
protected abstract void |
delegateStoreEntireState(byte[] state)
|
void |
destroy()
|
boolean |
exists(Fqn name)
Returns true if the CacheLoader has a node with a Fqn . |
java.util.Map |
get(Fqn name)
Returns all keys and values from the persistent store, given a fully qualified name. |
java.util.Set |
getChildrenNames(Fqn fqn)
Returns a set of children node names as Strings. |
byte[] |
loadEntireState()
Fetches the entire state for this cache from secondary storage (disk, DB) and returns it as a byte buffer. |
void |
prepare(java.lang.Object tx,
java.util.List modifications,
boolean one_phase)
Prepares a list of modifications. |
void |
put(Fqn name,
java.util.Map attributes)
Puts all entries of the map into the existing map of the given node, overwriting existing keys, but not clearing the existing map before insertion. |
void |
put(Fqn fqn,
java.util.Map attributes,
boolean erase)
|
java.lang.Object |
put(Fqn name,
java.lang.Object key,
java.lang.Object value)
Puts a key and value into the attribute map of a given node. |
void |
put(java.util.List modifications)
Applies all modifications to the backend store. |
void |
remove(Fqn name)
Removes the given node and all its subnodes. |
java.lang.Object |
remove(Fqn name,
java.lang.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 or any subnodes. |
void |
rollback(java.lang.Object tx)
Rolls the transaction back. |
abstract void |
setCache(TreeCache c)
Sets the TreeCache that is maintaining this CacheLoader. |
abstract void |
setConfig(java.util.Properties props)
Sets the configuration. |
void |
start()
|
void |
stop()
|
void |
storeEntireState(byte[] state)
Stores the given state in secondary storage. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final int delegateGetChildrenNames
public static final int delegateGetKey
public static final int delegateGet
public static final int delegateExists
public static final int delegatePutKeyVal
public static final int delegatePut
public static final int delegateRemoveKey
public static final int delegateRemove
public static final int delegateRemoveData
public static final int delegateLoadEntireState
public static final int delegateStoreEntireState
public static final int putList
Constructor Detail |
---|
public DelegatingCacheLoader()
Method Detail |
---|
public abstract void setConfig(java.util.Properties props)
CacheLoader
Service.create()
and Service.start()
.
setConfig
in interface CacheLoader
props
- a collection of configuration propertiespublic abstract void setCache(TreeCache c)
CacheLoader
TreeCache
that is maintaining this CacheLoader.
This method allows this CacheLoader to invoke methods on TreeCache,
including fetching additional configuration information. This method is
called be called after the CacheLoader instance has been constructed.
setCache
in interface CacheLoader
c
- The cache on which this loader workspublic java.util.Set getChildrenNames(Fqn fqn) throws java.lang.Exception
CacheLoader
Fqn
.
Returns null if the named node is not found or there are no children.
The returned set must not be modifiable. Implementors can use
Collections.unmodifiableSet(Set)
to make the set unmodifiable.
getChildrenNames
in interface CacheLoader
fqn
- The FQN of the parent
java.lang.Exception
public java.util.Map get(Fqn name) throws java.lang.Exception
CacheLoader
get
in interface CacheLoader
public boolean exists(Fqn name) throws java.lang.Exception
CacheLoader
Fqn
.
exists
in interface CacheLoader
java.lang.Exception
public java.lang.Object put(Fqn name, java.lang.Object key, java.lang.Object value) throws java.lang.Exception
CacheLoader
put
in interface CacheLoader
java.lang.Exception
public void put(Fqn name, java.util.Map attributes) throws java.lang.Exception
CacheLoader
Map.putAll(java.util.Map extends K, ? extends V>)
.
If the node does not exist, all parent nodes from the root down are created automatically
put
in interface CacheLoader
name
- The fully qualified name of the nodeattributes
- A Map of attributes. Can be null
java.lang.Exception
public void put(Fqn fqn, java.util.Map attributes, boolean erase) throws java.lang.Exception
java.lang.Exception
public void put(java.util.List modifications) throws java.lang.Exception
CacheLoader
put
in interface CacheLoader
modifications
- A Listjava.lang.Exception
public java.lang.Object remove(Fqn name, java.lang.Object key) throws java.lang.Exception
CacheLoader
remove
in interface CacheLoader
java.lang.Exception
public void remove(Fqn name) throws java.lang.Exception
CacheLoader
remove
in interface CacheLoader
java.lang.Exception
public void removeData(Fqn name) throws java.lang.Exception
CacheLoader
removeData
in interface CacheLoader
java.lang.Exception
public void prepare(java.lang.Object tx, java.util.List modifications, boolean one_phase) throws java.lang.Exception
CacheLoader
tx
(tx is the key)
prepare
in interface CacheLoader
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 CacheLoader.commit(Object)
or CacheLoader.rollback(Object)
method call later
java.lang.Exception
public void commit(java.lang.Object tx) throws java.lang.Exception
CacheLoader
tx
and commit that
transaction. Non-transactional CacheLoaders could simply write the data
that was previously saved transiently under the given tx
key, to (for example) a file system (note this only holds if the previous
prepare() did not define one_phase=true
commit
in interface CacheLoader
tx
- transaction to commit
java.lang.Exception
public void rollback(java.lang.Object tx)
CacheLoader
tx
and roll back that
transaction.
rollback
in interface CacheLoader
tx
- transaction to roll backpublic byte[] loadEntireState() throws java.lang.Exception
CacheLoader
CacheLoader.storeEntireState(byte[])
.
loadEntireState
in interface CacheLoader
java.lang.Exception
public void storeEntireState(byte[] state) throws java.lang.Exception
CacheLoader
storeEntireState
in interface CacheLoader
java.lang.Exception
public void create() throws java.lang.Exception
create
in interface org.jboss.system.Service
java.lang.Exception
public void start() throws java.lang.Exception
start
in interface org.jboss.system.Service
java.lang.Exception
public void stop()
stop
in interface org.jboss.system.Service
public void destroy()
destroy
in interface org.jboss.system.Service
protected abstract java.util.Set delegateGetChildrenNames(Fqn fqn) throws java.lang.Exception
java.lang.Exception
protected abstract java.util.Map delegateGet(Fqn name) throws java.lang.Exception
java.lang.Exception
protected abstract boolean delegateExists(Fqn name) throws java.lang.Exception
java.lang.Exception
protected abstract java.lang.Object delegatePut(Fqn name, java.lang.Object key, java.lang.Object value) throws java.lang.Exception
java.lang.Exception
protected abstract void delegatePut(Fqn name, java.util.Map attributes) throws java.lang.Exception
java.lang.Exception
protected abstract java.lang.Object delegateRemove(Fqn name, java.lang.Object key) throws java.lang.Exception
java.lang.Exception
protected abstract void delegateRemove(Fqn name) throws java.lang.Exception
java.lang.Exception
protected abstract void delegateRemoveData(Fqn name) throws java.lang.Exception
java.lang.Exception
protected abstract byte[] delegateLoadEntireState() throws java.lang.Exception
java.lang.Exception
protected abstract void delegateStoreEntireState(byte[] state) throws java.lang.Exception
java.lang.Exception
protected abstract void delegatePut(java.util.List modifications) throws java.lang.Exception
java.lang.Exception
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |