package com.bocloud.cmp.model.hmc.sdk.module;

import com.alibaba.fastjson.JSONObject;
/**
 * Physical Volume
 *
 * @author lkx007
 */

/**
 * @author lkx007
 */
public class PhysicalVolume {
    /**
     * SAS Disk Drive
     */
    private String description;
    /**
     * U789C.001.DQDFC73-P2-D5
     */
    private String locationCode;
    /**
     * NoReserve
     */
    private String reservePolicy;
    /**
     * Failover
     */
    private String reservePolicyAlgorithm;
    /**
     * 01M0lCTVNUMzMwMDY1N1NTNTAwMEM1MDAyODVDNUY0Nw==
     */
    private String uniqueDeviceId;
    /**
     * false
     */
    private String availableForUsage;
    /**
     * 286102
     */
    private String volumeCapacity;
    /**
     * hdisk2
     */
    private String volumeName;
    /**
     * active
     */
    private String volumeState;
    /**
     * 2A1135000C500285C5F470BST3300657SS03IBMsas
     */
    private String volumeUniqueId;
    /**
     * false
     */
    private String isFibreChannelBacked;

    /**
     * @return the description
     */
    public String getDescription() {
        return description;
    }

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

    /**
     * @return the locationCode
     */
    public String getLocationCode() {
        return locationCode;
    }

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

    /**
     * @return the reservePolicy
     */
    public String getReservePolicy() {
        return reservePolicy;
    }

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

    /**
     * @return the reservePolicyAlgorithm
     */
    public String getReservePolicyAlgorithm() {
        return reservePolicyAlgorithm;
    }

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

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

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

    /**
     * @return the availableForUsage
     */
    public String getAvailableForUsage() {
        return availableForUsage;
    }

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

    /**
     * @return the volumeCapacity
     */
    public String getVolumeCapacity() {
        return volumeCapacity;
    }

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

    /**
     * @return the volumeName
     */
    public String getVolumeName() {
        return volumeName;
    }

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

    /**
     * @return the volumeState
     */
    public String getVolumeState() {
        return volumeState;
    }

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

    /**
     * @return the volumeUniqueId
     */
    public String getVolumeUniqueId() {
        return volumeUniqueId;
    }

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

    /**
     * @return the isFibreChannelBacked
     */
    public String getIsFibreChannelBacked() {
        return isFibreChannelBacked;
    }

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

    public PhysicalVolume() {
    }

    public PhysicalVolume(String volumeCapacity, String volumeName) {
        super();
        this.volumeCapacity = volumeCapacity;
        this.volumeName = volumeName;
    }

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