46 lines
1.6 KiB
Java
46 lines
1.6 KiB
Java
package net.sf.jasperreports.engine.fill;
|
|
|
|
import java.math.BigDecimal;
|
|
|
|
public class JRBigDecimalIncrementerFactory extends JRAbstractExtendedIncrementerFactory {
|
|
protected static final BigDecimal ZERO = new BigDecimal("0");
|
|
|
|
protected static final BigDecimal ONE = new BigDecimal("1");
|
|
|
|
private static JRBigDecimalIncrementerFactory mainInstance = new JRBigDecimalIncrementerFactory();
|
|
|
|
public static JRBigDecimalIncrementerFactory getInstance() {
|
|
return mainInstance;
|
|
}
|
|
|
|
public JRExtendedIncrementer getExtendedIncrementer(byte calculation) {
|
|
JRExtendedIncrementer incrementer = null;
|
|
switch (calculation) {
|
|
case 1:
|
|
incrementer = JRBigDecimalCountIncrementer.getInstance();
|
|
return incrementer;
|
|
case 2:
|
|
incrementer = JRBigDecimalSumIncrementer.getInstance();
|
|
return incrementer;
|
|
case 3:
|
|
incrementer = JRBigDecimalAverageIncrementer.getInstance();
|
|
return incrementer;
|
|
case 4:
|
|
case 5:
|
|
incrementer = JRComparableIncrementerFactory.getInstance().getExtendedIncrementer(calculation);
|
|
return incrementer;
|
|
case 6:
|
|
incrementer = JRBigDecimalStandardDeviationIncrementer.getInstance();
|
|
return incrementer;
|
|
case 7:
|
|
incrementer = JRBigDecimalVarianceIncrementer.getInstance();
|
|
return incrementer;
|
|
case 10:
|
|
incrementer = JRBigDecimalDistinctCountIncrementer.getInstance();
|
|
return incrementer;
|
|
}
|
|
incrementer = JRDefaultIncrementerFactory.getInstance().getExtendedIncrementer(calculation);
|
|
return incrementer;
|
|
}
|
|
}
|