r3662 - branches/4.0.1/src/main/java/fr/ifremer/isisfish/simulator/sensitivity/domain
Author: echatellier Date: 2012-03-19 17:39:55 +0100 (Mon, 19 Mar 2012) New Revision: 3662 Url: http://forge.codelutin.com/repositories/revision/isis-fish/3662 Log: Parameters are not sorted anymore (bad idea, not sorted in xml files too) Modified: branches/4.0.1/src/main/java/fr/ifremer/isisfish/simulator/sensitivity/domain/ContinuousDomain.java Modified: branches/4.0.1/src/main/java/fr/ifremer/isisfish/simulator/sensitivity/domain/ContinuousDomain.java =================================================================== --- branches/4.0.1/src/main/java/fr/ifremer/isisfish/simulator/sensitivity/domain/ContinuousDomain.java 2012-03-19 16:12:45 UTC (rev 3661) +++ branches/4.0.1/src/main/java/fr/ifremer/isisfish/simulator/sensitivity/domain/ContinuousDomain.java 2012-03-19 16:39:55 UTC (rev 3662) @@ -25,9 +25,10 @@ package fr.ifremer.isisfish.simulator.sensitivity.domain; +import java.util.HashMap; +import java.util.Map; import java.util.Map.Entry; import java.util.SortedMap; -import java.util.TreeMap; import fr.ifremer.isisfish.IsisFishRuntimeException; import fr.ifremer.isisfish.simulator.sensitivity.Distribution; @@ -53,7 +54,7 @@ protected Distribution distribution; /** Distribution params (param name > param value). */ - protected SortedMap<String, Object> distributionParameters = new TreeMap<String, Object>(); + protected Map<String, Object> distributionParameters = new HashMap<String, Object>(); /** * Default constructor. @@ -97,7 +98,7 @@ * * @return distribution parameters */ - public SortedMap<String, Object> getDistributionParameters() { + public Map<String, Object> getDistributionParameters() { return distributionParameters; } @@ -137,10 +138,16 @@ } // get current parameter definition - DistributionParam defDistribParams = distribution.getDistibutionParams()[distributionParameters.size()]; - if (!defDistribParams.getName().equals(name)) { - throw new IllegalArgumentException(String.format("Wrong parameter name, expected %s, got %s", defDistribParams.getName(), name)); + boolean found = false; + DistributionParam[] defDistribParams = distribution.getDistibutionParams(); + for (DistributionParam defDistribParam : defDistribParams) { + if (defDistribParam.getName().equals(name)) { + found = true; + } } + if (!found) { + throw new IllegalArgumentException(String.format("Wrong parameter name, %s not supported by distribution", name)); + } distributionParameters.put(name, value); }
participants (1)
-
echatellier@users.forge.codelutin.com