package com.bocloud.ims.entity.resource.hmc;

import com.alibaba.fastjson.JSONObject;
import com.bocloud.entity.annotations.Column;
import com.bocloud.entity.annotations.IgnoreAll;
import com.bocloud.entity.annotations.PK;
import com.bocloud.entity.annotations.Table;
import com.bocloud.entity.meta.PKStrategy;

@Deprecated
@Table("hmc_virtual_disk")
public class HmcVirtualDisk {

    /**
     * id
     */
    @PK(value = PKStrategy.AUTO)
    private Long id;

    /**
     * disk name
     * 
     * visk0
     */
    @Column("disk_name")
    private String diskName;

    /**
     * disk capacity
     * 
     * 50
     */
    @Column("disk_capacity")
    private Double diskCapacity;
    /**
     * disk status
     * 
     * visk0
     */
    @Column("status")
    private String status;

    /**
     * disk label
     * 
     * None
     */
    @Column("disk_label")
    private String diskLabel;
    /**
     * unique device id
     * 
     * 0300cf856300004c0000000164d55cc59a.1
     */
    @Column("unique_device_id")
    private String uniqueDeviceId;
    /**
     * volume group平台id
     */
    @Column("vg_id")
    private Long vgId;
    /**
     * virtual disk assign partition id
     * 
     * 这个id是平台的partition的id
     * 
     * 不是hmc端显示的partition的id
     * 
     * 2
     * 
     */
    @Column("assign_partition_id")
    private Long assignPartitionId;
    /**
     * virtual disk assign slot id
     * 
     * 2
     * 
     */
    @Column("assign_slot_id")
    private Integer assignSlotId;
    /**
     * virtual disk vios id
     * 
     * 这个id是平台的vios的id
     * 
     * 不是hmc端显示的vios的id 2
     * 
     */
    @Column("vios_id")
    private Long viosId;
    /**
     * virtual disk vios slot id
     * 
     * 2
     * 
     */
    @Column("vios_slot_id")
    private Integer viosSlotId;
    /**
     * vios name
     */
    @IgnoreAll
    private String viosName;
    /**
     * vios hmc id
     */
    @IgnoreAll
    private Integer viosHmcId;
    /**
     * virtual disk assign info
     * 
     * aix(2)
     * 
     */
    @IgnoreAll
    private String assign;
    /**
     * virtual disk assign partition status
     * 
     * not activated
     * 
     */
    @IgnoreAll
    private String assignStatus;
    /**
     * volume group name
     * 
     * rootvg
     * 
     */
    @IgnoreAll
    @Column("group_name")
    private String groupName;

    /**
     * @return the id
     */
    public Long getId() {
        return id;
    }

    /**
     * @param id
     *            the id to set
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * @return the diskName
     */
    public String getDiskName() {
        return diskName;
    }

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

    /**
     * @return the diskCapacity
     */
    public Double getDiskCapacity() {
        return diskCapacity;
    }

    /**
     * @param diskCapacity
     *            the diskCapacity to set
     */
    public void setDiskCapacity(Double diskCapacity) {
        this.diskCapacity = diskCapacity;
    }

    /**
     * @return the status
     */
    public String getStatus() {
        return status;
    }

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

    /**
     * @return the diskLabel
     */
    public String getDiskLabel() {
        return diskLabel;
    }

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

    /**
     * @return the uniqueDeviceId
     */
    public String getUniqueDeviceId() {
        return uniqueDeviceId;
    }

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

    /**
     * @return the vgId
     */
    public Long getVgId() {
        return vgId;
    }

    /**
     * @param vgId
     *            the vgId to set
     */
    public void setVgId(Long vgId) {
        this.vgId = vgId;
    }

    /**
     * @return the assignPartitionId
     */
    public Long getAssignPartitionId() {
        return assignPartitionId;
    }

    /**
     * @param assignPartitionId
     *            the assignPartitionId to set
     */
    public void setAssignPartitionId(Long assignPartitionId) {
        this.assignPartitionId = assignPartitionId;
    }

    /**
     * @return the assignSlotId
     */
    public Integer getAssignSlotId() {
        return assignSlotId;
    }

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

    /**
     * @return the assignStatus
     */
    public String getAssignStatus() {
        return assignStatus;
    }

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

    /**
     * @return the viosId
     */
    public Long getViosId() {
        return viosId;
    }

    /**
     * @param viosId
     *            the viosId to set
     */
    public void setViosId(Long viosId) {
        this.viosId = viosId;
    }

    /**
     * @return the viosSlotId
     */
    public Integer getViosSlotId() {
        return viosSlotId;
    }

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

    /**
     * @return the viosName
     */
    public String getViosName() {
        return viosName;
    }

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

    /**
     * @return the viosHmcId
     */
    public Integer getViosHmcId() {
        return viosHmcId;
    }

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

    /**
     * @return the assign
     */
    public String getAssign() {
        return assign;
    }

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

    /**
     * @return the groupName
     */
    public String getGroupName() {
        return groupName;
    }

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

    public HmcVirtualDisk() {
    }

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

}
