Mercurial > dive4elements > river
diff artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/salix/SalixLineCalculationRegionalResult.java @ 9319:c36befc9011c
Salix: Fixed ArrrayoutOfBoundsException; minor cleanup
author | gernotbelger |
---|---|
date | Fri, 27 Jul 2018 10:18:18 +0200 |
parents | 72b3270e1568 |
children | b3d3c958a594 |
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/salix/SalixLineCalculationRegionalResult.java Thu Jul 26 17:37:23 2018 +0200 +++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/salix/SalixLineCalculationRegionalResult.java Fri Jul 27 10:18:18 2018 +0200 @@ -13,6 +13,7 @@ import java.util.Collection; import java.util.List; +import org.apache.commons.lang.StringUtils; import org.dive4elements.river.artifacts.common.ExportContextCSV; import org.dive4elements.river.artifacts.common.GeneralResultType; import org.dive4elements.river.artifacts.common.IExportContext; @@ -43,8 +44,8 @@ public String getScenarioLabel(final int i) { if ((this.scenarioLabels != null) && (i < this.scenarioLabels.length)) return this.scenarioLabels[i]; - else - return ""; + + return ""; } @Override @@ -63,7 +64,6 @@ protected void writeCSVResultMetadata(final ExportContextCSV exportContextCSV) { writeRegionalEffectsCSVMetadata(exportContextCSV); exportContextCSV.writeBlankLine(); - } @Override @@ -77,8 +77,13 @@ for (final SalixScenario scenario : scenList) { // scenario unused; index wurde ja verworfen, stattdessen 2 spalten - lines.add(scenario.getSalixValueFormatted(formatter)); - lines.add(scenario.getDwsplFormatted()); + if (scenario == null) { + lines.add(StringUtils.EMPTY); + lines.add(StringUtils.EMPTY); + } else { + lines.add(scenario.getSalixValueFormatted(formatter)); + lines.add(scenario.getDwsplFormatted()); + } } } return lines.toArray(new String[lines.size()]); @@ -106,8 +111,9 @@ final double station = row.getDoubleValue(GeneralResultType.station); final List<SalixScenario> scenarios = (List<SalixScenario>) row.getValue(UInfoResultType.customMultiRowColSalixRegionalValue_Dwspl); - if (dataIndex <= scenarios.size() - 1) { - final double value = scenarios.get(dataIndex).getSalixValue(); + final SalixScenario salixScenario = scenarios.get(dataIndex); + if (salixScenario != null) { + final double value = salixScenario.getSalixValue(); xPoints.add(station); yPoints.add(value); } @@ -115,31 +121,4 @@ return new double[][] { xPoints.toNativeArray(), yPoints.toNativeArray() }; } - - // TODO: move to SupraRegionalEffectsResult-Class; remove here - // private void writeExtendedRegionalEffectsCSVMetadata(final ExportContextCSV exportContextCSV) { - // final String main = "uinfo.export.csv.meta.header.salix.regionalextended"; - // // "##Überregional wirkende Eingriffe" - // exportContextCSV.writeCSVMetaEntry(main); - // - // writeRegionalCommonCSVMeta(exportContextCSV); - // } - - // TODO: move to historical class and delete here - // private void writeHistoricalViewCSVMetadata(final ExportContextCSV exportContextCSV) { - // final String main = "uinfo.export.csv.meta.header.salix.historical"; - // // "##Historische Betrachtung" - // exportContextCSV.writeCSVMetaEntry(main); - // - // final String mainSub = "uinfo.export.csv.meta.header.salix"; - // // "# Szenariotyp: " - // exportContextCSV.writeCSVMetaEntry(mainSub + ".szenariotyp"); - // // "# Teilabschnitt: " - // exportContextCSV.writeCSVMetaEntry(mainSub + ".teilabschnitt"); - // - // // "# Art des Zeitraums: " - // exportContextCSV.writeCSVMetaEntry(main + ".zeitart"); - // // "# Historischer Zeitpunkt: " - // exportContextCSV.writeCSVMetaEntry(main + ".zeitpunkt"); - // } } \ No newline at end of file