Assume non-web.Application instances are WSGI.

This commit is contained in:
Paul J. Davis 2010-04-26 20:08:05 -04:00
parent 999dd68ca3
commit 22695ff248

View File

@ -9,6 +9,7 @@ import sys
import tornado.web
from tornado.httpserver import HTTPServer
from tornado.ioloop import IOLoop, PeriodicCallback
from tornado.wsgi import WSGIContainer
from gunicorn.workers.base import Worker
@ -46,6 +47,11 @@ class TornadoWorker(Worker):
self.ioloop = IOLoop.instance()
PeriodicCallback(self.watchdog, 1000, io_loop=self.ioloop).start()
# Assume the app is a WSGI callable if its not an
# instance of tornardo.web.Application
if not isinstance(self.app, tornado.web.Application):
self.app = WSGIContainer(self.app)
server = HTTPServer(self.app, io_loop=self.ioloop)
server._socket = self.socket
server.start(num_processes=1)