|
Rice Pastry API | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Object | +--rice.persistence.LRUCache
This class is an encapsulation of a least-recently-used (LRU) cache. It uses the provided storage service in order to store the cached data. If the Storage provides non-corruption services, these services will also be provided by this cache.
| Constructor Summary | |
LRUCache(rice.persistence.Storage storage,
int maximumSize)
Builds a LRU cache given a storage object to store the cached data in and a maximum cache size. |
|
| Method Summary | |
void |
cache(rice.p2p.commonapi.Id id,
java.io.Serializable obj,
rice.Continuation c)
Caches an object in this storage. |
boolean |
exists(rice.p2p.commonapi.Id id)
Returns whether or not an object is cached in the location id. |
void |
exists(rice.p2p.commonapi.Id id,
rice.Continuation c)
Returns whether or not an object is cached in the location id. |
void |
getMaximumSize(rice.Continuation c)
Returns the maximum size of the cache, in bytes. |
void |
getObject(rice.p2p.commonapi.Id id,
rice.Continuation c)
Returns the object identified by the given id. |
void |
getTotalSize(rice.Continuation c)
Returns the total size of the stored data in bytes. |
rice.p2p.commonapi.IdSet |
scan(rice.p2p.commonapi.IdRange range)
Return the objects identified by the given range of ids. |
void |
scan(rice.p2p.commonapi.IdRange range,
rice.Continuation c)
Return the objects identified by the given range of ids. |
void |
setMaximumSize(int size,
rice.Continuation c)
Sets the maximum size of the cache, in bytes. |
void |
uncache(rice.p2p.commonapi.Id id,
rice.Continuation c)
Removes the object from the list of cached objects. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public LRUCache(rice.persistence.Storage storage,
int maximumSize)
storage - The storage service to use as a back-end storagemaximumSize - The maximum size, in bytes, of storage to use| Method Detail |
public void cache(rice.p2p.commonapi.Id id,
java.io.Serializable obj,
rice.Continuation c)
uncachr(id) followed
by cache(id, obj). This method finishes by calling
receiveResult() on the provided continuation with whether or not
the object was cached. Note that the object may not actually be
cached due to the cache replacement policy.
Returns True if the cache actaully stores the object, else
False (through receiveResult on c).
cache in interface Cacheid - The object's id.obj - The object to cache.c - The command to run once the operation is complete
public void uncache(rice.p2p.commonapi.Id id,
rice.Continuation c)
False is returned.
Returns True if the action succeeds, else
False (through receiveResult on c).
uncache in interface Cachec - The command to run once the operation is completepublic boolean exists(rice.p2p.commonapi.Id id)
id.
exists in interface Catalogid - The id of the object in question.
public void exists(rice.p2p.commonapi.Id id,
rice.Continuation c)
id.
The result is returned via the receiveResult method on the provided
Continuation with an Boolean represnting the result.
exists in interface Catalogc - The command to run once the operation is completeid - The id of the object in question.
public void getObject(rice.p2p.commonapi.Id id,
rice.Continuation c)
getObject in interface Catalogid - The id of the object in question.c - The command to run once the operation is complete
null if there is no cooresponding
object (through receiveResult on c).
public void scan(rice.p2p.commonapi.IdRange range,
rice.Continuation c)
scan in interface Catalogc - The command to run once the operation is complete
public rice.p2p.commonapi.IdSet scan(rice.p2p.commonapi.IdRange range)
scan in interface Catalogrange - The range to query
public void getMaximumSize(rice.Continuation c)
getMaximumSize in interface Cachec - The command to run once the operation is completepublic void getTotalSize(rice.Continuation c)
getTotalSize in interface Catalogc - The command to run once the operation is complete
public void setMaximumSize(int size,
rice.Continuation c)
setMaximumSize in interface Cachesize - The new maximum size, in bytes, of the cache.c - The command to run once the operation is complete
|
Rice Pastry API | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||