Files
mayan-edms/apps/scheduler/__init__.py
2012-08-14 00:24:26 -04:00

32 lines
722 B
Python

from __future__ import absolute_import
import atexit
import logging
import sys
from .runtime import scheduler, lockdown
from project_tools.api import register_tool
from .links import job_list
from .literals import SHUTDOWN_COMMANDS
logger = logging.getLogger(__name__)
def schedule_shutdown_on_exit():
logger.debug('Scheduler shut down on exit')
scheduler.shutdown()
if any([command in sys.argv for command in SHUTDOWN_COMMANDS]):
logger.debug('Scheduler shut down on SHUTDOWN_COMMAND')
# Shutdown any scheduler already running
scheduler.shutdown()
# Prevent any new scheduler afterwards to start
lockdown()
atexit.register(schedule_shutdown_on_exit)
register_tool(job_list)