blob: 3863b72a2df3b2e7f27727e409aafcbdae31aa4e [file] [log] [blame]
package com.gemstone.gemfire.cache.query.internal.aggregate;
import com.gemstone.gemfire.cache.query.QueryService;
/**
* Computes the average of distinct values for replicated region based queries.
*
* @author ashahid
*
*/
public class AvgDistinct extends SumDistinct {
@Override
public void accumulate(Object value) {
if (value != null && value != QueryService.UNDEFINED) {
super.accumulate(value);
}
}
@Override
public Object terminate() {
double sum = ((Number) super.terminate()).doubleValue();
double result = sum / this.distinct.size();
return downCast(result);
}
}