List of usage examples for org.springframework.data.solr.core.query.result SolrResultPage SolrResultPage
public SolrResultPage(List<T> content, Pageable pageable, long total, @Nullable Float maxScore)
From source file:org.springframework.data.solr.core.ResultHelper.java
static Map<Field, Page<FacetFieldEntry>> convertFacetQueryResponseToFacetPageMap(FacetQuery query, QueryResponse response) {/* w w w . j a v a2s . c om*/ Assert.notNull(query, "Cannot convert response for 'null', query"); if (!hasFacets(query, response)) { return Collections.emptyMap(); } Map<Field, Page<FacetFieldEntry>> facetResult = new HashMap<Field, Page<FacetFieldEntry>>(); if (CollectionUtils.isNotEmpty(response.getFacetFields())) { int initalPageSize = query.getFacetOptions().getPageable().getPageSize(); for (FacetField facetField : response.getFacetFields()) { if (facetField != null && StringUtils.hasText(facetField.getName())) { Field field = new SimpleField(facetField.getName()); if (CollectionUtils.isNotEmpty(facetField.getValues())) { List<FacetFieldEntry> pageEntries = new ArrayList<FacetFieldEntry>(initalPageSize); for (Count count : facetField.getValues()) { if (count != null) { pageEntries .add(new SimpleFacetFieldEntry(field, count.getName(), count.getCount())); } } facetResult.put(field, new SolrResultPage<FacetFieldEntry>(pageEntries, query.getFacetOptions().getPageable(), facetField.getValueCount(), null)); } else { facetResult.put(field, new SolrResultPage<FacetFieldEntry>(Collections.<FacetFieldEntry>emptyList(), query.getFacetOptions().getPageable(), 0, null)); } } } } return facetResult; }