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

/**
 * 网络区域
 *
 * @author wangyu
 * @version 1.0
 * @since 2018年10月15日
 */
@Table("network_area")
public class NetworkArea extends GenericEntity {

    @PK(PKStrategy.AUTO)
    private Long id;
    // 网络区域类型
    @Column("net_area_type")
    private String netAreaType;
    // 是否为系统保留
    @Column("is_reserved")
    private Boolean reserved;
    // 物理位置
    @Column("dc_id")
    private Long dcId;
    // 默认集群
    @Column("def_cluster_id")
    private Long defClusterId;
    @IgnoreAll
    private String portGroupName;
    @IgnoreAll
    private String dcName;
    @IgnoreAll
    private String defClusterName;

    /**
     *
     */
    public NetworkArea() {
        super();
    }

    /**
     * @param netAreaType
     * @param reserved
     */
    public NetworkArea(String netAreaType, Boolean reserved) {
        super();
        this.netAreaType = netAreaType;
        this.reserved = reserved;
    }

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

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

    /**
     * @return the netAreaType
     */
    public String getNetAreaType() {
        return netAreaType;
    }

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

    /**
     * @return the reserved
     */
    public Boolean getReserved() {
        return reserved;
    }

    /**
     * @param reserved the reserved to set
     */
    public void setReserved(Boolean reserved) {
        this.reserved = reserved;
    }

    /**
     * @return the portGroupName
     */
    public String getPortGroupName() {
        return portGroupName;
    }

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

    /**
     * @return the dcId
     */
    public Long getDcId() {
        return dcId;
    }

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

    /**
     * @return the dcName
     */
    public String getDcName() {
        return dcName;
    }

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

    /**
     * @return the defClusterId
     */
    public Long getDefClusterId() {
        return defClusterId;
    }

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

    /**
     * @return the defClusterName
     */
    public String getDefClusterName() {
        return defClusterName;
    }

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