comparison backend/src/main/java/org/dive4elements/river/importer/sinfo/importitem/DailyDischargeSeriesImport.java @ 8971:50416a0df385

Importer for the Schifffahrt (S-INFO) and Oekologie (U-INFO) files
author mschaefer
date Tue, 03 Apr 2018 10:18:30 +0200
parents
children 4c5eeaff554c
comparison
equal deleted inserted replaced
8970:da5dc7446652 8971:50416a0df385
1 /* Copyright (C) 2017 by Bundesanstalt für Gewässerkunde
2 * Software engineering by
3 * Björnsen Beratende Ingenieure GmbH
4 * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt
5 *
6 * This file is Free Software under the GNU AGPL (>=v3)
7 * and comes with ABSOLUTELY NO WARRANTY! Check out the
8 * documentation coming with Dive4Elements River for details.
9 */
10
11 package org.dive4elements.river.importer.sinfo.importitem;
12
13 import java.util.List;
14
15 import org.apache.log4j.Logger;
16 import org.dive4elements.river.importer.common.AbstractSeriesImport;
17 import org.dive4elements.river.model.Gauge;
18 import org.dive4elements.river.model.River;
19 import org.dive4elements.river.model.sinfo.DailyDischarge;
20 import org.dive4elements.river.model.sinfo.DailyDischargeValue;
21 import org.hibernate.Query;
22 import org.hibernate.Session;
23
24 /**
25 * Imported daily discharge value series of a gauge
26 *
27 * @author Matthias Schäfer
28 *
29 */
30 public class DailyDischargeSeriesImport extends AbstractSeriesImport<DailyDischarge, DailyDischargeValue, DailyDischargeDayLineImport> {
31
32 /***** FIELDS *****/
33
34 private static Logger log = Logger.getLogger(DailyDischargeSeriesImport.class);
35
36 private String gaugeName;
37
38 private long gaugeNumber;
39
40 private Gauge gauge;
41
42
43 /***** CONSTRUCTORS *****/
44
45 public DailyDischargeSeriesImport(final String filename) {
46 super(filename);
47 }
48
49
50 /***** METHODS *****/
51
52 public String getGaugeName() {
53 return this.gaugeName;
54 }
55
56 public void setGaugeName(final String gaugeName) {
57 this.gaugeName = gaugeName;
58 }
59
60 public long getGaugeNumber() {
61 return this.gaugeNumber;
62 }
63
64 public void setGaugeNumber(final long gaugeNumber) {
65 this.gaugeNumber = gaugeNumber;
66 }
67
68 public Gauge getGauge() {
69 return this.gauge;
70 }
71
72 public void setGauge(final Gauge gauge) {
73 this.gauge = gauge;
74 }
75
76 @Override
77 public Logger getLog() {
78 return log;
79 }
80
81 @Override
82 public List<DailyDischarge> querySeriesItem(final Session session, final River river) {
83 final Query query = session.createQuery("FROM DailyDischarge WHERE gauge=:gauge");
84 query.setParameter("gauge", this.gauge);
85 return query.list();
86 }
87
88
89 @Override
90 public DailyDischarge createSeriesItem(final River river) {
91 return new DailyDischarge(this.gauge, this.filename, this.comment);
92 }
93 }

http://dive4elements.wald.intevation.org