package com.jcdm.quartz.service; import java.util.List; import org.quartz.SchedulerException; import com.jcdm.common.exception.job.TaskException; import com.jcdm.quartz.domain.SysJob; /** * 定时任务调度信æ¯ä¿¡æ¯ æœåŠ¡å±‚ * * @author jc */ public interface ISysJobService { /** * 获å–quartz调度器的计划任务 * * @param job è°ƒåº¦ä¿¡æ¯ * @return è°ƒåº¦ä»»åŠ¡é›†åˆ */ public List<SysJob> selectJobList(SysJob job); /** * 通过调度任务IDæŸ¥è¯¢è°ƒåº¦ä¿¡æ¯ * * @param jobId 调度任务ID * @return è°ƒåº¦ä»»åŠ¡å¯¹è±¡ä¿¡æ¯ */ public SysJob selectJobById(Long jobId); /** * æš‚åœä»»åŠ¡ * * @param job è°ƒåº¦ä¿¡æ¯ * @return 结果 */ public int pauseJob(SysJob job) throws SchedulerException; /** * æ¢å¤ä»»åŠ¡ * * @param job è°ƒåº¦ä¿¡æ¯ * @return 结果 */ public int resumeJob(SysJob job) throws SchedulerException; /** * åˆ é™¤ä»»åŠ¡åŽï¼Œæ‰€å¯¹åº”çš„triggerä¹Ÿå°†è¢«åˆ é™¤ * * @param job è°ƒåº¦ä¿¡æ¯ * @return 结果 */ public int deleteJob(SysJob job) throws SchedulerException; /** * 批é‡åˆ é™¤è°ƒåº¦ä¿¡æ¯ * * @param jobIds 需è¦åˆ 除的任务ID * @return 结果 */ public void deleteJobByIds(Long[] jobIds) throws SchedulerException; /** * 任务调度状æ€ä¿®æ”¹ * * @param job è°ƒåº¦ä¿¡æ¯ * @return 结果 */ public int changeStatus(SysJob job) throws SchedulerException; /** * ç«‹å³è¿è¡Œä»»åŠ¡ * * @param job è°ƒåº¦ä¿¡æ¯ * @return 结果 */ public boolean run(SysJob job) throws SchedulerException; /** * 新增任务 * * @param job è°ƒåº¦ä¿¡æ¯ * @return 结果 */ public int insertJob(SysJob job) throws SchedulerException, TaskException; /** * 更新任务 * * @param job è°ƒåº¦ä¿¡æ¯ * @return 结果 */ public int updateJob(SysJob job) throws SchedulerException, TaskException; /** * æ ¡éªŒcron表达å¼æ˜¯å¦æœ‰æ•ˆ * * @param cronExpression è¡¨è¾¾å¼ * @return 结果 */ public boolean checkCronExpressionIsValid(String cronExpression); }