Class BigDecimalAverageAggregator<K, V extends Number>

java.lang.Object
com.loomcache.server.compute.BigDecimalAverageAggregator<K,V>
Type Parameters:
K - the type of the key
V - the numeric value type
All Implemented Interfaces:
Aggregator<K, V, BigDecimal>

public class BigDecimalAverageAggregator<K, V extends Number> extends Object implements Aggregator<K, V, BigDecimal>
Built-in aggregator that averages numeric values exactly as BigDecimal.
  • Constructor Details

    • BigDecimalAverageAggregator

      public BigDecimalAverageAggregator()
      Create a new BigDecimal average aggregator.
  • Method Details

    • accumulate

      public void accumulate(Map.Entry<K,V> entry)
      Description copied from interface: Aggregator
      Accumulate a single entry into this aggregator.

      This method is called once for each entry in the map during the scan.

      Specified by:
      accumulate in interface Aggregator<K, V extends Number, BigDecimal>
      Parameters:
      entry - the entry to accumulate (may be null if entry was deleted)
    • combine

      public Aggregator<K, V, BigDecimal> combine(Aggregator<K, V, BigDecimal> other)
      Description copied from interface: Aggregator
      Combine this aggregator with another from a parallel execution.

      This method is used to merge results from multiple parallel aggregations into a single result. Implementations should combine the internal state of both aggregators.

      Specified by:
      combine in interface Aggregator<K, V extends Number, BigDecimal>
      Parameters:
      other - the other aggregator to combine with (must not be null)
      Returns:
      a new aggregator combining both results (may be this or other)
    • aggregate

      public BigDecimal aggregate()
      Description copied from interface: Aggregator
      Get the final aggregated result.

      This is called after all entries have been accumulated and all partial results have been combined.

      Specified by:
      aggregate in interface Aggregator<K, V extends Number, BigDecimal>
      Returns:
      the aggregated result