Graham Dumpleton wrote:
On 19/02/2006, at 3:24 PM, Graham Dumpleton wrote:
Thus depending on what you are doing, you need one or the other. To
make it
obvious, should perhaps use a distinct method name to add handlers as
stacked
handlers against the current handler list. Thus:
def all(req):
req.add_stacked_handler("PythonHandler","page::header")
req.add_stacked_handler("PythonHandler","page::body")
req.add_stacked_handler("PythonHandler","page::footer")
return apache.OK
Hmmm, adding a stacked handler probably only makes sense for the current
phase. Thus, perhaps just:
def all(req):
req.add_stacked_handler("page::header")
req.add_stacked_handler("page::body")
req.add_stacked_handler("page::footer")
return apache.OK
or if overloading is allowed:
def all(req):
req.add_handler(None,"page::header")
req.add_handler(None,"page::body")
req.add_handler(None,"page::footer")
return apache.OK
That no phase is listed means the current phase is used and it would be
stacked.
Too obscure???
Yes. There is a little too much magic there.
If you allowed an independent handler stack to be added, maybe you need to
allow a list as an alternative of just the handler string.
def all(req):
req.add_handler("PythonHandler",
["page::header","page::body","page::footer"])
return apache.DECLINED
Is this intended as an alternative to add_stacked_handler or an
additional feature? If it's an alternative solution the I prefer it as
it seems more pythonic.
I don't have alot more to say on these last 2 emails. I think you are on
the right path here.
Jim