package io.wdd.func.auto.service;


import io.wdd.func.auto.beans.AppFunctionEnum;
import io.wdd.func.auto.beans.BaseFunctionEnum;
import io.wdd.func.auto.beans.HarborFunctionEnum;

import java.util.ArrayList;
import java.util.List;


public interface FuncService {

    List<String> callBaseFuncService(String agentTopicName, String baseFunctionName, List<String> funcArgs);


    List<String> callAppFuncService(String agentTopicName, String appFunctionName, List<String> funcArgs);

    /**
     * 调用基本脚本,返回正确或者错误的结果
     *
     * @param baseFunctionEnum
     * @param funcArgs
     * @param durationTask
     * @return
     */
    boolean callBaseFuncAndJudge(String agentTopicName, BaseFunctionEnum baseFunctionEnum, List<String> funcArgs, boolean durationTask);

    boolean callAppFuncAndJudge(String agentTopicName, AppFunctionEnum appFunctionEnum, List<String> funcArgs);

    boolean callHarborFuncAndJudge(String agentTopicName, HarborFunctionEnum harborFunctionEnum, ArrayList<String> funcArgs);
}
