Elasticsearch: Доступ ко всем терминам в TermVectorResponse в плагине
Я пытаюсь получить список терминов из termvectorresponse в плагине эластичного поиска. Я хочу получить доступ ко всей статистике, которая связана с условиями, и мне сложно понять, как это сделать.
После создания запроса TermVectors...
TermVectorsRequest tvReq = new TermVectorsRequest(request.param("index"), request.param("type"), request.param("id"));
tvReq.termStatistics(true);
tvReq.selectedFields(request.param("field"));
и получить ответ от клиента...
TermVectorsResponse tvResponse = client.termVectors(tvReq).get();
Я могу получить доступ к идентификатору, индексу и т. Д. В полях я получаю "содержимое", которое является именем поля, которое я хочу. Оттуда, хотя, похоже, я могу бежать...
tvResponse.getFields().terms("some term here")
в котором объект Условия, который возвращается, имеет доступ к статистике, которую я хочу.
У меня есть несколько проблем с этим, хотя. Во-первых, только "содержимое", по-видимому, не равно нулю. В конечной точке термина векторов в упругости я получаю несколько разных терминов, в которые я попытался вставить здесь. Во-вторых, я хочу получить список терминов, а не вводить какой термин я хочу.
Как я могу сделать это?
Спасибо
1 ответ
Догадаться. Theres интегратор на условиях, которые вы можете использовать. на.terms вы должны передать это поле и получить объект условий. Из этого вы можете использовать.iterator, чтобы получить каждый отдельный термин и делать с ними все, что вы хотите.