Iterable<Element> getNonAggElements(final Element element) { final Long count = nonAggElements.get(element.getGroup()).get(element); if (null == count || count < 1) { return Collections.emptyList(); } return new RepeatItemIterable<>(element, count); }
Stream<Element> getAllNonAggElements(final Set<String> groups) { return nonAggElements.entrySet().stream() .filter(entry -> groups.contains(entry.getKey())) .map(Map.Entry::getValue) .flatMap(map -> map.entrySet().stream()) .map(x -> new RepeatItemIterable<>(cloneElement(x.getKey(), schema), x.getValue())) .flatMap(Streams::toStream); }