1 /* 2 * ============================================================================ 3 * GNU Lesser General Public License 4 * ============================================================================ 5 * 6 * JasperReports - Free Java report-generating library. 7 * Copyright (C) 2001-2006 JasperSoft Corporation http://www.jaspersoft.com 8 * 9 * This library is free software; you can redistribute it and/or 10 * modify it under the terms of the GNU Lesser General Public 11 * License as published by the Free Software Foundation; either 12 * version 2.1 of the License, or (at your option) any later version. 13 * 14 * This library is distributed in the hope that it will be useful, 15 * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 17 * Lesser General Public License for more details. 18 * 19 * You should have received a copy of the GNU Lesser General Public 20 * License along with this library; if not, write to the Free Software 21 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. 22 * 23 * JasperSoft Corporation 24 * 303 Second Street, Suite 450 North 25 * San Francisco, CA 94107 26 * http://www.jaspersoft.com 27 */ 28 package net.sf.jasperreports.charts.design; 29 30 import net.sf.jasperreports.charts.JRValueDataset; 31 import net.sf.jasperreports.engine.JRChartDataset; 32 import net.sf.jasperreports.engine.JRConstants; 33 import net.sf.jasperreports.engine.JRExpression; 34 import net.sf.jasperreports.engine.JRExpressionCollector; 35 import net.sf.jasperreports.engine.design.JRDesignChartDataset; 36 import net.sf.jasperreports.engine.design.JRVerifier; 37 38 39 /** 40 * A data set that contains a single value. A value 41 * dataset is suitable for using with charts that show a single value against 42 * a potential range, such as meter chart or a thermometer chart. 43 * 44 * @author Barry Klawans (bklawans@users.sourceforge.net) 45 * @version $Id: JRDesignValueDataset.java 1386 2006-09-06 00:33:02 +0300 (Wed, 06 Sep 2006) bklawans $ 46 */ 47 public class JRDesignValueDataset extends JRDesignChartDataset implements JRValueDataset 48 { 49 50 51 /** 52 * 53 */ 54 private static final long serialVersionUID = JRConstants.SERIAL_VERSION_UID; 55 56 /** 57 * The expression that returns the single value contained in this dataset. 58 */ 59 protected JRExpression valueExpression = null; 60 61 62 /** 63 * Construct a new dataset that is a copy of an existing one. 64 * 65 * @param dataset the dataset to copy 66 */ 67 public JRDesignValueDataset(JRChartDataset dataset) 68 { 69 super(dataset); 70 } 71 72 /** 73 * 74 */ 75 public JRExpression getValueExpression() 76 { 77 return valueExpression; 78 } 79 80 81 /** 82 * Sets the expression that indicates the value held by this dataset. 83 * 84 * @param valueExpression the expression that returns the value held by 85 * this dataset 86 */ 87 public void setValueExpression(JRExpression valueExpression) 88 { 89 this.valueExpression = valueExpression; 90 } 91 92 93 94 /** 95 * Returns the type of this dataset. 96 * 97 * @return the type of this dataset - always 98 * <code>JRChartDataset.VALUE_DATASET</code> 99 */ 100 public byte getDatasetType() { 101 return JRChartDataset.VALUE_DATASET; 102 } 103 104 /** 105 * Adds all the expression used by this plot with the specified collector. 106 * All collected expression that are also registered with a factory will 107 * be included with the report is compiled. 108 * 109 * @param collector the expression collector to use 110 */ 111 public void collectExpressions(JRExpressionCollector collector) 112 { 113 collector.collect(this); 114 } 115 116 public void validate(JRVerifier verifier) 117 { 118 verifier.verify(this); 119 } 120 121 122 } 123