package com.common.entity;

import java.time.LocalDateTime;

/**
 * XDR Honeypot 实体类
 * 对应数据库表 xdr_honeypot
 */
public class XdrHoneypot {
    private Long id;
    private String vcsource;
    private String dstartTime;
    private String dtime;
    private String riskLevel;
    private String vcconnection;
    private String fileInfo;
    private String extra;
    private String vctype;
    private String agentSn;
    private String agentName;
    private String honeypotId;
    private String honeypotName;
    private String srcIp;
    private String srcPort;
    private String srcMac;
    private String destIp;
    private String destPort;
    private String proxyIp;
    private String node;
    private LocalDateTime createTime;

    // 默认构造函数
    public XdrHoneypot() {
        this.createTime = LocalDateTime.now();
    }

    // 带参构造函数
    public XdrHoneypot(String vcsource, String dstartTime, String dtime, String riskLevel,
                       String vcconnection, String fileInfo, String extra, String vctype,
                       String agentSn, String agentName, String honeypotId, String honeypotName,
                       String srcIp, String srcPort, String srcMac, String destIp,
                       String destPort, String proxyIp, String node) {
        this();
        this.vcsource = vcsource;
        this.dstartTime = dstartTime;
        this.dtime = dtime;
        this.riskLevel = riskLevel;
        this.vcconnection = vcconnection;
        this.fileInfo = fileInfo;
        this.extra = extra;
        this.vctype = vctype;
        this.agentSn = agentSn;
        this.agentName = agentName;
        this.honeypotId = honeypotId;
        this.honeypotName = honeypotName;
        this.srcIp = srcIp;
        this.srcPort = srcPort;
        this.srcMac = srcMac;
        this.destIp = destIp;
        this.destPort = destPort;
        this.proxyIp = proxyIp;
        this.node = node;
    }

    // Getter 和 Setter 方法
    public Long getId() {
        return id;
    }

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

    public String getVcsource() {
        return vcsource;
    }

    public void setVcsource(String vcsource) {
        this.vcsource = vcsource;
    }

    public String getDstartTime() {
        return dstartTime;
    }

    public void setDstartTime(String dstartTime) {
        this.dstartTime = dstartTime;
    }

    public String getDtime() {
        return dtime;
    }

    public void setDtime(String dtime) {
        this.dtime = dtime;
    }

    public String getRiskLevel() {
        return riskLevel;
    }

    public void setRiskLevel(String riskLevel) {
        this.riskLevel = riskLevel;
    }

    public String getVcconnection() {
        return vcconnection;
    }

    public void setVcconnection(String vcconnection) {
        this.vcconnection = vcconnection;
    }

    public String getFileInfo() {
        return fileInfo;
    }

    public void setFileInfo(String fileInfo) {
        this.fileInfo = fileInfo;
    }

    public String getExtra() {
        return extra;
    }

    public void setExtra(String extra) {
        this.extra = extra;
    }

    public String getVctype() {
        return vctype;
    }

    public void setVctype(String vctype) {
        this.vctype = vctype;
    }

    public String getAgentSn() {
        return agentSn;
    }

    public void setAgentSn(String agentSn) {
        this.agentSn = agentSn;
    }

    public String getAgentName() {
        return agentName;
    }

    public void setAgentName(String agentName) {
        this.agentName = agentName;
    }

    public String getHoneypotId() {
        return honeypotId;
    }

    public void setHoneypotId(String honeypotId) {
        this.honeypotId = honeypotId;
    }

    public String getHoneypotName() {
        return honeypotName;
    }

    public void setHoneypotName(String honeypotName) {
        this.honeypotName = honeypotName;
    }

    public String getSrcIp() {
        return srcIp;
    }

    public void setSrcIp(String srcIp) {
        this.srcIp = srcIp;
    }

    public String getSrcPort() {
        return srcPort;
    }

    public void setSrcPort(String srcPort) {
        this.srcPort = srcPort;
    }

    public String getSrcMac() {
        return srcMac;
    }

    public void setSrcMac(String srcMac) {
        this.srcMac = srcMac;
    }

    public String getDestIp() {
        return destIp;
    }

    public void setDestIp(String destIp) {
        this.destIp = destIp;
    }

    public String getDestPort() {
        return destPort;
    }

    public void setDestPort(String destPort) {
        this.destPort = destPort;
    }

    public String getProxyIp() {
        return proxyIp;
    }

    public void setProxyIp(String proxyIp) {
        this.proxyIp = proxyIp;
    }

    public String getNode() {
        return node;
    }

    public void setNode(String node) {
        this.node = node;
    }

    public LocalDateTime getCreateTime() {
        return createTime;
    }

    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }

    @Override
    public String toString() {
        return "XdrHoneypot{" +
                "id=" + id +
                ", vcsource='" + vcsource + '\'' +
                ", dstartTime='" + dstartTime + '\'' +
                ", dtime='" + dtime + '\'' +
                ", riskLevel='" + riskLevel + '\'' +
                ", vcconnection='" + vcconnection + '\'' +
                ", fileInfo='" + fileInfo + '\'' +
                ", extra='" + extra + '\'' +
                ", vctype='" + vctype + '\'' +
                ", agentSn='" + agentSn + '\'' +
                ", agentName='" + agentName + '\'' +
                ", honeypotId='" + honeypotId + '\'' +
                ", honeypotName='" + honeypotName + '\'' +
                ", srcIp='" + srcIp + '\'' +
                ", srcPort='" + srcPort + '\'' +
                ", srcMac='" + srcMac + '\'' +
                ", destIp='" + destIp + '\'' +
                ", destPort='" + destPort + '\'' +
                ", proxyIp='" + proxyIp + '\'' +
                ", node='" + node + '\'' +
                ", createTime=" + createTime +
                '}';
    }
}