On Fri, 29 Oct 2004, Vadim Gritsenko wrote:
Carsten Ziegeler wrote:
Ok, let's see what we have: Cocoon is not using the Event package at all, apart from the continuations checker which can be implemented in just a few lines - I did this for 2.2 - apart from that Cocoon does not need it.
There are people out there who might be using this package for their own projects - so we can:
a) keep it to support possible users although we don't need it. Keeping
it might be a little bit difficult as it's already deprecated and the
future is unknown.
b) replace it with something else, users have to migrate and we
then support the users although we don't need it.
c) remove it and if a user needs it she can add it as her own
component and use it.
<HINT>this is not a vote</HINT>
Don't know which is best, but I tend to option c) in this case.
Right now, we could go with c).
But there are several places which require event package in Cocoon right now, beside continuations manager. Let's list all of them, and their requirements, right here:
* Continuation manager. Need to execute single task periodically. * Store janitor. Need to execute single task periodically. * DefaultIncludeCacheManager. Need to execute single task immideately, only once. Need to execute multiple tasks immideately, only once. * IncludeTransformer. Need to execute multiple tasks immideately, only once.
In short, each time you see "new Thread()", "extends Thread" code in Cocoon codebase, it means this code needs to be refactored, probably by using events package or similar.
Given the above, in the long run, we should go for b).
So, the question remains. Either we
integrate & refactor the excalibur event package
or
make the Quartz/Cron block core as it does all we need
-- Giacomo Pati Otego AG, Switzerland - http://www.otego.com Orixo, the XML business alliance - http://www.orixo.com
