package com.bocloud.ims.entity.resource;

/*
* 存储卷组，主机组以及端口组的映射关系
*/

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.bean.Generic;
import com.bocloud.entity.meta.PKStrategy;

@Table("storage_view")
public class StorageView extends Generic {

	@PK(value = PKStrategy.AUTO)
	private Long id; //
	@Column("volume_group_id")
	private Long volumeGroupId; // 卷组id，对应表storage_group中type为VG的id字段
	@Column("host_group_id")
	private Long hostGroupId; // 主机组id，对应表storage_group中type为HG的id字段
	@Column("port_group_id")
	private Long portGroupId; // 端口组id，对应表storage_group中type为PG的id字段
	@Column("key_path")
	private String keyPath; // smis用来传参
	@Column("uuid")
	private String uuid; // 唯一标识
	@Column("storage_id")
	private Long storageId;

	@Column("volume_group_name")
	@IgnoreAll
	private String volumeGroupName;

	@Column("volume_count")
	@IgnoreAll
	private Long volumeCount;

	@Column("host_group_name")
	@IgnoreAll
	private String hostGroupName;

	@Column("host_count")
	@IgnoreAll
	private Long hostCount;

	@Column("port_group_name")
	@IgnoreAll
	private String portGroupName;
	@IgnoreAll
	private StorageGroup volumeGroup;
	@IgnoreAll
	private StorageGroup hostGroup;

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public Long getVolumeGroupId() {
		return volumeGroupId;
	}

	public void setVolumeGroupId(Long volumeGroupId) {
		this.volumeGroupId = volumeGroupId;
	}

	public Long getHostGroupId() {
		return hostGroupId;
	}

	public void setHostGroupId(Long hostGroupId) {
		this.hostGroupId = hostGroupId;
	}

	public Long getPortGroupId() {
		return portGroupId;
	}

	public void setPortGroupId(Long portGroupId) {
		this.portGroupId = portGroupId;
	}

	public String getKeyPath() {
		return keyPath;
	}

	public void setKeyPath(String keyPath) {
		this.keyPath = keyPath;
	}

	public String getUuid() {
		return uuid;
	}

	public void setUuid(String uuid) {
		this.uuid = uuid;
	}

	public Long getStorageId() {
		return storageId;
	}

	public void setStorageId(Long storageId) {
		this.storageId = storageId;
	}

	public String getVolumeGroupName() {
		return volumeGroupName;
	}

	public void setVolumeGroupName(String volumeGroupName) {
		this.volumeGroupName = volumeGroupName;
	}

	public String getHostGroupName() {
		return hostGroupName;
	}

	public void setHostGroupName(String hostGroupName) {
		this.hostGroupName = hostGroupName;
	}

	public String getPortGroupName() {
		return portGroupName;
	}

	public void setPortGroupName(String portGroupName) {
		this.portGroupName = portGroupName;
	}

	public Long getVolumeCount() {
		return volumeCount;
	}

	public void setVolumeCount(Long volumeCount) {
		this.volumeCount = volumeCount;
	}

	public Long getHostCount() {
		return hostCount;
	}

	public void setHostCount(Long hostCount) {
		this.hostCount = hostCount;
	}

	public StorageGroup getVolumeGroup() {
		return volumeGroup;
	}

	public void setVolumeGroup(StorageGroup volumeGroup) {
		this.volumeGroup = volumeGroup;
	}

	public StorageGroup getHostGroup() {
		return hostGroup;
	}

	public void setHostGroup(StorageGroup hostGroup) {
		this.hostGroup = hostGroup;
	}
}
