Add maintainers.id to filter and query

This commit is contained in:
Michael McCaskill 2016-08-24 18:14:02 -04:00
parent d4dd16fd19
commit abca120aed
1 changed files with 3 additions and 0 deletions

View File

@ -45,6 +45,7 @@ public class ElasticsearchDatastoreService implements DatastoreService {
queryBuilder
.should(QueryBuilders.matchQuery("title", searchOptions.getQuery()))
.should(QueryBuilders.matchQuery("name", searchOptions.getQuery()))
.should(QueryBuilders.nestedQuery("maintainers", QueryBuilders.matchQuery("maintainers.id", searchOptions.getQuery())))
.should(QueryBuilders.nestedQuery("maintainers", QueryBuilders.matchQuery("maintainers.name", searchOptions.getQuery())))
.must(QueryBuilders.matchQuery("excerpt", searchOptions.getQuery()));
} else {
@ -77,6 +78,8 @@ public class ElasticsearchDatastoreService implements DatastoreService {
if (!searchOptions.getMaintainers().isEmpty()) {
filter.must(
QueryBuilders.boolQuery().should(
QueryBuilders.nestedQuery("maintainers", QueryBuilders.matchQuery("maintainers.id", searchOptions.getMaintainers()))
).should(
QueryBuilders.nestedQuery("maintainers", QueryBuilders.matchQuery("maintainers.name", searchOptions.getMaintainers()))
)
);