teichmann@5831: package org.dive4elements.river.artifacts.model.minfo; felix@4463: felix@4463: import java.util.List; felix@4463: felix@4463: import org.apache.log4j.Logger; felix@4463: import org.hibernate.SQLQuery; felix@4463: import org.hibernate.Session; felix@4463: teichmann@5831: import org.dive4elements.river.model.FlowVelocityMeasurementValue; teichmann@5831: import org.dive4elements.river.backend.SessionHolder; felix@4463: felix@4463: felix@4463: public class FlowVelocityMeasurementFactory felix@4463: { felix@4463: /** Private logger to use here. */ felix@4463: private static Logger log = Logger.getLogger(FlowVelocityMeasurementFactory.class); felix@4463: felix@4463: /** Query to get description and start year, given name and a km range. */ felix@4463: public static final String SQL_SELECT_ONE = felix@4463: "SELECT station, datetime, w, q, v, description " + felix@4463: " FROM flow_velocity_measure_values" + felix@4463: " WHERE id = :id"; felix@4463: felix@4463: felix@4463: private FlowVelocityMeasurementFactory() { felix@4463: } felix@4463: felix@4463: felix@4463: public static FlowVelocityMeasurementValue.FastFlowVelocityMeasurementValue felix@4463: getFlowVelocityMeasurement(int id) felix@4463: { felix@4463: log.debug("FlowVelocityMeasurementFactory.getFlowVelocityMeasurementValue"); felix@4463: Session session = SessionHolder.HOLDER.get(); felix@4463: SQLQuery sqlQuery = null; felix@4463: sqlQuery = session.createSQLQuery(SQL_SELECT_ONE); felix@4463: sqlQuery.setParameter("id", id); felix@4463: felix@4463: List results = sqlQuery.list(); felix@4463: if (results.size() > 0) { felix@4463: Object[] row = results.get(0); felix@4463: if (row == null || row.length < 6) { felix@4463: return null; felix@4463: } felix@4463: return FlowVelocityMeasurementValue.getUnmapped( felix@4463: Double.parseDouble(row[0].toString()), felix@4463: Double.parseDouble(row[2].toString()), felix@4463: Double.valueOf(row[3].toString()), felix@4463: Double.valueOf(row[4].toString()), null, row[5].toString()); felix@4463: } felix@4463: return null; felix@4463: } felix@4463: } felix@4463: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :