Roller中的文章,通过
org.apache.roller.weblogger.util.cache.CacheManager 来进行管理的
缺省类工厂为: org.apache.roller.weblogger.util.cache.ExpiringLRUCacheFactoryImpl
还可以从weblog config的配置项:cache.defaultFactory
在类的static{} 中,首先获取 cache factory实例
然后获取参数:cache.customHandlers,是CacheHandler类型
(CacheHandler:当Cache有变化时,通知处理的对象)
在Roller中,使用到了好几个cache:
在 PageServlet 中,使用了2个Cache
1. WeblogPageCache(CahceId : cache.weblogpage)
2. SiteWideCache(CacheId: cache.sitewide) ---- 本身就是事件通知的对象,实现接口CacheHandler
在FeedServlet中使用了:
3. WeblogFeedCache(CacheId: cache.weblogfeed)
在 PlanetFeedServlet 中使用了
4. PlanetCache(CacheId:cache.planet)