package cd.casic.module.terminal.host.terminal.enums;

import cn.orionsec.kit.lang.utils.collect.Lists;
import java.util.List;

/**
 * 终端连接状态
 *
 * @author Jiahang Li
 * @version 1.0.0
 * @since 2023/12/26 22:27
 */
public enum TerminalConnectStatusEnum {

    /**
     * 连接中
     */
    CONNECTING,

    /**
     * 完成
     */
    COMPLETE,

    /**
     * 失败
     */
    FAILED,

    /**
     * 强制下线
     */
    FORCE_OFFLINE,

    ;

    public static final List<String> FINISH_STATUS_LIST = Lists.of(COMPLETE.name(), FAILED.name(), FORCE_OFFLINE.name());

    public static TerminalConnectStatusEnum of(String type) {
        if (type == null) {
            return null;
        }
        for (TerminalConnectStatusEnum value : values()) {
            if (value.name().equals(type)) {
                return value;
            }
        }
        return null;
    }

}
