Mercurial > dive4elements > river
view backend/src/main/java/org/dive4elements/river/model/MeasurementStation.java @ 7065:b17634649e61
Simplify code a bit.
author | Felix Wolfsteller <felix.wolfsteller@intevation.de> |
---|---|
date | Thu, 19 Sep 2013 12:53:11 +0200 |
parents | d5d717effa06 |
children | 17db08570637 |
line wrap: on
line source
/* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde * Software engineering by Intevation GmbH * * This file is Free Software under the GNU AGPL (>=v3) * and comes with ABSOLUTELY NO WARRANTY! Check out the * documentation coming with Dive4Elements River for details. */ package org.dive4elements.river.model; import java.util.List; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.OneToOne; import javax.persistence.SequenceGenerator; import javax.persistence.Table; import org.hibernate.Session; import org.hibernate.Query; import org.dive4elements.river.backend.SessionHolder; @Entity @Table(name = "measurement_station") public class MeasurementStation { private Integer id; private String name; private String measurementType; private String riverside; private String operator; private String description; private Double station; private Range range; private River river; private Gauge gauge; private String gaugeName; private TimeInterval observationTimerange; public MeasurementStation() { } public MeasurementStation(River river, String name, String measurementType, String riverside, Double station, Range range, Gauge gauge, String gaugeName, TimeInterval observationTimerange, String operator, String description ) { this.river = river; this.name = name; this.measurementType = measurementType; this.riverside = riverside; this.station = station; this.range = range; this.gauge = gauge; this.gaugeName = gaugeName; this.observationTimerange = observationTimerange; this.operator = operator; this.description = description; } @Id @SequenceGenerator(name = "SEQ_MEASUREMENT_STATION_ID_SEQ", sequenceName = "MEASUREMENT_STATION_ID_SEQ", allocationSize = 1) @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "SEQ_MEASUREMENT_STATION_ID_SEQ") @Column(name = "id") public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } @Column(name = "name") public String getName() { return name; } public void setName(String name) { this.name = name; } @Column(name = "measurement_type") public String getMeasurementType() { return measurementType; } public void setMeasurementType(String measurementType) { this.measurementType = measurementType; } @Column(name = "riverside") public String getRiverside() { return riverside; } public void setRiverside(String riverside) { this.riverside = riverside; } @OneToOne @JoinColumn(name = "river_id") public River getRiver() { return river; } public void setRiver(River river) { this.river = river; } @OneToOne @JoinColumn(name = "reference_gauge_id") public Gauge getGauge() { return gauge; } public void setGauge(Gauge gauge) { this.gauge = gauge; } @Column(name = "reference_gauge_name") public String getGaugeName() { return gaugeName; } public void setGaugeName(String gaugeName) { this.gaugeName = gaugeName; } @Column(name = "station") public Double getStation() { return station; } public void setStation(Double station) { this.station = station; } @OneToOne @JoinColumn(name = "range_id") public Range getRange() { return range; } public void setRange(Range range) { this.range = range; } @OneToOne @JoinColumn(name = "observation_timerange_id") public TimeInterval getObservationTimerange() { return observationTimerange; } public void setObservationTimerange(TimeInterval observationTimerange) { this.observationTimerange = observationTimerange; } @Column(name = "operator") public String getOperator() { return operator; } public void setOperator(String operator) { this.operator = operator; } @Column(name = "description") public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } public static List<MeasurementStation> getStationsAtKM(String river, Double river_km) { Session session = SessionHolder.HOLDER.get(); Query query = session.createQuery( "from MeasurementStation as ms " + "where ms.river.name = :river_name and ms.station = :river_km"); query.setParameter("river_name", river); query.setParameter("river_km", river_km); return query.list(); } }