@Override protected HistogramBucket createBucket(Object key, long count, Map<String, AggregationResult> nestedResults, List<MultiBucketsAggregation.Bucket> buckets) { return new HistogramBucket(key, count, nestedResults); }
@Override protected HistogramBucket createBucket(Object key, long count, Map<String, AggregationResult> nestedResults, List<MultiBucketsAggregation.Bucket> buckets) { return new HistogramBucket(key, count, nestedResults); }
@Override protected HistogramBucket createBucket(Object key, long count, Map<String, AggregationResult> nestedResults, List<MultiBucketsAggregation.Bucket> buckets) { return new HistogramBucket(key, count, nestedResults); }
@Override protected HistogramBucket createBucket(Object key, long count, Map<String, AggregationResult> nestedResults, List<MultiBucketsAggregation.Bucket> buckets) { return new HistogramBucket(key, count, nestedResults); }
private HistogramResult getCalendarFieldHistogramResult(final CalendarFieldAggregation agg, Iterator<T> it) { String propertyName = agg.getPropertyName(); final Calendar calendar = GregorianCalendar.getInstance(agg.getTimeZone()); Map<Integer, List<T>> elementsByProperty = getElementsByProperty(it, propertyName, o -> { Date d = (Date) o; calendar.setTime(d); //noinspection MagicConstant return calendar.get(agg.getCalendarField()); }); Map<Integer, HistogramBucket> buckets = new HashMap<>(24); for (Map.Entry<Integer, List<T>> entry : elementsByProperty.entrySet()) { int key = entry.getKey(); int count = entry.getValue().size(); Map<String, AggregationResult> nestedResults = getNestedResults(agg.getNestedAggregations(), entry.getValue()); buckets.put(key, new HistogramBucket(key, count, nestedResults)); } return new HistogramResult(buckets.values()); }
private HistogramResult getCalendarFieldHistogramResult(final CalendarFieldAggregation agg, Iterator<T> it) { String propertyName = agg.getPropertyName(); final Calendar calendar = GregorianCalendar.getInstance(agg.getTimeZone()); Map<Integer, List<T>> elementsByProperty = getElementsByProperty(it, propertyName, o -> { Date d = (Date) o; calendar.setTime(d); //noinspection MagicConstant return calendar.get(agg.getCalendarField()); }); Map<Integer, HistogramBucket> buckets = new HashMap<>(24); for (Map.Entry<Integer, List<T>> entry : elementsByProperty.entrySet()) { int key = entry.getKey(); int count = entry.getValue().size(); Map<String, AggregationResult> nestedResults = getNestedResults(agg.getNestedAggregations(), entry.getValue()); buckets.put(key, new HistogramBucket(key, count, nestedResults)); } return new HistogramResult(buckets.values()); }