ibatis-user-java mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Chris Lamey <cla...@localmatters.com>
Subject cache admin
Date Wed, 30 Aug 2006 19:39:19 GMT
Hello,

I'm thinking about adding the capability of administering the oscache
GeneralCacheAdministrator object used by iBATIS through a UI for
operational use.  The UI would present things like
GeneralCacheAdministrator().getCache().getSize() and pull things from a
custom CacheEventListener like stale hits, hits, misses, etc.  The UI
would also allow someone to flush all the cache, clear the cache, and
maybe other actions.

But since iBATIS creates, manages, and hides the
GeneralCacheAdministrator in OSCacheController, I can only really do one
operation, flush, like this:

    sqlMapClient.getDelegate().flushDataCache();

And have no access to status.

So I'm thinking it'd be useful for iBATIS to have a way to either get
the GeneralCacheAdministrator object or specify a way to set it.
Getting the object could be a static
getGeneralCacheAdministratorInstance() on OSCacheController, which
violates all kind of encapsulation.  Being able to set a
GeneralCacheAdministrator object on the OSCacheController could be a new
attribute of the cacheModel element, something like:

  <cacheModel id="work_cache" type="OSCACHE"
    factory="CacheManager.getInstance()">

But that doesn't look like anything else in the iBATIS config and more
like a Spring application context file:)

I guess what I'm really looking for is a way to specify named global
caches in oscache and then a way to reference them in iBATIS.

Anyway, I'd appreciate any thoughts or comments.

Cheers,
Chris

Mime
View raw message