01: /*
02: * Copyright 2006-2007 Pentaho Corporation. All rights reserved.
03: * This software was developed by Pentaho Corporation and is provided under the terms
04: * of the Mozilla Public License, Version 1.1, or any later version. You may not use
05: * this file except in compliance with the license. If you need a copy of the license,
06: * please go to http://www.mozilla.org/MPL/MPL-1.1.txt.
07: *
08: * Software distributed under the Mozilla Public License is distributed on an "AS IS"
09: * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. Please refer to
10: * the license for the specific language governing your rights and limitations.
11: *
12: * Additional Contributor(s): Martin Schmid gridvision engineering GmbH
13: */
14: package org.pentaho.jfreereport.legacy;
15:
16: import org.jetbrains.annotations.NotNull;
17: import org.jfree.report.function.ColumnAggregationExpression;
18:
19: import java.math.BigDecimal;
20:
21: /**
22: * User: Martin
23: * Date: 26.06.2006
24: * Time: 18:50:02
25: */
26: @Deprecated
27: public class ColumnSumExpression extends ColumnAggregationExpression {
28:
29: public ColumnSumExpression() {
30: }
31:
32: /**
33: * Return the current expression value. <P> The value depends (obviously) on
34: * the expression implementation.
35: *
36: * @return the value of the function.
37: */
38: @NotNull
39: public Object getValue() {
40: Object[] values = getFieldValues();
41: BigDecimal computedResult = new BigDecimal("0");
42: for (final Object value : values) {
43: if (value instanceof Number) {
44: Number n = (Number) value;
45: //noinspection ObjectToString
46: computedResult = computedResult.add(new BigDecimal(n
47: .toString()));
48: }
49: }
50:
51: return computedResult.stripTrailingZeros();
52: }
53: }
|