package com.bocloud.nms.model.hillstone;

import java.util.Objects;

public class VpnIpsecProposal1Model extends HillStoneGenericModel {
    private Long vendorId; // 所属平台
    private String name; // 名称
    private Integer auth; // 认证，3 RAS-Signature, 2 DSA-Signature, null Pre-share
    private Integer hash; // 验证算法，1 MD5，null SHA，4 SHA256, 5 SHA384, 6 SHA512
    private Integer encryption; // 加密算法，null 3DES，1 DES，7 AES
    private Integer encKeyLen; // key长度，当encryption=7时此字段有值
    private Integer dhGroup; // DH组，Group1 Group2 Group5 Group14 Group15 Group16, null为Group2
    private Integer lifeTime; // 生存时间，秒

    public String getName() {
        return name;
    }

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

    public Integer getHash() {
        return hash;
    }

    public void setHash(Integer hash) {
        this.hash = hash;
    }

    public Integer getDhGroup() {
        return dhGroup;
    }

    public void setDhGroup(Integer dhGroup) {
        this.dhGroup = dhGroup;
    }

    public Integer getLifeTime() {
        return lifeTime;
    }

    public void setLifeTime(Integer lifeTime) {
        this.lifeTime = lifeTime;
    }

    public Integer getAuth() {
        return auth;
    }

    public void setAuth(Integer auth) {
        this.auth = auth;
    }

    public Integer getEncryption() {
        return encryption;
    }

    public void setEncryption(Integer encryption) {
        this.encryption = encryption;
    }

    public Integer getEncKeyLen() {
        return encKeyLen;
    }

    public void setEncKeyLen(Integer encKeyLen) {
        this.encKeyLen = encKeyLen;
    }

    public Long getVendorId() {
        return vendorId;
    }

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

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

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