package com.bocloud.cmp.model.installation.catalog;

import com.alibaba.fastjson.JSONObject;

/**
 * RAID 磁盘驱动器信息
 *
 * @author 007
 */
public class Drive {
    /**
     * 硬盘壳id
     * <p>
     * 252
     */
    private Integer enclosureId;
    /**
     * 硬盘插槽id
     * <p>
     * 0
     */
    private Integer slot;
    /**
     * 硬盘驱动器id
     * <p>
     * 9
     */
    private Integer driveId;
    /**
     * 状态
     * <p>
     * "Onln"
     */
    private String state;
    /**
     * 磁盘组
     * <p>
     * 0
     */
    private Integer dirveGroup;
    /**
     * 磁盘大小
     * <p>
     * "278.875 GB"
     */
    private String size;
    /**
     * "SAS"
     */
    private String intf;
    /**
     * "HDD"
     */
    private String med;
    /**
     * "512B"
     */
    private String seSz;
    /**
     * "HUC109030CSS600"
     */
    private String model;

    /**
     * @return the enclosureId
     */
    public Integer getEnclosureId() {
        return enclosureId;
    }

    /**
     * @param enclosureId the enclosureId to set
     */
    public void setEnclosureId(Integer enclosureId) {
        this.enclosureId = enclosureId;
    }

    /**
     * @return the slot
     */
    public Integer getSlot() {
        return slot;
    }

    /**
     * @param slot the slot to set
     */
    public void setSlot(Integer slot) {
        this.slot = slot;
    }

    /**
     * @return the driveId
     */
    public Integer getDriveId() {
        return driveId;
    }

    /**
     * @param driveId the driveId to set
     */
    public void setDriveId(Integer driveId) {
        this.driveId = driveId;
    }

    /**
     * @return the state
     */
    public String getState() {
        return state;
    }

    /**
     * @param state the state to set
     */
    public void setState(String state) {
        this.state = state;
    }

    /**
     * @return the dirveGroup
     */
    public Integer getDirveGroup() {
        return dirveGroup;
    }

    /**
     * @param dirveGroup the dirveGroup to set
     */
    public void setDirveGroup(Integer dirveGroup) {
        this.dirveGroup = dirveGroup;
    }

    /**
     * @return the size
     */
    public String getSize() {
        return size;
    }

    /**
     * @param size the size to set
     */
    public void setSize(String size) {
        this.size = size;
    }

    /**
     * @return the intf
     */
    public String getIntf() {
        return intf;
    }

    /**
     * @param intf the intf to set
     */
    public void setIntf(String intf) {
        this.intf = intf;
    }

    /**
     * @return the med
     */
    public String getMed() {
        return med;
    }

    /**
     * @param med the med to set
     */
    public void setMed(String med) {
        this.med = med;
    }

    /**
     * @return the seSz
     */
    public String getSeSz() {
        return seSz;
    }

    /**
     * @param seSz the seSz to set
     */
    public void setSeSz(String seSz) {
        this.seSz = seSz;
    }

    /**
     * @return the domain
     */
    public String getModel() {
        return model;
    }

    /**
     * @param model the domain to set
     */
    public void setModel(String model) {
        this.model = model;
    }

    @Override
    public String toString() {
        return JSONObject.toJSONString(this);
    }

    public Drive() {
        super();
    }

    public Drive(Integer enclosureId, Integer slot, Integer driveId, String state, Integer dirveGroup, String size,
                 String intf, String med, String seSz, String model) {
        super();
        this.enclosureId = enclosureId;
        this.slot = slot;
        this.driveId = driveId;
        this.state = state;
        this.dirveGroup = dirveGroup;
        this.size = size;
        this.intf = intf;
        this.med = med;
        this.seSz = seSz;
        this.model = model;
    }
}
