package net.sf.jasperreports.engine.fill; class JRIntegerDistinctCountIncrementer extends JRAbstractExtendedIncrementer { private static JRIntegerDistinctCountIncrementer mainInstance = new JRIntegerDistinctCountIncrementer(); public static JRIntegerDistinctCountIncrementer getInstance() { return mainInstance; } public Object increment(JRCalculable variable, Object expressionValue, AbstractValueProvider valueProvider) { DistinctCountHolder holder = (DistinctCountHolder)valueProvider.getValue(variable.getHelperVariable((byte)0)); if (variable.isInitialized()) holder.init(); return new Integer((int)holder.getCount()); } public Object combine(JRCalculable calculable, JRCalculable calculableValue, AbstractValueProvider valueProvider) { DistinctCountHolder holder = (DistinctCountHolder)valueProvider.getValue(calculable.getHelperVariable((byte)0)); return new Integer((int)holder.getCount()); } public Object initialValue() { return JRIntegerIncrementerFactory.ZERO; } }