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

com.tangosol.util.aggregator
Class DoubleAverage

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.AbstractDoubleAggregator
                      extended by com.tangosol.util.aggregator.DoubleAverage
All Implemented Interfaces:
ExternalizableLite, PortableObject, InvocableMap.EntryAggregator, InvocableMap.ParallelAwareAggregator, Serializable

public class DoubleAverage
extends AbstractDoubleAggregator

Calculates an average for values of any numberic type extracted from a set of entries in a Map. All the extracted Number objects will be treated as Java double values. If the set of entries is empty, a null result is returned.

Since:
Coherence 3.1
Author:
gg 2005.09.05

Field Summary
 
Fields inherited from class com.tangosol.util.aggregator.AbstractDoubleAggregator
m_count, m_dflResult
 
Fields inherited from class com.tangosol.util.aggregator.AbstractAggregator
m_fParallel
 
Constructor Summary
DoubleAverage()
          Default constructor (necessary for the ExternalizableLite interface).
DoubleAverage(String sMethod)
          Construct an DoubleAverage object.
DoubleAverage(ValueExtractor extractor)
          Construct a DoubleAverage aggregator.
 
Method Summary
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.

protected  void init(boolean fFinal)
          Initialize the aggregation result.
protected  void process(Object o, boolean fFinal)
          Incorporate one aggregatable value into the result.
 
Methods inherited from class com.tangosol.util.aggregator.AbstractAggregator
aggregate, aggregateResults, equals, getParallelAggregator, getValueExtractor, hashCode, 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
 

Constructor Detail

DoubleAverage

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


DoubleAverage

public DoubleAverage(ValueExtractor extractor)
Construct a DoubleAverage aggregator.

Parameters:
extractor - the extractor that provides a value in the form of any Java object that is a Number

DoubleAverage

public DoubleAverage(String sMethod)
Construct an DoubleAverage object.

Parameters:
sMethod - the name of the method that returns a value in the form of any Java object that is a Number
Method Detail

init

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

Overrides:
init in class AbstractDoubleAggregator
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

process

protected void process(Object o,
                       boolean fFinal)
Incorporate one aggregatable value into the result.

If the fFinal parameter is true, the given object is a partial result (returned by an individual parallel aggregator) that should be incorporated into the final result; otherwise, the object is a value extracted from an InvocableMap.Entry.

Specified by:
process in class AbstractAggregator
Parameters:
o - the value to incorporate into the aggregated result
fFinal - true to indicate that the given object is a partial result returned by a parallel aggregator

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.

Overrides:
finalizeResult in class AbstractDoubleAggregator
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