Jeremy, glad you got it working and good catch on getting the module's AppManager which is what is required.

Could you do me a favor and add a section on how to clear a cache element from a listener to the wiki? Contributing some doco back to the project would be a great help. Here is a good general location of where you could add it:

http://greatbiztoolsllc.trac.cvsdude.com/mach-ii/wiki/IntroToCaching#AccessingtheCachefromaMach-IIListener

Also, our wiki is completely publicly anonymous editable. So all you have to do is click the "Edit this page" button at the bottom. Let me know if you can get this on the wiki. I don't want great documentation like this fall through the cracks.

Best,
Peter
Team Mach-II

Jeremy.Shearer said the following on 18/02/10 15:51:
Thanks for your help Peter.
It's working now.
I made one small change to the code you suggested so I'll post it here
in case others come looking for it.
The change is that this:
<cfset cacheManager =
getAppManager().getModuleManager().getModule(module).getAppManager().getCacheManager()
 /
Should be this:
<cfset cacheManager =
getAppManager().getModuleManager().getModule(module).getModuleAppManager().getCacheManager()
 /
The difference being that instead of calling
getModule(module).getAppManager() (which I assume just returns the
base appManager) I call gotModule(module).getModuleAppManager() which
gets me the cacheManager for the module I'm passing in.

Thanks for your help with this!

-Jeremy

On Feb 12, 3:15 pm, "Peter J. Farrell"<[email protected]>  wrote:
Jeremy.Shearer said the following on 12/02/10 13:53:>  One thing that is 
particularly confusing is why I'm not getting the
output of the log.trace statement in the clearCachesByAlias function
when I call it from the listener (Clearing cache by aliases
'homepage' (no condition to evaluate)).
By default in 1.6.x of Mach-II, the Mach-II logger output only listened
to logging messages at the debug level or higher.  Since the trace level
is even more low level of a severity than debug, you won't see this
message if you are using the default logging level of debug.  You can
add this parameter to how your MachIILogger is defined to change the
logging level it will listen to:

<key name="loggingLevel"
value="all|trace|debug|info|warn|error|fatal|off" />

Set it to "trace" or "all".

Also, that logging message you see when using the CacheClear command is
being done by the command.  The message you'll see in the CacheManager
would look like this (it's at the trace level):

"CacheManager clear cache for id '#arguments.id#' exists:
"#StructKeyExists(variables.handlers, arguments.id)#", handler keys:
'#StructKeyArray(variables.handlers)#'"

If you change the level at which you are watching for logging messages,
you'll see the message.  I think with that fix to your listener as I
suggested off list -- you are good to go.

.Peter

--
You received this message because you are subscribed to Mach-II for CFML list.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/mach-ii-for-coldfusion?hl=en
SVN: http://greatbiztoolsllc.svn.cvsdude.com/mach-ii/
Wiki / Documentation / Tickets: 
http://greatbiztoolsllc.trac.cvsdude.com/mach-ii/

Reply via email to