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;

import java.util.List;

/**
 * @author luyanchao
 * @since 2019/2/22 14:28
 */
@Table("san_fabric")
public class SanFabric extends GenericEntity {

    @PK(value = PKStrategy.AUTO)
    private Long id;
    @Column("vendor_id")
    private Long vendorId;
    @Column("uuid")
    private String uuid; // uuid
    @Column("ip")
    private String ip; // ip地址
    @Column("username")
    private String username; // 用户名
    @Column("password")
    private String password; // 密码
    @Column("type")
    private String type; // 交换机类型
    @Column("policy")
    private String policy; // 分区策略
    @Column("protocol")
    private String protocol; // 通讯协议
    @Column("wwn")
    private String wwn;// wwn号
    @Column("version")
    private String version;// 微码版本
    @Column("manufacturer")
    private String manufacturer; // 制造商
    @Column("zoneset")
    private String zoneset; // 当前cfg
    @Column("domain_id")
    private String domainId;// 当前的domain id
    @Column("model")
    private String model;// 型号
    @Column("sn")
    private String sn;// 序列号
    @Column("serial")
    private String serial; // 出厂序列号
    @Column("port_num")
    private Integer portNum; // 端口数量
    @IgnoreAll
    private List<SanFabricPort> ports;

    public Long getId() {
        return id;
    }

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

    public Long getVendorId() {
        return vendorId;
    }

    public void setVendorId(Long vendorId) {
        this.vendorId = vendorId;
    }

    public String getUuid() {
        return uuid;
    }

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

    public String getIp() {
        return ip;
    }

    public void setIp(String ip) {
        this.ip = ip;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getPolicy() {
        return policy;
    }

    public void setPolicy(String policy) {
        this.policy = policy;
    }

    public String getProtocol() {
        return protocol;
    }

    public void setProtocol(String protocol) {
        this.protocol = protocol;
    }

    public String getWwn() {
        return wwn;
    }

    public void setWwn(String wwn) {
        this.wwn = wwn;
    }

    public String getVersion() {
        return version;
    }

    public void setVersion(String version) {
        this.version = version;
    }

    public String getManufacturer() {
        return manufacturer;
    }

    public void setManufacturer(String manufacturer) {
        this.manufacturer = manufacturer;
    }

    public String getZoneset() {
        return zoneset;
    }

    public void setZoneset(String zoneset) {
        this.zoneset = zoneset;
    }

    public String getDomainId() {
        return domainId;
    }

    public void setDomainId(String domainId) {
        this.domainId = domainId;
    }

    public String getModel() {
        return model;
    }

    public void setModel(String model) {
        this.model = model;
    }

    public String getSn() {
        return sn;
    }

    public void setSn(String sn) {
        this.sn = sn;
    }

    public String getSerial() {
        return serial;
    }

    public void setSerial(String serial) {
        this.serial = serial;
    }

    public Integer getPortNum() {
        return portNum;
    }

    public void setPortNum(Integer portNum) {
        this.portNum = portNum;
    }

    public List<SanFabricPort> getPorts() {
        return ports;
    }

    public void setPorts(List<SanFabricPort> ports) {
        this.ports = ports;
    }
}