package cn.lili.trigger.interfaces; import cn.lili.trigger.model.TimeTriggerMsg; /** * 延时执行接口 * * @author Chopper */ public interface TimeTrigger { /** * 添加延时任务 * * @param timeTriggerMsg 延时任务信息 */ void addDelay(TimeTriggerMsg timeTriggerMsg); /** * 执行延时任务 * * @param timeTriggerMsg 延时任务信息 */ void execute(TimeTriggerMsg timeTriggerMsg); /** * 修改延时任务 * * @param executorName 执行器beanId * @param param 执行参数 * @param triggerTime 执行时间 时间戳 秒为单位 * @param oldTriggerTime 旧的任务执行时间 * @param uniqueKey 添加任务时的唯一凭证 * @param delayTime 延时时间(秒) * @param topic rocketmq topic */ void edit(String executorName, Object param, Long oldTriggerTime, Long triggerTime, String uniqueKey, int delayTime, String topic); /** * 删除延时任务 * * @param executorName 执行器 * @param triggerTime 执行时间 * @param uniqueKey 添加任务时的唯一凭证 * @param topic rocketmq topic */ void delete(String executorName, Long triggerTime, String uniqueKey, String topic); }