Author: chatellier Date: 2009-03-19 10:49:26 +0000 (Thu, 19 Mar 2009) New Revision: 2005 Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityChooserUI.jaxx isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityTabUI.jaxx isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/SimulAction.java isis-fish/trunk/src/main/resources/i18n/isis-fish-en_GB.properties isis-fish/trunk/src/main/resources/i18n/isis-fish-fr_FR.properties Log: Fix sensitivity chooser UI. Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityChooserUI.jaxx =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityChooserUI.jaxx 2009-03-19 09:54:08 UTC (rev 2004) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityChooserUI.jaxx 2009-03-19 10:49:26 UTC (rev 2005) @@ -1,7 +1,6 @@ <!-- /* *##% - * Copyright (C) 2005 - * Ifremer, Code Lutin, Cedric Pineau, Benjamin Poussin + * Copyright (C) 2009 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 @@ -19,209 +18,261 @@ *##%*/ /* * - * IsisFish.java + * SensitivityChooserUI. * - * Created: 1 aout 2005 18:37:25 CEST + * @author letellier + * @version $Revision$ * - * @author Benjamin POUSSIN <poussin at codelutin.com> - * @version $Revision: 1312 $ - * - * Last update: $Date: 2008-08-28 10:21:07 +0200 (jeu, 28 aoû 2008) $ - * by : $Author: sletellier $ + * Last update: $Date$ + * by : $Author$ */ --> - <Table> -<script><![CDATA[ -import javax.swing.table.DefaultTableModel; -import javax.swing.table.TableModel; -import jaxx.runtime.swing.Item; -import fr.ifremer.isisfish.datastore.SensitivityStorage; -import fr.ifremer.isisfish.ui.simulator.SimulAction; -import fr.ifremer.isisfish.ui.widget.editor.GenericCell; -import fr.ifremer.isisfish.ui.widget.editor.ParameterColumnEditor; -import fr.ifremer.isisfish.simulator.sensitivity.Domain; -import fr.ifremer.isisfish.simulator.sensitivity.Factor; -import fr.ifremer.isisfish.simulator.sensitivity.SensitivityCalculator; -import fr.ifremer.isisfish.simulator.sensitivity.domain.ContinuousDomain; -import fr.ifremer.isisfish.export.SensitivityExport; -import fr.ifremer.isisfish.IsisFishException; + <script><![CDATA[ + import javax.swing.table.DefaultTableModel; + import javax.swing.table.TableModel; + import jaxx.runtime.swing.Item; + import fr.ifremer.isisfish.datastore.SensitivityStorage; + import fr.ifremer.isisfish.ui.simulator.SimulAction; + import fr.ifremer.isisfish.ui.widget.editor.GenericCell; + import fr.ifremer.isisfish.ui.widget.editor.ParameterColumnEditor; + import fr.ifremer.isisfish.simulator.sensitivity.Domain; + import fr.ifremer.isisfish.simulator.sensitivity.Factor; + import fr.ifremer.isisfish.simulator.sensitivity.SensitivityCalculator; + import fr.ifremer.isisfish.simulator.sensitivity.domain.ContinuousDomain; + import fr.ifremer.isisfish.export.SensitivityExport; + import fr.ifremer.isisfish.IsisFishException; -public ComboBoxModel getSensitivityModel(){ - java.util.List<Item> items = new ArrayList<Item>(); - items.add(new Item("null", " ", null, true)); - for (String s : getSimulAction().getSensitivityName()){ - items.add(new Item(s, s, s, false)); + protected SimulAction getSimulAction() { + return getContextValue(SimulAction.class); } - fieldSensitivitySelect.setItems(items); - return fieldSensitivitySelect.getModel(); -} -protected SimulAction getSimulAction(){ - return getContextValue(SimulAction.class); -} -protected void sensChanged(){ - if (fieldSensitivitySelect.getSelectedIndex() != -1){ - String sensitivityName = (String)fieldSensitivitySelect.getSelectedItem(); - getSimulAction().setSensitivity(sensitivityName); - - // enable/disable table - try { - SensitivityCalculator sens = SensitivityStorage.getSensitivity(sensitivityName).getNewSensitivityInstance(); - factorCardinality.setVisible(!sens.canManageCardinality()); + + public ComboBoxModel getSensitivityCalculatorModel() { + java.util.List<Item> items = new ArrayList<Item>(); + items.add(new Item("null", " ", null, true)); + for (String s : getSimulAction().getSensitivityNames()) { + items.add(new Item(s, s, s, false)); } - catch(IsisFishException e) { - // FIXME add log + fieldSensitivityCalculatorSelect.setItems(items); + return fieldSensitivityCalculatorSelect.getModel(); + } + + protected void sensCalculatorChanged() { + if (fieldSensitivityCalculatorSelect.getSelectedIndex() != -1) { + String sensitivityName = (String)fieldSensitivityCalculatorSelect.getSelectedItem(); + getSimulAction().setSensitivity(sensitivityName); + + // enable/disable table + try { + SensitivityCalculator sens = SensitivityStorage.getSensitivity(sensitivityName).getNewSensitivityInstance(); + factorCardinality.setVisible(!sens.canManageCardinality()); + } + catch(IsisFishException e) { + if (log.isErrorEnabled()) { + log.error("Can't get canManageCardinality() value", e); + } + } + setSensitivityCalculatorParamsModel(); } - setTableModel(); } -} -protected void setTableModel(){ - Map<String, Class<?>> values = getSimulAction().getSensitivityParameterNames((String)fieldSensitivitySelect.getSelectedItem()); - setParamsTable(values, simulSensitivityParam); - simulSensitivityParam.getModel().addTableModelListener(new TableModelListener() { - @Override - public void tableChanged(TableModelEvent e) { - int row = e.getFirstRow(); - TableModel model = (TableModel)e.getSource(); - GenericCell data = (GenericCell) model.getValueAt(row, 0); - getContextValue(SimulAction.class).setSensitivityParameterValue(data.getName(), model.getValueAt(row, 1)); - } - }); -} -public void setFactorCardinalityModel(){ - DefaultTableModel model = new DefaultTableModel(){ + + protected void setSensitivityCalculatorParamsModel() { + Map<String, Class<?>> values = getSimulAction().getSensitivityParameterNames((String)fieldSensitivityCalculatorSelect.getSelectedItem()); + setSensitivityCalculatorParamsTableModel(values, simulSensitivityCalculatorParam); + simulSensitivityCalculatorParam.getModel().addTableModelListener(new TableModelListener() { + @Override + public void tableChanged(TableModelEvent e) { + int row = e.getFirstRow(); + TableModel model = (TableModel)e.getSource(); + GenericCell data = (GenericCell) model.getValueAt(row, 0); + getContextValue(SimulAction.class).setSensitivityCalculatorParameterValue(data.getName(), model.getValueAt(row, 1)); + } + }); + } + + protected void setSensitivityCalculatorParamsTableModel(Map<String, Class<?>> values, JTable table) { + int row = 0; + if (values != null){ + DefaultTableModel model = new DefaultTableModel() { @Override public boolean isCellEditable(int row, int column) { boolean result = false; - if (column > 0){ - result =true; + if (column > 0) { + result = true; } return result; } }; - java.util.List<Factor<? extends Serializable>> factors = getSimulAction().getFactors(); - - java.util.List<Factor<? extends Serializable>> factorsContinue = new ArrayList<Factor<? extends Serializable>>(); - java.util.List<String> incs = new ArrayList<String>(); - for (Factor f : factors){ - Domain domain = f.getDomain(); - if (ContinuousDomain.class.isInstance(domain)){ - ContinuousDomain continuousDomain = (ContinuousDomain)domain; - factorsContinue.add(f); - incs.add(continuousDomain.getCardinality() + ""); + java.util.List<GenericCell> paramNamesList = new ArrayList<GenericCell>(); + java.util.List<Object> paramValuesList = new ArrayList<Object>(); + for (Iterator<String> it = values.keySet().iterator(); it.hasNext();) { + String name = it.next(); + Object properties = getContextValue(SimulAction.class).getSensitivityCalculatorParameterValue(name); + GenericCell value = new GenericCell(name, values.get(name), null); + paramNamesList.add(value); + paramValuesList.add(properties); + row++; + } + model.addColumn(_("isisfish.common.name"), paramNamesList.toArray()); + model.addColumn(_("isisfish.common.value"), paramValuesList.toArray()); + table.setModel(model); + ParameterColumnEditor cellEditor = new ParameterColumnEditor(); + cellEditor.setRegion(getContextValue(SimulAction.class).getRegionStorage()); + table.getColumnModel().getColumn(1).setCellEditor(cellEditor); } } - model.addColumn("Factor", factorsContinue.toArray()); - model.addColumn("Cardinality", incs.toArray()); - factorCardinality.setModel(model); - factorCardinality.getModel().addTableModelListener(new TableModelListener() { - @Override - public void tableChanged(TableModelEvent e) { - int row = e.getFirstRow(); - TableModel model = (TableModel)e.getSource(); - Factor f = (Factor) model.getValueAt(row, 0); - ((ContinuousDomain)f.getDomain()).setCardinality(Integer.parseInt((String)model.getValueAt(row, 1))); + public void setFactorCardinalityTableModel() { + DefaultTableModel model = new DefaultTableModel() { + @Override + public boolean isCellEditable(int row, int column) { + boolean result = false; + if (column > 0) { + result = true; + } + return result; + } + }; + java.util.List<Factor<? extends Serializable>> factors = getSimulAction().getFactors(); + + java.util.List<Factor<? extends Serializable>> factorsContinue = new ArrayList<Factor<? extends Serializable>>(); + java.util.List<String> factorsContinueCardinalities = new ArrayList<String>(); + for (Factor f : factors){ + Domain domain = f.getDomain(); + if (ContinuousDomain.class.isInstance(domain)){ + ContinuousDomain continuousDomain = (ContinuousDomain)domain; + factorsContinue.add(f); + factorsContinueCardinalities.add(continuousDomain.getCardinality() + ""); + } } - }); -} -protected DefaultComboBoxModel getExportModel(){ - java.util.List<String> exports = getAction().getSensibilityExportNames(); - DefaultComboBoxModel model = new DefaultComboBoxModel(exports.toArray()); - return model; -} -protected void exportListSelected(){ - remove.setEnabled(exportList.getSelectedIndex() != -1); - setExportParams(); -} -protected void setExportParams(){ - Map<String, Class<?>> values = getAction().getSensitivityExportParameterNames(getSelectedExport()); - setParamsTable(values, exportParams); + model.addColumn(_("isisfish.factor.factor"), factorsContinue.toArray()); + model.addColumn(_("isisfish.factor.increment"), factorsContinueCardinalities.toArray()); - exportParams.getModel().addTableModelListener(new TableModelListener() { - @Override - public void tableChanged(TableModelEvent e) { - int row = e.getFirstRow(); - TableModel model = (TableModel)e.getSource(); - GenericCell data = (GenericCell) model.getValueAt(row, 0); - getContextValue(SimulAction.class).setSensitivityExportParameterNames(getSelectedExport(), (String)data.getName(), model.getValueAt(row, 1)); - } - }); -} -protected void setParamsTable(Map<String, Class<?>> values, JTable table){ - int row = 0; - if (values != null){ - DefaultTableModel model = new DefaultTableModel(){ + factorCardinality.setModel(model); + factorCardinality.getModel().addTableModelListener(new TableModelListener() { + @Override + public void tableChanged(TableModelEvent e) { + int row = e.getFirstRow(); + TableModel model = (TableModel)e.getSource(); + Factor f = (Factor) model.getValueAt(row, 0); + ((ContinuousDomain)f.getDomain()).setCardinality(Integer.parseInt((String)model.getValueAt(row, 1))); + } + }); + } + + protected DefaultComboBoxModel getExportTableModel() { + java.util.List<String> exportNames = getSimulAction().getSensibilityExportNames(); + DefaultComboBoxModel model = new DefaultComboBoxModel(exportNames.toArray()); + return model; + } + + // FIXME use bindings ? + protected void exportListSelected() { + removeExportButton.setEnabled(exportList.getSelectedIndex() != -1); + setExportParams(); + } + + /** + * Fill export parameters names and values in table. + */ + protected void setExportParams() { + Map<String, Class<?>> values = getSimulAction().getSensitivityExportParameterNames(getSelectedExport()); + setSensitivityExportParamsTableModel(values, exportParamsTable); + + exportParamsTable.getModel().addTableModelListener(new TableModelListener() { + @Override + public void tableChanged(TableModelEvent e) { + int row = e.getFirstRow(); + TableModel model = (TableModel)e.getSource(); + GenericCell data = (GenericCell) model.getValueAt(row, 0); + getContextValue(SimulAction.class).setSensitivityExportParameterValue(getSelectedExport(), (String)data.getName(), model.getValueAt(row, 1)); + } + }); + } + + /** + * FIXME can't be factorized with {link #setFactorCardinalityTableModel} + */ + protected void setSensitivityExportParamsTableModel(Map<String, Class<?>> values, JTable table) { + int row = 0; + if (values != null){ + DefaultTableModel model = new DefaultTableModel() { @Override public boolean isCellEditable(int row, int column) { boolean result = false; - if (column > 0){ - result =true; + if (column > 0) { + result = true; } return result; } }; - java.util.List<GenericCell> valuesList = new ArrayList<GenericCell>(); - java.util.List<Object> propertyList = new ArrayList<Object>(); - for (Iterator<String> it = values.keySet().iterator(); it.hasNext();) { - String name = it.next(); - Object properties = getContextValue(SimulAction.class).getSensitivityParameterValue(name); - GenericCell value = new GenericCell(name, values.get(name), null); - valuesList.add(value); - propertyList.add(properties); - row++; + java.util.List<GenericCell> paramNamesList = new ArrayList<GenericCell>(); + java.util.List<Object> paramValuesList = new ArrayList<Object>(); + for (Iterator<String> it = values.keySet().iterator(); it.hasNext();) { + String name = it.next(); + Object properties = getContextValue(SimulAction.class).getSensitivityExportParameterValue(getSelectedExport(), name); + GenericCell value = new GenericCell(name, values.get(name), null); + paramNamesList.add(value); + paramValuesList.add(properties); + row++; + } + model.addColumn(_("isisfish.common.name"), paramNamesList.toArray()); + model.addColumn(_("isisfish.common.value"), paramValuesList.toArray()); + table.setModel(model); + ParameterColumnEditor cellEditor = new ParameterColumnEditor(); + cellEditor.setRegion(getContextValue(SimulAction.class).getRegionStorage()); + table.getColumnModel().getColumn(1).setCellEditor(cellEditor); } - model.addColumn("Name", valuesList.toArray()); - model.addColumn("Value", propertyList.toArray()); - table.setModel(model); - ParameterColumnEditor cellEditor = new ParameterColumnEditor(); - cellEditor.setRegion(getContextValue(SimulAction.class).getRegionStorage()); - table.getColumnModel().getColumn(1).setCellEditor(cellEditor); - } -} -protected SensitivityExport getSelectedExport(){ - return (SensitivityExport)((GenericCell)exportList.getSelectedValue()).getValue(); -} -protected void add(){ - getAction().addSensitivityExport((String)export.getSelectedItem()); - setExportListModel(); - clear.setEnabled(true); -} -protected void remove(){ - getAction().removeSensitivityExport(getSelectedExport()); - setExportListModel(); - remove.setEnabled(false); -} -protected void clear(){ - getAction().clearSensitivityExport(); - setExportListModel(); - clear.setEnabled(false); -} -protected void setExportListModel(){ - DefaultListModel model = new DefaultListModel(); - for (SensitivityExport s : getAction().getSensibilityExports()){ - model.addElement(new GenericCell(s.getExportFilename(), s, s.getClass())); + + protected SensitivityExport getSelectedExport(){ + return (SensitivityExport)((GenericCell)exportList.getSelectedValue()).getValue(); } - exportList.setModel(model); -} -protected SimulAction getAction(){ - return getContextValue(SimulAction.class); -} + + /** + * Add an export. + * + * Export name can be duplicated. + */ + protected void addExport() { + getSimulAction().addSensitivityExport((String)exportCombo.getSelectedItem()); + setExportListModel(); + clearExportsButton.setEnabled(true); + } + + protected void removeExport() { + getSimulAction().removeSensitivityExport(getSelectedExport()); + setExportListModel(); + removeExportButton.setEnabled(false); + } + + protected void clearExports() { + getSimulAction().clearSensitivityExport(); + setExportListModel(); + clearExportsButton.setEnabled(false); + } + + protected void setExportListModel() { + DefaultListModel model = new DefaultListModel(); + for (SensitivityExport s : getSimulAction().getSensibilityExports()){ + model.addElement(new GenericCell(s.getExportFilename(), s, s.getClass())); + } + exportList.setModel(model); + } ]]> - </script> + </script> <row> <cell fill="horizontal"> <JLabel text="isisfish.sensitivity.select"/> </cell> <cell fill="horizontal" weightx="1.0"> - <JComboBox id="fieldSensitivitySelect" model='{getSensitivityModel()}' onActionPerformed='sensChanged()'/> + <JComboBox id="fieldSensitivityCalculatorSelect" model='{getSensitivityCalculatorModel()}' onActionPerformed='sensCalculatorChanged()'/> </cell> </row> <row> <cell columns="2" fill="both" weightx="1.0" weighty="0.1"> <JScrollPane> - <JTable id="simulSensitivityParam" rowHeight='24'/> + <JTable id="simulSensitivityCalculatorParam" rowHeight='24'/> </JScrollPane> </cell> </row> @@ -245,11 +296,11 @@ </row> <row> <cell fill="horizontal"> - <JComboBox id="export" model='{getExportModel()}'/> + <JComboBox id="exportCombo" model='{getExportTableModel()}'/> </cell> </row> <row> - <cell fill="both" weightx="1.0" weighty="1.0"> + <cell fill="both" weightx="1.0" weighty="1.0"> <JScrollPane minimumSize='{new Dimension(0,0)}' preferredSize='{new Dimension(0,0)}'> <JList id="exportList" selectionMode="0" onMouseClicked='exportListSelected()'/> </JScrollPane> @@ -266,17 +317,17 @@ </row> <row> <cell fill='horizontal'> - <JButton id="add" text="isisfish.common.add" onActionPerformed='add()'/> + <JButton id="addExportButton" text="isisfish.common.add" onActionPerformed='addExport()'/> </cell> </row> <row> <cell fill='horizontal'> - <JButton id="remove" text="isisfish.common.remove" enabled="false" onActionPerformed='remove()'/> + <JButton id="removeExportButton" text="isisfish.common.remove" enabled="false" onActionPerformed='removeExport()'/> </cell> </row> <row> <cell fill='horizontal'> - <JButton id="clear" text="isisfish.common.clear" enabled="false" onActionPerformed='clear()'/> + <JButton id="clearExportsButton" text="isisfish.common.clear" enabled="false" onActionPerformed='clearExports()'/> </cell> </row> <row> @@ -293,7 +344,7 @@ <row> <cell fill="both" columns='2' weightx="1" weighty="0.3"> <JScrollPane minimumSize='{new Dimension(0,0)}' preferredSize='{new Dimension(0,0)}'> - <JTable id="exportParams" rowHeight='24'/> + <JTable id="exportParamsTable" rowHeight='24'/> </JScrollPane> </cell> </row> Property changes on: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityChooserUI.jaxx ___________________________________________________________________ Name: svn:keywords + Revision Date Author Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityTabUI.jaxx =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityTabUI.jaxx 2009-03-19 09:54:08 UTC (rev 2004) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityTabUI.jaxx 2009-03-19 10:49:26 UTC (rev 2005) @@ -152,7 +152,7 @@ FactorTreeModel model = new FactorTreeModel(root); factors.setModel(model); factors.setCellRenderer(new FactorTreeCellRenderer()); - getParentContainer(SensitivityUI.class).getSensitivityChooserUI().setFactorCardinalityModel(); + getParentContainer(SensitivityUI.class).getSensitivityChooserUI().setFactorCardinalityTableModel(); } ]]> </script> Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/SimulAction.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/SimulAction.java 2009-03-19 09:54:08 UTC (rev 2004) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/SimulAction.java 2009-03-19 10:49:26 UTC (rev 2005) @@ -89,23 +89,26 @@ * Created: 1 aout 2005 18:37:25 CEST * * @author Benjamin POUSSIN <poussin at codelutin.com> - * @version $Revision: 1312 $ + * @version $Revision$ * - * Last update: $Date: 2008-08-28 10:21:07 +0200 (jeu, 28 aoû 2008) $ - * by : $Author: sletellier $ + * Last update: $Date$ + * by : $Author$ */ public class SimulAction { /** to use log facility, just put in your code: log.info(\"...\"); */ private static Log log = LogFactory.getLog(SimulAction.class); + + private static final SimpleDateFormat DATEFORMAT = new SimpleDateFormat("yyyy-MM-dd-HH-mm"); + protected SimulationParameter param = null; protected RegionStorage regionStorage = null; protected SimulationStorage simulStorage = null; protected RuleStorage ruleStorage = null; protected List<String> analysePlan = null; protected Map<Rule, String> rules = new HashMap<Rule, String>(); - protected Map<String, SensitivityExport> sensibilityExports = new HashMap<String, SensitivityExport>(); - private static SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd-HH-mm"); + protected Map<SensitivityExport, String> sensibilityExports = new HashMap<SensitivityExport, String>(); + protected List<String> oldSimulNames = null; protected String simulName = null; protected SensitivityStorage sensitivityStorage = null; @@ -113,19 +116,22 @@ protected Map<String, JComponent> factorComponent = new HashMap<String, JComponent>(); protected DesignPlan designPlan = new DesignPlan(); protected SensitivityCalculator sensitivityCalculator = null; -/* - ************ - * Init - ************ - */ - + + /* + ************ + * Init + ************ + */ + public SimulAction() { init(); } - protected void showMsgBox(Exception eee){ + + protected void showMsgBox(Exception eee) { ErrorDialogUI.showError(eee); } - public void init(){ + + public void init() { log.debug("Init "); try { param = new SimulationParameter(); @@ -133,56 +139,65 @@ // put default value in param param.setSimulatorName(IsisFish.config.getSimulatorClassfile()); param.setTagValue(IsisFish.config.getDefaultTagValueAsMap()); - param.setExportDirectory(IsisFish.config.getDefaultExportDirectory().toString()); + param.setExportDirectory(IsisFish.config + .getDefaultExportDirectory().toString()); param.setExportNames(IsisFish.config.getDefaultExportNamesAsList()); analysePlan = AnalysePlanStorage.getAnalysePlanNames(); - List<String> defaultResultNames = IsisFish.config.getDefaultResultNamesAsList(); + List<String> defaultResultNames = IsisFish.config + .getDefaultResultNamesAsList(); if (defaultResultNames != null) { param.setResultEnabled(defaultResultNames); } else { param.setResultEnabled(resultNames); } - } - catch (Exception eee) { + } catch (Exception eee) { log.error("Can't init SimulationParameter", eee); showMsgBox(eee); } } - protected void setName(String name){ + + protected void setName(String name) { simulName = name; } - protected void importSimulation(File f){ + + protected void importSimulation(File f) { FileInputStream fos = null; try { fos = new FileInputStream(f); Properties proper = new Properties(); proper.load(fos); - param.fromProperties(SimulationStorage.getSimulationDirectory(), proper); + param.fromProperties(SimulationStorage.getSimulationDirectory(), + proper); } catch (Exception ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); showMsgBox(ex); } finally { try { fos.close(); } catch (IOException ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); showMsgBox(ex); } } } - protected void saveSimulation(File f){ + + protected void saveSimulation(File f) { FileOutputStream fos = null; try { fos = new FileOutputStream(f); param.copy().toProperties().store(fos, simulName); } catch (Exception ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); showMsgBox(ex); } finally { try { fos.close(); } catch (IOException ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); showMsgBox(ex); } } @@ -215,7 +230,8 @@ protected void stopSimulation(SimulationJob job) { job.stop(); - log.info(_("User stop simulation %s", job.getItem().getControl().getId())); + log.info(_("User stop simulation %s", job.getItem().getControl() + .getId())); } protected void viewLog(SimulationJob job) { @@ -232,21 +248,20 @@ SimulationService ss = SimulationService.getService(); ss.clearJobDone(); } - + /** * Change region in simulation launcher * * @param regionName SimulationParameter/description */ public void regionChange(String regionName) { - try{ + try { regionStorage = RegionStorage.getRegion(regionName); param.setRegionName(regionName); for (Rule r : param.getRules()) { rules.put(r, RuleStorage.getName(r)); } - } - catch (Exception eee){ + } catch (Exception eee) { showMsgBox(eee); } } @@ -270,15 +285,14 @@ showMsgBox(eee); } } - -/* - ************ - * ParamsUI - ************ - */ - -// Gestion des rules - + + /* + ************ + * ParamsUI + ************ + */ + + // Gestion des rules public void addRules(String name) { ruleStorage = RuleStorage.getRule(name); try { @@ -286,10 +300,12 @@ rules.put(ruleTmp, name); param.addRule(ruleTmp); } catch (IsisFishException ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); showMsgBox(ex); } } + public List<String> getRuleNames() { List<String> result = new ArrayList<String>(); for (String r : RuleStorage.getRuleNames()) { @@ -297,18 +313,21 @@ } return result; } + public List<String> getRules() { List<String> result = new ArrayList<String>(); for (Rule r : param.getRules()) { try { result.add(RuleStorage.getName(r)); } catch (Exception ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); showMsgBox(ex); } } return result; } + public void removeRules(String name) { if (name != null) { for (Map.Entry<Rule, String> entry : rules.entrySet()) { @@ -319,7 +338,8 @@ } } } - public Rule getRule(String ruleName){ + + public Rule getRule(String ruleName) { Rule r = null; for (Map.Entry<Rule, String> entry : rules.entrySet()) { if (entry.getValue().equals(ruleName)) { @@ -328,41 +348,48 @@ } return r; } + public Map<String, Class> getRuleParameterName(String ruleName) { Map<String, Class> result = null; if (ruleName != null) { Rule r = getRule(ruleName); - if (r != null){ + if (r != null) { result = RuleStorage.getParameterNames(r); } } return result; } - public Object getRuleParameterValue(String paramName, String ruleName){ + + public Object getRuleParameterValue(String paramName, String ruleName) { Object result = null; if (ruleName != null) { try { - result = RuleStorage.getParameterValue(getRule(ruleName), paramName); + result = RuleStorage.getParameterValue(getRule(ruleName), + paramName); } catch (IsisFishException ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); showMsgBox(ex); } } return result; } - public void setRuleParameterValue(String paramName, String ruleName, Object o){ + + public void setRuleParameterValue(String paramName, String ruleName, + Object o) { if (ruleName != null) { try { RuleStorage.setParameterValue(getRule(ruleName), paramName, o); } catch (IsisFishException ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); showMsgBox(ex); } } } - -// Strategies + // Strategies + public List<Strategy> getStrategies() { List<Strategy> result = new ArrayList<Strategy>(); try { @@ -371,7 +398,8 @@ tx.rollbackTransaction(); tx.closeContext(); } catch (Exception ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); showMsgBox(ex); } return result; @@ -384,34 +412,37 @@ } param.setStrategies(result); } - -// Population - + + // Population + public List<Population> getPopulations() { - + List<Population> result = new ArrayList<Population>(); try { TopiaContext tx = param.getRegion().getStorage().beginTransaction(); - List<Species> species = RegionStorage.getFisheryRegion(tx).getSpecies(); + List<Species> species = RegionStorage.getFisheryRegion(tx) + .getSpecies(); for (Species s : species) { Collection<Population> populations = s.getPopulation(); - + // FIXME initialiaze lazy hibernate collection - for(Population p : populations) { + for (Population p : populations) { p.getPopulationGroup().size(); p.getPopulationZone().size(); } - + result.addAll(populations); } tx.rollbackTransaction(); tx.closeContext(); } catch (Exception ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); showMsgBox(ex); } return result; } + public void setPopulations(Object[] populations) { List<Population> result = new ArrayList<Population>(); for (Object o : populations) { @@ -420,8 +451,8 @@ param.setPopulations(result); } -// Years - + // Years + public void setNbAnnees(String years) { param.setNumberOfYear(Integer.parseInt(years)); } @@ -429,7 +460,7 @@ public List<String> getSimulatorNames() { return SimulatorStorage.getSimulatorNames(); } - + /* * Return old simulations * @@ -439,7 +470,7 @@ * @deprecated use fr.ifremer.isisfish.ui.Common.getOldSimulationItem() */ public List<String> getOldSimulationItem() { - + try { oldSimulNames = new ArrayList<String>(); @@ -451,7 +482,7 @@ // to used directly model.getFilteredResult() in xml // we must fill filterModel result with original items filterModel.selectAll(); - + // chatellier : Ajout d'une entrée vide pour forcer la sélection // et que le changement lance un evenement sur la liste // Add empty item after, otherwise, un " " directory @@ -460,40 +491,43 @@ return oldSimulNames; } catch (ParseException ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); showMsgBox(ex); } catch (IOException ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); showMsgBox(ex); } return null; } + public List<String> getFilteredOldSimulatorNames() { return getFilteredOldSimulatorNames(false); } + public List<String> getFilteredOldSimulatorNames(boolean force) { - if (oldSimulNames == null || force){ + if (oldSimulNames == null || force) { oldSimulNames = getOldSimulationItem(); } return oldSimulNames; } - public void setOldSimulatorNames(List<String> sn){ + public void setOldSimulatorNames(List<String> sn) { oldSimulNames = sn; } - public void resetOldSimulatorNames(){ + + public void resetOldSimulatorNames() { oldSimulNames = getOldSimulationItem(); } - - -/* - ************ - * AdvancedParameterUI - ************ - */ + /* + ************ + * AdvancedParameterUI + ************ + */ + // Gestion des TagValues - public void addTagValue(String tag, String value) { param.getTagValue().put(tag, value); } @@ -510,14 +544,15 @@ IsisFish.config.setSimulatorClassfile(simulatorName); } -/* - * ExportUI - */ - + + /* + * ExportUI + */ + public List<String> getExportNames() { List<String> result = new ArrayList<String>(); List<String> exportNames = ExportStorage.getExportNames(); - for (String export : exportNames){ + for (String export : exportNames) { try { ExportStorage storage = ExportStorage.getExport(export); Export exInstance = storage.getNewExportInstance(); @@ -525,7 +560,8 @@ result.add(export); } } catch (IsisFishException ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); } } return result; @@ -537,15 +573,15 @@ public void saveExport() { IsisFish.config.setDefaultExportDirectory(param.getExportDirectory()); - if (param.getExportNames() != null){ + if (param.getExportNames() != null) { IsisFish.config.setDefaultExportNames(param.getExportNames()); } } - -/* - * ResultUI - */ + /* + * ResultUI + */ + public void saveResultNames(Object[] resultNames) { List<String> resultNamesString = new ArrayList<String>(); for (Object o : resultNames) { @@ -554,81 +590,89 @@ param.setResultEnabled(resultNamesString); IsisFish.config.setDefaultResultNames(resultNamesString); } - - public List<String> getDefaultResultNames(){ + + public List<String> getDefaultResultNames() { return IsisFish.config.getDefaultResultNamesAsList(); } - -/** - ************ - * SensUI - ************ - */ - -// Gestion des analysePlans - - public List<String> getAnalysePlanNames(){ + + /* + * SensUI + */ + + // Gestion des analysePlans + public List<String> getAnalysePlanNames() { return analysePlan; } - public List<AnalysePlan> getParamAnalysePlans(){ + + public List<AnalysePlan> getParamAnalysePlans() { return param.getAnalysePlans(); } - public void addAnalysePlan(String name){ + + public void addAnalysePlan(String name) { try { - AnalysePlan ap = AnalysePlanStorage.getAnalysePlan(name).getNewAnalysePlanInstance(); + AnalysePlan ap = AnalysePlanStorage.getAnalysePlan(name) + .getNewAnalysePlanInstance(); getSimulationParameter().addAnalysePlan(ap); } catch (IsisFishException ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); showMsgBox(ex); } } - public void removeAnalysePlan(AnalysePlan ap){ - getSimulationParameter().removeAnalysePlan(ap); + + public void removeAnalysePlan(AnalysePlan ap) { + getSimulationParameter().removeAnalysePlan(ap); } - public void clearAnalysePlan(){ - getSimulationParameter().clearPlans(); + + public void clearAnalysePlan() { + getSimulationParameter().clearPlans(); } + public Map<String, Class> getAnalysePlanParameterName(AnalysePlan ap) { Map<String, Class> result = null; if (ap != null) { - result = AnalysePlanStorage.getParameterNames(ap); + result = AnalysePlanStorage.getParameterNames(ap); } return result; } - public Object getAnalysePlanParameterValue(String paramName, AnalysePlan ap){ + + public Object getAnalysePlanParameterValue(String paramName, AnalysePlan ap) { Object result = null; if (ap != null) { try { result = AnalysePlanStorage.getParameterValue(ap, paramName); } catch (IsisFishException ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); showMsgBox(ex); } } return result; } - public void setAnalysePlanParameterValue(String paramName, AnalysePlan ap, Object value){ - if (log.isDebugEnabled()){ - log.debug("paramName : " + paramName + " analysePlanName : " + ap + " value : " + value); + + public void setAnalysePlanParameterValue(String paramName, AnalysePlan ap, + Object value) { + if (log.isDebugEnabled()) { + log.debug("paramName : " + paramName + " analysePlanName : " + ap + + " value : " + value); } try { AnalysePlanStorage.setParameterValue(ap, paramName, value); } catch (IsisFishException ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); showMsgBox(ex); } } -/* - ************ - * Sensitivity - ************ - */ + /* + * Sensitivity + */ public List<String> getSensibilityExportNames() { List<String> result = new ArrayList<String>(); List<String> exportNames = ExportStorage.getExportNames(); - for (String export : exportNames){ + for (String export : exportNames) { try { ExportStorage storage = ExportStorage.getExport(export); Export exInstance = storage.getNewExportInstance(); @@ -636,121 +680,168 @@ result.add(export); } } catch (IsisFishException ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); } } return result; } - public Collection<SensitivityExport> getSensibilityExports(){ - return sensibilityExports.values(); + + public Collection<SensitivityExport> getSensibilityExports() { + return sensibilityExports.keySet(); } - public List<SensitivityExport> getSensitivityExportList(){ + + public List<SensitivityExport> getSensitivityExportList() { List<SensitivityExport> result = new ArrayList<SensitivityExport>(); - for (Map.Entry<String, SensitivityExport> entry : sensibilityExports.entrySet()) { - result.add(entry.getValue()); + for (Map.Entry<SensitivityExport, String> entry : sensibilityExports + .entrySet()) { + result.add(entry.getKey()); } return result; } - public void addSensitivityExport(String name){ + + public void addSensitivityExport(String name) { try { ExportStorage storage = ExportStorage.getExport(name); - SensitivityExport exInstance = (SensitivityExport) storage.getNewExportInstance(); - sensibilityExports.put(name, exInstance); + SensitivityExport exInstance = (SensitivityExport) storage + .getNewExportInstance(); + sensibilityExports.put(exInstance, name); param.setSensitivityExport(getSensitivityExportList()); } catch (IsisFishException ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); } } - public void removeSensitivityExport(SensitivityExport export){ - Map<String, SensitivityExport> se = new HashMap<String, SensitivityExport>(); - for (Map.Entry<String, SensitivityExport> entry : sensibilityExports.entrySet()) { - if (!entry.getValue().equals(export)){ + + public void removeSensitivityExport(SensitivityExport export) { + Map<SensitivityExport, String> se = new HashMap<SensitivityExport, String>(); + for (Map.Entry<SensitivityExport, String> entry : sensibilityExports + .entrySet()) { + if (!entry.getValue().equals(export)) { se.put(entry.getKey(), entry.getValue()); } } sensibilityExports = se; param.setSensitivityExport(getSensitivityExportList()); } - public void clearSensitivityExport(){ + + public void clearSensitivityExport() { sensibilityExports.clear(); param.setSensitivityExport(getSensitivityExportList()); } - public Map<String, Class<?>> getSensitivityExportParameterNames(SensitivityExport export){ + + public Map<String, Class<?>> getSensitivityExportParameterNames( + SensitivityExport export) { return ExportStorage.getParameterNames(export); } - public void setSensitivityExportParameterNames(Export export, String paramName, Object value){ - if (value != null){ + + public void setSensitivityExportParameterValue(Export export, + String paramName, Object value) { + if (value != null) { try { ExportStorage.setParameterValue(export, paramName, value); - } catch (IsisFishException ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + } catch (IsisFishException e) { + if (log.isErrorEnabled()) { + log.error("Can't set sensitivity export param value", e); + } } } } - public List<String> getSensitivityName(){ + + public Object getSensitivityExportParameterValue(Export export, String paramName) { + Object result = null; + try { + result = ExportStorage.getParameterValue(export, paramName); + } catch (IsisFishException e) { + if (log.isErrorEnabled()) { + log.error("Can't get sensitivity export param value", e); + } + } + return result; + } + + public List<String> getSensitivityNames() { return SensitivityStorage.getSensitivityNames(); } - public Map<String, Class<?>> getSensitivityParameterNames(String name){ + + public Map<String, Class<?>> getSensitivityParameterNames(String name) { Map<String, Class<?>> result = null; try { SensitivityStorage sens = SensitivityStorage.getSensitivity(name); result = sens.getParameterNames(); } catch (IsisFishException ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); } return result; } - public Object getSensitivityParameterValue(String paramName){ + + public Object getSensitivityCalculatorParameterValue(String paramName) { Object result = null; try { - result = SensitivityStorage.getParameterValue(param.getSensitivityCalculator(), paramName); + result = SensitivityStorage.getParameterValue(param + .getSensitivityCalculator(), paramName); } catch (IsisFishException ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); showMsgBox(ex); } return result; } - public void setSensitivityParameterValue(String paramName, Object value){ + + public void setSensitivityCalculatorParameterValue(String paramName, + Object value) { try { - if (value != null){ - SensitivityStorage.setParameterValue(param.getSensitivityCalculator(), paramName, value); + if (value != null) { + SensitivityStorage.setParameterValue(param + .getSensitivityCalculator(), paramName, value); } } catch (IsisFishException ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); showMsgBox(ex); } } - public SensitivityStorage getSensitivity(String name){ + + public SensitivityStorage getSensitivity(String name) { return SensitivityStorage.getSensitivity(name); } - public void setSensitivity(String name){ + + public void setSensitivity(String name) { try { sensitivityStorage = SensitivityStorage.getSensitivity(name); - SensitivityCalculator sensCal = sensitivityStorage.getNewSensitivityInstance(); + SensitivityCalculator sensCal = sensitivityStorage + .getNewSensitivityInstance(); sensitivityCalculator = sensCal; param.setSensitivityCalculator(sensitivityCalculator); } catch (IsisFishException ex) { - Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, null, ex); + Logger.getLogger(SimulAction.class.getName()).log(Level.SEVERE, + null, ex); } } - public List<Factor<? extends Serializable>> getFactors(){ + + public List<Factor<? extends Serializable>> getFactors() { List<Factor<? extends Serializable>> result = new ArrayList<Factor<? extends Serializable>>(); for (Map.Entry entry : factors.entrySet()) { - result.add((Factor<? extends Serializable>)entry.getValue()); + result.add((Factor<? extends Serializable>) entry.getValue()); } return result; } - public void addFactor(String path, Factor f, JComponent c){ + + public void addFactor(String path, Factor f, JComponent c) { factors.put(path + f.getName(), f); factorComponent.put(path + f.getName(), c); designPlan.setFactors(getFactors()); } - public Factor<? extends Serializable> getFactor(String name){ + + public Factor<? extends Serializable> getFactor(String name) { return factors.get(name); } - public void addContinuousFactor(String name, String path, Serializable min, Serializable max, JComponent c, boolean exist){ + + public void addContinuousFactor(String name, String path, Serializable min, + Serializable max, JComponent c, boolean exist) { Factor f = new Factor(name); - ContinuousDomain<Serializable> domain = new ContinuousDomain<Serializable>(); + ContinuousDomain<Serializable> domain = new ContinuousDomain<Serializable>(); domain.setMinBound(min); domain.setMaxBound(max); f.setDomain(domain); @@ -759,11 +850,13 @@ removeFactor(path, f); addFactor(path, f, c); } - public void addDiscreteFactor(String name, String path, List<Serializable> values, JComponent c, boolean exist){ + + public void addDiscreteFactor(String name, String path, + List<Serializable> values, JComponent c, boolean exist) { Factor f = new Factor(name); DiscreteDomain<Serializable> domain = new DiscreteDomain<Serializable>(); int i = 0; - for (Serializable value : values){ + for (Serializable value : values) { // FIXME test when integer // Don't work with String ;( domain.getValues().put(i, value); @@ -776,7 +869,10 @@ removeFactor(path, f); addFactor(path, f, c); } - public void addContinuousEquationFactor(String name, String path, EquationContinuousDomain domain, String equation, JComponent c, boolean exist){ + + public void addContinuousEquationFactor(String name, String path, + EquationContinuousDomain domain, String equation, JComponent c, + boolean exist) { Factor f = new Factor(name); f.setValue(equation); f.setDomain(domain); @@ -785,7 +881,10 @@ removeFactor(path, f); addFactor(path, f, c); } - public void addContinuousMatrixFactor(String name, String path, Serializable min, Serializable max, MatrixND matrix, String operateur, JComponent c, boolean exist){ + + public void addContinuousMatrixFactor(String name, String path, + Serializable min, Serializable max, MatrixND matrix, + String operateur, JComponent c, boolean exist) { Factor f = new Factor(name); MatrixContinuousDomain<Serializable> domain = new MatrixContinuousDomain<Serializable>(); domain.setMatrix(matrix); @@ -799,21 +898,23 @@ removeFactor(path, f); addFactor(path, f, c); } - public JComponent getFactorComponent(String path){ + + public JComponent getFactorComponent(String path) { return factorComponent.get(path); } - public void removeFactor(String path, Factor f){ + + public void removeFactor(String path, Factor f) { factors.remove(path + f.getName()); factorComponent.remove(path + f.getName()); designPlan.setFactors(getFactors()); } -/* - ************ - * General - ************ - */ - + /* + ************ + * General + ************ + */ + public SimulationParameter getSimulationParameter() { return param; } @@ -829,7 +930,7 @@ public RegionStorage getRegionStorage() { return regionStorage; } - + public List<SimulatorLauncher> getSimulationLauncher() { return SimulationService.getService().getSimulationLaunchers(); } @@ -844,23 +945,27 @@ * @see SimulatorLauncher */ public void launchSimulation(String simulationId, SimulatorLauncher launcher) { - - String fullSimulationId = "sim_" + simulationId + "_" + dateFormat.format(new java.util.Date()); - + + String fullSimulationId = "sim_" + simulationId + "_" + + DATEFORMAT.format(new java.util.Date()); + // log if (log.isDebugEnabled()) { - log.debug("Launch simulation with custom launcher " + launcher.toString()); + log.debug("Launch simulation with custom launcher " + + launcher.toString()); } - + try { - if ("".equals(fullSimulationId) || - SimulationStorage.localyExists(fullSimulationId) || - SimulationService.getService().exists(fullSimulationId)) { - UserLog.error(_("isisfish.simulator.simulaction.badid", fullSimulationId)); + if ("".equals(fullSimulationId) + || SimulationStorage.localyExists(fullSimulationId) + || SimulationService.getService().exists(fullSimulationId)) { + UserLog.error(_("isisfish.simulator.simulaction.badid", + fullSimulationId)); } else { SimulationParameter p = param.copy(); - SimulationService.getService().submit(fullSimulationId, p, launcher, 0); + SimulationService.getService().submit(fullSimulationId, p, + launcher, 0); } } catch (Exception eee) { if (log.isErrorEnabled()) { @@ -882,26 +987,31 @@ * @see SensitivityCalculator * @see DesignPlan */ - public void launchSimulation(String simulationId, SimulatorLauncher launcher, + public void launchSimulation(String simulationId, + SimulatorLauncher launcher, SensitivityCalculator sensitivityCalculator, DesignPlan designPlan) { - String fullSimulationId = "as_" + simulationId + "_" + dateFormat.format(new java.util.Date()); + String fullSimulationId = "as_" + simulationId + "_" + + DATEFORMAT.format(new java.util.Date()); // log if (log.isDebugEnabled()) { - log.debug("Launch factor simulation with custom launcher " + launcher.toString()); - log.debug("Using sensitivityCalculator : " + sensitivityCalculator.getDescription()); + log.debug("Launch factor simulation with custom launcher " + + launcher.toString()); + log.debug("Using sensitivityCalculator : " + + sensitivityCalculator.getDescription()); } try { - if ("".equals(fullSimulationId) || - SimulationStorage.localyExists(fullSimulationId) || - SimulationService.getService().exists(fullSimulationId)) { - UserLog.error(_("isisfish.simulator.simulaction.badid", fullSimulationId)); + if ("".equals(fullSimulationId) + || SimulationStorage.localyExists(fullSimulationId) + || SimulationService.getService().exists(fullSimulationId)) { + UserLog.error(_("isisfish.simulator.simulaction.badid", + fullSimulationId)); } else { SimulationParameter p = param.copy(); - SimulationService.getService().submit(fullSimulationId, p, launcher, 0, - sensitivityCalculator, designPlan); + SimulationService.getService().submit(fullSimulationId, p, + launcher, 0, sensitivityCalculator, designPlan); } } catch (Exception eee) { if (log.isErrorEnabled()) { @@ -911,10 +1021,12 @@ } } - public void launchSimulationWhithSensibility(String simulationId, SimulatorLauncher launcher) { - launchSimulation(simulationId, launcher, sensitivityCalculator, designPlan); + public void launchSimulationWhithSensibility(String simulationId, + SimulatorLauncher launcher) { + launchSimulation(simulationId, launcher, sensitivityCalculator, + designPlan); } - + /** * Lance la second passe d'une analyse de sensibilité. * @@ -928,11 +1040,16 @@ SortedMap<Integer, SimulationStorage> simulationStorageForAnalyze = new TreeMap<Integer, SimulationStorage>(); File simuationDirectory = SimulationStorage.getSimulationDirectory(); for (File simuation : simuationDirectory.listFiles()) { - if (simuation.isDirectory() && simuation.getName().startsWith(masterSensitivitySimulationName + "_")) { - SimulationStorage storage = SimulationStorage.getSimulation(simuation.getName()); - String suffix = simuation.getName().substring(simuation.getName().lastIndexOf("_") + 1); - simulationStorageForAnalyze.put(Integer.valueOf(suffix), storage); - + if (simuation.isDirectory() + && simuation.getName().startsWith( + masterSensitivitySimulationName + "_")) { + SimulationStorage storage = SimulationStorage + .getSimulation(simuation.getName()); + String suffix = simuation.getName().substring( + simuation.getName().lastIndexOf("_") + 1); + simulationStorageForAnalyze.put(Integer.valueOf(suffix), + storage); + if (sensitivityCalculator == null) { // try to find find calculator name in one storage SimulationParameter params = storage.getParameter(); @@ -944,21 +1061,22 @@ if (sensitivityCalculator != null) { try { // build master sensitivity export directory - File masterExportDirectory = new File(IsisFish.config.getDefaultExportDirectory(), masterSensitivitySimulationName); - if( !masterExportDirectory.isDirectory()) { + File masterExportDirectory = new File(IsisFish.config + .getDefaultExportDirectory(), + masterSensitivitySimulationName); + if (!masterExportDirectory.isDirectory()) { masterExportDirectory.mkdirs(); } - List<SimulationStorage> simulationStorageForAnalyzeList = - new ArrayList<SimulationStorage>(simulationStorageForAnalyze.values()); - sensitivityCalculator.analyzeResult(simulationStorageForAnalyzeList, masterExportDirectory); - } - catch(SensitivityException e) { + List<SimulationStorage> simulationStorageForAnalyzeList = new ArrayList<SimulationStorage>( + simulationStorageForAnalyze.values()); + sensitivityCalculator.analyzeResult( + simulationStorageForAnalyzeList, masterExportDirectory); + } catch (SensitivityException e) { if (log.isErrorEnabled()) { log.error("Can't call analyse result", e); } } - } - else { + } else { if (log.isWarnEnabled()) { log.warn("Can't run sensitivity second pass"); } @@ -972,15 +1090,18 @@ * * @return les fichiers genere lors de la seconde passe (seulement ceux qui ne commence pas par ".") */ - public List<File> getSensitivitySecondPassResults(String masterSensitivitySimulationName) { + public List<File> getSensitivitySecondPassResults( + String masterSensitivitySimulationName) { List<File> result = new ArrayList<File>(); // build master sensitivity export directory - File masterExportDirectory = new File(IsisFish.config.getDefaultExportDirectory(), masterSensitivitySimulationName); - if( masterExportDirectory.isDirectory()) { - for(File exportFile : masterExportDirectory.listFiles()) { - if (exportFile.isFile() && !exportFile.getName().startsWith(".")) { + File masterExportDirectory = new File(IsisFish.config + .getDefaultExportDirectory(), masterSensitivitySimulationName); + if (masterExportDirectory.isDirectory()) { + for (File exportFile : masterExportDirectory.listFiles()) { + if (exportFile.isFile() + && !exportFile.getName().startsWith(".")) { result.add(exportFile); } } Property changes on: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/SimulAction.java ___________________________________________________________________ Name: svn:keywords + Author Date Revision Modified: isis-fish/trunk/src/main/resources/i18n/isis-fish-en_GB.properties =================================================================== --- isis-fish/trunk/src/main/resources/i18n/isis-fish-en_GB.properties 2009-03-19 09:54:08 UTC (rev 2004) +++ isis-fish/trunk/src/main/resources/i18n/isis-fish-en_GB.properties 2009-03-19 10:49:26 UTC (rev 2005) @@ -106,6 +106,7 @@ isisfish.common.info=info isisfish.common.migration=migration isisfish.common.month=month %1$s +isisfish.common.name=Name isisfish.common.new=new isisfish.common.newMatrix=new Matrix isisfish.common.next=next @@ -354,6 +355,7 @@ isisfish.factor.comment=Comment isisfish.factor.continue=Continue factor isisfish.factor.discret=Discret factor +isisfish.factor.factor=Factor isisfish.factor.firstValue=First value isisfish.factor.increment=Cardinality isisfish.factor.lastValue=Last value Modified: isis-fish/trunk/src/main/resources/i18n/isis-fish-fr_FR.properties =================================================================== --- isis-fish/trunk/src/main/resources/i18n/isis-fish-fr_FR.properties 2009-03-19 09:54:08 UTC (rev 2004) +++ isis-fish/trunk/src/main/resources/i18n/isis-fish-fr_FR.properties 2009-03-19 10:49:26 UTC (rev 2005) @@ -106,6 +106,7 @@ isisfish.common.info=Info isisfish.common.migration=migration isisfish.common.month=mois %1$s +isisfish.common.name=Nom isisfish.common.new=Nouveau isisfish.common.newMatrix=Nouvelle matrice isisfish.common.next=Suivant @@ -354,6 +355,7 @@ isisfish.factor.comment=Commentaires isisfish.factor.continue=Facteur continu isisfish.factor.discret=Facteur discret +isisfish.factor.factor=Facteur isisfish.factor.firstValue=Premi\u00E8re valeur isisfish.factor.increment=Cardinalit\u00E9 isisfish.factor.lastValue=Derni\u00E8re valeur
participants (1)
-
chatellier@users.labs.libre-entreprise.org