package com.bocloud.nms.model.hillstone;

import java.util.Objects;

public class VirtualSwitchModel extends HillStoneGenericModel {
    private Long vendorId; // 所属平台
    private String name; // 名称
    private String vswitchInterface; // 接口
    private Integer trunkVlanEnable; // 转发标记包 0->未开启；1->开启
    private Integer trunkDvlanEnable; // 转发双标记包 0->未开启；1->开启
    private Integer unknownMcDrop; // 丢弃未知多播包 0->未开启；1->开启
    private Integer vwMode; //virtual-wire模式 0->严格；1->不严格; 没有表示不开启
    private Integer igmpSnoopingEnable; //IGMP Snooping 1->开启; 没有表示不开启

    public Long getVendorId() {
        return vendorId;
    }

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

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getVswitchInterface() {
        return vswitchInterface;
    }

    public void setVswitchInterface(String vswitchInterface) {
        this.vswitchInterface = vswitchInterface;
    }

    public Integer getTrunkVlanEnable() {
        return trunkVlanEnable;
    }

    public void setTrunkVlanEnable(Integer trunkVlanEnable) {
        this.trunkVlanEnable = trunkVlanEnable;
    }

    public Integer getTrunkDvlanEnable() {
        return trunkDvlanEnable;
    }

    public void setTrunkDvlanEnable(Integer trunkDvlanEnable) {
        this.trunkDvlanEnable = trunkDvlanEnable;
    }

    public Integer getUnknownMcDrop() {
        return unknownMcDrop;
    }

    public void setUnknownMcDrop(Integer unknownMcDrop) {
        this.unknownMcDrop = unknownMcDrop;
    }

    public Integer getVwMode() {
        return vwMode;
    }

    public void setVwMode(Integer vwMode) {
        this.vwMode = vwMode;
    }

    public Integer getIgmpSnoopingEnable() {
        return igmpSnoopingEnable;
    }

    public void setIgmpSnoopingEnable(Integer igmpSnoopingEnable) {
        this.igmpSnoopingEnable = igmpSnoopingEnable;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) {
            return true;
        }
        if (o == null || getClass() != o.getClass()) {
            return false;
        }
        VirtualSwitchModel that = (VirtualSwitchModel) o;
        return Objects.equals(vendorId, that.vendorId) &&
            Objects.equals(name, that.name);
    }

    @Override
    public int hashCode() {
        return Objects.hash(vendorId, name);
    }
}
