Class AbstractLongAggregator<T>

Type Parameters:
T - the type of the value to extract from
All Implemented Interfaces:
ExternalizableLite, PortableObject, InvocableMap.EntryAggregator<Object,Object,Long>, InvocableMap.StreamingAggregator<Object,Object,Object,Long>, Serializable, Cloneable
Direct Known Subclasses:
LongMax, LongMin, LongSum

public abstract class AbstractLongAggregator<T> extends AbstractAggregator<Object,Object,T,Number,Long>
Abstract aggregator that processes numeric values extracted from a set of entries in a Map. All the extracted Number objects will be treated as Java long values and the result of the aggregator is a Long. If the set of entries is empty, a null result is returned.
Since:
Coherence 3.1
Author:
cp/gg/jh 2005.07.19
See Also:
  • Field Details

    • m_count

      protected transient int m_count
      The count of processed entries.
    • m_lResult

      protected transient long m_lResult
      The running result value.
  • Constructor Details

    • AbstractLongAggregator

      public AbstractLongAggregator()
      Default constructor (necessary for the ExternalizableLite interface).
    • AbstractLongAggregator

      public AbstractLongAggregator(ValueExtractor<? super T,? extends Number> extractor)
      Construct an AbstractLongAggregator object.
      Parameters:
      extractor - the extractor that provides a value in the form of any Java object that is a Number
    • AbstractLongAggregator

      public AbstractLongAggregator(String sMethod)
      Construct an AbstractLongAggregator object.
      Parameters:
      sMethod - the name of the method that returns a value in the form of any Java object that is a Number
  • Method Details

    • init

      protected void init(boolean fFinal)
      Initialize the aggregation result.
      Specified by:
      init in class AbstractAggregator<Object,Object,T,Number,Long>
      Parameters:
      fFinal - true is passed if the aggregation process that is being initialized must produce a final aggregation result; this will only be false if a parallel approach is being used and the initial (partial) aggregation process is being initialized
    • finalizeResult

      protected Long finalizeResult(boolean fFinal)
      Obtain the result of the aggregation.

      If the fFinal parameter is true, the returned object must be the final result of the aggregation; otherwise, the returned object will be treated as a partial result that should be incorporated into the final result.

      Specified by:
      finalizeResult in class AbstractAggregator<Object,Object,T,Number,Long>
      Parameters:
      fFinal - true to indicate that the final result of the aggregation process should be returned; this will only be false if a parallel approach is being used
      Returns:
      the result of the aggregation process