Example usage for org.springframework.data.solr.core.query.result FacetFieldEntry getValueCount

List of usage examples for org.springframework.data.solr.core.query.result FacetFieldEntry getValueCount

Introduction

In this page you can find the example usage for org.springframework.data.solr.core.query.result FacetFieldEntry getValueCount.

Prototype

long getValueCount();

Source Link

Document

The nr of hits for the value

Usage

From source file:com.lijojacob.mls.productcatalog.index.ProductDocumentServiceImpl.java

private SearchResultDTO processSearchResults(FacetPage<ProductDocument> productDocumentsFacetPage) {
    SearchResultDTO result = new SearchResultDTO();
    DocumentResults documentResults = new DocumentResults();
    documentResults.setResults(productDocumentsFacetPage.getContent());
    documentResults.setTotalPages(productDocumentsFacetPage.getTotalPages());
    result.setDocuments(documentResults);
    if (CollectionUtils.isNotEmpty(productDocumentsFacetPage.getFacetFields())) {
        Map<String, List<Facet>> facetMap = new HashMap<String, List<Facet>>();
        FacetResults facetResults = new FacetResults();
        for (Field facetField : productDocumentsFacetPage.getFacetFields()) {
            if (null != productDocumentsFacetPage.getFacetResultPage(facetField)) {
                List<FacetFieldEntry> facetFieldEntryList = productDocumentsFacetPage
                        .getFacetResultPage(facetField).getContent();
                List<Facet> facets = new ArrayList<Facet>();
                for (FacetFieldEntry facetFieldEntry : facetFieldEntryList) {
                    Facet facet = new Facet();
                    facet.setValue(facetFieldEntry.getValue());
                    facet.setCount(facetFieldEntry.getValueCount());
                    facets.add(facet);//w  w  w  .jav  a  2 s .co m
                }
                facetMap.put(facetField.getName(), facets);
            }
        }
        facetResults.setResults(facetMap);
        result.setFacets(facetResults);
    }
    return result;
}