.filter(facetRangeField -> facetRangeField.contains(rangeFacet.getName())) .findFirst(); final UseCase useCase = UseCase.valueOf(facetsQuery.get(rangeFacet.getName()).getScope().name()); final List<FacetValue> facetRangesResults = (List<FacetValue>) rangeFacet.getCounts().stream() .map(count -> { RangeFacet.Count solrCount = (RangeFacet.Count) count; }).collect(Collectors.toList()); final Object start = castForDescriptor(rangeFacet.getStart(), descriptor, useCase); final Object end = castForDescriptor(rangeFacet.getEnd(), descriptor, useCase); final long gap = Long.parseLong(rangeFacet.getGap().toString().replaceAll("[^\\d]", "")); final RangeFacetResult facet =new RangeFacetResult(facetRangesResults, start, end, gap); rangeFacetResults.put(rangeFacet.getName(), facet); });
FacetCategory facetCategory = new FacetCategory(); List<FacetLabel> facetLabelList = new ArrayList<>(); for (Object rfObj : rangeFacet.getCounts()) { RangeFacet.Count rangeFacetCount = (RangeFacet.Count) rfObj; String valueString = rangeFacetCount.getValue(); Integer start = Integer.parseInt(valueString); Integer end = start + Integer.parseInt(rangeFacet.getGap().toString()); FacetLabel facetLabel = new FacetLabel(start + "-" + end, new Long(rangeFacetCount.getCount())); facetLabel.setFilterQuery(rangeFacet.getName() + ":" + "[" + start + " TO " + end + "]"); facetLabelList.add(facetLabel); facetCategory.setName(rangeFacet.getName()); facetCategory.setFacetLabel(facetLabelList);
@Override public Object transform(final Object fieldName) { @SuppressWarnings("rawtypes") RangeFacet facetResult = m_rangeFacetMap.get(fieldName); I_CmsSearchControllerFacetRange facetController = m_controller.getRangeFacets().getRangeFacetController().get( fieldName.toString()); List<String> result = new ArrayList<String>(); if (null != facetController) { List<String> checkedEntries = facetController.getState().getCheckedEntries(); if (null != facetResult) { List<String> returnedValues = new ArrayList<String>(facetResult.getCounts().size()); for (Object value : facetResult.getCounts()) { //TODO: Should yield RangeFacet.Count - but somehow does not!?!? // Hence, the cast should not be necessary at all. returnedValues.add(((RangeFacet.Count)value).getValue()); } for (String checked : checkedEntries) { if (!returnedValues.contains(checked)) { result.add(checked); } } } else { result = checkedEntries; } } return result; } });
public String getName() { return rangeFacet.getName(); }
rangeFacet.addCount(entry.getKey(), entry.getValue());
List<RangeFacet.Count> yearResults = queryResponse.getFacetRanges().get(0).getCounts(); for (RangeFacet.Count count : yearResults) { long totalRecords = count.getCount();
m_rangeFacetMap = new HashMap<String, RangeFacet>(rangeFacets.size()); for (RangeFacet facet : rangeFacets) { m_rangeFacetMap.put(facet.getName(), facet);
rangeFacet.addCount(entry.getKey(), entry.getValue());
/** * Map facet range. * * @param facetField * the facet field * @return the field facet result */ private static FieldFacetResult mapFacetRange(final RangeFacet<?, ?> rangeFacet) { final String fieldName = getReverseFacetFieldName(rangeFacet.getName()); final FieldFacetResult result = new FieldFacetResult(fieldName); if ((rangeFacet.getCounts() != null) && (rangeFacet.getCounts().size() > 0)) { for (final RangeFacet.Count count : rangeFacet.getCounts()) { if (count.getValue() == null) { // missing count result.setMissingCount(count.getCount()); } else { result.addValue(count.getValue(), count.getCount()); } } } return result; }
query.setFacetMinCount(1); List<RangeFacet.Count> monthFacets = solr.query(query).getFacetRanges().get(0).getCounts();
for (RangeFacet<?, ?> rangeFacet : response.getFacetRanges()) { if (rangeFacet == null || !StringUtils.hasText(rangeFacet.getName())) { continue; Field field = new SimpleField(rangeFacet.getName()); if (!CollectionUtils.isEmpty(rangeFacet.getCounts())) { entries = new ArrayList<>(initalPageSize); for (RangeFacet.Count count : rangeFacet.getCounts()) { entries.add(new SimpleFacetFieldEntry(field, count.getValue(), count.getCount())); total = rangeFacet.getCounts().size(); } else { entries = Collections.<FacetFieldEntry> emptyList();
List<RangeFacet.Count> counts = rangeFacet.getCounts();