first commit
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
package net.sf.jasperreports.engine.design;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import net.sf.jasperreports.crosstabs.JRCrosstab;
|
||||
import net.sf.jasperreports.engine.JRDataset;
|
||||
import net.sf.jasperreports.engine.JRException;
|
||||
|
||||
public class JRReportCompileData implements Serializable {
|
||||
private static final long serialVersionUID = 10200L;
|
||||
|
||||
private Serializable mainDatasetCompileData;
|
||||
|
||||
private Map datasetCompileData = new HashMap();
|
||||
|
||||
private Map crosstabCompileData = new HashMap();
|
||||
|
||||
public void setMainDatasetCompileData(Serializable compileData) {
|
||||
this.mainDatasetCompileData = compileData;
|
||||
}
|
||||
|
||||
public void setDatasetCompileData(JRDataset dataset, Serializable compileData) {
|
||||
if (dataset.isMainDataset()) {
|
||||
setMainDatasetCompileData(compileData);
|
||||
} else {
|
||||
this.datasetCompileData.put(dataset.getName(), compileData);
|
||||
}
|
||||
}
|
||||
|
||||
public void setCrosstabCompileData(int crosstabId, Serializable compileData) {
|
||||
this.crosstabCompileData.put(new Integer(crosstabId), compileData);
|
||||
}
|
||||
|
||||
public Serializable getMainDatasetCompileData() {
|
||||
return this.mainDatasetCompileData;
|
||||
}
|
||||
|
||||
public Serializable getDatasetCompileData(JRDataset dataset) throws JRException {
|
||||
Serializable compileData;
|
||||
if (dataset.isMainDataset()) {
|
||||
compileData = getMainDatasetCompileData();
|
||||
} else {
|
||||
compileData = (Serializable)this.datasetCompileData.get(dataset.getName());
|
||||
if (compileData == null)
|
||||
throw new JRException("Compile data for dataset " + dataset.getName() + " not found in the report.");
|
||||
}
|
||||
return compileData;
|
||||
}
|
||||
|
||||
public Serializable getCrosstabCompileData(JRCrosstab crosstab) throws JRException {
|
||||
Serializable compileData = (Serializable)this.crosstabCompileData.get(new Integer(crosstab.getId()));
|
||||
if (compileData == null)
|
||||
throw new JRException("Compile data for crosstab not found in the report.");
|
||||
return compileData;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user