gernotbelger@9127: /** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde gernotbelger@9127: * Software engineering by gernotbelger@9127: * Björnsen Beratende Ingenieure GmbH gernotbelger@9127: * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt gernotbelger@9127: * gernotbelger@9127: * This file is Free Software under the GNU AGPL (>=v3) gernotbelger@9127: * and comes with ABSOLUTELY NO WARRANTY! Check out the gernotbelger@9127: * documentation coming with Dive4Elements River for details. gernotbelger@9127: */ gernotbelger@9127: package test; gernotbelger@9127: gernotbelger@9127: import java.io.IOException; gernotbelger@9148: import java.util.ArrayList; gernotbelger@9127: gernotbelger@9127: import org.dive4elements.artifacts.httpclient.exceptions.ConnectionException; gernotbelger@9127: import org.dive4elements.river.client.shared.exceptions.ServerException; gernotbelger@9127: import org.dive4elements.river.client.shared.model.Data; gernotbelger@9127: import org.dive4elements.river.client.shared.model.DataItem; gernotbelger@9127: import org.dive4elements.river.client.shared.model.DefaultDataItem; gernotbelger@9127: import org.dive4elements.river.client.shared.model.StringOptionsData; gernotbelger@9127: gernotbelger@9127: import test.BerechnungsartenTester.CalcMode; gernotbelger@9127: import test.BerechnungsartenTester.FilenameMapper; gernotbelger@9127: import test.BerechnungsartenTester.River; gernotbelger@9127: gernotbelger@9127: /** gernotbelger@9127: * @author Domenico Nardi Tironi gernotbelger@9127: * gernotbelger@9127: */ gernotbelger@9148: public class SinfoFlowdepthRunner extends AbstractModuleRunner { gernotbelger@9127: gernotbelger@9127: private final boolean useTkh; gernotbelger@9148: private final ArrayList pairIds = new ArrayList(); gernotbelger@9127: gernotbelger@9133: public SinfoFlowdepthRunner(final String username, final String password, final CalcMode sinfoCalcFlowDepth, final FilenameMapper file, final double from, gernotbelger@9127: final double to, final River river, final boolean useTkh) throws ConnectionException, ServerException { gernotbelger@9148: super(username, password, AbstractModuleRunner.Infotype.sinfo, sinfoCalcFlowDepth, file, from, to, river); gernotbelger@9127: this.useTkh = useTkh; gernotbelger@9127: } gernotbelger@9127: gernotbelger@9148: public void addRecommendationPair(final SimpleRecommendation rec1, final SimpleRecommendation rec2) throws ConnectionException, ServerException { gernotbelger@9148: this.pairIds.add(super.getRecommendationPairString(rec1, rec2)); gernotbelger@9148: } gernotbelger@9148: gernotbelger@9127: @Override gernotbelger@9127: public void runTest(final boolean exportToFile) throws ServerException, IOException { gernotbelger@9127: /* Select River */ gernotbelger@9127: super.selectRiver(); gernotbelger@9127: gernotbelger@9127: /* Select CalcMode */ gernotbelger@9127: super.selectCalcMode(); gernotbelger@9127: gernotbelger@9127: /* Select Range */ gernotbelger@9127: super.selectRange(); gernotbelger@9127: gernotbelger@9127: /* Select Fixpunkte */ gernotbelger@9148: feedAndGo(extractPairData(this.pairIds, "diffids"), 0); gernotbelger@9127: gernotbelger@9127: /* Select TRANSPORTKÖRPERHÖHHEN - einziger Unterschied zu FlowdepthMinMax */ gernotbelger@9127: final String useTkhStr = String.valueOf(this.useTkh); gernotbelger@9127: feedAndGo(new Data[] { new StringOptionsData("use_transport_bodies", "use_transport_bodies", gernotbelger@9127: new DataItem[] { new DefaultDataItem(useTkhStr, useTkhStr, useTkhStr) }) }, 0); gernotbelger@9127: gernotbelger@9133: describeCollection(); gernotbelger@9127: gernotbelger@9127: super.export(exportToFile); gernotbelger@9127: } gernotbelger@9127: }