本文整理汇总了Java中org.elasticsearch.action.percolate.PercolateResponse.Match方法的典型用法代码示例。如果您正苦于以下问题:Java PercolateResponse.Match方法的具体用法?Java PercolateResponse.Match怎么用?Java PercolateResponse.Match使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.elasticsearch.action.percolate.PercolateResponse
的用法示例。
在下文中一共展示了PercolateResponse.Match方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: fetchMatchingAlertTerms
import org.elasticsearch.action.percolate.PercolateResponse; //导入方法依赖的package包/类
ArrayList<String> fetchMatchingAlertTerms(AbstractPost post){
ArrayList<String> matchingTerms = new ArrayList<String>();
try {
XContentBuilder docBuilder = XContentFactory.jsonBuilder().startObject();
docBuilder.field("doc").startObject(); //This is needed to designate the document
docBuilder.field(ALERT_FIELD, post.text);
docBuilder.endObject(); //End of the doc field
docBuilder.endObject(); //End of the JSON root object
//Percolate
PercolateResponse response = ElasticsearchConnectionManager.getClient().preparePercolate()
.setIndices(ALERT_INDEX)
.setDocumentType(post.getType())
.setSource(docBuilder).execute().actionGet();
//Iterate over the results and add the registered alert term
for(PercolateResponse.Match match : response) {
matchingTerms.add(match.getId().toString());
}
} catch (IOException e) {
System.out.println("Error! Can't check if a post is matching a percolator alert");
e.printStackTrace();
}
return matchingTerms;
}
示例2: percolate
import org.elasticsearch.action.percolate.PercolateResponse; //导入方法依赖的package包/类
@Override
public List<PercolateQuery> percolate(List<Document> docs) {
final Stopwatch watch = LoggingUtils.createStopWatch();
final List<PercolateQuery> results = new ArrayList<>();
final MultiPercolateRequestBuilder multiPercolate = client.prepareMultiPercolate();
for (final Document doc : docs) {
if (doc.getPercolate() != null) {
multiPercolate.add(
new PercolateRequestBuilder(client).setDocumentType(doc.get_type())
.setSize(doc.getPercolate().getMaxMatches())
.setPercolateDoc(new PercolateSourceBuilder.DocBuilder().setDoc(doc.get_jsonObject())));
}
}
final MultiPercolateResponse.Item[] responses = multiPercolate.get().getItems();
for (final MultiPercolateResponse.Item response : responses) {
if (!response.isFailure()) {
for (final PercolateResponse.Match match : response.getResponse().getMatches()) {
results.add(new PercolateQuery().setId(match.getId().toString()));
}
}
}
LoggingUtils.stopAndLogStopWatch(logger, watch, "Percolate");
return results;
}
示例3: ReduceResult
import org.elasticsearch.action.percolate.PercolateResponse; //导入方法依赖的package包/类
ReduceResult(long count, PercolateResponse.Match[] matches, InternalAggregations reducedAggregations) {
this.count = count;
this.matches = matches;
this.reducedAggregations = reducedAggregations;
}
示例4: matches
import org.elasticsearch.action.percolate.PercolateResponse; //导入方法依赖的package包/类
public PercolateResponse.Match[] matches() {
return matches;
}