CoherenceTM v3.3
Copyright© 2000-2007 by Oracle Corporation

com.tangosol.util.aggregator
Class AbstractComparableAggregator

java.lang.Object
  extended by com.tangosol.util.Base
      extended by com.tangosol.util.BitHelper
          extended by com.tangosol.util.ExternalizableHelper
              extended by com.tangosol.util.aggregator.AbstractAggregator
                  extended by com.tangosol.util.aggregator.AbstractComparableAggregator
All Implemented Interfaces:
ExternalizableLite, PortableObject, InvocableMap.EntryAggregator, InvocableMap.ParallelAwareAggregator, Serializable
Direct Known Subclasses:
ComparableMax, ComparableMin

public abstract class AbstractComparableAggregator
extends AbstractAggregator

Abstract aggregator that processes Comparable values extracted from a set of entries in a Map. All the extracted objects must implement the Comparable interface and the result of the aggregator is a Comparable value. If the set of entries is empty, a null result is returned.

Since:
Coherence 3.2
Author:
gg 2006.02.13

Field Summary
protected  int m_count
          The count of processed entries.
protected  Comparable m_oResult
          The running result value.
 
Fields inherited from class com.tangosol.util.aggregator.AbstractAggregator
m_fParallel
 
Constructor Summary
AbstractComparableAggregator()
          Default constructor (necessary for the ExternalizableLite interface).
AbstractComparableAggregator(String sMethod)
          Construct an AbstractComparableAggregator object.
AbstractComparableAggregator(ValueExtractor extractor)
          Construct an AbstractComparableAggregator object.
 
Method Summary
protected  Object finalizeResult(boolean fFinal)
          Obtain the result of the aggregation.
protected  void init(boolean fFinal)
          Initialize the aggregation result.
 
Methods inherited from class com.tangosol.util.aggregator.AbstractAggregator
aggregate, aggregateResults, equals, getParallelAggregator, getValueExtractor, hashCode, process, readExternal, readExternal, toString, writeExternal, writeExternal
 
Methods inherited from class com.tangosol.util.BitHelper
countBits, countBits, countBits, indexOfLSB, indexOfLSB, indexOfLSB, indexOfMSB, indexOfMSB, indexOfMSB, toBitString, toBitString, toBitString
 

Field Detail

m_count

protected transient int m_count
The count of processed entries.


m_oResult

protected transient Comparable m_oResult
The running result value.

Constructor Detail

AbstractComparableAggregator

public AbstractComparableAggregator()
Default constructor (necessary for the ExternalizableLite interface).


AbstractComparableAggregator

public AbstractComparableAggregator(ValueExtractor extractor)
Construct an AbstractComparableAggregator object.

Parameters:
extractor - the extractor that provides a value in the form of any object that implements the Comparable interface

AbstractComparableAggregator

public AbstractComparableAggregator(String sMethod)
Construct an AbstractComparableAggregator object.

Parameters:
sMethod - the name of the method that returns a value in the form of any object that implements the Comparable interface
Method Detail

init

protected void init(boolean fFinal)
Initialize the aggregation result.

Specified by:
init in class AbstractAggregator
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 Object 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
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

CoherenceTM v3.3
Copyright© 2000-2007 by Oracle Corporation