|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectrice.persistence.StorageManager
This class provides both persistent and caching services to external applications. Building the StorageManager requires a Storage object, to provide the back-end storage, and a Cache to serve as a cache. Note that this implementation has seperate areas for the Cache and Storage, but the next version will allow the cache to use the unused storage space.
Constructor Summary | |
StorageManager(IdFactory factory,
Storage storage,
Cache cache)
Builds a StorageManager given a Storage object to provide storage services and a Cache object to provide caching services. |
Method Summary | |
void |
cache(Id id,
java.io.Serializable obj,
Continuation c)
Caches an object in this storage. |
boolean |
exists(Id id)
Returns whether or not an object is present in the location id . |
void |
exists(Id id,
Continuation c)
Returns whether or not an object is present in the location id . |
Cache |
getCache()
Returns the cache object used by this StorageManager |
void |
getMaximumSize(Continuation c)
Returns the maximum size of the cache, in bytes. |
void |
getObject(Id id,
Continuation c)
Returns the object identified by the given id, or null if
there is no cooresponding object (through receiveResult on c). |
Storage |
getStorage()
Returns the permantent storage object used by this StorageManager |
void |
getTotalSize(Continuation c)
Returns the total size of the stored data in bytes.The result is returned via the receiveResult method on the provided Continuation with an Integer representing the size. |
IdSet |
scan(IdRange range)
Return the objects identified by the given range of ids. |
void |
scan(IdRange range,
Continuation c)
Return the objects identified by the given range of ids. |
void |
setMaximumSize(int size,
Continuation c)
Sets the maximum size of the cache, in bytes. |
void |
store(Id id,
java.io.Serializable obj,
Continuation c)
Stores an object in this storage. |
void |
uncache(Id id,
Continuation c)
Removes the object from the list of cached objects. |
void |
unstore(Id id,
Continuation c)
Removes the object from the list of stored objects. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public StorageManager(IdFactory factory, Storage storage, Cache cache)
factory
- The factory to use for Id creationstorage
- The Storage object which will serve as the
persistent storage.cache
- The Cache object which will serve as the cache.Method Detail |
public Storage getStorage()
public Cache getCache()
public boolean exists(Id id)
id
.
exists
in interface Catalog
id
- The id of the object in question.
public void exists(Id id, Continuation c)
id
.
The result is returned via the receiveResult method on the provided
Continuation with an Boolean represnting the result.
Returns True
or False
depending on whether the object
exists (through receiveResult on c);
exists
in interface Catalog
c
- The command to run once the operation is completeid
- The id of the object in question.public void getObject(Id id, Continuation c)
null
if
there is no cooresponding object (through receiveResult on c).
getObject
in interface Catalog
id
- The id of the object in question.c
- The command to run once the operation is completepublic void scan(IdRange range, Continuation c)
scan
in interface Catalog
c
- The command to run once the operation is completepublic IdSet scan(IdRange range)
scan
in interface Catalog
range
- The range to query
public void getTotalSize(Continuation c)
getTotalSize
in interface Catalog
c
- The command to run once the operation is completepublic void store(Id id, java.io.Serializable obj, Continuation c)
unstore(id)
followed
by store(id, obj)
. This method finishes by calling
receiveResult() on the provided continuation with the success
or failure of the store.
Returns True
if the action succeeds, else
False
(through receiveResult on c).
store
in interface Storage
id
- The object's id.obj
- The object to store.c
- The command to run once the operation is completepublic void unstore(Id id, Continuation c)
False
is returned.
Returns True
if the action succeeds, else
False
(through receiveResult on c).
unstore
in interface Storage
c
- The command to run once the operation is completepublic void cache(Id id, java.io.Serializable obj, 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 Cache
id
- The object's id.obj
- The object to cache.c
- The command to run once the operation is completepublic void uncache(Id id, Continuation c)
False
is returned.
Returns True
if the action succeeds, else
False
(through receiveResult on c).
uncache
in interface Cache
c
- The command to run once the operation is completepublic void getMaximumSize(Continuation c)
getMaximumSize
in interface Cache
c
- The command to run once the operation is completepublic void setMaximumSize(int size, Continuation c)
setMaximumSize
in interface Cache
size
- The new maximum size, in bytes, of the cache.c
- The command to run once the operation is complete
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |