Mercurial > dive4elements > river
view artifacts/src/main/java/org/dive4elements/river/artifacts/bundu/bezugswst/BezugswstCalculation.java @ 9323:86d2cbfe7f7f
bundu bezugswst excel metadaten
author | gernotbelger |
---|---|
date | Fri, 27 Jul 2018 13:29:34 +0200 |
parents | 7b2b086e45f0 |
children | 0a0937f33bb5 |
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.bundu.bezugswst; import java.util.ArrayList; import java.util.List; import org.dive4elements.artifacts.CallContext; import org.dive4elements.river.artifacts.bundu.BUNDUArtifact; import org.dive4elements.river.artifacts.bundu.BunduResultType; import org.dive4elements.river.artifacts.common.GeneralResultType; import org.dive4elements.river.artifacts.common.ResultRow; import org.dive4elements.river.artifacts.model.CalculationResult; import org.dive4elements.river.artifacts.resources.Resources; import org.dive4elements.river.artifacts.sinfo.util.BedHeightInfo; import org.dive4elements.river.artifacts.sinfo.util.CalculationUtils; import org.dive4elements.river.artifacts.sinfo.util.RiverInfo; import org.dive4elements.river.artifacts.sinfo.util.WstInfo; import org.dive4elements.river.model.River; class BezugswstCalculation { // private static Logger log = Logger.getLogger(FloodDurationCalculation.class); private final CallContext context; public BezugswstCalculation(final CallContext context) { this.context = context; } public CalculationResult calculate(final BUNDUArtifact bunduartifact) { final String user = CalculationUtils.findArtifactUser(this.context, bunduartifact); /* access input data */ final BunduAccess access = new BunduAccess(bunduartifact); final River river = access.getRiver(); final RiverInfo riverInfo = new RiverInfo(river); final String calcModeLabel = Resources.getMsg(this.context.getMeta(), "bundu_bezugswst"); final BezugswstCalculationResults results = new BezugswstCalculationResults(calcModeLabel, user, riverInfo, access.getRange()); // TODO: get wst, sounding for river final WstInfo wstInfo = null; final BedHeightInfo sounding = null; // final int wspYear = waterlevel.getYear(); // final WstInfo wstInfo = new WstInfo(wspLabel, wspYear, riverInfo.getReferenceGauge()); final String function = access.getFunction(); final boolean preprocessing = access.getPreprocessing();// nullpointer dürfen nicht entstehen; Fehler läge woanders final int startYear = access.getStartYear(); final int endYear = access.getBezugsJahr(); final Integer ud = access.getUd(); final double[] qs = access.getQs(); final Double missingVolFrom = access.getMissingVolFrom(); final Double missingVolTo = access.getMissingVolTo(); final List<ResultRow> list = new ArrayList<>(); final ResultRow row = ResultRow.create(); row.putValue(GeneralResultType.station, 666.666); row.putValue(BunduResultType.bezugswst, 22.15); row.putValue(GeneralResultType.dischargeQwithUnit, 77.666); row.putValue(GeneralResultType.waterlevelLabel, "GLQ"); row.putValue(GeneralResultType.gaugeLabel, "Bonn"); row.putValue(GeneralResultType.location, "keine Lage"); list.add(row); final BezugswstCalculationResult result = new BezugswstCalculationResult("label? was fürn label?", list, sounding, wstInfo, function, preprocessing, startYear, endYear, ud, qs, missingVolFrom, missingVolTo); results.addResult(result, null); return new CalculationResult(results, null);// problems); } /** * Calculates one W-MSH differences pair. * * @param infoProvider */ }