package cn.estsh.i3plus.pojo.model.softswitch;

import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.softswitch.bean.*;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiParam;
import lombok.Data;

import java.io.Serializable;
import java.util.Objects;

/**
 * @Description : 适配器model
 * @Reference :
 * @Author : yunhao
 * @CreateDate : 2019-09-04 15:30
 * @Modify:
 **/
@Data
@JsonInclude(JsonInclude.Include.NON_NULL)
public class BsSuitCaseModel implements Serializable {
    private static final long serialVersionUID = -7420782744192475445L;

    @ApiParam(value = "适配器")
    private BsSuitCase bsSuitCase;

    @ApiParam(value = "适配器同步处理Cloud微服务标识")
    private Integer resultSoftType;

    @ApiParam(value = "数据源适配套件")
    private BsSuitCaseDataSource bsSuitCaseDataSource;

    @ApiParam(value = "socket适配套件")
    private BsSocketSuitCase bsSocketSuitCase;

    @ApiParam(value = "Web Service 适配套件")
    private BsSuitCaseWebService webService;

    @ApiParam(value = " MQ 适配套件")
    private BsSuitCaseMq mq;

    @ApiParam(value = "REST 适配套件")
    private BsSuitCaseREST bsSuitCaseREST;

    @ApiParam(value = "FTP 适配器")
    private BsSuitCaseFTP bsSuitCaseFTP;

    @ApiParam(value = "分页数据")
    private Pager pager;

    public BsSuitCaseModel() {
    }

    public BsSuitCaseModel(BsSuitCase bsSuitCase) {
        this.bsSuitCase = bsSuitCase;
        if(Objects.nonNull(bsSuitCase.getResultSoftType())){
            this.resultSoftType = bsSuitCase.getResultSoftType();
        }
    }
}
