view flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/WQDay.java @ 4215:c179cd02177d

Logout the current user Add code to the logout button to remove the current user from the session and to redirect the browser window to the login page. Part of flys/issue916 (Logout: "Abmelden" Knopf mit Funktion belegen)
author Björn Ricks <bjoern.ricks@intevation.de>
date Tue, 23 Oct 2012 09:59:16 +0200
parents 5ff481ab24a1
children
line wrap: on
line source
package de.intevation.flys.artifacts.model;

import gnu.trove.TIntArrayList;

/**
 * This class represents a pool of data triples that consists of 'W', 'Q' and
 * 'Day' data.
 *
 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
 */
public class WQDay
extends      WQ
{
    protected TIntArrayList days;

    public WQDay() {
        super("");
        days = new TIntArrayList();
    }

    public WQDay(int capacity) {
        super(capacity);
        days = new TIntArrayList(capacity);
    }

    public WQDay(int [] days, double [] ws, double [] qs) {
        super(qs, ws, "");
        this.days = new TIntArrayList(days);
    }


    public void add(int day, double w, double q) {
        super.add(w, q);
        days.add(day);
    }


    public boolean isIncreasing() {
        int lo = getDay(0);
        int hi = getDay(size()-1);

        return lo < hi;
    }


    public int getDay(int idx) {
        return days.getQuick(idx);
    }

    @Override
    public void removeNaNs() {

        int dest = 0;
        int N = ws.size();

        for (int i = 0; i < N; ++i) {
            double wi = ws.getQuick(i);
            double qi = qs.getQuick(i);

            if (Double.isNaN(wi) || Double.isNaN(qi)) {
                continue;
            }

            days.setQuick(dest, days.getQuick(i));
            ws.setQuick(dest, wi);
            qs.setQuick(dest, qi);
            ++dest;
        }

        if (dest < N) {
            days.remove(dest, N-dest);
            ws  .remove(dest, N-dest);
            qs  .remove(dest, N-dest);
        }
    }
}
// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org