示例#1
0
 async def resume(self):
     if self.state == stateStopped:
         schedulerLogger.error("Scheduler not running.")
         raise RuntimeError("Scheduler not running.")
     elif self.state == statePaused:
         self.state = stateRunning
         tornadoScheduler.__ioLoop.add_callback(self.__wakeup)
         schedulerLogger.info("Resumed scheduler job processing.")
示例#2
0
def createTrigger(triggerName, triggerArgs):
    if triggerName == "date":
        return dateTrigger(**triggerArgs)
    elif triggerName == "interval":
        return intervalTrigger(**triggerArgs)
    else:
        schedulerLogger.error(
            "Unsupported trigger type {}".format(triggerName))
        raise TypeError("Unsupported trigger type {}".format(triggerName))
示例#3
0
 async def shutdown(self):
     if self.state == stateStopped:
         schedulerLogger.error("Scheduler not running.")
         raise RuntimeError("Scheduler not running.")
     if self.__timeout is not None:
         tornadoScheduler.__ioLoop.remove_timeout(self.__timeout)
         self.__timeout = None
     self.state = stateStopped
     schedulerLogger.info("Scheduler has been shutdown.")
示例#4
0
 async def pause(self):
     if self.state == stateStopped:
         schedulerLogger.error("Scheduler not running.")
         raise RuntimeError("Scheduler not running.")
     elif self.state == stateRunning:
         if self.__timeout is not None:
             tornadoScheduler.__ioLoop.remove_timeout(self.__timeout)
             self.__timeout = None
         self.state = statePaused
         schedulerLogger.info("Paused scheduler job processing.")
示例#5
0
def convertToUtctime(input, utc):
    if input is None:
        return
    elif isinstance(input, datetime):
        return datetime - timedelta(hours=utc)
    elif isinstance(input, str):
        return datetime.strptime(input,
                                 "%Y-%m-%d %H:%M:%S") - timedelta(hours=utc)
    else:
        schedulerLogger.error("Unsupported type for {}".format(
            input.__class__.__name__))
        raise TypeError("Unsupported type for {}".format(
            input.__class__.__name__))
示例#6
0
 def start(self, paused=False):
     if self.state != stateStopped:
         schedulerLogger.error("Scheduler already running.")
         raise RuntimeError("Scheduler already running.")
     for jobStoreName in self.jobStoreNames:
         self.__jobStores[jobStoreName].start()
     for job, jobStoreName in self.__pendingJobs:
         self.__jobStores[jobStoreName].syncAddJob(job)
     del self.__pendingJobs[:]
     self.state = statePaused if paused else stateRunning
     schedulerLogger.info("Scheduler started.")
     if not paused:
         tornadoScheduler.__ioLoop.add_callback(self.__wakeup)