Hi,
I'm trying to implement the asyncio.coroutine decorator in my wsgi app.
Here's my server code:
class AsyncIOController(WSGIController):
def __init__(self, settings=None, executor=None, loop=None
):
super(AsyncIOController, self).__init__(settings)
# asyncio config.
self._executor = executor
self._loop = loop or get_event_loop()
#@asyncio.coroutine
def get_response(self, request=None, method='GET', data={}):
response = super(AsyncIOController, self).get_response(request)
return response
@asyncio.coroutine
def application(self, environ, start_response):
with sessionmanager(environ):
request.environ.update(environ)
response = self.get_response(request=request)(environ,
start_response)
#assert isinstance(response, bytes), type(response)
return response
@asyncio.coroutine
def __call__(self, environ, start_response, exc_info=None):
result = self.application(environ, start_response)
return result
My test script:
@asyncio.coroutine
def app(environ, start_response):
try:
result = (yield from AsyncIOController().application(environ,
start_response))
return result
except:
raise
if __name__ == '__main__':
server = simple_server.make_server('127.0.0.1', 8000, app)
server.serve_forever()
Should I attempt to decorate the AsyncIOController.get_response method
with the asyncio.coroutine method ?
Any ideas how to fix this script ?
Thank you in advance,
Etienne
_______________________________________________
Tutor maillist - Tutor@python.org
To unsubscribe or change subscription options:
https://mail.python.org/mailman/listinfo/tutor