[ http://issues.apache.org/jira/browse/MODPYTHON-164?page=all ]

Work on MODPYTHON-164 started by Graham Dumpleton.

> Allow req.add_handler()/req.register_*_filter() to take module/function for 
> handler.
> ------------------------------------------------------------------------------------
>
>                 Key: MODPYTHON-164
>                 URL: http://issues.apache.org/jira/browse/MODPYTHON-164
>             Project: mod_python
>          Issue Type: New Feature
>          Components: core
>            Reporter: Graham Dumpleton
>         Assigned To: Graham Dumpleton
>
> Currently, the:
>   req.add_handler(phase, handler, dir)
>   req.register_input_filter(filter_name, filter, dir)
>   req.register_output_filter(filter_name, filter, dir)
> functions require the handler/filter to be a string. This string identifies 
> the module that should be imported and which contains the necessary function, 
> plus optionally, an alternate named function to the default for the phase or 
> filter type. For example:
>   req.add_handler("PythonHandler", "mymodule::myhandler")
> It would be simpler if the handler/filter argument could be overloaded and 
> instead supplied an actual module reference or callable object reference. For 
> example:
>   import mymodule
>   def myhandler(req):
>     ...
>   def fixuphandler(req):
>     req.add_handler("PythonHandler", mymodule)
>     req.add_handler("PythonHandler", mymodule.myhandler)
>     req.add_handler("PythonHandler", myhandler)
>     return apache.OK
> This would be easier than having to construct a string module/function 
> reference when you have direct access to the handler function.
> In the main the "dir" argument would be irrelevant. The only circumstance 
> where it would matter is where PythonInterpPerDirective was used as it could 
> be used to control the interpreter the code executed within. If not supplied, 
> it could be argued that the directory where the supplied module/function is 
> defined in should be used as "dir".

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to