Peter Courcoux <[EMAIL PROTECTED]> writes:
>> What I'd like to see is some sort of Listener pattern, where the
>> TemplateInfo factory can register itself with the PipelineData Factory
>> and whenever a new PipelineData object is needed, the TemplateInfo
>> factory gets triggered and automagically adds the TemplateInfo object
>> to the PipelineData. Same for destruction. And when there is no Templating
>> registered with the core, then no templating objects are created.
>>
>I think that in most cases TemplateInfo type objects will be created
>specifically by valves (or factories called from valves), and would only
>be created if needed. I'm not sure that I yet see what additional value
>having listeners would give.
It depends on how "heavy" a valve and its invocation are. As I said, I
haven't looked much into the 2.4 code. But as I can see, you would
need a valve for TemplateInfo creation, one for the templating itself
and another for TemplateInfo destruction. Three places that must be
manually shuffled in correctly. With a listener solution, you simply
add the TemplateService valve and itself registers its Factory for
TemplateInfo creation and destruction with the PipelineData
factory. One valve to be added manually and everything else falls
automatically into place. Call me lazy. ;-)
Regards
Henning
--
Dipl.-Inf. (Univ.) Henning P. Schmiedehausen INTERMETA GmbH
[EMAIL PROTECTED] +49 9131 50 654 0 http://www.intermeta.de/
RedHat Certified Engineer -- Jakarta Turbine Development -- hero for hire
Linux, Java, perl, Solaris -- Consulting, Training, Development
"Fighting for one's political stand is an honourable action, but re-
fusing to acknowledge that there might be weaknesses in one's
position - in order to identify them so that they can be remedied -
is a large enough problem with the Open Source movement that it
deserves to be on this list of the top five problems."
-- Michelle Levesque, "Fundamental Issues with
Open Source Software Development"
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]