Mercurial > dive4elements > river
view artifacts/src/main/java/org/dive4elements/river/artifacts/common/AbstractCalculationResults.java @ 9005:460fcc128794
jasper multiple
author | gernotbelger |
---|---|
date | Tue, 17 Apr 2018 13:19:56 +0200 |
parents | e3b3ce32c825 |
children |
line wrap: on
line source
/** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde * Software engineering by * Björnsen Beratende Ingenieure GmbH * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt * * 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.artifacts.common; import java.io.Serializable; import java.util.ArrayList; import java.util.Collections; import java.util.List; import org.apache.commons.lang.math.DoubleRange; import org.dive4elements.river.artifacts.model.Calculation; import org.dive4elements.river.artifacts.sinfo.util.RiverInfo; /** * @author Gernot Belger */ public abstract class AbstractCalculationResults<RESULT extends AbstractCalculationResult> implements Serializable { private static final long serialVersionUID = 1L; private final List<RESULT> results = new ArrayList<>(); private final String calcModeLabel; private final String user; private final RiverInfo river; private final DoubleRange calcRange; public AbstractCalculationResults(final String calcModeLabel, final String user, final RiverInfo river, final DoubleRange calcRange) { this.calcModeLabel = calcModeLabel; this.user = user; this.river = river; this.calcRange = calcRange; } public String getCalcModeLabel() { return this.calcModeLabel; } public String getUser() { return this.user; } public RiverInfo getRiver() { return this.river; } public DoubleRange getCalcRange() { return this.calcRange; } public void addResult(final RESULT result, final Calculation problems) { /* we assume error reporting was already done in this case */ if (result == null) return; if (result.isEmpty()) { problems.addProblem("abstractsinfocalculationresults.emptyResult", result.getLabel()); return; } this.results.add(result); } public List<RESULT> getResults() { return Collections.unmodifiableList(this.results); } }