Files
HRMS/hrmsEjb/net/sf/jasperreports/charts/fill/JRFillXySeries.java
2025-07-28 13:56:49 +05:30

101 lines
2.9 KiB
Java

package net.sf.jasperreports.charts.fill;
import net.sf.jasperreports.charts.JRXySeries;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRExpression;
import net.sf.jasperreports.engine.JRHyperlink;
import net.sf.jasperreports.engine.JRHyperlinkHelper;
import net.sf.jasperreports.engine.JRPrintHyperlink;
import net.sf.jasperreports.engine.JRRuntimeException;
import net.sf.jasperreports.engine.fill.JRCalculator;
import net.sf.jasperreports.engine.fill.JRExpressionEvalException;
import net.sf.jasperreports.engine.fill.JRFillExpressionEvaluator;
import net.sf.jasperreports.engine.fill.JRFillHyperlinkHelper;
import net.sf.jasperreports.engine.fill.JRFillObjectFactory;
public class JRFillXySeries implements JRXySeries {
protected JRXySeries parent = null;
private Comparable series = null;
private Number xValue = null;
private Number yValue = null;
private String label = null;
private JRPrintHyperlink itemHyperlink;
public JRFillXySeries(JRXySeries xySeries, JRFillObjectFactory factory) {
factory.put(xySeries, this);
this.parent = xySeries;
}
public JRExpression getSeriesExpression() {
return this.parent.getSeriesExpression();
}
public JRExpression getXValueExpression() {
return this.parent.getXValueExpression();
}
public JRExpression getYValueExpression() {
return this.parent.getYValueExpression();
}
public JRExpression getLabelExpression() {
return this.parent.getLabelExpression();
}
protected Comparable getSeries() {
return this.series;
}
protected Number getXValue() {
return this.xValue;
}
protected Number getYValue() {
return this.yValue;
}
protected String getLabel() {
return this.label;
}
protected JRPrintHyperlink getPrintItemHyperlink() {
return this.itemHyperlink;
}
protected void evaluate(JRCalculator calculator) throws JRExpressionEvalException {
this.series = (Comparable)calculator.evaluate(getSeriesExpression());
this.xValue = (Number)calculator.evaluate(getXValueExpression());
this.yValue = (Number)calculator.evaluate(getYValueExpression());
this.label = (String)calculator.evaluate(getLabelExpression());
if (hasItemHyperlinks())
evaluateItemHyperlink(calculator);
}
protected void evaluateItemHyperlink(JRCalculator calculator) throws JRExpressionEvalException {
try {
this.itemHyperlink = JRFillHyperlinkHelper.evaluateHyperlink(getItemHyperlink(), (JRFillExpressionEvaluator)calculator, (byte)3);
} catch (JRExpressionEvalException e) {
throw e;
} catch (JRException e) {
throw new JRRuntimeException(e);
}
}
public JRHyperlink getItemHyperlink() {
return this.parent.getItemHyperlink();
}
public boolean hasItemHyperlinks() {
return !JRHyperlinkHelper.isEmpty(getItemHyperlink());
}
public Object clone() {
return null;
}
}