package com.hotent.uc.model;

import lombok.Data;

/**
 * 主机信息
 */
@Data
public class Host {
    /**
     * 主机的ID.
     */
    private String hostid;

    /**
     * 用于监控主机的Proxy ID。
     */
    private String proxyHostid;

    /**
     * 正式名称
     */
    private String host;

    /**
     * 主机的状态和功能。
     *
     * 可能的值是:
     * 0 - (默认) 开启监控的主机;
     * 1 - 没有开启监控的主机。
     */
    private String status;

    /**
     *不可用状态Agent的下一次轮训时间.
     */
    private String disableUntil;

    /**
     * Agent不可用时的错误信息
     */
    private String error;

    /**
     * Agent不可用时的时间.
     */
    private String available;

    /**
     * 主机的来源.
     *
     * 可能的值:
     * 0 - 普通主机;
     * 4 - 自动发现的主机.
     */
    private String errorsFrom;

    private String lastaccess;

    /**
     * MI 认证算法.
     *
     * 可能的值:
     * -1 - (默认) 默认;
     * 0 - 无;
     * 1 - MD2;
     * 2 - MD5
     * 4 - straight;
     * 5 - OEM;
     * 6 - RMCP+
     */
    private String ipmiAuthtype;

    /**
     * MI 权限等级.
     *
     * 可能的值:
     * 1 - 回调;
     * 2 - (默认) 用户;
     * 3 - 操作员;
     * 4 - 管理员;
     * 5 - OEM原厂.
     */
    private String ipmiPrivilege;

    /**
     * IPMI 用户名.
     */
    private String ipmiUsername;

    /**
     * IPMI 密码。
     */
    private String ipmiPassword;

    /**
     * 不可用状态IPMI agent的下一次轮训时间.
     */
    private String ipmiDisableUntil;

    private String ipmiAvailable;

    private String snmpDisableUntil;

    private String snmpAvailable;

    private String maintenanceid;

    private String maintenanceStatus;

    private String maintenanceType;

    private String maintenanceFrom;

    private String ipmiErrorsFrom;

    private String snmpErrorsFrom;

    private String ipmiError;

    private String snmpError;

    private String jmxDisableUntil;

    private String jmxAvailable;

    private String jmxErrorsFrom;

    private String jmxError;

    private String name;

    private String flags;

    private String templateid;

    private String description;

    private String tlsConnect;

    private String tlsAccept;

    private String tlsIssuer;

    private String tlsSubject;

    private String tlsPskIdentity;

    private String tlsPsk;

    private String proxyAddress;

    private String autoCompress;
}
