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 org.dive4elements.artifacts.httpclient.exceptions.ConnectionException; gernotbelger@9127: import org.dive4elements.river.client.shared.exceptions.ServerException; gernotbelger@9127: gernotbelger@9127: import test.BerechnungsartenTester.CalcMode; gernotbelger@9127: import test.BerechnungsartenTester.FilenameMapper; gernotbelger@9127: import test.BerechnungsartenTester.River; gernotbelger@9418: import test.SinfoFloodDurationRiversideChoice.RiversideChoiceKey; gernotbelger@9127: gernotbelger@9127: /** gernotbelger@9127: * @author Domenico Nardi Tironi gernotbelger@9127: * gernotbelger@9127: */ gernotbelger@9133: public final class RunnerCreatorHelper { gernotbelger@9127: gernotbelger@9127: private final static String user = "belger"; gernotbelger@9133: gernotbelger@9127: private final static String pw = "belger"; gernotbelger@9127: gernotbelger@9133: private RunnerCreatorHelper() { gernotbelger@9133: throw new UnsupportedOperationException(); gernotbelger@9127: } gernotbelger@9127: gernotbelger@9127: // HELPER-Methods: gernotbelger@9127: gernotbelger@9228: public final static AbstractModuleRunner createSinfoFlowdepthMinMaxTest(final FilenameMapper file, final double from, final double to, gernotbelger@9228: final River beispielfluss, final SimpleRecommendation rec0, final SimpleRecommendation rec1) throws ConnectionException, ServerException { gernotbelger@9127: // TODO: make recommendationPair to method parameter if needed gernotbelger@9228: final SinfoFlowdepthMinMaxRunner proof = new SinfoFlowdepthMinMaxRunner(user, pw, CalcMode.sinfo_calc_flow_depth_minmax, file, from, to, beispielfluss); gernotbelger@9228: proof.addRecommendationPair(rec0, rec1); gernotbelger@9127: gernotbelger@9127: return proof; gernotbelger@9127: } gernotbelger@9127: gernotbelger@9228: public static AbstractModuleRunner createSinfoFlowdepthMinMaxTest(final FilenameMapper file, final int from, final int to, final River river, gernotbelger@9228: final SimpleRecommendation simpleRecommendation0, final SimpleRecommendation simpleRecommendation1, gernotbelger@9228: final SimpleRecommendation simpleRecommendation2, final SimpleRecommendation simpleRecommendation3) throws ConnectionException, ServerException { gernotbelger@9228: final SinfoFlowdepthMinMaxRunner proof = (SinfoFlowdepthMinMaxRunner) createSinfoFlowdepthMinMaxTest(file, from, to, river, simpleRecommendation0, gernotbelger@9228: simpleRecommendation1); gernotbelger@9228: proof.addRecommendationPair(simpleRecommendation2, simpleRecommendation3); gernotbelger@9228: return proof; gernotbelger@9228: } gernotbelger@9228: gernotbelger@9148: public final static AbstractModuleRunner createSinfoFlowdepthTest(final FilenameMapper file, final double from, final double to, final River river, gernotbelger@9127: final boolean useTkh, final SimpleRecommendation rec0, final SimpleRecommendation rec1) throws ConnectionException, ServerException { gernotbelger@9148: final SinfoFlowdepthRunner proof = new SinfoFlowdepthRunner(user, pw, CalcMode.sinfo_calc_flow_depth, file, from, to, river, useTkh); gernotbelger@9127: proof.addRecommendationPair(rec0, rec1); gernotbelger@9127: gernotbelger@9127: return proof; gernotbelger@9127: } gernotbelger@9148: gernotbelger@9148: public final static AbstractModuleRunner createSinfoFlowdepthDevelopmentTest(final FilenameMapper file, final double from, final double to, gernotbelger@9148: final River river, final SimpleRecommendation rec0_curr, final SimpleRecommendation rec1_curr, final SimpleRecommendation rec0_hist, gernotbelger@9148: final SimpleRecommendation rec1_hist) throws ConnectionException, ServerException { gernotbelger@9148: final SinfoFlowdepthDevelopmentRunner proof = new SinfoFlowdepthDevelopmentRunner(user, pw, CalcMode.sinfo_calc_flow_depth_development, file, from, to, gernotbelger@9148: river); gernotbelger@9148: proof.addCurrentRecommendationPair(rec0_curr, rec1_curr); gernotbelger@9148: proof.addHistoricalRecommendationPair(rec0_hist, rec1_hist); gernotbelger@9148: return proof; gernotbelger@9148: } gernotbelger@9226: gernotbelger@9226: public final static AbstractModuleRunner createSinfoTkhTest(final FilenameMapper file, final double from, final double to, final River river, gernotbelger@9226: // final boolean useTkh, gernotbelger@9226: final double[] wasserspiegellage) throws ConnectionException, ServerException { gernotbelger@9226: final SinfoTkhRunner proof = new SinfoTkhRunner(user, pw, CalcMode.sinfo_calc_transport_bodies_heights, file, from, to, river, wasserspiegellage); gernotbelger@9226: gernotbelger@9226: return proof; gernotbelger@9226: } gernotbelger@9226: gernotbelger@9417: public final static AbstractModuleRunner createSinfoCollisionYearsTest(final FilenameMapper file, final double from, final double to, final River river, gernotbelger@9417: final int[] years) throws ConnectionException, ServerException { gernotbelger@9417: final SinfoCollisionRunner proof = new SinfoCollisionRunner(user, pw, file, from, to, river, years, null); gernotbelger@9417: gernotbelger@9417: return proof; gernotbelger@9417: } gernotbelger@9417: gernotbelger@9417: public final static AbstractModuleRunner createSinfoCollisionEpochsTest(final FilenameMapper file, final double from, final double to, final River river, gernotbelger@9417: final String epochs) throws ConnectionException, ServerException { gernotbelger@9417: final SinfoCollisionRunner proof = new SinfoCollisionRunner(user, pw, file, from, to, river, null, epochs); gernotbelger@9417: gernotbelger@9417: return proof; gernotbelger@9417: } gernotbelger@9418: gernotbelger@9418: public final static AbstractModuleRunner createSinfoFloodDurationTest(final FilenameMapper file, final double from, final double to, final River river, gernotbelger@9418: final double[] wasserspiegellage, final boolean showWspl, final RiversideChoiceKey riverside) throws ConnectionException, ServerException { gernotbelger@9418: final SinfoFloodDurationRunner proof = new SinfoFloodDurationRunner(user, pw, CalcMode.sinfo_calc_flood_duration, file, from, to, river, gernotbelger@9418: wasserspiegellage, riverside, showWspl); gernotbelger@9418: gernotbelger@9418: return proof; gernotbelger@9418: } gernotbelger@9133: }