/usr/lib/python3/dist-packages/crank/dispatcher.py is in python3-crank 0.7.2-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | """
This is the main dispatcher module.
Dispatch works as follows:
Start at the RootController, the root controller must
have a _dispatch function, which defines how we move
from object to object in the system.
Continue following the dispatch mechanism for a given
controller until you reach another controller with a
_dispatch method defined. Use the new _dispatch
method until anther controller with _dispatch defined
or until the url has been traversed to entirety.
"""
class Dispatcher(object):
"""
Extend this class to define your own mechanism for dispatch.
"""
def _dispatch(self, state, remainder=None):
"""override this to define how your controller should dispatch.
returns: dispatcher, controller_path, remainder
"""
raise NotImplementedError
def _setup_wsgiorg_routing_args(self, path, remainder, params):
"""
This is expected to be overridden by any subclass that wants to set
the routing_args.
"""
def _setup_wsgi_script_name(self, path, remainder, params):
"""
This is expected to be overridden by any subclass that wants to set
the script name.
"""
|