diff --git a/jupyter_server/base/handlers.py b/jupyter_server/base/handlers.py index a514c250da..60d0e5fead 100644 --- a/jupyter_server/base/handlers.py +++ b/jupyter_server/base/handlers.py @@ -212,6 +212,10 @@ def jinja_template_vars(self): """User-supplied values to supply to jinja templates.""" return self.settings.get("jinja_template_vars", {}) + @property + def serverapp(self): + return self.settings["serverapp"] + # --------------------------------------------------------------- # URLs # --------------------------------------------------------------- diff --git a/jupyter_server/services/shutdown.py b/jupyter_server/services/shutdown.py index 31a60b9924..959fc1addf 100644 --- a/jupyter_server/services/shutdown.py +++ b/jupyter_server/services/shutdown.py @@ -8,8 +8,11 @@ class ShutdownHandler(JupyterHandler): @web.authenticated - def post(self): + async def post(self): self.log.info("Shutting down on /api/shutdown request.") + + await self.serverapp._cleanup() + ioloop.IOLoop.current().stop()