Skip to content

Instantly share code, notes, and snippets.

@ifedotov
Created February 26, 2011 01:21
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ifedotov/844821 to your computer and use it in GitHub Desktop.
Save ifedotov/844821 to your computer and use it in GitHub Desktop.
<cffunction name="preProcess" access="public" returntype="void" output="false">
<cfargument name="eventContext" type="MachII.framework.EventContext" required="true" />
<cfscript>
var e = arguments.eventContext.getNextEvent();
var key = makeCacheKey(e);
var cacheData = '';
//get data from cache
if(key neq '') {
cacheData = variables.EhCacheManager.get(key);
if(cacheData neq '') {
e.setArg(getParameter("contentEventArg"),cacheData);
e.setArg("isFromCache",'true');
arguments.eventContext.clearEventQueue();
arguments.eventContext.announceEvent(getParameter("eventToAnnounce"),e.getArgs());
}
}
</cfscript>
</cffunction>
<cffunction name="postProcess" access="public" returntype="void" output="false">
<cfargument name="eventContext" type="MachII.framework.EventContext" required="true" />
<cfscript>
var e = arguments.eventContext.getCurrentEvent();
var key = makeCacheKey(e);
var cacheData = e.getArg(getParameter("contentEventArg"));
var cacheKeys = arrayToList(variables.EhCacheManager.getCurrentCacheKeys());
//put data into cache
if(cacheData neq '' And Not listFindNoCase(cacheKeys,key)) {
variables.EhCacheManager.put(key,cacheData);
}
</cfscript>
</cffunction>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment