andre@8578: /* Copyright (C) 2011, 2012, 2013, 2015 by Bundesanstalt für Gewässerkunde andre@8578: * Software engineering by Intevation GmbH andre@8578: * andre@8578: * This file is Free Software under the GNU AGPL (>=v3) andre@8578: * and comes with ABSOLUTELY NO WARRANTY! Check out the andre@8578: * documentation coming with Dive4Elements River for details. andre@8578: */ andre@8578: andre@8578: package org.dive4elements.river.artifacts.model.sq; andre@8578: andre@8578: import java.util.ArrayList; andre@8578: andre@8578: import org.apache.log4j.Logger; andre@8578: andre@8578: import net.sf.jasperreports.engine.JRDataSource; andre@8578: import net.sf.jasperreports.engine.JRException; andre@8578: import net.sf.jasperreports.engine.JRField; andre@8578: andre@8578: andre@8578: /** andre@8578: * @author Andre Heinecke andre@8578: */ andre@8578: public class SQMeasurementsJRDataSource implements JRDataSource andre@8578: { andre@8578: /** The log used in this exporter.*/ tom@8856: private static Logger log = Logger.getLogger( tom@8856: SQMeasurementsJRDataSource.class); andre@8578: andre@8578: private ArrayList data; andre@8578: andre@8578: private int index = -1; andre@8578: andre@8578: public SQMeasurementsJRDataSource() { andre@8578: data = new ArrayList(); andre@8578: } andre@8578: andre@8578: public void addData(String[] val) { andre@8578: data.add(val); andre@8578: } andre@8578: andre@8578: public boolean next() throws JRException { andre@8578: index++; andre@8578: return (index < data.size()); andre@8578: } andre@8578: andre@8578: public Object getFieldValue(JRField field) throws JRException { andre@8578: Object value = ""; andre@8578: String fieldName = field.getName(); andre@8578: if ("param".equals(fieldName)) { andre@8578: value = data.get(index)[0]; andre@8578: } andre@8578: else if ("transport".equals(fieldName)) { andre@8578: value = data.get(index)[1]; andre@8578: } andre@8578: else if ("discharge".equals(fieldName)) { andre@8578: value = data.get(index)[2]; andre@8578: } andre@8578: else if ("date".equals(fieldName)) { andre@8578: value = data.get(index)[3]; andre@8578: } andre@8578: else if ("outlier".equals(fieldName)) { andre@8578: value = data.get(index)[4]; andre@8578: } andre@8578: return value; andre@8578: } andre@8578: } andre@8578: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :