package net.sf.jasperreports.engine.fill; class JRByteDistinctCountIncrementer extends JRAbstractExtendedIncrementer { private static JRByteDistinctCountIncrementer mainInstance = new JRByteDistinctCountIncrementer(); public static JRByteDistinctCountIncrementer 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 Byte((byte)(int)holder.getCount()); } public Object combine(JRCalculable calculable, JRCalculable calculableValue, AbstractValueProvider valueProvider) { DistinctCountHolder holder = (DistinctCountHolder)valueProvider.getValue(calculable.getHelperVariable((byte)0)); return new Byte((byte)(int)holder.getCount()); } public Object initialValue() { return JRByteIncrementerFactory.ZERO; } }