1 23 24 package com.sun.appserv.web.taglibs.cache; 25 26 import javax.servlet.ServletContext ; 27 import javax.servlet.ServletRequest ; 28 import javax.servlet.ServletRequestEvent ; 29 import javax.servlet.ServletRequestListener ; 30 31 import com.sun.appserv.util.cache.Cache; 32 import com.sun.appserv.web.cache.CacheManager; 33 34 39 public class CacheRequestListener implements ServletRequestListener { 40 41 44 public CacheRequestListener() {} 45 46 47 54 public void requestInitialized(ServletRequestEvent sre) { 55 56 ServletContext context = sre.getServletContext(); 57 58 CacheManager cm = (CacheManager) 61 context.getAttribute(CacheManager.CACHE_MANAGER_ATTR_NAME); 62 63 if (cm == null) { 66 cm = new CacheManager(); 67 } 68 69 Cache cache = null; 70 try { 71 cache = cm.createCache(); 72 } catch (Exception ex) {} 73 74 if (cache != null) { 76 ServletRequest req = sre.getServletRequest(); 77 req.setAttribute(Constants.JSPTAG_CACHE_KEY, cache); 78 } 79 } 80 81 82 89 public void requestDestroyed(ServletRequestEvent sre) { 90 91 ServletRequest req = sre.getServletRequest(); 93 Cache cache = (Cache) req.getAttribute(Constants.JSPTAG_CACHE_KEY); 94 if (cache != null) { 95 cache.clear(); 96 } 97 } 98 } 99 | Popular Tags |