public class GroupingAggregator
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static interface |
GroupingAggregator.GroupEntry<K,G> |
private static class |
GroupingAggregator.GroupingAggregatorImpl<V,K,G extends IItemConsumer<G>> |
private static class |
GroupingAggregator.GroupingConsumer<K,G extends IItemConsumer<G>> |
static interface |
GroupingAggregator.IGroupsFinisher<V,K,G> |
static interface |
GroupingAggregator.IQuantityListFinisher<V> |
private static class |
GroupingAggregator.ObjectEntry<K,V> |
Constructor and Description |
---|
GroupingAggregator() |
Modifier and Type | Method and Description |
---|---|
static <V,K,C extends IItemConsumer<C>> |
build(java.lang.String name,
java.lang.String description,
IAccessorFactory<K> keyField,
IAggregator<?,C> a,
GroupingAggregator.IGroupsFinisher<V,K,C> finisher) |
static <V,K,C extends IItemConsumer<C>> |
build(java.lang.String name,
java.lang.String description,
IAccessorFactory<K> keyField,
IAggregator<IQuantity,C> a,
GroupingAggregator.IQuantityListFinisher<V> groupFinisher) |
static <K,C extends IItemConsumer<C>> |
build(java.lang.String name,
java.lang.String description,
IAccessorFactory<K> keyField,
IItemConsumerFactory<C> groupAggregator,
java.util.function.Predicate<IType<IItem>> acceptType) |
static <V,K,C extends IItemConsumer<C>> |
build(java.lang.String name,
java.lang.String description,
IAccessorFactory<K> keyField,
IItemConsumerFactory<C> groupAggregator,
java.util.function.Predicate<IType<IItem>> acceptType,
GroupingAggregator.IGroupsFinisher<V,K,C> finisher) |
static <V,C extends IItemConsumer<C>> |
buildMax(java.lang.String name,
java.lang.String description,
IAccessorFactory<?> keyField,
IAggregator<IQuantity,C> aggregate) |
private static <G> java.util.Iterator<G> |
consumerIterator(java.util.Iterator<? extends GroupingAggregator.GroupEntry<?,G>> it) |
public static <V,K,C extends IItemConsumer<C>> IAggregator<V,?> build(java.lang.String name, java.lang.String description, IAccessorFactory<K> keyField, IItemConsumerFactory<C> groupAggregator, java.util.function.Predicate<IType<IItem>> acceptType, GroupingAggregator.IGroupsFinisher<V,K,C> finisher)
public static <V,K,C extends IItemConsumer<C>> IAggregator<V,?> build(java.lang.String name, java.lang.String description, IAccessorFactory<K> keyField, IAggregator<?,C> a, GroupingAggregator.IGroupsFinisher<V,K,C> finisher)
public static <K,C extends IItemConsumer<C>> IAggregator<java.lang.Iterable<? extends GroupingAggregator.GroupEntry<K,C>>,?> build(java.lang.String name, java.lang.String description, IAccessorFactory<K> keyField, IItemConsumerFactory<C> groupAggregator, java.util.function.Predicate<IType<IItem>> acceptType)
public static <V,K,C extends IItemConsumer<C>> IAggregator<V,?> build(java.lang.String name, java.lang.String description, IAccessorFactory<K> keyField, IAggregator<IQuantity,C> a, GroupingAggregator.IQuantityListFinisher<V> groupFinisher)
public static <V,C extends IItemConsumer<C>> IAggregator<IQuantity,?> buildMax(java.lang.String name, java.lang.String description, IAccessorFactory<?> keyField, IAggregator<IQuantity,C> aggregate)
private static <G> java.util.Iterator<G> consumerIterator(java.util.Iterator<? extends GroupingAggregator.GroupEntry<?,G>> it)