Mercurial > dive4elements > river
view flys-backend/src/main/java/de/intevation/flys/model/SedimentYield.java @ 4296:3051bc28ac43
Added data object and factory for sediment load calculation.
The factory provides two methods to get sediment load data:
The first is to get an array of loads for a specific range at a river, these
loads contain the time and description.
The second is to get a single sediment load with time, description and data
values.
author | Raimund Renkert <rrenkert@intevation.de> |
---|---|
date | Mon, 29 Oct 2012 12:14:50 +0100 |
parents | 71175502d868 |
children |
line wrap: on
line source
package de.intevation.flys.model; import java.io.Serializable; import java.util.ArrayList; import java.util.List; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table; import javax.persistence.GeneratedValue; import javax.persistence.Column; import javax.persistence.SequenceGenerator; import javax.persistence.GenerationType; import javax.persistence.JoinColumn; import javax.persistence.OneToOne; import org.apache.log4j.Logger; @Entity @Table(name = "sediment_yield") public class SedimentYield implements Serializable { private static Logger logger = Logger.getLogger(SedimentYield.class); private Integer id; private River river; private GrainFraction grainFraction; private Unit unit; private TimeInterval timeInterval; private String description; private List<SedimentYieldValue> values; public SedimentYield() { this.values = new ArrayList<SedimentYieldValue>(); } public SedimentYield(River river, Unit unit, TimeInterval timeInterval) { this(); this.river = river; this.unit = unit; this.timeInterval = timeInterval; } public SedimentYield( River river, Unit unit, TimeInterval timeInterval, GrainFraction grainFraction ) { this(river, unit, timeInterval); this.grainFraction = grainFraction; } public SedimentYield( River river, Unit unit, TimeInterval timeInterval, GrainFraction grainFraction, String description ) { this(river, unit, timeInterval, grainFraction); this.description = description; } @Id @SequenceGenerator( name = "SEQUENCE_SEDIMENT_YIELD_ID_SEQ", sequenceName = "SEDIMENT_YIELD_ID_SEQ", allocationSize = 1) @GeneratedValue( strategy = GenerationType.SEQUENCE, generator = "SEQUENCE_SEDIMENT_YIELD_ID_SEQ") @Column(name = "id") public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } @OneToOne @JoinColumn(name = "river_id") public River getRiver() { return river; } public void setRiver(River river) { this.river = river; } @OneToOne @JoinColumn(name="grain_fraction_id") public GrainFraction getGrainFraction() { return grainFraction; } public void setGrainFraction(GrainFraction grainFraction) { this.grainFraction = grainFraction; } @OneToOne @JoinColumn(name = "unit_id") public Unit getUnit() { return unit; } public void setUnit(Unit unit) { this.unit = unit; } @OneToOne @JoinColumn(name = "time_interval_id") public TimeInterval getTimeInterval() { return timeInterval; } public void setTimeInterval(TimeInterval timeInterval) { this.timeInterval = timeInterval; } @Column(name = "description") public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :