view flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/sq/Measurement.java @ 3928:d3e2080d3ada

S(Q) relation. Extract more values from database. flys-artifacts/trunk@5622 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Thu, 27 Sep 2012 16:31:21 +0000
parents e1d3f6bccf2b
children 6bcc50e2cc7d
line wrap: on
line source
package de.intevation.flys.artifacts.model.sq;

import java.util.Map;

public class Measurement
{
    protected Map<String, Object> data;

    protected Measurement prev;
    protected Measurement next;

    public Measurement() {
    }

    public Measurement(Map<String, Object> data) {
        this.data = data;
    }

    protected double get(String name) {
        Number value = (Number)data.get(name);
        return value != null ? value.doubleValue() : Double.NaN;
    }

    public double S_SS() {
        return get("TSAND");
    }

    public double S_SF() {
        return get("TSCHWEB") - get("TSAND");
    }

    public double Q() {
        return get("Q_BPEGEL");
    }

    public double TOTAL_BL() {
        return get("TGESCHIEBE");
    }

    public double BL_G() {
        // TODO: Implement me!
        return Double.NaN;
    }

    public double BL_C() {
        // TODO: Implement me!
        return Double.NaN;
    }

    public double BL_S() {
        // TODO: Implement me!
        return Double.NaN;
    }

    public double S_BL_S() {
        return TOTAL_BL() * BL_S();
    }

    public double S_BL_FG() {
        return TOTAL_BL() * BL_G();
    }

    public double S_BL_CG() {
        return TOTAL_BL() * BL_C();
    }

    public double S_BL_1() {
        return S_BL_S() + S_BL_FG() + S_BL_CG();
    }

    public double S_BL_2() {
        return S_SS() + S_BL_S() + S_BL_FG() + S_BL_CG();
    }

    public double SIEB(int i) {
        return get(String.format("SIEB%02d", i));
    }

    public double RSIEB(int i) {
        return get(String.format("RSIEB%02d", i));
    }

    public double REST() {
        return get("REST");
    }

    @Override
    public String toString() {
        return "Measurement: " + data;
    }

    /**
     * Gets the prev for this instance.
     *
     * @return The prev.
     */
    public Measurement getPrev() {
        return this.prev;
    }

    /**
     * Sets the prev for this instance.
     *
     * @param prev The prev.
     */
    public void setPrev(Measurement prev) {
        this.prev = prev;
    }

    /**
     * Gets the next for this instance.
     *
     * @return The next.
     */
    public Measurement getNext() {
        return this.next;
    }

    /**
     * Sets the next for this instance.
     *
     * @param next The next.
     */
    public void setNext(Measurement next) {
        this.next = next;
    }
}
// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org