Example usage for org.springframework.data.elasticsearch.core.query Criteria getQueryCriteriaEntries

List of usage examples for org.springframework.data.elasticsearch.core.query Criteria getQueryCriteriaEntries

Introduction

In this page you can find the example usage for org.springframework.data.elasticsearch.core.query Criteria getQueryCriteriaEntries.

Prototype

public Set<CriteriaEntry> getQueryCriteriaEntries() 

Source Link

Usage

From source file:com.github.vanroy.springdata.jest.CriteriaQueryProcessor.java

private QueryBuilder createQueryFragmentForCriteria(Criteria chainedCriteria) {
    if (chainedCriteria.getQueryCriteriaEntries().isEmpty())
        return null;

    Iterator<CriteriaEntry> it = chainedCriteria.getQueryCriteriaEntries().iterator();
    boolean singeEntryCriteria = (chainedCriteria.getQueryCriteriaEntries().size() == 1);

    String fieldName = chainedCriteria.getField().getName();
    Assert.notNull(fieldName, "Unknown field");
    QueryBuilder query = null;/*from   w  w  w.  ja  va  2  s.com*/

    if (singeEntryCriteria) {
        Criteria.CriteriaEntry entry = it.next();
        query = processCriteriaEntry(entry, fieldName);
    } else {
        query = boolQuery();
        while (it.hasNext()) {
            Criteria.CriteriaEntry entry = it.next();
            ((BoolQueryBuilder) query).must(processCriteriaEntry(entry, fieldName));
        }
    }

    addBoost(query, chainedCriteria.getBoost());
    return query;
}