#!/usr/bin/env python # -*- coding: utf-8 -*- from web.dto.service_result import ServiceResult from web.enum.service_result_enum import ServiceResultEnum from web.handler.base_handler import BaseHandler from web.manager.apschedule_manager import ApschedulerManager from web.manager.log_manager import LogManager Logger = LogManager.get_logger(__name__) class ApschedulerHandler(BaseHandler): """ 调度器 """ def __init__(self): super().__init__() self.apscheduler_manager = ApschedulerManager() def create(self, _func, job_id, _seconds, _kwargs): """ 创建定时任务 """ Logger.info('创建定时任务') job = self.apscheduler_manager.create(func_=_func, job_id=job_id, seconds_=_seconds, kwargs_=_kwargs) return ServiceResult.ok(ServiceResultEnum.SAVE_SUCCESS.value, job.id, ServiceResultEnum.SAVE_SUCCESS_DESCRIPTION.value) def delete(self, job_id): """ 删除定时任务 """ Logger.info('删除定时任务') self.apscheduler_manager.remove_job(job_id) def pause(self, job_id): """ 暂停定时任务 """ Logger.info('暂停定时任务') self.apscheduler_manager.pause_job(job_id) def resume(self, job_id): """ 恢复定时任务 """ Logger.info('恢复定时任务') self.apscheduler_manager.resume_job(job_id) def shutdown_apscheduler(self): """ 关闭调度器 """ Logger.info('关闭调度器') self.apscheduler_manager.shutdown() def pause_apscheduler(self): """ 暂停调度器 """ Logger.info('暂停调度器') self.apscheduler_manager.pause() def resume_apscheduler(self): """ 恢复调度器 """ Logger.info('恢复调度器') self.apscheduler_manager.resume()