Isis-fish-commits
Threads by month
- ----- 2026 -----
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
November 2011
- 2 participants
- 34 discussions
r3528 - in trunk: . src/main/java/fr/ifremer/isisfish
by echatellier@users.forge.codelutin.com 18 Nov '11
by echatellier@users.forge.codelutin.com 18 Nov '11
18 Nov '11
Author: echatellier
Date: 2011-11-18 15:57:44 +0100 (Fri, 18 Nov 2011)
New Revision: 3528
Url: http://forge.codelutin.com/repositories/revision/isis-fish/3528
Log:
Use i18n bundle to fix i18n on windows
Modified:
trunk/pom.xml
trunk/src/main/java/fr/ifremer/isisfish/IsisFish.java
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2011-11-18 14:57:27 UTC (rev 3527)
+++ trunk/pom.xml 2011-11-18 14:57:44 UTC (rev 3528)
@@ -679,7 +679,9 @@
<execution>
<goals>
<goal>parserJava</goal>
+ <goal>parserValidation</goal>
<goal>gen</goal>
+ <goal>bundle</goal>
</goals>
</execution>
</executions>
Modified: trunk/src/main/java/fr/ifremer/isisfish/IsisFish.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/IsisFish.java 2011-11-18 14:57:27 UTC (rev 3527)
+++ trunk/src/main/java/fr/ifremer/isisfish/IsisFish.java 2011-11-18 14:57:44 UTC (rev 3528)
@@ -50,6 +50,7 @@
import org.apache.commons.logging.LogFactory;
import org.nuiton.i18n.I18n;
import org.nuiton.i18n.init.ClassPathI18nInitializer;
+import org.nuiton.i18n.init.DefaultI18nInitializer;
import org.nuiton.math.matrix.MatrixFactory;
import org.nuiton.topia.TopiaException;
import org.nuiton.util.FileUtil;
@@ -222,8 +223,8 @@
config = new IsisConfig();
config.parse(args);
- // init i18n
- I18n.init(new ClassPathI18nInitializer(), config.getLocale());
+ // to work in java webstart
+ I18n.init(new DefaultI18nInitializer("isis-fish-i18n"), config.getLocale());
// after init shutdown hook
Runtime.getRuntime().addShutdownHook(new IsisQuitHook());
1
0
18 Nov '11
Author: echatellier
Date: 2011-11-18 15:57:27 +0100 (Fri, 18 Nov 2011)
New Revision: 3527
Url: http://forge.codelutin.com/repositories/revision/isis-fish/3527
Log:
???
Modified:
trunk/src/main/resources/i18n/isis-fish_en_GB.properties
trunk/src/main/resources/i18n/isis-fish_fr_FR.properties
Modified: trunk/src/main/resources/i18n/isis-fish_en_GB.properties
===================================================================
--- trunk/src/main/resources/i18n/isis-fish_en_GB.properties 2011-11-18 13:41:11 UTC (rev 3526)
+++ trunk/src/main/resources/i18n/isis-fish_en_GB.properties 2011-11-18 14:57:27 UTC (rev 3527)
@@ -21,6 +21,7 @@
Check\ state\ of\ local\ repository\:\ %s=
Command\ '%s'\ fail\ to\ execute=
Could\ not\ found\ formule\ type\ %s\ autorised\ type\ are\ %s=
+Empty\ zones=
Error\ during\ vcs\ initialisation=
Error\ while\ uploading\ public\ key\ to\ remote\ serveur\ authorized_keys=
Generate\ next\ simulation=
@@ -33,6 +34,8 @@
Launcher\ %s\ will\ be\ stopped\ because\ there\ are\ too\ many\ error\ (%s)=
Local\ repository\ don't\ exist=
Local\ repository\ exists\ but\ it's\ not\ valide\ for\ current\ vcs\:\ %s=
+Missing\ name=
+No\ port\ cell=
Normal\ stop\ thread,\ this\ is\ not\ an\ error=
Not\ start\ simulation\ %s\ because\ user\ ask\ stop=
Process\ template\ error=
Modified: trunk/src/main/resources/i18n/isis-fish_fr_FR.properties
===================================================================
--- trunk/src/main/resources/i18n/isis-fish_fr_FR.properties 2011-11-18 13:41:11 UTC (rev 3526)
+++ trunk/src/main/resources/i18n/isis-fish_fr_FR.properties 2011-11-18 14:57:27 UTC (rev 3527)
@@ -21,6 +21,7 @@
Check\ state\ of\ local\ repository\:\ %s=
Command\ '%s'\ fail\ to\ execute=
Could\ not\ found\ formule\ type\ %s\ autorised\ type\ are\ %s=
+Empty\ zones=
Error\ during\ vcs\ initialisation=
Error\ while\ uploading\ public\ key\ to\ remote\ serveur\ authorized_keys=
Generate\ next\ simulation=
@@ -33,6 +34,8 @@
Launcher\ %s\ will\ be\ stopped\ because\ there\ are\ too\ many\ error\ (%s)=
Local\ repository\ don't\ exist=
Local\ repository\ exists\ but\ it's\ not\ valide\ for\ current\ vcs\:\ %s=
+Missing\ name=
+No\ port\ cell=
Normal\ stop\ thread,\ this\ is\ not\ an\ error=
Not\ start\ simulation\ %s\ because\ user\ ask\ stop=
Process\ template\ error=
1
0
r3526 - trunk/src/main/java/fr/ifremer/isisfish/datastore
by echatellier@users.forge.codelutin.com 18 Nov '11
by echatellier@users.forge.codelutin.com 18 Nov '11
18 Nov '11
Author: echatellier
Date: 2011-11-18 14:41:11 +0100 (Fri, 18 Nov 2011)
New Revision: 3526
Url: http://forge.codelutin.com/repositories/revision/isis-fish/3526
Log:
Do not use toString() to store objects in cache
Modified:
trunk/src/main/java/fr/ifremer/isisfish/datastore/ResultStorage.java
Modified: trunk/src/main/java/fr/ifremer/isisfish/datastore/ResultStorage.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/datastore/ResultStorage.java 2011-11-18 13:39:04 UTC (rev 3525)
+++ trunk/src/main/java/fr/ifremer/isisfish/datastore/ResultStorage.java 2011-11-18 13:41:11 UTC (rev 3526)
@@ -105,7 +105,7 @@
}
protected void putInCache(TimeStep step, String name, MatrixND mat, TopiaContext context) {
- String key = step + ":" + name;
+ String key = step.getStep() + ":" + name;
putInCache(key, mat, context);
}
1
0
r3525 - trunk/src/main/java/fr/ifremer/isisfish/datastore
by echatellier@users.forge.codelutin.com 18 Nov '11
by echatellier@users.forge.codelutin.com 18 Nov '11
18 Nov '11
Author: echatellier
Date: 2011-11-18 14:39:04 +0100 (Fri, 18 Nov 2011)
New Revision: 3525
Url: http://forge.codelutin.com/repositories/revision/isis-fish/3525
Log:
Do not use toString() to store objects in cache
Modified:
trunk/src/main/java/fr/ifremer/isisfish/datastore/ResultStorage.java
Modified: trunk/src/main/java/fr/ifremer/isisfish/datastore/ResultStorage.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/datastore/ResultStorage.java 2011-11-16 08:43:12 UTC (rev 3524)
+++ trunk/src/main/java/fr/ifremer/isisfish/datastore/ResultStorage.java 2011-11-18 13:39:04 UTC (rev 3525)
@@ -117,7 +117,8 @@
}
protected MatrixND getInCache(TimeStep step, String name) {
- String key = step + ":" + name;
+ // do not use toString for step (depend on i18n)
+ String key = step.getStep() + ":" + name;
MatrixND result = getInCache(key);
return result;
}
1
0
Author: echatellier
Date: 2011-11-16 09:43:12 +0100 (Wed, 16 Nov 2011)
New Revision: 3524
Url: http://forge.codelutin.com/repositories/revision/isis-fish/3524
Log:
Update javamail and h2
Modified:
trunk/pom.xml
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2011-11-08 14:11:46 UTC (rev 3523)
+++ trunk/pom.xml 2011-11-16 08:43:12 UTC (rev 3524)
@@ -90,7 +90,7 @@
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
- <version>1.4.1</version>
+ <version>1.4.4</version>
<scope>compile</scope>
</dependency>
@@ -230,8 +230,11 @@
<scope>compile</scope>
</dependency>
- <!-- <dependency> <groupId>com.fifesoft</groupId> <artifactId>languagesupport</artifactId>
- <version>0.7</version> </dependency> -->
+ <!-- <dependency>
+ <groupId>com.fifesoft</groupId>
+ <artifactId>languagesupport</artifactId>
+ <version>0.7</version>
+ </dependency> -->
<dependency>
<groupId>com.jcraft</groupId>
@@ -269,7 +272,7 @@
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
- <version>1.3.160</version>
+ <version>1.3.161</version>
<scope>compile</scope>
</dependency>
1
0
08 Nov '11
Author: echatellier
Date: 2011-11-08 15:11:46 +0100 (Tue, 08 Nov 2011)
New Revision: 3523
Url: http://forge.codelutin.com/repositories/revision/isis-fish/3523
Log:
#468 : Configuration des scripts en popup au moment de l'ajout
Added:
trunk/src/main/java/fr/ifremer/isisfish/ui/models/common/ScriptParametersTableCellEditor.java
trunk/src/main/java/fr/ifremer/isisfish/ui/models/common/ScriptParametersTableCellRenderer.java
trunk/src/main/java/fr/ifremer/isisfish/ui/models/common/ScriptParametersTableModel.java
trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/RuleChooserHandler.java
trunk/src/main/java/fr/ifremer/isisfish/ui/widget/editor/ScriptParameterDialog.jaxx
Removed:
trunk/src/main/java/fr/ifremer/isisfish/ui/models/export/ExportParametersTableCellEditor.java
trunk/src/main/java/fr/ifremer/isisfish/ui/models/export/ExportParametersTableCellRenderer.java
trunk/src/main/java/fr/ifremer/isisfish/ui/models/export/ExportParametersTableModel.java
trunk/src/main/java/fr/ifremer/isisfish/ui/models/rule/RuleParametersTableCellEditor.java
trunk/src/main/java/fr/ifremer/isisfish/ui/models/rule/RuleParametersTableCellRenderer.java
trunk/src/main/java/fr/ifremer/isisfish/ui/models/rule/RuleParametersTableModel.java
trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityanalysis/SensitivityAnalysisParametersTableCellEditor.java
trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityanalysis/SensitivityAnalysisParametersTableCellRenderer.java
trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityanalysis/SensitivityAnalysisParametersTableModel.java
trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityexport/SensitivityExportParametersTableCellEditor.java
trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityexport/SensitivityExportParametersTableCellRenderer.java
trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityexport/SensitivityExportParametersTableModel.java
trunk/src/main/java/fr/ifremer/isisfish/ui/models/simulationplan/SimulationPlanParametersTableCellEditor.java
trunk/src/main/java/fr/ifremer/isisfish/ui/models/simulationplan/SimulationPlanParametersTableCellRenderer.java
trunk/src/main/java/fr/ifremer/isisfish/ui/models/simulationplan/SimulationPlanParametersTableModel.java
Modified:
trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java
trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomeHandler.java
trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityChooserUI.jaxx
trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/ParamsUI.jaxx
trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/RuleChooser.jaxx
trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/SensUI.jaxx
trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/SimulAction.java
trunk/src/main/resources/i18n/isis-fish_en_GB.properties
trunk/src/main/resources/i18n/isis-fish_fr_FR.properties
Modified: trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -665,6 +665,16 @@
return result;
}
+ /**
+ * Get script auto configuration option value.
+ *
+ * @return autoconfiguration
+ */
+ public boolean isScriptAutoconfig() {
+ boolean result = getOptionAsBoolean(Option.SIMULATION_SCRIPT_AUTOCONFIG.key);
+ return result;
+ }
+
public void setSimulatorLauncher(String value) {
setOption(Option.SIMULATOR_LAUNCHER.key, value);
}
@@ -936,6 +946,8 @@
PERFORM_VCS_UPDATE("perform.vcsupdate", n_("isisfish.config.main.performvcsupdate.description"), "true"),
/** Perform cron option. */
PERFORM_CRON("perform.cron", n_("isisfish.config.main.performcron.description"), "true"),
+ /** Auto configure script parameter when addind it */
+ SIMULATION_SCRIPT_AUTOCONFIG("script.autoconfig", n_("isisfish.config.main.script.autoconfig.description"), "true"),
/** Database lock mode (h2).*/
DATABASE_LOCK_MODE("database.lockmode", n_("isisfish.config.database.lockmode.description"), "file"),
Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomeHandler.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomeHandler.java 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomeHandler.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -220,6 +220,7 @@
modelBuilder.addOption(IsisConfig.Option.BACKUP_DIRECTORY);
modelBuilder.addOption(IsisConfig.Option.LOCALE);
modelBuilder.addOption(IsisConfig.Option.SIMULATION_SHOW_ONLY_ERROR);
+ modelBuilder.addOption(IsisConfig.Option.SIMULATION_SCRIPT_AUTOCONFIG);
// category database vcs
modelBuilder.addCategory(_("isisfish.config.category.officialvcs"), _("isisfish.config.category.officialvcs.description"));
Added: trunk/src/main/java/fr/ifremer/isisfish/ui/models/common/ScriptParametersTableCellEditor.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/models/common/ScriptParametersTableCellEditor.java (rev 0)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/models/common/ScriptParametersTableCellEditor.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -0,0 +1,75 @@
+/*
+ * #%L
+ * IsisFish
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation, either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/gpl-2.0.html>.
+ * #L%
+ */
+
+package fr.ifremer.isisfish.ui.models.common;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+import fr.ifremer.isisfish.datastore.JavaSourceStorage;
+import fr.ifremer.isisfish.ui.widget.editor.ParameterTableCellEditor;
+
+/**
+ * Specific editor for script parameters.
+ *
+ * @author chatellier
+ * @version $Revision$
+ *
+ * Last update : $Date$
+ * By : $Author$
+ */
+public class ScriptParametersTableCellEditor extends ParameterTableCellEditor {
+
+ /** serialVersionUID. */
+ private static final long serialVersionUID = 8211639776194497615L;
+
+ protected Object script;
+
+ protected List<Class<?>> scriptParametersTypes;
+
+ /**
+ * Constructor with script parameter.
+ *
+ * @param script script
+ */
+ public ScriptParametersTableCellEditor(Object script) {
+ this.script = script;
+ scriptParametersTypes = new ArrayList<Class<?>>();
+ //TODO map may be sorted
+ Map<String, Class<?>> ruleParametersNamesAndTypes = JavaSourceStorage.getParameterNames(script);
+ for (Class<?> type : ruleParametersNamesAndTypes.values()) {
+ scriptParametersTypes.add(type);
+ }
+ }
+
+ /*
+ * @see fr.ifremer.isisfish.ui.widget.editor.ParameterTableCellEditor#getType(java.lang.Object, int, int)
+ */
+ @Override
+ protected Class<?> getType(Object value, int row, int column) {
+ return scriptParametersTypes.get(row);
+ }
+}
Property changes on: trunk/src/main/java/fr/ifremer/isisfish/ui/models/common/ScriptParametersTableCellEditor.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/src/main/java/fr/ifremer/isisfish/ui/models/common/ScriptParametersTableCellRenderer.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/models/common/ScriptParametersTableCellRenderer.java (rev 0)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/models/common/ScriptParametersTableCellRenderer.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -0,0 +1,78 @@
+/*
+ * #%L
+ * IsisFish
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation, either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/gpl-2.0.html>.
+ * #L%
+ */
+
+package fr.ifremer.isisfish.ui.models.common;
+
+import java.awt.Component;
+
+import javax.swing.JLabel;
+import javax.swing.JTable;
+import javax.swing.table.DefaultTableCellRenderer;
+
+import fr.ifremer.isisfish.datastore.JavaSourceStorage;
+import fr.ifremer.isisfish.ui.util.TooltipHelper;
+import fr.ifremer.isisfish.util.Doc;
+
+/**
+ * Specific editor for rule parameters.
+ *
+ * @author chatellier
+ * @version $Revision$
+ *
+ * Last update : $Date$
+ * By : $Author$
+ */
+public class ScriptParametersTableCellRenderer extends DefaultTableCellRenderer {
+
+ /** serialVersionUID. */
+ private static final long serialVersionUID = -1655744662816030649L;
+
+ protected Object script;
+
+ public ScriptParametersTableCellRenderer(Object script) {
+ this.script = script;
+ }
+
+ /*
+ * @see javax.swing.table.TableCellRenderer#getTableCellRendererComponent(javax.swing.JTable, java.lang.Object, boolean, boolean, int, int)
+ */
+ @Override
+ public Component getTableCellRendererComponent(JTable table, Object value,
+ boolean isSelected, boolean hasFocus, int row, int column) {
+
+ JLabel c = (JLabel) super.getTableCellRendererComponent(table, value,
+ isSelected, hasFocus, row, column);
+
+ String parameterName = (String) value;
+ c.setText(parameterName);
+
+ Doc doc = JavaSourceStorage.getParameterDoc(script, parameterName);
+ String documentation = TooltipHelper.docToString(doc);
+ c.setToolTipText(documentation);
+
+ return c;
+ }
+
+}
Property changes on: trunk/src/main/java/fr/ifremer/isisfish/ui/models/common/ScriptParametersTableCellRenderer.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/src/main/java/fr/ifremer/isisfish/ui/models/common/ScriptParametersTableModel.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/models/common/ScriptParametersTableModel.java (rev 0)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/models/common/ScriptParametersTableModel.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -0,0 +1,238 @@
+/*
+ * #%L
+ * IsisFish
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation, either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/gpl-2.0.html>.
+ * #L%
+ */
+
+package fr.ifremer.isisfish.ui.models.common;
+
+import static org.nuiton.i18n.I18n._;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+import javax.swing.table.AbstractTableModel;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import fr.ifremer.isisfish.IsisFishException;
+import fr.ifremer.isisfish.datastore.JavaSourceStorage;
+
+/**
+ * Model de la table de definition de parametre d'un script.
+ *
+ * Columns :
+ * <li>Parameter name</li>
+ * <li>Parameter value</li>
+ * <li>Parameter factor (if enabled)</li>
+ *
+ * @author chatellier
+ * @version $Revision$
+ *
+ * Last update : $Date$
+ * By : $Author$
+ */
+public class ScriptParametersTableModel extends AbstractTableModel {
+
+ /** Log. */
+ private static Log log = LogFactory.getLog(ScriptParametersTableModel.class);
+
+ /** serialVersionUID. */
+ private static final long serialVersionUID = 3169786638868209920L;
+
+ /** Columns names. */
+ public final static String[] COLUMN_NAMES = {
+ _("isisfish.common.name"),
+ _("isisfish.common.value"),
+ _("isisfish.common.ellipsis")};
+
+ protected Object script;
+
+ protected List<String> scriptParametersNames;
+
+ /** If {@code true} display optional. */
+ protected boolean showFactorColumn;
+
+ public ScriptParametersTableModel() {
+
+ }
+
+ public ScriptParametersTableModel(Object script) {
+ this();
+ setScript(script);
+ }
+
+ public void setShowFactorColumn(boolean showFactorColumn) {
+ this.showFactorColumn = showFactorColumn;
+ fireTableStructureChanged();
+ }
+
+ /**
+ * Set new script, and fire changed event.
+ *
+ * @param script script
+ */
+ public void setScript(Object script) {
+ this.script = script;
+ //TODO map may be sorted
+ scriptParametersNames = new ArrayList<String>();
+ if (script != null) {
+ Map<String, Class<?>> ruleParametersNamesAndTypes = JavaSourceStorage
+ .getParameterNames(script);
+ for (String names : ruleParametersNamesAndTypes.keySet()) {
+ scriptParametersNames.add(names);
+ }
+ }
+ fireTableDataChanged();
+ }
+
+ /*
+ * @see javax.swing.table.TableModel#getColumnCount()
+ */
+ @Override
+ public int getColumnCount() {
+ int result = 2;
+ if (showFactorColumn) {
+ result = 3;
+ }
+ return result;
+ }
+
+ /*
+ * @see javax.swing.table.TableModel#getRowCount()
+ */
+ @Override
+ public int getRowCount() {
+ int result = 0;
+ if (scriptParametersNames != null) {
+ result = scriptParametersNames.size();
+ }
+ return result;
+ }
+
+ /*
+ * @see javax.swing.table.TableModel#getValueAt(int, int)
+ */
+ @Override
+ public Object getValueAt(int rowIndex, int columnIndex) {
+
+ Object result = null;
+
+ String name = scriptParametersNames.get(rowIndex);
+ switch (columnIndex) {
+ case 0:
+ result = name;
+ break;
+ case 1:
+ try {
+ result = JavaSourceStorage.getParameterValue(script, name);
+ } catch (IsisFishException e) {
+ if (log.isErrorEnabled()) {
+ log.debug("Can't get parameters value", e);
+ }
+ }
+ break;
+ case 2:
+ result = name;
+ break;
+ default:
+ throw new IndexOutOfBoundsException("No such column " + columnIndex);
+ }
+
+ return result;
+ }
+
+ /*
+ * @see javax.swing.table.TableModel#getColumnClass(int)
+ */
+ @Override
+ public Class<?> getColumnClass(int columnIndex) {
+
+ Class<?> result = null;
+
+ switch (columnIndex) {
+ case 0:
+ result = String.class;
+ break;
+ case 1:
+ result = Object.class;
+ break;
+ case 2:
+ result = String.class;
+ break;
+ default:
+ throw new IndexOutOfBoundsException("No such column " + columnIndex);
+ }
+
+ return result;
+ }
+
+ /*
+ * @see javax.swing.table.TableModel#getColumnName(int)
+ */
+ @Override
+ public String getColumnName(int columnIndex) {
+ return COLUMN_NAMES[columnIndex];
+ }
+
+ /*
+ * @see javax.swing.table.TableModel#isCellEditable(int, int)
+ */
+ @Override
+ public boolean isCellEditable(int rowIndex, int columnIndex) {
+ return columnIndex > 0;
+ }
+
+ /*
+ * @see javax.swing.table.TableModel#setValueAt(java.lang.Object, int, int)
+ */
+ @Override
+ public void setValueAt(Object value, int rowIndex, int columnIndex) {
+
+ if (log.isDebugEnabled()) {
+ log.debug("Cell edition (column " + columnIndex + ") = " + value);
+ }
+
+ String name = scriptParametersNames.get(rowIndex);
+ switch (columnIndex) {
+ case 1:
+ try {
+ JavaSourceStorage.setParameterValue(script, name, value);
+ } catch (IsisFishException e) {
+ if (log.isErrorEnabled()) {
+ log.error("Can't set parameter value", e);
+ }
+ }
+ break;
+ case 2:
+ // appelé parce qu'on ne peut pas l'empecher
+ // pour la colonne Action,
+ break;
+ default:
+ throw new IndexOutOfBoundsException("Can't edit column "
+ + columnIndex);
+ }
+
+ }
+}
Property changes on: trunk/src/main/java/fr/ifremer/isisfish/ui/models/common/ScriptParametersTableModel.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Deleted: trunk/src/main/java/fr/ifremer/isisfish/ui/models/export/ExportParametersTableCellEditor.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/models/export/ExportParametersTableCellEditor.java 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/models/export/ExportParametersTableCellEditor.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -1,79 +0,0 @@
-/*
- * #%L
- * IsisFish
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2010 Ifremer, Code Lutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-2.0.html>.
- * #L%
- */
-
-package fr.ifremer.isisfish.ui.models.export;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-import fr.ifremer.isisfish.datastore.ExportStorage;
-import fr.ifremer.isisfish.export.Export;
-import fr.ifremer.isisfish.ui.widget.editor.ParameterTableCellEditor;
-
-/**
- * Specific editor for export parameters.
- *
- * @author chatellier
- * @version $Revision$
- *
- * Last update : $Date$
- * By : $Author$
- */
-public class ExportParametersTableCellEditor extends ParameterTableCellEditor {
-
- /** serialVersionUID. */
- private static final long serialVersionUID = 8211639776194497615L;
-
- protected Export export;
-
- protected List<Class<?>> exportParametersTypes;
-
- /**
- * Constructor with export parameter.
- *
- * @param export export
- */
- public ExportParametersTableCellEditor(Export export) {
- super();
-
- this.export = export;
- exportParametersTypes = new ArrayList<Class<?>>();
- //TODO map may be sorted
- Map<String, Class<?>> planParametersNamesAndTypes = ExportStorage
- .getParameterNames(export);
- for (Class<?> type : planParametersNamesAndTypes.values()) {
- exportParametersTypes.add(type);
- }
- }
-
- /*
- * @see fr.ifremer.isisfish.ui.widget.editor.ParameterTableCellEditor#getType(java.lang.Object, int, int)
- */
- @Override
- protected Class<?> getType(Object value, int row, int column) {
- return exportParametersTypes.get(row);
- }
-}
Deleted: trunk/src/main/java/fr/ifremer/isisfish/ui/models/export/ExportParametersTableCellRenderer.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/models/export/ExportParametersTableCellRenderer.java 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/models/export/ExportParametersTableCellRenderer.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -1,83 +0,0 @@
-/*
- * #%L
- * IsisFish
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2010 Ifremer, Code Lutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-2.0.html>.
- * #L%
- */
-
-package fr.ifremer.isisfish.ui.models.export;
-
-import java.awt.Component;
-
-import javax.swing.JLabel;
-import javax.swing.JTable;
-import javax.swing.table.DefaultTableCellRenderer;
-import javax.swing.table.TableCellRenderer;
-
-import fr.ifremer.isisfish.datastore.ExportStorage;
-import fr.ifremer.isisfish.export.Export;
-import fr.ifremer.isisfish.ui.util.TooltipHelper;
-import fr.ifremer.isisfish.util.Doc;
-
-/**
- * Specific renderer for export parameters.
- *
- * @author chatellier
- * @version $Revision$
- *
- * Last update : $Date$
- * By : $Author$
- */
-public class ExportParametersTableCellRenderer extends DefaultTableCellRenderer
- implements TableCellRenderer {
-
- /** serialVersionUID. */
- private static final long serialVersionUID = -1655744662816030649L;
-
- protected Export export;
-
- public ExportParametersTableCellRenderer(Export export) {
- this.export = export;
- }
-
- /*
- * @see javax.swing.table.TableCellRenderer#getTableCellRendererComponent(javax.swing.JTable, java.lang.Object, boolean, boolean, int, int)
- */
- @Override
- public Component getTableCellRendererComponent(JTable table, Object value,
- boolean isSelected, boolean hasFocus, int row, int column) {
-
- // this must be used to have alterned highlight rows and default
- // selection color
- JLabel c = (JLabel) super.getTableCellRendererComponent(table, value,
- isSelected, hasFocus, row, column);
-
- String parameterName = (String) value;
- c.setText(parameterName);
-
- Doc doc = ExportStorage.getParameterDoc(export, parameterName);
- String documentation = TooltipHelper.docToString(doc);
- c.setToolTipText(documentation);
-
- return c;
- }
-
-}
Deleted: trunk/src/main/java/fr/ifremer/isisfish/ui/models/export/ExportParametersTableModel.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/models/export/ExportParametersTableModel.java 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/models/export/ExportParametersTableModel.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -1,201 +0,0 @@
-/*
- * #%L
- * IsisFish
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2010 Ifremer, Code Lutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-2.0.html>.
- * #L%
- */
-
-package fr.ifremer.isisfish.ui.models.export;
-
-import static org.nuiton.i18n.I18n._;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-import javax.swing.table.AbstractTableModel;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import fr.ifremer.isisfish.IsisFishException;
-import fr.ifremer.isisfish.datastore.ExportStorage;
-import fr.ifremer.isisfish.export.Export;
-
-/**
- * Model de la table de definition de parametre d'un export.
- *
- * Columns :
- * <li>Parameter name</li>
- * <li>Parameter value</li>
- *
- * @author chatellier
- * @version $Revision$
- *
- * Last update : $Date$
- * By : $Author$
- */
-public class ExportParametersTableModel extends AbstractTableModel {
-
- /** Log. */
- private static Log log = LogFactory
- .getLog(ExportParametersTableModel.class);
-
- /** serialVersionUID. */
- private static final long serialVersionUID = 3169786638868209920L;
-
- /** Columns names. */
- public final static String[] COLUMN_NAMES = { _("isisfish.common.name"),
- _("isisfish.common.value") };
-
- protected Export export;
-
- protected List<String> exportParametersNames;
-
- /**
- * Constructor with data.
- *
- * @param export export to edit parameters
- */
- public ExportParametersTableModel(Export export) {
- super();
- this.export = export;
-
- //TODO map may be sorted
- exportParametersNames = new ArrayList<String>();
- Map<String, Class<?>> planParametersNamesAndTypes = ExportStorage
- .getParameterNames(export);
- for (String names : planParametersNamesAndTypes.keySet()) {
- exportParametersNames.add(names);
- }
- }
-
- /*
- * @see javax.swing.table.TableModel#getColumnCount()
- */
- @Override
- public int getColumnCount() {
- return COLUMN_NAMES.length;
- }
-
- /*
- * @see javax.swing.table.TableModel#getRowCount()
- */
- @Override
- public int getRowCount() {
- return exportParametersNames.size();
- }
-
- /*
- * @see javax.swing.table.TableModel#getValueAt(int, int)
- */
- @Override
- public Object getValueAt(int rowIndex, int columnIndex) {
-
- Object result = null;
-
- String name = exportParametersNames.get(rowIndex);
- switch (columnIndex) {
- case 0:
- result = name;
- break;
- case 1:
- try {
- result = ExportStorage.getParameterValue(export, name);
- } catch (IsisFishException e) {
- if (log.isErrorEnabled()) {
- log.debug("Can't get parameters value", e);
- }
- }
- break;
- default:
- throw new IndexOutOfBoundsException("No such column " + columnIndex);
- }
-
- return result;
- }
-
- /*
- * @see javax.swing.table.TableModel#getColumnClass(int)
- */
- @Override
- public Class<?> getColumnClass(int columnIndex) {
-
- Class<?> result = null;
-
- switch (columnIndex) {
- case 0:
- result = String.class;
- break;
- case 1:
- result = Object.class;
- break;
- default:
- throw new IndexOutOfBoundsException("No such column " + columnIndex);
- }
-
- return result;
- }
-
- /*
- * @see javax.swing.table.TableModel#getColumnName(int)
- */
- @Override
- public String getColumnName(int columnIndex) {
- return COLUMN_NAMES[columnIndex];
- }
-
- /*
- * @see javax.swing.table.TableModel#isCellEditable(int, int)
- */
- @Override
- public boolean isCellEditable(int rowIndex, int columnIndex) {
- return columnIndex > 0;
- }
-
- /*
- * @see javax.swing.table.TableModel#setValueAt(java.lang.Object, int, int)
- */
- @Override
- public void setValueAt(Object value, int rowIndex, int columnIndex) {
-
- if (log.isDebugEnabled()) {
- log.debug("Cell edition (column " + columnIndex + ") = " + value);
- }
-
- String name = exportParametersNames.get(rowIndex);
- switch (columnIndex) {
- case 1:
- try {
- ExportStorage.setParameterValue(export, name, value);
- } catch (IsisFishException e) {
- if (log.isErrorEnabled()) {
- log.error("Can't set parameter value", e);
- }
- }
- break;
- default:
- throw new IndexOutOfBoundsException("Can't edit column "
- + columnIndex);
- }
-
- }
-}
Deleted: trunk/src/main/java/fr/ifremer/isisfish/ui/models/rule/RuleParametersTableCellEditor.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/models/rule/RuleParametersTableCellEditor.java 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/models/rule/RuleParametersTableCellEditor.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -1,77 +0,0 @@
-/*
- * #%L
- * IsisFish
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2010 Ifremer, Code Lutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-2.0.html>.
- * #L%
- */
-
-package fr.ifremer.isisfish.ui.models.rule;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-import fr.ifremer.isisfish.datastore.RuleStorage;
-import fr.ifremer.isisfish.rule.Rule;
-import fr.ifremer.isisfish.ui.widget.editor.ParameterTableCellEditor;
-
-/**
- * Specific editor for rule parameters.
- *
- * @author chatellier
- * @version $Revision$
- *
- * Last update : $Date$
- * By : $Author$
- */
-public class RuleParametersTableCellEditor extends ParameterTableCellEditor {
-
- /** serialVersionUID. */
- private static final long serialVersionUID = 8211639776194497615L;
-
- protected Rule rule;
-
- protected List<Class<?>> ruleParametersTypes;
-
- /**
- * Constructor with rule parameter.
- *
- * @param rule rule
- */
- public RuleParametersTableCellEditor(Rule rule) {
- this.rule = rule;
- ruleParametersTypes = new ArrayList<Class<?>>();
- //TODO map may be sorted
- Map<String, Class<?>> ruleParametersNamesAndTypes = RuleStorage
- .getParameterNames(rule);
- for (Class<?> type : ruleParametersNamesAndTypes.values()) {
- ruleParametersTypes.add(type);
- }
- }
-
- /*
- * @see fr.ifremer.isisfish.ui.widget.editor.ParameterTableCellEditor#getType(java.lang.Object, int, int)
- */
- @Override
- protected Class<?> getType(Object value, int row, int column) {
- return ruleParametersTypes.get(row);
- }
-}
Deleted: trunk/src/main/java/fr/ifremer/isisfish/ui/models/rule/RuleParametersTableCellRenderer.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/models/rule/RuleParametersTableCellRenderer.java 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/models/rule/RuleParametersTableCellRenderer.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -1,80 +0,0 @@
-/*
- * #%L
- * IsisFish
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-2.0.html>.
- * #L%
- */
-
-package fr.ifremer.isisfish.ui.models.rule;
-
-import java.awt.Component;
-
-import javax.swing.JLabel;
-import javax.swing.JTable;
-import javax.swing.table.DefaultTableCellRenderer;
-
-import fr.ifremer.isisfish.datastore.RuleStorage;
-import fr.ifremer.isisfish.rule.Rule;
-import fr.ifremer.isisfish.ui.util.TooltipHelper;
-import fr.ifremer.isisfish.util.Doc;
-
-/**
- * Specific editor for rule parameters.
- *
- * @author chatellier
- * @version $Revision$
- *
- * Last update : $Date$
- * By : $Author$
- */
-public class RuleParametersTableCellRenderer extends DefaultTableCellRenderer {
-
- /** serialVersionUID. */
- private static final long serialVersionUID = -1655744662816030649L;
-
- protected Rule rule;
-
- public RuleParametersTableCellRenderer(Rule rule) {
- this.rule = rule;
-
- }
-
- /*
- * @see javax.swing.table.TableCellRenderer#getTableCellRendererComponent(javax.swing.JTable, java.lang.Object, boolean, boolean, int, int)
- */
- @Override
- public Component getTableCellRendererComponent(JTable table, Object value,
- boolean isSelected, boolean hasFocus, int row, int column) {
-
- JLabel c = (JLabel) super.getTableCellRendererComponent(table, value,
- isSelected, hasFocus, row, column);
-
- String parameterName = (String) value;
- c.setText(parameterName);
-
- Doc doc = RuleStorage.getParameterDoc(rule, parameterName);
- String documentation = TooltipHelper.docToString(doc);
- c.setToolTipText(documentation);
-
- return c;
- }
-
-}
Deleted: trunk/src/main/java/fr/ifremer/isisfish/ui/models/rule/RuleParametersTableModel.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/models/rule/RuleParametersTableModel.java 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/models/rule/RuleParametersTableModel.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -1,230 +0,0 @@
-/*
- * #%L
- * IsisFish
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-2.0.html>.
- * #L%
- */
-
-package fr.ifremer.isisfish.ui.models.rule;
-
-import static org.nuiton.i18n.I18n._;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-import javax.swing.table.AbstractTableModel;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import fr.ifremer.isisfish.IsisFishException;
-import fr.ifremer.isisfish.datastore.RuleStorage;
-import fr.ifremer.isisfish.rule.Rule;
-
-/**
- * Model de la table de definition de parametre d'une regle.
- *
- * Columns :
- * <li>Parameter name</li>
- * <li>Parameter value</li>
- * <li>Parameter factor (if enabled)</li>
- *
- * @author chatellier
- * @version $Revision$
- *
- * Last update : $Date$
- * By : $Author$
- */
-public class RuleParametersTableModel extends AbstractTableModel {
-
- /** Log. */
- private static Log log = LogFactory.getLog(RuleParametersTableModel.class);
-
- /** serialVersionUID. */
- private static final long serialVersionUID = 3169786638868209920L;
-
- /** Columns names. */
- public final static String[] COLUMN_NAMES = {
- _("isisfish.common.name"),
- _("isisfish.common.value"),
- _("isisfish.common.ellipsis")};
-
- protected Rule rule;
-
- protected List<String> ruleParametersNames;
-
- /** If {@code true} display optional. */
- protected boolean showFactorColumn;
-
- public void setShowFactorColumn(boolean showFactorColumn) {
- this.showFactorColumn = showFactorColumn;
- fireTableStructureChanged();
- }
-
- /**
- * Set new rule, and fire changed event.
- *
- * @param rule
- */
- public void setRule(Rule rule) {
- this.rule = rule;
- //TODO map may be sorted
- ruleParametersNames = new ArrayList<String>();
- if (rule != null) {
- Map<String, Class<?>> ruleParametersNamesAndTypes = RuleStorage
- .getParameterNames(rule);
- for (String names : ruleParametersNamesAndTypes.keySet()) {
- ruleParametersNames.add(names);
- }
- }
- fireTableDataChanged();
- }
-
- /*
- * @see javax.swing.table.TableModel#getColumnCount()
- */
- @Override
- public int getColumnCount() {
- int result = 2;
- if (showFactorColumn) {
- result = 3;
- }
- return result;
- }
-
- /*
- * @see javax.swing.table.TableModel#getRowCount()
- */
- @Override
- public int getRowCount() {
- int result = 0;
- if (ruleParametersNames != null) {
- result = ruleParametersNames.size();
- }
- return result;
- }
-
- /*
- * @see javax.swing.table.TableModel#getValueAt(int, int)
- */
- @Override
- public Object getValueAt(int rowIndex, int columnIndex) {
-
- Object result = null;
-
- String name = ruleParametersNames.get(rowIndex);
- switch (columnIndex) {
- case 0:
- result = name;
- break;
- case 1:
- try {
- result = RuleStorage.getParameterValue(rule, name);
- } catch (IsisFishException e) {
- if (log.isErrorEnabled()) {
- log.debug("Can't get parameters value", e);
- }
- }
- break;
- case 2:
- result = name;
- break;
- default:
- throw new IndexOutOfBoundsException("No such column " + columnIndex);
- }
-
- return result;
- }
-
- /*
- * @see javax.swing.table.TableModel#getColumnClass(int)
- */
- @Override
- public Class<?> getColumnClass(int columnIndex) {
-
- Class<?> result = null;
-
- switch (columnIndex) {
- case 0:
- result = String.class;
- break;
- case 1:
- result = Object.class;
- break;
- case 2:
- result = String.class;
- break;
- default:
- throw new IndexOutOfBoundsException("No such column " + columnIndex);
- }
-
- return result;
- }
-
- /*
- * @see javax.swing.table.TableModel#getColumnName(int)
- */
- @Override
- public String getColumnName(int columnIndex) {
- return COLUMN_NAMES[columnIndex];
- }
-
- /*
- * @see javax.swing.table.TableModel#isCellEditable(int, int)
- */
- @Override
- public boolean isCellEditable(int rowIndex, int columnIndex) {
- return columnIndex > 0;
- }
-
- /*
- * @see javax.swing.table.TableModel#setValueAt(java.lang.Object, int, int)
- */
- @Override
- public void setValueAt(Object value, int rowIndex, int columnIndex) {
-
- if (log.isDebugEnabled()) {
- log.debug("Cell edition (column " + columnIndex + ") = " + value);
- }
-
- String name = ruleParametersNames.get(rowIndex);
- switch (columnIndex) {
- case 1:
- try {
- RuleStorage.setParameterValue(rule, name, value);
- } catch (IsisFishException e) {
- if (log.isErrorEnabled()) {
- log.error("Can't set parameter value", e);
- }
- }
- break;
- case 2:
- // appelé parce qu'on ne peut pas l'empecher
- // pour la colonne Action,
- break;
- default:
- throw new IndexOutOfBoundsException("Can't edit column "
- + columnIndex);
- }
-
- }
-}
Deleted: trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityanalysis/SensitivityAnalysisParametersTableCellEditor.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityanalysis/SensitivityAnalysisParametersTableCellEditor.java 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityanalysis/SensitivityAnalysisParametersTableCellEditor.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -1,78 +0,0 @@
-/*
- * #%L
- * IsisFish
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-2.0.html>.
- * #L%
- */
-
-package fr.ifremer.isisfish.ui.models.sensitivityanalysis;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-import fr.ifremer.isisfish.datastore.SensitivityAnalysisStorage;
-import fr.ifremer.isisfish.simulator.sensitivity.SensitivityAnalysis;
-import fr.ifremer.isisfish.ui.widget.editor.ParameterTableCellEditor;
-
-/**
- * Specific editor for rule parameters.
- *
- * @author chatellier
- * @version $Revision$
- *
- * Last update : $Date$
- * By : $Author$
- */
-public class SensitivityAnalysisParametersTableCellEditor extends
- ParameterTableCellEditor {
-
- /** serialVersionUID. */
- private static final long serialVersionUID = 8211639776194497615L;
-
- protected SensitivityAnalysis sensitivityAnalysis;
-
- protected List<Class<?>> sensitivityCalculatorParametersTypes;
-
- /**
- * Constructor with calculator parameter.
- *
- * @param sensitivityAnalysis plan
- */
- public SensitivityAnalysisParametersTableCellEditor(SensitivityAnalysis sensitivityAnalysis) {
- this.sensitivityAnalysis = sensitivityAnalysis;
- sensitivityCalculatorParametersTypes = new ArrayList<Class<?>>();
- //TODO map may be sorted
- Map<String, Class<?>> planParametersNamesAndTypes = SensitivityAnalysisStorage
- .getParameterNames(sensitivityAnalysis);
- for (Class<?> type : planParametersNamesAndTypes.values()) {
- sensitivityCalculatorParametersTypes.add(type);
- }
- }
-
- /*
- * @see fr.ifremer.isisfish.ui.widget.editor.ParameterTableCellEditor#getType(java.lang.Object, int, int)
- */
- @Override
- protected Class<?> getType(Object value, int row, int column) {
- return sensitivityCalculatorParametersTypes.get(row);
- }
-}
Deleted: trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityanalysis/SensitivityAnalysisParametersTableCellRenderer.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityanalysis/SensitivityAnalysisParametersTableCellRenderer.java 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityanalysis/SensitivityAnalysisParametersTableCellRenderer.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -1,83 +0,0 @@
-/*
- * #%L
- * IsisFish
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2010 Ifremer, Code Lutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-2.0.html>.
- * #L%
- */
-
-package fr.ifremer.isisfish.ui.models.sensitivityanalysis;
-
-import java.awt.Component;
-
-import javax.swing.JLabel;
-import javax.swing.JTable;
-import javax.swing.table.DefaultTableCellRenderer;
-import javax.swing.table.TableCellRenderer;
-
-import fr.ifremer.isisfish.datastore.SensitivityAnalysisStorage;
-import fr.ifremer.isisfish.simulator.sensitivity.SensitivityAnalysis;
-import fr.ifremer.isisfish.ui.util.TooltipHelper;
-import fr.ifremer.isisfish.util.Doc;
-
-/**
- * Specific renderer for calculator parameters.
- *
- * @author chatellier
- * @version $Revision$
- *
- * Last update : $Date$
- * By : $Author$
- */
-public class SensitivityAnalysisParametersTableCellRenderer extends
- DefaultTableCellRenderer implements TableCellRenderer {
-
- /** serialVersionUID. */
- private static final long serialVersionUID = -1655744662816030649L;
-
- protected SensitivityAnalysis sensitivityAnalysis;
-
- public SensitivityAnalysisParametersTableCellRenderer(SensitivityAnalysis sensitivityAnalysis) {
- this.sensitivityAnalysis = sensitivityAnalysis;
- }
-
- /*
- * @see javax.swing.table.TableCellRenderer#getTableCellRendererComponent(javax.swing.JTable, java.lang.Object, boolean, boolean, int, int)
- */
- @Override
- public Component getTableCellRendererComponent(JTable table, Object value,
- boolean isSelected, boolean hasFocus, int row, int column) {
-
- // this must be used to have alterned highlight rows and default
- // selection color
- JLabel c = (JLabel) super.getTableCellRendererComponent(table, value,
- isSelected, hasFocus, row, column);
-
- String parameterName = (String) value;
- c.setText(parameterName);
-
- Doc doc = SensitivityAnalysisStorage.getParameterDoc(sensitivityAnalysis, parameterName);
- String documentation = TooltipHelper.docToString(doc);
- c.setToolTipText(documentation);
-
- return c;
- }
-
-}
Deleted: trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityanalysis/SensitivityAnalysisParametersTableModel.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityanalysis/SensitivityAnalysisParametersTableModel.java 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityanalysis/SensitivityAnalysisParametersTableModel.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -1,200 +0,0 @@
-/*
- * #%L
- * IsisFish
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2010 Ifremer, Code Lutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-2.0.html>.
- * #L%
- */
-
-package fr.ifremer.isisfish.ui.models.sensitivityanalysis;
-
-import static org.nuiton.i18n.I18n._;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-import javax.swing.table.AbstractTableModel;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import fr.ifremer.isisfish.IsisFishException;
-import fr.ifremer.isisfish.datastore.SensitivityAnalysisStorage;
-import fr.ifremer.isisfish.simulator.sensitivity.SensitivityAnalysis;
-
-/**
- * Model de la table de definition de parametre d'un plan d'analyse.
- *
- * Columns :
- * <li>Parameter name</li>
- * <li>Parameter value</li>
- *
- * @author chatellier
- * @version $Revision$
- *
- * Last update : $Date$
- * By : $Author$
- */
-public class SensitivityAnalysisParametersTableModel extends AbstractTableModel {
-
- /** Log. */
- private static Log log = LogFactory
- .getLog(SensitivityAnalysisParametersTableModel.class);
-
- /** serialVersionUID. */
- private static final long serialVersionUID = 3169786638868209920L;
-
- /** Columns names. */
- public final static String[] COLUMN_NAMES = { _("isisfish.common.name"),
- _("isisfish.common.value") };
-
- protected SensitivityAnalysis sensitivityAnalysis;
-
- protected List<String> planParametersNames;
-
- /**
- * Constructor with data.
- *
- * @param sensitivityAnalysis plan to edit parameters
- */
- public SensitivityAnalysisParametersTableModel(SensitivityAnalysis sensitivityAnalysis) {
- this.sensitivityAnalysis = sensitivityAnalysis;
-
- //TODO map may be sorted
- planParametersNames = new ArrayList<String>();
- Map<String, Class<?>> planParametersNamesAndTypes = SensitivityAnalysisStorage
- .getParameterNames(sensitivityAnalysis);
- for (String names : planParametersNamesAndTypes.keySet()) {
- planParametersNames.add(names);
- }
- }
-
- /*
- * @see javax.swing.table.TableModel#getColumnCount()
- */
- @Override
- public int getColumnCount() {
- return COLUMN_NAMES.length;
- }
-
- /*
- * @see javax.swing.table.TableModel#getRowCount()
- */
- @Override
- public int getRowCount() {
- return planParametersNames.size();
- }
-
- /*
- * @see javax.swing.table.TableModel#getValueAt(int, int)
- */
- @Override
- public Object getValueAt(int rowIndex, int columnIndex) {
-
- Object result = null;
-
- String name = planParametersNames.get(rowIndex);
- switch (columnIndex) {
- case 0:
- result = name;
- break;
- case 1:
- try {
- result = SensitivityAnalysisStorage.getParameterValue(sensitivityAnalysis, name);
- } catch (IsisFishException e) {
- if (log.isErrorEnabled()) {
- log.debug("Can't get parameters value", e);
- }
- }
- break;
- default:
- throw new IndexOutOfBoundsException("No such column " + columnIndex);
- }
-
- return result;
- }
-
- /*
- * @see javax.swing.table.TableModel#getColumnClass(int)
- */
- @Override
- public Class<?> getColumnClass(int columnIndex) {
-
- Class<?> result = null;
-
- switch (columnIndex) {
- case 0:
- result = String.class;
- break;
- case 1:
- result = Object.class;
- break;
- default:
- throw new IndexOutOfBoundsException("No such column " + columnIndex);
- }
-
- return result;
- }
-
- /*
- * @see javax.swing.table.TableModel#getColumnName(int)
- */
- @Override
- public String getColumnName(int columnIndex) {
- return COLUMN_NAMES[columnIndex];
- }
-
- /*
- * @see javax.swing.table.TableModel#isCellEditable(int, int)
- */
- @Override
- public boolean isCellEditable(int rowIndex, int columnIndex) {
- return columnIndex > 0;
- }
-
- /*
- * @see javax.swing.table.TableModel#setValueAt(java.lang.Object, int, int)
- */
- @Override
- public void setValueAt(Object value, int rowIndex, int columnIndex) {
-
- if (log.isDebugEnabled()) {
- log.debug("Cell edition (column " + columnIndex + ") = " + value);
- }
-
- String name = planParametersNames.get(rowIndex);
- switch (columnIndex) {
- case 1:
- try {
- SensitivityAnalysisStorage.setParameterValue(sensitivityAnalysis, name, value);
- } catch (IsisFishException e) {
- if (log.isErrorEnabled()) {
- log.error("Can't set parameter value", e);
- }
- }
- break;
- default:
- throw new IndexOutOfBoundsException("Can't edit column "
- + columnIndex);
- }
-
- }
-}
Deleted: trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityexport/SensitivityExportParametersTableCellEditor.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityexport/SensitivityExportParametersTableCellEditor.java 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityexport/SensitivityExportParametersTableCellEditor.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -1,79 +0,0 @@
-/*
- * #%L
- * IsisFish
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2010 Ifremer, Code Lutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-2.0.html>.
- * #L%
- */
-
-package fr.ifremer.isisfish.ui.models.sensitivityexport;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-import fr.ifremer.isisfish.datastore.SensitivityExportStorage;
-import fr.ifremer.isisfish.export.SensitivityExport;
-import fr.ifremer.isisfish.ui.widget.editor.ParameterTableCellEditor;
-
-/**
- * Specific editor for export parameters.
- *
- * @author chatellier
- * @version $Revision$
- *
- * Last update : $Date$
- * By : $Author: chatellier $
- */
-public class SensitivityExportParametersTableCellEditor extends ParameterTableCellEditor {
-
- /** serialVersionUID. */
- private static final long serialVersionUID = 8211639776194497615L;
-
- protected SensitivityExport export;
-
- protected List<Class<?>> exportParametersTypes;
-
- /**
- * Constructor with export parameter.
- *
- * @param export export
- */
- public SensitivityExportParametersTableCellEditor(SensitivityExport export) {
- super();
-
- this.export = export;
- exportParametersTypes = new ArrayList<Class<?>>();
- //TODO map may be sorted
- Map<String, Class<?>> planParametersNamesAndTypes = SensitivityExportStorage
- .getParameterNames(export);
- for (Class<?> type : planParametersNamesAndTypes.values()) {
- exportParametersTypes.add(type);
- }
- }
-
- /*
- * @see fr.ifremer.isisfish.ui.widget.editor.ParameterTableCellEditor#getType(java.lang.Object, int, int)
- */
- @Override
- protected Class<?> getType(Object value, int row, int column) {
- return exportParametersTypes.get(row);
- }
-}
Deleted: trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityexport/SensitivityExportParametersTableCellRenderer.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityexport/SensitivityExportParametersTableCellRenderer.java 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityexport/SensitivityExportParametersTableCellRenderer.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -1,83 +0,0 @@
-/*
- * #%L
- * IsisFish
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2010 Ifremer, Code Lutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-2.0.html>.
- * #L%
- */
-
-package fr.ifremer.isisfish.ui.models.sensitivityexport;
-
-import java.awt.Component;
-
-import javax.swing.JLabel;
-import javax.swing.JTable;
-import javax.swing.table.DefaultTableCellRenderer;
-import javax.swing.table.TableCellRenderer;
-
-import fr.ifremer.isisfish.datastore.SensitivityExportStorage;
-import fr.ifremer.isisfish.export.SensitivityExport;
-import fr.ifremer.isisfish.ui.util.TooltipHelper;
-import fr.ifremer.isisfish.util.Doc;
-
-/**
- * Specific renderer for export parameters.
- *
- * @author chatellier
- * @version $Revision$
- *
- * Last update : $Date$
- * By : $Author: chatellier $
- */
-public class SensitivityExportParametersTableCellRenderer extends DefaultTableCellRenderer
- implements TableCellRenderer {
-
- /** serialVersionUID. */
- private static final long serialVersionUID = -1655744662816030649L;
-
- protected SensitivityExport export;
-
- public SensitivityExportParametersTableCellRenderer(SensitivityExport export) {
- this.export = export;
- }
-
- /*
- * @see javax.swing.table.TableCellRenderer#getTableCellRendererComponent(javax.swing.JTable, java.lang.Object, boolean, boolean, int, int)
- */
- @Override
- public Component getTableCellRendererComponent(JTable table, Object value,
- boolean isSelected, boolean hasFocus, int row, int column) {
-
- // this must be used to have alterned highlight rows and default
- // selection color
- JLabel c = (JLabel) super.getTableCellRendererComponent(table, value,
- isSelected, hasFocus, row, column);
-
- String parameterName = (String) value;
- c.setText(parameterName);
-
- Doc doc = SensitivityExportStorage.getParameterDoc(export, parameterName);
- String documentation = TooltipHelper.docToString(doc);
- c.setToolTipText(documentation);
-
- return c;
- }
-
-}
Deleted: trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityexport/SensitivityExportParametersTableModel.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityexport/SensitivityExportParametersTableModel.java 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/models/sensitivityexport/SensitivityExportParametersTableModel.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -1,201 +0,0 @@
-/*
- * #%L
- * IsisFish
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2010 Ifremer, Code Lutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-2.0.html>.
- * #L%
- */
-
-package fr.ifremer.isisfish.ui.models.sensitivityexport;
-
-import static org.nuiton.i18n.I18n._;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-import javax.swing.table.AbstractTableModel;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import fr.ifremer.isisfish.IsisFishException;
-import fr.ifremer.isisfish.datastore.SensitivityExportStorage;
-import fr.ifremer.isisfish.export.SensitivityExport;
-
-/**
- * Model de la table de definition de parametre d'un export.
- *
- * Columns :
- * <li>Parameter name</li>
- * <li>Parameter value</li>
- *
- * @author chatellier
- * @version $Revision$
- *
- * Last update : $Date$
- * By : $Author: chatellier $
- */
-public class SensitivityExportParametersTableModel extends AbstractTableModel {
-
- /** Log. */
- private static Log log = LogFactory
- .getLog(SensitivityExportParametersTableModel.class);
-
- /** serialVersionUID. */
- private static final long serialVersionUID = 3169786638868209920L;
-
- /** Columns names. */
- public final static String[] COLUMN_NAMES = { _("isisfish.common.name"),
- _("isisfish.common.value") };
-
- protected SensitivityExport export;
-
- protected List<String> exportParametersNames;
-
- /**
- * Constructor with data.
- *
- * @param export export to edit parameters
- */
- public SensitivityExportParametersTableModel(SensitivityExport export) {
- super();
- this.export = export;
-
- //TODO map may be sorted
- exportParametersNames = new ArrayList<String>();
- Map<String, Class<?>> planParametersNamesAndTypes = SensitivityExportStorage
- .getParameterNames(export);
- for (String names : planParametersNamesAndTypes.keySet()) {
- exportParametersNames.add(names);
- }
- }
-
- /*
- * @see javax.swing.table.TableModel#getColumnCount()
- */
- @Override
- public int getColumnCount() {
- return COLUMN_NAMES.length;
- }
-
- /*
- * @see javax.swing.table.TableModel#getRowCount()
- */
- @Override
- public int getRowCount() {
- return exportParametersNames.size();
- }
-
- /*
- * @see javax.swing.table.TableModel#getValueAt(int, int)
- */
- @Override
- public Object getValueAt(int rowIndex, int columnIndex) {
-
- Object result = null;
-
- String name = exportParametersNames.get(rowIndex);
- switch (columnIndex) {
- case 0:
- result = name;
- break;
- case 1:
- try {
- result = SensitivityExportStorage.getParameterValue(export, name);
- } catch (IsisFishException e) {
- if (log.isErrorEnabled()) {
- log.debug("Can't get parameters value", e);
- }
- }
- break;
- default:
- throw new IndexOutOfBoundsException("No such column " + columnIndex);
- }
-
- return result;
- }
-
- /*
- * @see javax.swing.table.TableModel#getColumnClass(int)
- */
- @Override
- public Class<?> getColumnClass(int columnIndex) {
-
- Class<?> result = null;
-
- switch (columnIndex) {
- case 0:
- result = String.class;
- break;
- case 1:
- result = Object.class;
- break;
- default:
- throw new IndexOutOfBoundsException("No such column " + columnIndex);
- }
-
- return result;
- }
-
- /*
- * @see javax.swing.table.TableModel#getColumnName(int)
- */
- @Override
- public String getColumnName(int columnIndex) {
- return COLUMN_NAMES[columnIndex];
- }
-
- /*
- * @see javax.swing.table.TableModel#isCellEditable(int, int)
- */
- @Override
- public boolean isCellEditable(int rowIndex, int columnIndex) {
- return columnIndex > 0;
- }
-
- /*
- * @see javax.swing.table.TableModel#setValueAt(java.lang.Object, int, int)
- */
- @Override
- public void setValueAt(Object value, int rowIndex, int columnIndex) {
-
- if (log.isDebugEnabled()) {
- log.debug("Cell edition (column " + columnIndex + ") = " + value);
- }
-
- String name = exportParametersNames.get(rowIndex);
- switch (columnIndex) {
- case 1:
- try {
- SensitivityExportStorage.setParameterValue(export, name, value);
- } catch (IsisFishException e) {
- if (log.isErrorEnabled()) {
- log.error("Can't set parameter value", e);
- }
- }
- break;
- default:
- throw new IndexOutOfBoundsException("Can't edit column "
- + columnIndex);
- }
-
- }
-}
Deleted: trunk/src/main/java/fr/ifremer/isisfish/ui/models/simulationplan/SimulationPlanParametersTableCellEditor.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/models/simulationplan/SimulationPlanParametersTableCellEditor.java 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/models/simulationplan/SimulationPlanParametersTableCellEditor.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -1,78 +0,0 @@
-/*
- * #%L
- * IsisFish
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-2.0.html>.
- * #L%
- */
-
-package fr.ifremer.isisfish.ui.models.simulationplan;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-import fr.ifremer.isisfish.datastore.SimulationPlanStorage;
-import fr.ifremer.isisfish.simulator.SimulationPlan;
-import fr.ifremer.isisfish.ui.widget.editor.ParameterTableCellEditor;
-
-/**
- * Specific editor for rule parameters.
- *
- * @author chatellier
- * @version $Revision$
- *
- * Last update : $Date$
- * By : $Author$
- */
-public class SimulationPlanParametersTableCellEditor extends
- ParameterTableCellEditor {
-
- /** serialVersionUID. */
- private static final long serialVersionUID = 8211639776194497615L;
-
- protected SimulationPlan plan;
-
- protected List<Class<?>> planParametersTypes;
-
- /**
- * Constructor with rule parameter.
- *
- * @param plan plan
- */
- public SimulationPlanParametersTableCellEditor(SimulationPlan plan) {
- this.plan = plan;
- planParametersTypes = new ArrayList<Class<?>>();
- //TODO map may be sorted
- Map<String, Class<?>> planParametersNamesAndTypes = SimulationPlanStorage
- .getParameterNames(plan);
- for (Class<?> type : planParametersNamesAndTypes.values()) {
- planParametersTypes.add(type);
- }
- }
-
- /*
- * @see fr.ifremer.isisfish.ui.widget.editor.ParameterTableCellEditor#getType(java.lang.Object, int, int)
- */
- @Override
- protected Class<?> getType(Object value, int row, int column) {
- return planParametersTypes.get(row);
- }
-}
Deleted: trunk/src/main/java/fr/ifremer/isisfish/ui/models/simulationplan/SimulationPlanParametersTableCellRenderer.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/models/simulationplan/SimulationPlanParametersTableCellRenderer.java 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/models/simulationplan/SimulationPlanParametersTableCellRenderer.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -1,83 +0,0 @@
-/*
- * #%L
- * IsisFish
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-2.0.html>.
- * #L%
- */
-
-package fr.ifremer.isisfish.ui.models.simulationplan;
-
-import java.awt.Component;
-
-import javax.swing.JLabel;
-import javax.swing.JTable;
-import javax.swing.table.DefaultTableCellRenderer;
-import javax.swing.table.TableCellRenderer;
-
-import fr.ifremer.isisfish.datastore.SimulationPlanStorage;
-import fr.ifremer.isisfish.simulator.SimulationPlan;
-import fr.ifremer.isisfish.ui.util.TooltipHelper;
-import fr.ifremer.isisfish.util.Doc;
-
-/**
- * Specific renderer for plan parameters.
- *
- * @author chatellier
- * @version $Revision$
- *
- * Last update : $Date$
- * By : $Author$
- */
-public class SimulationPlanParametersTableCellRenderer extends
- DefaultTableCellRenderer implements TableCellRenderer {
-
- /** serialVersionUID. */
- private static final long serialVersionUID = -1655744662816030649L;
-
- protected SimulationPlan plan;
-
- public SimulationPlanParametersTableCellRenderer(SimulationPlan plan) {
- this.plan = plan;
- }
-
- /*
- * @see javax.swing.table.TableCellRenderer#getTableCellRendererComponent(javax.swing.JTable, java.lang.Object, boolean, boolean, int, int)
- */
- @Override
- public Component getTableCellRendererComponent(JTable table, Object value,
- boolean isSelected, boolean hasFocus, int row, int column) {
-
- // this must be used to have alterned highlight rows and default
- // selection color
- JLabel c = (JLabel) super.getTableCellRendererComponent(table, value,
- isSelected, hasFocus, row, column);
-
- String parameterName = (String) value;
- c.setText(parameterName);
-
- Doc doc = SimulationPlanStorage.getParameterDoc(plan, parameterName);
- String documentation = TooltipHelper.docToString(doc);
- c.setToolTipText(documentation);
-
- return c;
- }
-
-}
Deleted: trunk/src/main/java/fr/ifremer/isisfish/ui/models/simulationplan/SimulationPlanParametersTableModel.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/models/simulationplan/SimulationPlanParametersTableModel.java 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/models/simulationplan/SimulationPlanParametersTableModel.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -1,200 +0,0 @@
-/*
- * #%L
- * IsisFish
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-2.0.html>.
- * #L%
- */
-
-package fr.ifremer.isisfish.ui.models.simulationplan;
-
-import static org.nuiton.i18n.I18n._;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-import javax.swing.table.AbstractTableModel;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import fr.ifremer.isisfish.IsisFishException;
-import fr.ifremer.isisfish.datastore.SimulationPlanStorage;
-import fr.ifremer.isisfish.simulator.SimulationPlan;
-
-/**
- * Model de la table de definition de parametre d'un plan de simulation.
- *
- * Columns :
- * <li>Parameter name</li>
- * <li>Parameter value</li>
- *
- * @author chatellier
- * @version $Revision$
- *
- * Last update : $Date$
- * By : $Author$
- */
-public class SimulationPlanParametersTableModel extends AbstractTableModel {
-
- /** Log. */
- private static Log log = LogFactory
- .getLog(SimulationPlanParametersTableModel.class);
-
- /** serialVersionUID. */
- private static final long serialVersionUID = 3169786638868209920L;
-
- /** Columns names. */
- public final static String[] COLUMN_NAMES = { _("isisfish.common.name"),
- _("isisfish.common.value") };
-
- protected SimulationPlan plan;
-
- protected List<String> planParametersNames;
-
- /**
- * Constructor with data.
- *
- * @param plan plan to edit parameters
- */
- public SimulationPlanParametersTableModel(SimulationPlan plan) {
- this.plan = plan;
-
- //TODO map may be sorted
- planParametersNames = new ArrayList<String>();
- Map<String, Class<?>> planParametersNamesAndTypes = SimulationPlanStorage
- .getParameterNames(plan);
- for (String names : planParametersNamesAndTypes.keySet()) {
- planParametersNames.add(names);
- }
- }
-
- /*
- * @see javax.swing.table.TableModel#getColumnCount()
- */
- @Override
- public int getColumnCount() {
- return COLUMN_NAMES.length;
- }
-
- /*
- * @see javax.swing.table.TableModel#getRowCount()
- */
- @Override
- public int getRowCount() {
- return planParametersNames.size();
- }
-
- /*
- * @see javax.swing.table.TableModel#getValueAt(int, int)
- */
- @Override
- public Object getValueAt(int rowIndex, int columnIndex) {
-
- Object result = null;
-
- String name = planParametersNames.get(rowIndex);
- switch (columnIndex) {
- case 0:
- result = name;
- break;
- case 1:
- try {
- result = SimulationPlanStorage.getParameterValue(plan, name);
- } catch (IsisFishException e) {
- if (log.isErrorEnabled()) {
- log.debug("Can't get parameters value", e);
- }
- }
- break;
- default:
- throw new IndexOutOfBoundsException("No such column " + columnIndex);
- }
-
- return result;
- }
-
- /*
- * @see javax.swing.table.TableModel#getColumnClass(int)
- */
- @Override
- public Class<?> getColumnClass(int columnIndex) {
-
- Class<?> result = null;
-
- switch (columnIndex) {
- case 0:
- result = String.class;
- break;
- case 1:
- result = Object.class;
- break;
- default:
- throw new IndexOutOfBoundsException("No such column " + columnIndex);
- }
-
- return result;
- }
-
- /*
- * @see javax.swing.table.TableModel#getColumnName(int)
- */
- @Override
- public String getColumnName(int columnIndex) {
- return COLUMN_NAMES[columnIndex];
- }
-
- /*
- * @see javax.swing.table.TableModel#isCellEditable(int, int)
- */
- @Override
- public boolean isCellEditable(int rowIndex, int columnIndex) {
- return columnIndex > 0;
- }
-
- /*
- * @see javax.swing.table.TableModel#setValueAt(java.lang.Object, int, int)
- */
- @Override
- public void setValueAt(Object value, int rowIndex, int columnIndex) {
-
- if (log.isDebugEnabled()) {
- log.debug("Cell edition (column " + columnIndex + ") = " + value);
- }
-
- String name = planParametersNames.get(rowIndex);
- switch (columnIndex) {
- case 1:
- try {
- SimulationPlanStorage.setParameterValue(plan, name, value);
- } catch (IsisFishException e) {
- if (log.isErrorEnabled()) {
- log.error("Can't set parameter value", e);
- }
- }
- break;
- default:
- throw new IndexOutOfBoundsException("Can't edit column "
- + columnIndex);
- }
-
- }
-}
Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityChooserUI.jaxx
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityChooserUI.jaxx 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityChooserUI.jaxx 2011-11-08 14:11:46 UTC (rev 3523)
@@ -37,16 +37,13 @@
fr.ifremer.isisfish.ui.models.sensitivityexport.SensitivityExportListModel
fr.ifremer.isisfish.ui.models.sensitivityexport.SensitivityExportListRenderer
fr.ifremer.isisfish.ui.models.sensitivityexport.SensitivityExportNameListRenderer
- fr.ifremer.isisfish.ui.models.sensitivityexport.SensitivityExportParametersTableCellEditor
- fr.ifremer.isisfish.ui.models.sensitivityexport.SensitivityExportParametersTableCellRenderer
- fr.ifremer.isisfish.ui.models.sensitivityexport.SensitivityExportParametersTableModel
fr.ifremer.isisfish.ui.models.sensitivityanalysis.SensitivityAnalysisComboModel
fr.ifremer.isisfish.ui.models.sensitivityanalysis.SensitivityAnalysisComboRenderer
fr.ifremer.isisfish.ui.models.sensitivityanalysis.SensitivityAnalysisListModel
fr.ifremer.isisfish.ui.models.sensitivityanalysis.SensitivityAnalysisListRenderer
- fr.ifremer.isisfish.ui.models.sensitivityanalysis.SensitivityAnalysisParametersTableCellEditor
- fr.ifremer.isisfish.ui.models.sensitivityanalysis.SensitivityAnalysisParametersTableCellRenderer
- fr.ifremer.isisfish.ui.models.sensitivityanalysis.SensitivityAnalysisParametersTableModel
+ fr.ifremer.isisfish.ui.models.common.ScriptParametersTableCellEditor
+ fr.ifremer.isisfish.ui.models.common.ScriptParametersTableCellRenderer
+ fr.ifremer.isisfish.ui.models.common.ScriptParametersTableModel
fr.ifremer.isisfish.ui.sensitivity.model.FactorCardinalityTableModel
fr.ifremer.isisfish.ui.simulator.SimulAction
</import>
@@ -106,10 +103,10 @@
}
// update model
- SensitivityAnalysisParametersTableModel parametersTableModel = new SensitivityAnalysisParametersTableModel(sensitivityAnalysis);
+ ScriptParametersTableModel parametersTableModel = new ScriptParametersTableModel(sensitivityAnalysis);
simulSensitivityAnalysisParam.setModel(parametersTableModel);
- simulSensitivityAnalysisParam.getColumnModel().getColumn(0).setCellRenderer(new SensitivityAnalysisParametersTableCellRenderer(sensitivityAnalysis));
- simulSensitivityAnalysisParam.getColumnModel().getColumn(1).setCellEditor(new SensitivityAnalysisParametersTableCellEditor(sensitivityAnalysis));
+ simulSensitivityAnalysisParam.getColumnModel().getColumn(0).setCellRenderer(new ScriptParametersTableCellRenderer(sensitivityAnalysis));
+ simulSensitivityAnalysisParam.getColumnModel().getColumn(1).setCellEditor(new ScriptParametersTableCellEditor(sensitivityAnalysis));
}
}
@@ -142,7 +139,7 @@
protected void addExports() {
Object[] exportNames = (Object[])availableSensitivityExports.getSelectedValues();
for (Object exportName : exportNames) {
- getSimulAction().addSensitivityExport((String)exportName);
+ getSimulAction().addSensitivityExport(this, (String)exportName);
}
setSensitivityExportListModel();
}
@@ -204,10 +201,10 @@
if (selectedSensitivityExports.getSelectedIndices().length == 1) {
SensitivityExport export = (SensitivityExport)selectedSensitivityExports.getSelectedValue();
- SensitivityExportParametersTableModel model = new SensitivityExportParametersTableModel(export);
+ ScriptParametersTableModel model = new ScriptParametersTableModel(export);
exportParamsTable.setModel(model);
- exportParamsTable.getColumnModel().getColumn(0).setCellRenderer(new SensitivityExportParametersTableCellRenderer(export));
- SensitivityExportParametersTableCellEditor cellEditor = new SensitivityExportParametersTableCellEditor(export);
+ exportParamsTable.getColumnModel().getColumn(0).setCellRenderer(new ScriptParametersTableCellRenderer(export));
+ ScriptParametersTableCellEditor cellEditor = new ScriptParametersTableCellEditor(export);
cellEditor.setRegionStorage(getContextValue(RegionStorage.class));
exportParamsTable.getColumnModel().getColumn(1).setCellEditor(cellEditor);
}
Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/ParamsUI.jaxx
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/ParamsUI.jaxx 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/ParamsUI.jaxx 2011-11-08 14:11:46 UTC (rev 3523)
@@ -45,9 +45,6 @@
fr.ifremer.isisfish.ui.models.rule.RuleComboModel;
fr.ifremer.isisfish.ui.models.rule.RuleNamesListRenderer;
fr.ifremer.isisfish.ui.models.rule.RuleListModel;
- fr.ifremer.isisfish.ui.models.rule.RuleParametersTableModel;
- fr.ifremer.isisfish.ui.models.rule.RuleParametersTableCellEditor;
- fr.ifremer.isisfish.ui.models.rule.RuleParametersTableCellRenderer;
fr.ifremer.isisfish.ui.sensitivity.FactorWizardUI;
fr.ifremer.isisfish.ui.sensitivity.SensitivityUI;
fr.ifremer.isisfish.rule.Rule;
Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/RuleChooser.jaxx
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/RuleChooser.jaxx 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/RuleChooser.jaxx 2011-11-08 14:11:46 UTC (rev 3523)
@@ -33,6 +33,8 @@
<Boolean id="showFactorColumn" javaBean="false" />
+ <RuleChooserHandler id="handler" />
+
<import>
java.beans.PropertyChangeEvent
java.beans.PropertyChangeListener
@@ -42,9 +44,9 @@
fr.ifremer.isisfish.datastore.RuleStorage
fr.ifremer.isisfish.rule.Rule
fr.ifremer.isisfish.ui.models.rule.RuleListModel
- fr.ifremer.isisfish.ui.models.rule.RuleParametersTableModel
- fr.ifremer.isisfish.ui.models.rule.RuleParametersTableCellEditor
- fr.ifremer.isisfish.ui.models.rule.RuleParametersTableCellRenderer
+ fr.ifremer.isisfish.ui.models.common.ScriptParametersTableModel
+ fr.ifremer.isisfish.ui.models.common.ScriptParametersTableCellEditor
+ fr.ifremer.isisfish.ui.models.common.ScriptParametersTableCellRenderer
fr.ifremer.isisfish.ui.models.rule.RuleParametersFactorTableCellRenderer
fr.ifremer.isisfish.ui.models.rule.RuleParametersFactorTableCellEditor
fr.ifremer.isisfish.ui.util.ErrorHelper
@@ -72,94 +74,6 @@
SwingUtil.fixTableColumnWidth(selectedRuleParameterTable, 2, 30);
}
}
-
- /**
- * Get new instance for selected rules names and add it to {@link rulesList} list.
- */
- protected void addSelectedRules() {
- Object[] availableRuleValues = availableRuleList.getSelectedValues();
- for (Object availableRuleValue : availableRuleValues) {
- String availableRuleName = (String)availableRuleValue;
- try {
- RuleStorage ruleStorage = RuleStorage.getRule(availableRuleName);
- Rule ruleTmp = ruleStorage.getNewRuleInstance();
- rulesList.add(ruleTmp);
- } catch (IsisFishException ex) {
- throw new IsisFishRuntimeException("Can't add rule", ex);
- }
- }
- selectedRulesListModel.setRules(rulesList);
- }
-
- /**
- * Remove selected rules for selected rules list.
- */
- protected void removeSelectedRules() {
- SimulAction simulAction = getContextValue(SimulAction.class);
- Object[] selectedRuleValues = selectedRulesList.getSelectedValues();
- for (Object selectedRuleValue : selectedRuleValues) {
-
- // condition pour savoir si on est dans l'instance principal
- // de définition d'une simulation (hack)
- if (isShowFactorColumn()) {
- int ruleIndex = rulesList.indexOf(selectedRuleValue);
- simulAction.preRemoveRule(ruleIndex);
- getContextValue(SimulationUI.class, "SimulationUI").refreshFactorTree();
- }
-
- // real rule remove
- rulesList.remove(selectedRuleValue);
- }
- selectedRulesListModel.setRules(rulesList);
- selectedRulesList.clearSelection();
- }
-
- /**
- * Clear selected rule list.
- */
- protected void clearAllRules() {
- // condition pour savoir si on est dans l'instance principal
- // de définition d'une simulation (hack)
- if (isShowFactorColumn()) {
- SimulAction simulAction = getContextValue(SimulAction.class);
- for (Rule rule : rulesList) {
- int ruleIndex = rulesList.indexOf(rule);
- simulAction.preRemoveRule(ruleIndex);
- }
- getContextValue(SimulationUI.class, "SimulationUI").refreshFactorTree();
- }
- rulesList.clear();
- selectedRulesListModel.setRules(rulesList);
- selectedRulesList.clearSelection();
- }
-
- /**
- * Display paramters table form single selected list.
- */
- protected void displayRuleParameters() {
- Rule selectedRule = (Rule)selectedRulesList.getSelectedValue();
- if (selectedRule != null) {
- selectedRuleParameterTableModel.setRule(selectedRule);
-
- RuleParametersTableCellRenderer cellRenderer = new RuleParametersTableCellRenderer(selectedRule);
- selectedRuleParameterTable.getColumnModel().getColumn(0).setCellRenderer(cellRenderer);
-
-
- RuleParametersTableCellEditor cellEditor = new RuleParametersTableCellEditor(selectedRule);
- cellEditor.setRegionStorage(getContextValue(RegionStorage.class));
- selectedRuleParameterTable.getColumnModel().getColumn(1).setCellEditor(cellEditor);
-
- if (isShowFactorColumn()) {
- RuleParametersFactorTableCellRenderer sensitivityRenderer = new RuleParametersFactorTableCellRenderer(this, selectedRule);
- selectedRuleParameterTable.getColumnModel().getColumn(2).setCellRenderer(sensitivityRenderer);
- RuleParametersFactorTableCellEditor sensitivityEditor = new RuleParametersFactorTableCellEditor(this, selectedRule);
- selectedRuleParameterTable.getColumnModel().getColumn(2).setCellEditor(sensitivityEditor);
- }
- }
- else {
- selectedRuleParameterTableModel.setRule(null);
- }
- }
]]></script>
<row>
@@ -184,7 +98,7 @@
</JScrollPane>
</cell>
<cell fill='horizontal'>
- <JButton id="addRulesButton" text="isisfish.common.add" enabled="false" onActionPerformed='addSelectedRules()'/>
+ <JButton id="addRulesButton" text="isisfish.common.add" enabled="false" onActionPerformed='handler.addSelectedRules(this)'/>
</cell>
<cell fill="both" rows="3" weightx="1" weighty="1">
<JScrollPane enabled="{isActive()}">
@@ -192,26 +106,26 @@
<JList id="selectedRulesList" selectionMode="{javax.swing.ListSelectionModel.MULTIPLE_INTERVAL_SELECTION}"
model='{selectedRulesListModel}'
cellRenderer='{new fr.ifremer.isisfish.ui.models.rule.RuleListCellRenderer()}'
- onValueChanged='removeRuleButton.setEnabled(selectedRulesList.getSelectedIndex() != -1);clearRulesButton.setEnabled(selectedRulesList.getSelectedIndex() != -1);displayRuleParameters()' />
+ onValueChanged='removeRuleButton.setEnabled(selectedRulesList.getSelectedIndex() != -1);clearRulesButton.setEnabled(selectedRulesList.getSelectedIndex() != -1);handler.displayRuleParameters(this)' />
</JScrollPane>
</cell>
</row>
<row>
<cell fill='horizontal'>
<JButton id="removeRuleButton" text="isisfish.common.remove"
- enabled="false" onActionPerformed='removeSelectedRules()'/>
+ enabled="false" onActionPerformed='handler.removeSelectedRules(this)'/>
</cell>
</row>
<row>
<cell fill='horizontal' anchor="north">
<JButton id="clearRulesButton" text="isisfish.common.clear"
- enabled="false" onActionPerformed='clearAllRules()'/>
+ enabled="false" onActionPerformed='handler.clearAllRules(this)'/>
</cell>
</row>
<row weightx="2" weighty="2" columns="3">
<cell fill='both'>
<JScrollPane enabled="{isActive()}">
- <fr.ifremer.isisfish.ui.models.rule.RuleParametersTableModel
+ <fr.ifremer.isisfish.ui.models.common.ScriptParametersTableModel
id="selectedRuleParameterTableModel" showFactorColumn="{isShowFactorColumn()}" />
<JTable id="selectedRuleParameterTable" rowHeight='24'
model="{selectedRuleParameterTableModel}" />
Added: trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/RuleChooserHandler.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/RuleChooserHandler.java (rev 0)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/RuleChooserHandler.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -0,0 +1,151 @@
+/*
+ * #%L
+ *
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+
+package fr.ifremer.isisfish.ui.simulator;
+
+import fr.ifremer.isisfish.IsisFishException;
+import fr.ifremer.isisfish.IsisFishRuntimeException;
+import fr.ifremer.isisfish.datastore.RegionStorage;
+import fr.ifremer.isisfish.datastore.RuleStorage;
+import fr.ifremer.isisfish.rule.Rule;
+import fr.ifremer.isisfish.ui.SimulationUI;
+import fr.ifremer.isisfish.ui.models.common.ScriptParametersTableCellEditor;
+import fr.ifremer.isisfish.ui.models.common.ScriptParametersTableCellRenderer;
+import fr.ifremer.isisfish.ui.models.rule.RuleParametersFactorTableCellEditor;
+import fr.ifremer.isisfish.ui.models.rule.RuleParametersFactorTableCellRenderer;
+import fr.ifremer.isisfish.ui.widget.editor.ScriptParameterDialog;
+
+/**
+ * Handler for {@link RuleChooser class}.
+ *
+ * @author chatellier
+ * @version $Revision$
+ *
+ * Last update : $Date$
+ * By : $Author$
+ */
+public class RuleChooserHandler {
+
+ /**
+ * Get new instance for selected rules names and add it to {@link rulesList} list.
+ *
+ * @param ruleChooser rule chooser ui
+ */
+ protected void addSelectedRules(RuleChooser ruleChooser) {
+ Object[] availableRuleValues = ruleChooser.getAvailableRuleList().getSelectedValues();
+ for (Object availableRuleValue : availableRuleValues) {
+ String availableRuleName = (String)availableRuleValue;
+ try {
+ RuleStorage ruleStorage = RuleStorage.getRule(availableRuleName);
+ Rule ruleTmp = ruleStorage.getNewRuleInstance();
+
+ // add it after autoconfiguration (if enabled)
+ ruleTmp = (Rule)ScriptParameterDialog.displayConfigurationFrame(ruleChooser, ruleTmp);
+ if (ruleTmp != null) {
+ ruleChooser.getRulesList().add(ruleTmp);
+ }
+ } catch (IsisFishException ex) {
+ throw new IsisFishRuntimeException("Can't add rule", ex);
+ }
+ }
+ ruleChooser.getSelectedRulesListModel().setRules(ruleChooser.getRulesList());
+ }
+
+ /**
+ * Remove selected rules for selected rules list.
+ *
+ * @param ruleChooser rule chooser ui
+ */
+ protected void removeSelectedRules(RuleChooser ruleChooser) {
+ SimulAction simulAction = ruleChooser.getContextValue(SimulAction.class);
+ Object[] selectedRuleValues = ruleChooser.getSelectedRulesList().getSelectedValues();
+ for (Object selectedRuleValue : selectedRuleValues) {
+
+ // condition pour savoir si on est dans l'instance principal
+ // de définition d'une simulation (hack)
+ if (ruleChooser.isShowFactorColumn()) {
+ int ruleIndex = ruleChooser.getRulesList().indexOf(selectedRuleValue);
+ simulAction.preRemoveRule(ruleIndex);
+ ruleChooser.getContextValue(SimulationUI.class, "SimulationUI").refreshFactorTree();
+ }
+
+ // real rule remove
+ ruleChooser.getRulesList().remove(selectedRuleValue);
+ }
+ ruleChooser.getSelectedRulesListModel().setRules(ruleChooser.getRulesList());
+ ruleChooser.getSelectedRulesList().clearSelection();
+ }
+
+ /**
+ * Clear selected rule list.
+ *
+ * @param ruleChooser rule chooser ui
+ */
+ protected void clearAllRules(RuleChooser ruleChooser) {
+ // condition pour savoir si on est dans l'instance principal
+ // de définition d'une simulation (hack)
+ if (ruleChooser.isShowFactorColumn()) {
+ SimulAction simulAction = ruleChooser.getContextValue(SimulAction.class);
+ for (Rule rule : ruleChooser.getRulesList()) {
+ int ruleIndex = ruleChooser.getRulesList().indexOf(rule);
+ simulAction.preRemoveRule(ruleIndex);
+ }
+ ruleChooser.getContextValue(SimulationUI.class, "SimulationUI").refreshFactorTree();
+ }
+ ruleChooser.getRulesList().clear();
+ ruleChooser.getSelectedRulesListModel().setRules(ruleChooser.getRulesList());
+ ruleChooser.getSelectedRulesList().clearSelection();
+ }
+
+ /**
+ * Display paramters table form single selected list.
+ *
+ * @param ruleChooser rule chooser ui
+ */
+ protected void displayRuleParameters(RuleChooser ruleChooser) {
+ Rule selectedRule = (Rule)ruleChooser.getSelectedRulesList().getSelectedValue();
+ if (selectedRule != null) {
+ ruleChooser.getSelectedRuleParameterTableModel().setScript(selectedRule);
+
+ ScriptParametersTableCellRenderer cellRenderer = new ScriptParametersTableCellRenderer(selectedRule);
+ ruleChooser.getSelectedRuleParameterTable().getColumnModel().getColumn(0).setCellRenderer(cellRenderer);
+
+
+ ScriptParametersTableCellEditor cellEditor = new ScriptParametersTableCellEditor(selectedRule);
+ cellEditor.setRegionStorage(ruleChooser.getContextValue(RegionStorage.class));
+ ruleChooser.getSelectedRuleParameterTable().getColumnModel().getColumn(1).setCellEditor(cellEditor);
+
+ if (ruleChooser.isShowFactorColumn()) {
+ RuleParametersFactorTableCellRenderer sensitivityRenderer = new RuleParametersFactorTableCellRenderer(ruleChooser, selectedRule);
+ ruleChooser.getSelectedRuleParameterTable().getColumnModel().getColumn(2).setCellRenderer(sensitivityRenderer);
+ RuleParametersFactorTableCellEditor sensitivityEditor = new RuleParametersFactorTableCellEditor(ruleChooser, selectedRule);
+ ruleChooser.getSelectedRuleParameterTable().getColumnModel().getColumn(2).setCellEditor(sensitivityEditor);
+ }
+ }
+ else {
+ ruleChooser.getSelectedRuleParameterTableModel().setScript(null);
+ }
+ }
+}
Property changes on: trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/RuleChooserHandler.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/SensUI.jaxx
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/SensUI.jaxx 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/SensUI.jaxx 2011-11-08 14:11:46 UTC (rev 3523)
@@ -34,9 +34,9 @@
fr.ifremer.isisfish.ui.models.simulationplan.SimulationPlanComboRenderer;
fr.ifremer.isisfish.ui.models.simulationplan.SimulationPlanListModel;
fr.ifremer.isisfish.ui.models.simulationplan.SimulationPlanListRenderer;
- fr.ifremer.isisfish.ui.models.simulationplan.SimulationPlanParametersTableModel;
- fr.ifremer.isisfish.ui.models.simulationplan.SimulationPlanParametersTableCellEditor;
- fr.ifremer.isisfish.ui.models.simulationplan.SimulationPlanParametersTableCellRenderer;
+ fr.ifremer.isisfish.ui.models.common.ScriptParametersTableModel;
+ fr.ifremer.isisfish.ui.models.common.ScriptParametersTableCellEditor;
+ fr.ifremer.isisfish.ui.models.common.ScriptParametersTableCellRenderer;
fr.ifremer.isisfish.datastore.RegionStorage;
</import>
<SimulAction id='simulAction' javaBean='getContextValue(SimulAction.class)' />
@@ -83,7 +83,7 @@
protected void addSimulationPlan() {
String selectedSimulationPlanName = (String)fieldSimulParamsSimulationPlansSelect.getSelectedItem();
- simulAction.addSimulationPlan(selectedSimulationPlanName);
+ simulAction.addSimulationPlan(this, selectedSimulationPlanName);
listSimulParamsSimulationPlansList.setModel(getSimulationSimulationPlansListModel());
setSimulationPlanButtons();
}
@@ -121,11 +121,11 @@
protected void setSimulParamsSimulationPlans() {
SimulationPlan selectedSimulationPlan = (SimulationPlan)listSimulParamsSimulationPlansList.getSelectedValue();
if (selectedSimulationPlan != null) {
- SimulationPlanParametersTableModel model = new SimulationPlanParametersTableModel(selectedSimulationPlan);
+ ScriptParametersTableModel model = new ScriptParametersTableModel(selectedSimulationPlan);
simulParamsSimulationPlans.setModel(model);
- SimulationPlanParametersTableCellEditor cellEditor = new SimulationPlanParametersTableCellEditor(selectedSimulationPlan);
+ ScriptParametersTableCellEditor cellEditor = new ScriptParametersTableCellEditor(selectedSimulationPlan);
cellEditor.setRegionStorage(getContextValue(RegionStorage.class));
- simulParamsSimulationPlans.getColumnModel().getColumn(0).setCellRenderer(new SimulationPlanParametersTableCellRenderer(selectedSimulationPlan));
+ simulParamsSimulationPlans.getColumnModel().getColumn(0).setCellRenderer(new ScriptParametersTableCellRenderer(selectedSimulationPlan));
simulParamsSimulationPlans.getColumnModel().getColumn(1).setCellEditor(cellEditor);
}
else {
Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/SimulAction.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/SimulAction.java 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/SimulAction.java 2011-11-08 14:11:46 UTC (rev 3523)
@@ -98,8 +98,10 @@
import fr.ifremer.isisfish.simulator.sensitivity.domain.RuleDiscreteDomain;
import fr.ifremer.isisfish.ui.SimulationUI;
import fr.ifremer.isisfish.ui.sensitivity.FactorWizardUI;
+import fr.ifremer.isisfish.ui.sensitivity.SensitivityChooserUI;
import fr.ifremer.isisfish.ui.sensitivity.SensitivityInputHandler;
import fr.ifremer.isisfish.ui.util.ErrorHelper;
+import fr.ifremer.isisfish.ui.widget.editor.ScriptParameterDialog;
/**
* SimulAction.
@@ -632,11 +634,15 @@
return param.getSimulationPlans();
}
- public void addSimulationPlan(String name) {
+ public void addSimulationPlan(SensUI sensUI, String name) {
try {
- SimulationPlan sp = SimulationPlanStorage.getSimulationPlan(name)
- .getNewSimulationPlanInstance();
- getSimulationParameter().addSimulationPlan(sp);
+ SimulationPlan sp = SimulationPlanStorage.getSimulationPlan(name).getNewSimulationPlanInstance();
+
+ // add it after autoconfiguration (if enabled)
+ sp = (SimulationPlan)ScriptParameterDialog.displayConfigurationFrame(sensUI, sp);
+ if (sp != null) {
+ getSimulationParameter().addSimulationPlan(sp);
+ }
} catch (IsisFishException ex) {
throw new IsisFishRuntimeException("Can't add simulation plan", ex);
}
@@ -700,11 +706,16 @@
return result;
}
- public void addSensitivityExport(String name) {
+ public void addSensitivityExport(SensitivityChooserUI sensitivityChooserUI, String name) {
try {
SensitivityExportStorage storage = SensitivityExportStorage.getSensitivityExport(name);
SensitivityExport sensitivityExport = storage.getNewSensitivityExportInstance();
- param.getSensitivityExport().add(sensitivityExport);
+
+ // add it after autoconfiguration (if enabled)
+ sensitivityExport = (SensitivityExport)ScriptParameterDialog.displayConfigurationFrame(sensitivityChooserUI, sensitivityExport);
+ if (sensitivityExport != null) {
+ param.getSensitivityExport().add(sensitivityExport);
+ }
} catch (IsisFishException e) {
if (log.isErrorEnabled()) {
log.error("Can't add sensitivity export", e);
Added: trunk/src/main/java/fr/ifremer/isisfish/ui/widget/editor/ScriptParameterDialog.jaxx
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/ui/widget/editor/ScriptParameterDialog.jaxx (rev 0)
+++ trunk/src/main/java/fr/ifremer/isisfish/ui/widget/editor/ScriptParameterDialog.jaxx 2011-11-08 14:11:46 UTC (rev 3523)
@@ -0,0 +1,94 @@
+<!--
+ #%L
+ IsisFish
+
+ $Id$
+ $HeadURL$
+ %%
+ Copyright (C) 2011 Ifremer, Code Lutin, Chatellier Eric
+ %%
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as
+ published by the Free Software Foundation, either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public
+ License along with this program. If not, see
+ <http://www.gnu.org/licenses/gpl-2.0.html>.
+ #L%
+ -->
+<JDialog modal="true" title="isisfish.simulation.script.autoconfigtitle">
+
+ <Boolean id="okAction" javaBean="false" />
+
+ <import>
+ java.awt.Component
+ fr.ifremer.isisfish.IsisFish
+ fr.ifremer.isisfish.datastore.RegionStorage
+ fr.ifremer.isisfish.ui.models.common.ScriptParametersTableCellEditor
+ fr.ifremer.isisfish.ui.models.common.ScriptParametersTableCellRenderer
+ </import>
+
+ <script><![CDATA[
+ /**
+ * Test if isis configuration allow auto configuration, and display
+ * configuration frame (with only table model).
+ *
+ * @param parent parent component
+ * @param script script to configure
+ * @return configured script, or {@code null} if user cancel configuration
+ */
+ public static Object displayConfigurationFrame(JAXXContext context, Object script) {
+
+ Object result = script;
+
+ if (!IsisFish.config.isScriptAutoconfig()) {
+ if (log.isDebugEnabled()) {
+ log.debug("Script auto configuration turned off");
+ }
+ } else {
+ // display modal frame
+ ScriptParameterDialog dialog = new ScriptParameterDialog(context);
+ dialog.setLocationRelativeTo((Component)context); // screen center
+ dialog.getScriptParameterModel().setScript(script);
+
+ // param list can be empty
+ if (dialog.getScriptParameterModel().getRowCount() > 0) {
+ dialog.getScriptParameterTable().getColumnModel().getColumn(0).setCellRenderer(new ScriptParametersTableCellRenderer(script));
+ ScriptParametersTableCellEditor cellEditor = new ScriptParametersTableCellEditor(script);
+ cellEditor.setRegionStorage(context.getContextValue(RegionStorage.class));
+ dialog.getScriptParameterTable().getColumnModel().getColumn(1).setCellEditor(cellEditor);
+ dialog.setVisible(true); // blocking
+ if (!dialog.getOkAction()) {
+ result = null;
+ }
+ }
+ }
+ return result;
+ }
+ ]]></script>
+
+ <Table>
+ <row>
+ <cell fill='both' columns='2' weighty='1'>
+ <JScrollPane>
+ <fr.ifremer.isisfish.ui.models.common.ScriptParametersTableModel id="scriptParameterModel" />
+ <JTable id="scriptParameterTable" model="{scriptParameterModel}" rowHeight='24' />
+ </JScrollPane>
+ </cell>
+ </row>
+ <row>
+ <cell anchor="east" weightx='1.0'>
+ <JButton text="isisfish.common.ok" onActionPerformed="{okAction = true; dispose();}" />
+ </cell>
+ <cell anchor="west" weightx='1.0'>
+ <JButton text="isisfish.common.cancel" onActionPerformed="{okAction = false; dispose();}" />
+ </cell>
+ </row>
+ </Table>
+</JDialog>
\ No newline at end of file
Modified: trunk/src/main/resources/i18n/isis-fish_en_GB.properties
===================================================================
--- trunk/src/main/resources/i18n/isis-fish_en_GB.properties 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/resources/i18n/isis-fish_en_GB.properties 2011-11-08 14:11:46 UTC (rev 3523)
@@ -161,6 +161,7 @@
isisfish.config.main.performmigration.description=Perform data migration
isisfish.config.main.performvcsupdate.description=Perform vcs update
isisfish.config.main.remoteCaparmor.description=Remote simulator launcher name
+isisfish.config.main.script.autoconfig.description=Display a dialog to force script configuration
isisfish.config.main.simulation.ssh.control.check.interval=Control check interval (seconds)
isisfish.config.main.simulation.ssh.control.check.interval.description=Control check interval (seconds)
isisfish.config.main.simulation.ssh.datapath=Isis-Fish database
@@ -892,6 +893,7 @@
isisfish.simulation.remote.message.upload=Uploading simulation
isisfish.simulation.remote.message.waitingstart=Waiting for simulation start
isisfish.simulation.restarting=Restarting...
+isisfish.simulation.script.autoconfigtitle=Script configuration
isisfish.simulation.title=Simulation launcher
isisfish.simulator.configuration.r.cantinit=Can't init R \: %s
isisfish.simulator.configuration.r.details=This window display current system R configuration and can be used to test if R is successfully installed.
Modified: trunk/src/main/resources/i18n/isis-fish_fr_FR.properties
===================================================================
--- trunk/src/main/resources/i18n/isis-fish_fr_FR.properties 2011-11-07 15:07:32 UTC (rev 3522)
+++ trunk/src/main/resources/i18n/isis-fish_fr_FR.properties 2011-11-08 14:11:46 UTC (rev 3523)
@@ -161,6 +161,7 @@
isisfish.config.main.performmigration.description=Migre les données
isisfish.config.main.performvcsupdate.description=Met à jour le dépôt VCS
isisfish.config.main.remoteCaparmor.description=Nom du lanceur de simulation distante
+isisfish.config.main.script.autoconfig.description=Affiche une fenêtre pour forcer la configuration des scripts
isisfish.config.main.simulation.ssh.control.check.interval=Vérification de la progression (secondes)
isisfish.config.main.simulation.ssh.control.check.interval.description=Temps d'attente en secondes entre deux vérifications de progression
isisfish.config.main.simulation.ssh.datapath=Base de données
@@ -892,6 +893,7 @@
isisfish.simulation.remote.message.upload=Upload de la simulation
isisfish.simulation.remote.message.waitingstart=Attente du démarrage de la simulation
isisfish.simulation.restarting=Redémarrage...
+isisfish.simulation.script.autoconfigtitle=Configuration du script
isisfish.simulation.title=Lanceur de simulation
isisfish.simulator.configuration.r.cantinit=Impossible d'initialiser R \: %s
isisfish.simulator.configuration.r.details=Cet écran affiche la configuration système actuelle de R et permet de tester si un appel simple à R fonctionne.
1
0
07 Nov '11
Author: echatellier
Date: 2011-11-07 16:07:32 +0100 (Mon, 07 Nov 2011)
New Revision: 3522
Url: http://forge.codelutin.com/repositories/revision/isis-fish/3522
Log:
Use new isis fish community repos (redmine project)
Modified:
trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java
Modified: trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java 2011-11-07 15:02:50 UTC (rev 3521)
+++ trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java 2011-11-07 15:07:32 UTC (rev 3522)
@@ -893,7 +893,7 @@
DEFAULT_MAP_FILENAME("default.map.filename", n_("isisfish.config.main.defaultMapFile.description"), "maps/vmap_area_thin.shp"),
DEFAULT_TAG_VALUE("default.tagvalue", n_("isisfish.config.main.defaultTagValue.description"), ""),
ENCODING("encoding", n_("isisfish.config.main.encoding.description"), "UTF-8"),
- JAVADOC_URL("javadoc.url", n_("isisfish.config.main.javadocURL.description"), "http://www.isis-fish.org/isis-fish/apidocs/"),
+ JAVADOC_URL("javadoc.url", n_("isisfish.config.main.javadocURL.description"), "http://www.isis-fish.org/apidocs/"),
SIMULATOR_CLASSFILE("simulator.classfile", n_("isisfish.config.main.defaultSimulator.description"), "DefaultSimulator.java"),
/** prevu pour l'architecture de lancement en plugin: local, isis-server, caparmor, ... */
@@ -957,8 +957,8 @@
VCS_COMMUNITY_PROTOCOL("vcs.community.protocole", n_("isisfish.config.vcs.community.protocol.description"), "http"),
VCS_COMMUNITY_USER_NAME("vcs.community.username", n_("isisfish.config.vcs.community.username.description"), ""),
VCS_COMMUNITY_PASSWORD("vcs.community.password", n_("isisfish.config.vcs.community.password.description"), ""),
- VCS_COMMUNITY_HOST_NAME("vcs.community.hostname", n_("isisfish.config.vcs.community.hostname.description"), "svn.isis-fish.org"),
- VCS_COMMUNITY_PATH("vcs.community.path", n_("isisfish.config.vcs.community.remotepath.description"), "/svn/isis-fish-community/"),
+ VCS_COMMUNITY_HOST_NAME("vcs.community.hostname", n_("isisfish.config.vcs.community.hostname.description"), "svn.forge.codelutin.com"),
+ VCS_COMMUNITY_PATH("vcs.community.path", n_("isisfish.config.vcs.community.remotepath.description"), "/svn/isis-fish-community"),
// misc options
USER_NAME("user.name", n_("isisfish.config.main.userName.description"), System.getProperty("user.name")),
1
0
07 Nov '11
Author: echatellier
Date: 2011-11-07 16:02:50 +0100 (Mon, 07 Nov 2011)
New Revision: 3521
Url: http://forge.codelutin.com/repositories/revision/isis-fish/3521
Log:
#471 : Some tests fails during perform
Modified:
trunk/src/test/java/fr/ifremer/isisfish/AbstractIsisFishTest.java
Modified: trunk/src/test/java/fr/ifremer/isisfish/AbstractIsisFishTest.java
===================================================================
--- trunk/src/test/java/fr/ifremer/isisfish/AbstractIsisFishTest.java 2011-11-07 15:01:17 UTC (rev 3520)
+++ trunk/src/test/java/fr/ifremer/isisfish/AbstractIsisFishTest.java 2011-11-07 15:02:50 UTC (rev 3521)
@@ -29,9 +29,11 @@
import java.io.FileFilter;
import org.apache.commons.io.FileUtils;
-import org.nuiton.util.FileUtil;
import org.junit.AfterClass;
+import org.junit.Before;
import org.junit.BeforeClass;
+import org.nuiton.util.ArgumentsParserException;
+import org.nuiton.util.FileUtil;
import fr.ifremer.isisfish.datastore.AutoMigrationIsisH2Config;
import freemarker.cache.ClassTemplateLoader;
@@ -43,7 +45,7 @@
*
* Contains BeforeClass and AfterClass method to proper init cases.
*
- * Each test is done in a isolated isis-database-3 directory, and user.home
+ * Each test is done in a isolated isis-database directory, and user.home
* is set to this directory.
*
* @author chatellier
@@ -74,7 +76,7 @@
/**
* Toujours appeler cette method pour les test d'isis.
- * (sinon,il ira ecrire dans le isis-database-3 officiel).
+ * (sinon, il ira ecrire dans le isis-database officiel).
*
* Create a temp dir and init isis with that temp dir as database.
*
@@ -90,7 +92,6 @@
System.setProperty(IsisConfig.Option.LAUNCH_UI.key, "false");
System.setProperty(IsisConfig.Option.DATABASE_DIRECTORY.key, dirDatabase.getAbsolutePath());
System.setProperty(IsisConfig.Option.SSH_KEY_FILE.key, dirDatabase.getAbsolutePath() + File.separator + "ssh" + File.separator + "isis_test_dsa");
- //System.setProperty(IsisConfig.Option.VCS_SSH_KEY_FILE.key, dirDatabase.getAbsolutePath() + File.separator + "ssh" + File.separator + "isis_test_rsa");
IsisFish.init();
IsisFish.initVCS();
@@ -112,6 +113,16 @@
}
});
}
+
+ /**
+ * Some tests modify configuration, reset it before all tests.
+ * @throws ArgumentsParserException
+ */
+ @Before
+ public void resetConfig() throws ArgumentsParserException {
+ IsisFish.config = new IsisConfig();
+ IsisFish.config.parse();
+ }
/**
* Return current database directory.
1
0
r3520 - trunk/src/main/java/fr/ifremer/isisfish/datastore/migration
by echatellier@users.forge.codelutin.com 07 Nov '11
by echatellier@users.forge.codelutin.com 07 Nov '11
07 Nov '11
Author: echatellier
Date: 2011-11-07 16:01:17 +0100 (Mon, 07 Nov 2011)
New Revision: 3520
Url: http://forge.codelutin.com/repositories/revision/isis-fish/3520
Log:
Petit hack pour que la migration graphique n'interompe pas les tests
Modified:
trunk/src/main/java/fr/ifremer/isisfish/datastore/migration/MigrationV33V40.java
Modified: trunk/src/main/java/fr/ifremer/isisfish/datastore/migration/MigrationV33V40.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/datastore/migration/MigrationV33V40.java 2011-11-07 14:59:08 UTC (rev 3519)
+++ trunk/src/main/java/fr/ifremer/isisfish/datastore/migration/MigrationV33V40.java 2011-11-07 15:01:17 UTC (rev 3520)
@@ -37,7 +37,7 @@
import org.nuiton.topia.migration.TopiaMigrationCallbackByClass.MigrationCallBackForVersion;
import org.nuiton.util.Version;
-import fr.ifremer.isisfish.datastore.update.ImportFromV2;
+import fr.ifremer.isisfish.IsisFish;
import fr.ifremer.isisfish.entities.Equation;
import fr.ifremer.isisfish.ui.input.EquationEditorPaneUI;
import fr.ifremer.isisfish.util.EvaluatorHelper;
@@ -88,28 +88,30 @@
queries.add("alter table POPULATION add column CAPTURABILITYEQUATION VARCHAR(255);");
queries.add("alter table POPULATION add column CAPTURABILITYEQUATIONUSED BIT default false;");
- // start equation migration
- List<Equation> equations = tx.find("from " + Equation.class.getName());
- for (Equation equation : equations) {
- int ok = EvaluatorHelper.check(equation.getJavaInterface(), equation.getContent(), null);
- if (ok != 0) {
- EquationEditorPaneUI frame = new EquationEditorPaneUI();
- frame.setTitle(_("isisfish.message.import.equation.convert"));
-
- try {
- frame.setEquation(equation.getCategory(), equation.getName(),
- equation.getJavaInterface(), equation.getContent());
- } catch (Exception ex) {
- if (log.isErrorEnabled()) {
- log.error("Can't migrate equation", ex);
+ if (IsisFish.config.isLaunchUI()) {
+ // start equation migration
+ List<Equation> equations = tx.find("from " + Equation.class.getName());
+ for (Equation equation : equations) {
+ int ok = EvaluatorHelper.check(equation.getJavaInterface(), equation.getContent(), null);
+ if (ok != 0) {
+ EquationEditorPaneUI frame = new EquationEditorPaneUI();
+ frame.setTitle(_("isisfish.message.import.equation.convert"));
+
+ try {
+ frame.setEquation(equation.getCategory(), equation.getName(),
+ equation.getJavaInterface(), equation.getContent());
+ } catch (Exception ex) {
+ if (log.isErrorEnabled()) {
+ log.error("Can't migrate equation", ex);
+ }
}
+
+ frame.setVisible(true);
+ if (frame.isResultOk()) {
+ equation.setContent(frame.getEditor().getText());
+ equation.update();
+ }
}
-
- frame.setVisible(true);
- if (frame.isResultOk()) {
- equation.setContent(frame.getEditor().getText());
- equation.update();
- }
}
}
}
1
0
r3519 - in trunk/src: main/java/fr/ifremer/isisfish/actions test/java/fr/ifremer/isisfish
by echatellier@users.forge.codelutin.com 07 Nov '11
by echatellier@users.forge.codelutin.com 07 Nov '11
07 Nov '11
Author: echatellier
Date: 2011-11-07 15:59:08 +0100 (Mon, 07 Nov 2011)
New Revision: 3519
Url: http://forge.codelutin.com/repositories/revision/isis-fish/3519
Log:
SSH keys are not needed anymore
Removed:
trunk/src/test/java/fr/ifremer/isisfish/actions/
Modified:
trunk/src/main/java/fr/ifremer/isisfish/actions/VCSAction.java
Modified: trunk/src/main/java/fr/ifremer/isisfish/actions/VCSAction.java
===================================================================
--- trunk/src/main/java/fr/ifremer/isisfish/actions/VCSAction.java 2011-11-07 14:40:25 UTC (rev 3518)
+++ trunk/src/main/java/fr/ifremer/isisfish/actions/VCSAction.java 2011-11-07 14:59:08 UTC (rev 3519)
@@ -31,9 +31,6 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import com.jcraft.jsch.JSch;
-import com.jcraft.jsch.KeyPair;
-
import fr.ifremer.isisfish.IsisConfig;
/**
@@ -56,34 +53,6 @@
this.config = config;
}
- public void sshCreateKey(boolean force) throws Exception {
- File f = config.getSSHPrivateKeyFilePath();
-
- // check already exist key
- if (f.exists() && !force) {
- log.error("the private key already exist " + f + ", use option [force] to overwrite");
- return;
- }
-
- // bug #1623, le dossier parent n'existe pas
- if (f.getParentFile() != null && !f.getParentFile().exists()) {
- f.getParentFile().mkdirs();
- }
-
- if (log.isInfoEnabled()) {
- log.info("Generate ssh key to " + f);
- }
- JSch jsch=new JSch();
- KeyPair kpair=KeyPair.genKeyPair(jsch, KeyPair.RSA, 2048);
- //kpair.setPassphrase(passphrase);
- kpair.writePrivateKey(f.getAbsolutePath());
- kpair.writePublicKey(f.getAbsolutePath()+".pub", config.getUserName() + "@forIsisFish");
- if (log.isInfoEnabled()) {
- log.info("Finger print: "+kpair.getFingerPrint());
- }
- kpair.dispose();
- }
-
public void vcsUpdate() throws Exception {
// ATTENTION: il est inutile de d'accepter cette option au premier
// lancement! car on a effectue soit un checkout, soit
1
0