public class DefaultCacheHelper extends Object implements CacheHelper
CacheHelper
interface to aide in:
a) the key generation b) whether to cache the response.
There is one CacheHelper instance per web application.Modifier and Type | Field and Description |
---|---|
static String |
ATTR_CACHING_FILTER_NAME |
static String |
PROP_KEY_GENERATOR_ATTR_NAME |
ATTR_CACHE_MAPPED_SERVLET_NAME, ATTR_CACHE_MAPPED_URL_PATTERN, TIMEOUT_VALUE_NOT_SET
Constructor and Description |
---|
DefaultCacheHelper() |
Modifier and Type | Method and Description |
---|---|
void |
destroy()
Stop this Context component.
|
String |
getCacheKey(javax.servlet.http.HttpServletRequest request)
getCacheKey: generate the key to be used to cache this request
|
int |
getTimeout(javax.servlet.http.HttpServletRequest request)
get timeout for the cacheable data in this request
|
void |
init(javax.servlet.ServletContext context,
Map<String,String> props)
initialize this helper
|
boolean |
isCacheable(javax.servlet.http.HttpServletRequest request)
isCacheable: is the response to given request cachebale?
|
boolean |
isRefreshNeeded(javax.servlet.http.HttpServletRequest request)
isRefreshNeeded: is the response to given request be refreshed?
|
void |
setCacheManager(CacheManager manager)
set the CacheManager for this application
|
public static final String ATTR_CACHING_FILTER_NAME
public static final String PROP_KEY_GENERATOR_ATTR_NAME
public void setCacheManager(CacheManager manager)
manager
- associated with this applicationpublic void init(javax.servlet.ServletContext context, Map<String,String> props)
init
in interface CacheHelper
context
- the web application context this helper belongs toprops
- helper propertiespublic String getCacheKey(javax.servlet.http.HttpServletRequest request)
getCacheKey
in interface CacheHelper
request
- incoming HttpServletRequest
public boolean isCacheable(javax.servlet.http.HttpServletRequest request)
isCacheable
in interface CacheHelper
request
- incoming HttpServletRequest
objecttrue
if the response could be cached.
or return false
if the results of this request
must not be cached.
Applies pre-configured cacheability constraints in the cache-mapping;
all constraints must pass for this to be cacheable.public boolean isRefreshNeeded(javax.servlet.http.HttpServletRequest request)
isRefreshNeeded
in interface CacheHelper
request
- incoming HttpServletRequest
objecttrue
if the response needs to be refreshed.
or return false
if the results of this request
don't need to be refreshed.
XXX: 04/16/02 right now there is no configurability for this in
ias-web.xml; should add a refresh-field element there:
public int getTimeout(javax.servlet.http.HttpServletRequest request)
getTimeout
in interface CacheHelper
request
- incoming HttpServletRequest
objectpublic void destroy() throws Exception
destroy
in interface CacheHelper
Exception
- if a shutdown error occursCopyright © 2019. All rights reserved.