package com.friday.distributor.frame;

import com.friday.base.common.response.DubboResult;
import com.friday.distributor.bean.Job;
import com.friday.distributor.bean.TaieJobExecInfo;
import com.friday.operation.api.distributor.dto.TaskResultDto;

/**
 * @Author YaoYao
 * @Date Created In 15:28 2023/3/8
 * @Description 业务类型策略接口
 * @Modified By
 */
public interface IBizTypeStrategyContext {

    //异步启动任务
    DubboResult<String> asyncStartTaieJob(Job job);

    //同步启动任务
    DubboResult<TaskResultDto> syncStartTaieJob(Job job);

    //停止任务
    DubboResult stopTaieJob(Job job);

    //获取任务执行详情
    DubboResult<TaieJobExecInfo> getTaieJobExecDetail(Job job);


}
