package org.lym.pom.repository.mongo.enums;

import java.time.Instant;

public class Link {

    private String  addrHash;
    private String  addr;
    private String  title;
    private int     submitCount;
    private int     clickCount;
    private int     goodCount;
    private int     badCount;
    private int     baiduRefCount;
    private double  score;
    private int     pingCount;
    private int     pingErrCount;
    private Instant pingTime;
    private String  cardHtml;

    // ... 其他瞬态字段
    private transient String keywords;  // 关键词 (LINK_T_KEYWORDS)
    private transient String htmlContent;  // HTML内容 (LINK_T_HTML)
    private transient String plainText;   // 文本内容 (LINK_T_TEXT)
    private transient int linkCount;       // 链接计数 (LINK_T_COUNT)
    private transient String description; // 描述 (LINK_T_DESCRIPTION)
    private transient String imageUrl;     // 链接图片 (LINK_T_IMAGE)
    public static class SiteInfo {
        private String name;
        private String domain;
        private String fullUrl;
        private String faviconUrl;

        // ... 构造函数、getter 和 setter 方法
    }
    //定义了一些瞬态属性键名，这些属性可能不会持久化存储，但在处理展示或业务逻辑时非常有用，
    // 例如关键词(LINK_T_KEYWORDS)、HTML内容(LINK_T_HTML)、文本内容(LINK_T_TEXT)、
    // 链接计数(LINK_T_COUNT)、描述(LINK_T_DESCRIPTION)、链接图片(LINK_T_IMAGE)、
    // 链接所属网站信息（如网站名称、域名、完整地址、图标等）。

    public static final String LINK = "link";
    // ... 其他常量定义

    // 构造函数、getter和setter方法
    // ...

    // 可能还会有辅助方法获取链接统计信息或生成卡片HTML等
    // ...
}