OpsTimestamp
简介
OpsTimestamp对应于opensearch中的TIMESTAMP数据类型,用于表示时间戳。
构造函数
函数原型 | 函数简介 |
OpsTimestamp(long timestamp) | 构造OpsTimestamp |
函数列表
函数原型 | 函数简介 |
long getValue() | 获取timestamp的值 |
函数详情
OpsTimestamp(long timestamp)
使用时间戳构造OpsTimestamp,为了和opensearch中的TIMESTAMP字段保持一致,建议timestamp的时间单位精确到毫秒。
参数列表:
timestamp — 时间戳
long getValue()
获取时间戳的数值,opensearch中TIMESTAMP数据类型的时间精度是毫秒。返回值:返回时间戳
代码示例:
package users.scorer;
import com.aliyun.opensearch.cava.framework.OpsScoreParams;
import com.aliyun.opensearch.cava.framework.OpsScorerInitParams;
import com.aliyun.opensearch.cava.framework.OpsRequest;
import com.aliyun.opensearch.cava.framework.OpsDoc;
import com.aliyun.opensearch.cava.framework.OpsTimestamp;
class BasicSimilarityScorer {
boolean init(OpsScorerInitParams params) {
return params.getDoc().requireAttribute("date");
}
double score(OpsScoreParams params) {
OpsDoc doc = params.getDoc();
OpsTimestamp timestamp = doc.docFieldTimestamp("date");
if (timestamp == null) {
doc.trace("timestamp is null");
} else {
doc.trace("timestamp value: ", timestamp.getValue());
}
return 0.0;
}
}