Author: echatellier Date: 2014-04-09 17:47:18 +0200 (Wed, 09 Apr 2014) New Revision: 3943 Url: http://forge.codelutin.com/projects/isis-fish/repository/revisions/3943 Log: Fix useCache and useOptimization parameters Modified: branches/4.0.1/src/main/java/fr/ifremer/isisfish/simulator/SimulationParameter.java branches/4.0.1/src/main/java/fr/ifremer/isisfish/simulator/SimulationParameterCache.java branches/4.0.1/src/main/java/fr/ifremer/isisfish/simulator/SimulationParameterImpl.java branches/4.0.1/src/main/java/fr/ifremer/isisfish/ui/simulator/AdvancedParamsUI.jaxx branches/4.0.1/src/main/resources/i18n/isis-fish_en_GB.properties branches/4.0.1/src/main/resources/i18n/isis-fish_fr_FR.properties Modified: branches/4.0.1/src/main/java/fr/ifremer/isisfish/simulator/SimulationParameter.java =================================================================== --- branches/4.0.1/src/main/java/fr/ifremer/isisfish/simulator/SimulationParameter.java 2014-04-09 13:57:05 UTC (rev 3942) +++ branches/4.0.1/src/main/java/fr/ifremer/isisfish/simulator/SimulationParameter.java 2014-04-09 15:47:18 UTC (rev 3943) @@ -238,23 +238,23 @@ public void clearRules(); /** - * Return if optimization sould be used. + * Return if cache should be used. * * Default to : true. * - * @return use optimization + * @return use cache */ - public boolean getUseOptimization(); + public boolean getUseCache(); /** * Change use optimization parameter. * - * @param useOptimization use optimization to set + * @param useCache use cache to set */ - public void setUseOptimization(boolean useOptimization); + public void setUseCache(boolean useCache); /** - * Return if statistic sould be used. + * Return if statistic should be used. * * Default to false; * @@ -344,6 +344,10 @@ */ public void setSensitivityExport(List<SensitivityExport> sensitivityExport); + public boolean getUseOptimization(); + + public void setUseOptimization(boolean useOptimization); + /** * Return used optimization script. * Modified: branches/4.0.1/src/main/java/fr/ifremer/isisfish/simulator/SimulationParameterCache.java =================================================================== --- branches/4.0.1/src/main/java/fr/ifremer/isisfish/simulator/SimulationParameterCache.java 2014-04-09 13:57:05 UTC (rev 3942) +++ branches/4.0.1/src/main/java/fr/ifremer/isisfish/simulator/SimulationParameterCache.java 2014-04-09 15:47:18 UTC (rev 3943) @@ -949,4 +949,17 @@ param.setOptimizationExportsObservations(exportsObservations); store(param); } + + @Override + public boolean getUseCache() { + SimulationParameter param = getParam(); + return param.getUseCache(); + } + + @Override + public void setUseCache(boolean useCache) { + SimulationParameter param = getParam(); + param.setUseCache(useCache); + store(param); + } } Modified: branches/4.0.1/src/main/java/fr/ifremer/isisfish/simulator/SimulationParameterImpl.java =================================================================== --- branches/4.0.1/src/main/java/fr/ifremer/isisfish/simulator/SimulationParameterImpl.java 2014-04-09 13:57:05 UTC (rev 3942) +++ branches/4.0.1/src/main/java/fr/ifremer/isisfish/simulator/SimulationParameterImpl.java 2014-04-09 15:47:18 UTC (rev 3943) @@ -50,6 +50,7 @@ import org.nuiton.topia.persistence.TopiaEntity; import org.nuiton.util.SortedProperties; import org.nuiton.util.StringUtil; +import org.nuiton.util.VersionUtil; import fr.ifremer.isisfish.IsisConfig; import fr.ifremer.isisfish.IsisFishDAOHelper; @@ -110,8 +111,8 @@ /** Le nom de l'objet script a utiliser pour faire la simulation. */ protected String simulatorName; - /** Utilisation ou non des optimisations. */ - protected Boolean useOptimization; + /** Utilisation ou non du cache. */ + protected Boolean useCache; /** Utilisation ou non des statistiques. */ protected Boolean useStatistic; @@ -179,6 +180,9 @@ /** Script utilisé pour les analyses de sensibilités. */ protected SensitivityAnalysis sensitivityAnalysis; + /** Utilisation d'un script de simulation. */ + protected Boolean useOptimization; + /** Script d'optimisation. */ protected Optimization optimization; @@ -661,28 +665,27 @@ } } - /* - * @see fr.ifremer.isisfish.simulator.SimulationParameter#getUseOptimization() - */ @Override - public boolean getUseOptimization() { - - if (useOptimization == null) { + public boolean getUseCache() { + if (useCache == null) { if (propertiesParameters != null) { - useOptimization = Boolean.valueOf(propertiesParameters.getProperty("useOptimization", "false")); + // en version < 4.3, le parametre était nommé 'useOptimization' + // qualifiait le cache, il été renommé ensuite + if (VersionUtil.smallerThan(getIsisFishVersion(), "4.3.0.0")) { + useCache = Boolean.valueOf(propertiesParameters.getProperty("useOptimization", "true")); + } else { + useCache = Boolean.valueOf(propertiesParameters.getProperty("useCache", "true")); + } } else { - useOptimization = Boolean.FALSE; + useCache = Boolean.TRUE; } } - return useOptimization.booleanValue(); + return useCache.booleanValue(); } - /* - * @see fr.ifremer.isisfish.simulator.SimulationParameter#setUseOptimization(boolean) - */ @Override - public void setUseOptimization(boolean useOptimization) { - this.useOptimization = useOptimization; + public void setUseCache(boolean useCache) { + this.useCache = useCache; } /* @@ -903,6 +906,29 @@ } @Override + public boolean getUseOptimization() { + if (useOptimization == null) { + if (propertiesParameters != null) { + // en version < 4.3, le parametre était nommé 'useOptimization' + // qualifiant le cache, il a été renommé ensuite + if (VersionUtil.smallerThan(getIsisFishVersion(), "4.3.0.0")) { + useOptimization = Boolean.FALSE; + } else { + useOptimization = Boolean.valueOf(propertiesParameters.getProperty("useOptimization", "false")); + } + } else { + useOptimization = Boolean.FALSE; + } + } + return useOptimization.booleanValue(); + } + + @Override + public void setUseOptimization(boolean useOptimization) { + this.useOptimization = useOptimization; + } + + @Override public void setOptimization(Optimization optimization) { this.optimization = optimization; } @@ -1496,13 +1522,12 @@ result.regionName = getRegionName(); result.numberOfYear = getNumberOfYear(); result.simulatorName = getSimulatorName(); - result.useOptimization = getUseOptimization(); + result.useCache = getUseCache(); result.useStatistic = getUseStatistic(); result.usePreScript = getUsePreScript(); result.preScript = getPreScript(); result.generatedPreScript = getGeneratedPreScript(); result.useSimulationPlan = getUseSimulationPlan(); - result.useOptimization = getUseOptimization(); result.simulationPlanNumber = getSimulationPlanNumber(); if (exportNames != null) { result.exportNames = new LinkedList<String>(exportNames); @@ -1522,6 +1547,7 @@ if (objective != null) { result.objective = objective; } + result.useOptimization = getUseOptimization(); if (optimization != null) { result.optimization = optimization; } @@ -1578,9 +1604,9 @@ getSimulationPlanNumber())); } - if (getUseOptimization()) { - result.append(t("isisfish.params.toString.use.optimization", - getUseOptimization())); + if (getUseCache()) { + result.append(t("isisfish.params.toString.use.cache", + getUseCache())); } RegionStorage region = getRegion(); @@ -1646,6 +1672,10 @@ } + if (getUseOptimization()) { + result.append(t("isisfish.params.toString.use.optimization", + getUseOptimization())); + } if (objective != null) { String name = ObjectiveStorage.getName(objective); String param = ""; @@ -1726,7 +1756,7 @@ result.setProperty("regionName", getRegionName()); result.setProperty("numberOfYear", String.valueOf(getNumberOfYear())); result.setProperty("simulatorName", getSimulatorName()); - result.setProperty("useOptimization", String.valueOf(getUseOptimization())); + result.setProperty("useCache", String.valueOf(getUseCache())); result.setProperty("useStatistic", String.valueOf(getUseStatistic())); // strategies Modified: branches/4.0.1/src/main/java/fr/ifremer/isisfish/ui/simulator/AdvancedParamsUI.jaxx =================================================================== --- branches/4.0.1/src/main/java/fr/ifremer/isisfish/ui/simulator/AdvancedParamsUI.jaxx 2014-04-09 13:57:05 UTC (rev 3942) +++ branches/4.0.1/src/main/java/fr/ifremer/isisfish/ui/simulator/AdvancedParamsUI.jaxx 2014-04-09 15:47:18 UTC (rev 3943) @@ -132,8 +132,8 @@ onActionPerformed='getContextValue(SimulAction.class).getSimulationParameter().setUseStatistic(fieldSimulationStatistique.isSelected());'/> </cell> <cell columns="2" fill="horizontal"> - <JCheckBox id="fieldSimulationCache" text="isisfish.advancedParams.simulationCache" selected='{getContextValue(SimulAction.class).getSimulationParameter().getUseOptimization()}' - onActionPerformed='getContextValue(SimulAction.class).getSimulationParameter().setUseOptimization(fieldSimulationCache.isSelected());'/> + <JCheckBox id="fieldSimulationCache" text="isisfish.advancedParams.simulationCache" selected='{getContextValue(SimulAction.class).getSimulationParameter().getUseCache()}' + onActionPerformed='getContextValue(SimulAction.class).getSimulationParameter().setUseCache(fieldSimulationCache.isSelected());'/> </cell> </row> <row> Modified: branches/4.0.1/src/main/resources/i18n/isis-fish_en_GB.properties =================================================================== --- branches/4.0.1/src/main/resources/i18n/isis-fish_en_GB.properties 2014-04-09 13:57:05 UTC (rev 3942) +++ branches/4.0.1/src/main/resources/i18n/isis-fish_en_GB.properties 2014-04-09 15:47:18 UTC (rev 3943) @@ -697,7 +697,8 @@ isisfish.params.toString.simul.logger.level=Level of simulator's logger \: %1$s isisfish.params.toString.simulation.done=Simulation done with \: %1$s isisfish.params.toString.strategies=Strategies \: -isisfish.params.toString.use.optimization= +isisfish.params.toString.use.cache=Use simulation cache +isisfish.params.toString.use.optimization=Use optimization method isisfish.params.usePreSimulationScript=Use pre simulation script isisfish.params.useSimulationPlan=Use simulation plan isisfish.population.capturability=Capturability Modified: branches/4.0.1/src/main/resources/i18n/isis-fish_fr_FR.properties =================================================================== --- branches/4.0.1/src/main/resources/i18n/isis-fish_fr_FR.properties 2014-04-09 13:57:05 UTC (rev 3942) +++ branches/4.0.1/src/main/resources/i18n/isis-fish_fr_FR.properties 2014-04-09 15:47:18 UTC (rev 3943) @@ -696,6 +696,7 @@ isisfish.params.toString.simul.logger.level=niveau du logger de simulateur \: %1$s isisfish.params.toString.simulation.done=Simulation réalisée avec \: %1$s isisfish.params.toString.strategies=Stratégies d'exploitation \: +isisfish.params.toString.use.cache=Utiliser le cache de simulation isisfish.params.toString.use.optimization=Utiliser une méthode d'optimisation isisfish.params.useOptimization=Utiliser une méthode d'optimisation isisfish.params.usePreSimulationScript=Utiliser un script de pré-simulation