Files
IM-server-new/common/src/main/java/cn/wildfirechat/pojos/ArticleContent.java
T

57 lines
1.7 KiB
Java
Raw Normal View History

2022-08-16 15:05:30 +08:00
package cn.wildfirechat.pojos;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
2022-08-16 15:05:30 +08:00
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.Base64;
import java.util.List;
public class ArticleContent {
public static class Article {
public String id;
public String cover;
public String title;
2022-09-20 11:03:14 +08:00
public String digest;
2022-08-16 15:05:30 +08:00
public String url;
public boolean rr;
public Article() {
}
2022-09-20 11:03:14 +08:00
public Article(String id, String cover, String title, String digest, String url, boolean rr) {
2022-08-16 15:05:30 +08:00
this.id = id;
this.cover = cover;
this.title = title;
2022-09-20 11:03:14 +08:00
this.digest = digest;
2022-08-16 15:05:30 +08:00
this.url = url;
this.rr = rr;
}
}
public Article top;
public List<Article> subArticles;
public ArticleContent() {
}
2022-09-20 11:03:14 +08:00
public ArticleContent(String id, String cover, String title, String digest, String url, boolean rr) {
this.top = new Article(id, cover, title, digest, url, rr);
2022-08-16 15:05:30 +08:00
}
2022-09-20 11:03:14 +08:00
public ArticleContent addSubArticle(String id, String cover, String title, String digest, String url, boolean rr) {
2022-08-16 15:05:30 +08:00
if (subArticles == null)
subArticles = new ArrayList<>();
2022-09-20 11:03:14 +08:00
subArticles.add(new Article(id, cover, title, digest, url, rr));
2022-08-16 15:05:30 +08:00
return this;
}
public MessagePayload toPayload() {
MessagePayload payload = new MessagePayload();
payload.setType(13);
payload.setSearchableContent(top.title);
payload.setBase64edData(Base64.getEncoder().encodeToString(new GsonBuilder().disableHtmlEscaping().create().toJson(this).getBytes(StandardCharsets.UTF_8)));
2022-08-16 15:05:30 +08:00
return payload;
}
}