package net.northking.cctp.executePlan.dto.planTask;

import java.io.Serializable;
import java.util.Map;

/**
 * <p>Title: ScriptStep</p>
 * <p>Description: </p>
 *
 * @Author chenjianfeng
 * @Version V1.0
 * @Date 2022/12/27
 * <p>Copyright (c) 京北方信息技术股份有限公司 Corporation 2022 . All rights reserved.</p>
 */

public class ScriptStep implements Serializable {

    /**
     * 步骤Id
     */
    private String id;
    /**
     * 是否跳过步骤
     */
    private boolean skip;
    /**
     * 出错继续下一步
     */
    private boolean ignoreError;
    /**
     * 调用组件库
     */
    private String componentLib;
    /**
     * 调用组件命令
     */
    private String command;
    /**
     * 步骤操作对象
     */
    //private List<StepTarget> targets;
    /**
     * 步骤输出对象
     */
    private Map<String,String> output;
    /**
     * 步骤变量
     */
    private Map<String,String> args;
    /**
     * 步骤标题
     */
    private String title;
    /**
     * 步骤缩略图
     */
    private String imgUri;
    /**
     * 子步骤
     */
    private ScriptStep[] children;

    /**
     * 扩展属性
     */
    private Map<String, Object> extAttrs;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public boolean isSkip() {
        return skip;
    }

    public void setSkip(boolean skip) {
        this.skip = skip;
    }

    public boolean isIgnoreError() {
        return ignoreError;
    }

    public void setIgnoreError(boolean ignoreError) {
        this.ignoreError = ignoreError;
    }

    public String getComponentLib() {
        return componentLib;
    }

    public void setComponentLib(String componentLib) {
        this.componentLib = componentLib;
    }

    public String getCommand() {
        return command;
    }

    public void setCommand(String command) {
        this.command = command;
    }

    public Map<String, String> getOutput() {
        return output;
    }

    public void setOutput(Map<String, String> output) {
        this.output = output;
    }

    public Map<String, String> getArgs() {
        return args;
    }

    public void setArgs(Map<String, String> args) {
        this.args = args;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getImgUri() {
        return imgUri;
    }

    public void setImgUri(String imgUri) {
        this.imgUri = imgUri;
    }

    public ScriptStep[] getChildren() {
        return children;
    }

    public void setChildren(ScriptStep[] children) {
        this.children = children;
    }

    public Map<String, Object> getExtAttrs() {
        return extAttrs;
    }

    public void setExtAttrs(Map<String, Object> extAttrs) {
        this.extAttrs = extAttrs;
    }
}
