1 package com.netease.nimlib.sdk.search.model;
10 import java.util.ArrayList;
11 import java.util.List;
21 private final NIMIndexRecord record;
25 private final String query;
27 private List<RecordHitInfo> hitInfo;
35 return record.content;
39 return MsgIndexHelper.getSessionTypeFromNIMRecordId(record.id);
43 return MsgIndexHelper.getSessionIdFromNIMRecordId(record.id);
63 if (message == null) {
64 message = MsgDBHelper.queryMessageBySeqId(record.dataid);
71 if (hitInfo == null) {
72 ArrayList<QueryHit.HitInfo> hits = QueryHit.getInstance().hit(
getText(), query,
true,
false);
73 if (hits == null || hits.isEmpty()) {
75 hits = QueryHit.getInstance().hit(
getText(), query,
true,
true);
78 hitInfo =
new ArrayList<>(hits.size());
79 for (QueryHit.HitInfo h : hits) {
90 List<RecordHitInfo> clone =
new ArrayList<>(hitInfo.size());
100 return (
int) (msgIndexInfo.record.time - record.time);
105 return record.toString();
int compareTo(MsgIndexRecord msgIndexInfo)
List< RecordHitInfo > cloneHitInfo()
NIMIndexRecord getRecord()
NIM消息实体数据结构。 第三方APP不要调用设置类接口,调用之后不会被持久化
SessionTypeEnum getSessionType()
MsgIndexRecord(NIMIndexRecord record, String query)
List< RecordHitInfo > getHitInfo()