@@ -106,28 +106,21 @@ def wrapper(self, request_uri, **kwargs):
106106 return func (self , request_uri .lower (), ** kwargs )
107107 return wrapper
108108
109- def dispatch (func ):
110- def wrapper (self , request_uri , ** kwargs ):
111- module_chunk , s , request_chunk = request_uri .rpartition ('.' )
112- request_chunk = request_chunk .capitalize ()
113- try :
114- # TODO: CamelCase and under_score support, now only Class Name
115- module = import_module ('%s.%s'
116- % (ABS_IMPORT_PREFIX , module_chunk ))
117- request = getattr (module , request_chunk )
118- except ImportError :
119- raise RequestDoesNotExist ("'%s' module does not exist"
120- % module_chunk )
121- except AttributeError :
122- raise RequestDoesNotExist (
123- "'%s' request does not exist in '%s' module"
124- % (request_chunk , module_chunk ))
125- return func (self , request , ** kwargs )
126- return wrapper
127-
128109 @validate
129- @dispatch
130- def __call__ (self , request = '' , ** kwargs ):
131- request = request (** kwargs )
132- assert isinstance (request , Request )
133- return request
110+ def __call__ (self , request_uri , ** kwargs ):
111+ module_chunk , s , request_chunk = request_uri .rpartition ('.' )
112+ request_chunk = request_chunk .capitalize ()
113+ try :
114+ # TODO: CamelCase and under_score support, now only Class Name
115+ module = import_module ('%s.%s' % (ABS_IMPORT_PREFIX , module_chunk ))
116+ request_class = getattr (module , request_chunk )
117+ request = request_class (** kwargs )
118+ assert isinstance (request , Request )
119+ return request
120+ except ImportError :
121+ raise RequestDoesNotExist ("'%s' module does not exist"
122+ % module_chunk )
123+ except AttributeError :
124+ raise RequestDoesNotExist ("'%s' request does not exist in "
125+ "'%s' module" % (request_chunk ,
126+ module_chunk ))
0 commit comments