mirror of
https://github.com/zulip/zulip.git
synced 2025-11-03 21:43:21 +00:00
Fixes #2665. Regenerated by tabbott with `lint --fix` after a rebase and change in parameters. Note from tabbott: In a few cases, this converts technical debt in the form of unsorted imports into different technical debt in the form of our largest files having very long, ugly import sequences at the start. I expect this change will increase pressure for us to split those files, which isn't a bad thing. Signed-off-by: Anders Kaseorg <anders@zulip.com>
32 lines
1.1 KiB
Python
32 lines
1.1 KiB
Python
import atexit
|
|
|
|
import tornado.web
|
|
from django.conf import settings
|
|
|
|
from zerver.lib.queue import get_queue_client
|
|
from zerver.tornado import autoreload
|
|
from zerver.tornado.handlers import AsyncDjangoHandler
|
|
|
|
|
|
def setup_tornado_rabbitmq() -> None: # nocoverage
|
|
# When tornado is shut down, disconnect cleanly from rabbitmq
|
|
if settings.USING_RABBITMQ:
|
|
queue_client = get_queue_client()
|
|
atexit.register(lambda: queue_client.close())
|
|
autoreload.add_reload_hook(lambda: queue_client.close())
|
|
|
|
def create_tornado_application(port: int) -> tornado.web.Application:
|
|
urls = (
|
|
r"/notify_tornado",
|
|
r"/json/events",
|
|
r"/api/v1/events",
|
|
r"/api/v1/events/internal",
|
|
)
|
|
|
|
# Application is an instance of Django's standard wsgi handler.
|
|
return tornado.web.Application([(url, AsyncDjangoHandler) for url in urls],
|
|
debug=settings.DEBUG,
|
|
autoreload=False,
|
|
# Disable Tornado's own request logging, since we have our own
|
|
log_function=lambda x: None)
|