lib/handler.py
author Tero Marttila <terom@fixme.fi>
Sat, 07 Feb 2009 16:33:27 +0200
branchsites
changeset 31 107062ebb6f9
parent 30 a86a25a9f75b
permissions -rw-r--r--
bloat code with even more layers of indirection, split off the filesystem-based stuff into a separate lib.filesystem package (next, move it to sites/www.qmsk.net)
"""
    The actual application behaviour, i.e. generating a Response from a Request :)
"""

class RequestHandler (object) :
    """
        A handler handles a Request, returning a Response
    """

    def __init__ (self, func, *args, **kwargs) :
        self.func = func
        self.args = args
        self.kwargs = kwargs
    
    def handle_request (self, request) :
        """
            Handle the request, returning a Response object

            XXX: rename to __call__ kplzthx
        """

        return self.func(request, *self.args, **self.kwargs)