Isis-fish-commits
Threads by month
- ----- 2026 -----
- August
- July
- 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
January 2009
- 3 participants
- 45 discussions
r1767 - isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input
by sletellier@users.labs.libre-entreprise.org Jan. 30, 2009
by sletellier@users.labs.libre-entreprise.org Jan. 30, 2009
Jan. 30, 2009
Author: sletellier
Date: 2009-01-30 13:12:32 +0000 (Fri, 30 Jan 2009)
New Revision: 1767
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx
Log:
Debug final
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx 2009-01-30 12:47:48 UTC (rev 1766)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx 2009-01-30 13:12:32 UTC (rev 1767)
@@ -87,7 +87,14 @@
getVerifier().addCurrentEntity(getStrategyMonthInfo());
}
if (getStrategyMonthInfo() != null){
+ ActionListener[] listeners = fieldStrategyMonthInfoTripType.getActionListeners();
+ for (ActionListener listener : listeners){
+ fieldStrategyMonthInfoTripType.removeActionListener(listener);
+ }
jaxx.runtime.swing.Utils.fillComboBox(fieldStrategyMonthInfoTripType,getRegion().getTripType(), getStrategyMonthInfo().getTripType());
+ for (ActionListener listener : listeners){
+ fieldStrategyMonthInfoTripType.addActionListener(listener);
+ }
}
}
public void init(int m){
1
0
r1766 - in isis-fish/trunk/src/main: java/fr/ifremer/isisfish/simulator/launcher resources/ssh
by chatellier@users.labs.libre-entreprise.org Jan. 30, 2009
by chatellier@users.labs.libre-entreprise.org Jan. 30, 2009
Jan. 30, 2009
Author: chatellier
Date: 2009-01-30 12:47:48 +0000 (Fri, 30 Jan 2009)
New Revision: 1766
Removed:
isis-fish/trunk/src/main/resources/ssh/launch-isis-pxe.seq
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java
Log:
Retrait du script de test sur pxe
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java 2009-01-30 12:28:41 UTC (rev 1765)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java 2009-01-30 12:47:48 UTC (rev 1766)
@@ -468,7 +468,7 @@
File tempScript = File.createTempFile("launch-isis", ".seq");
tempScript.deleteOnExit(); // auto delete
- String fileContent = getSimulationScriptLaunchContent("ssh/launch-isis-pxe.seq", simuationId, simulationZip);
+ String fileContent = getSimulationScriptLaunchContent("ssh/launch-isis.seq", simuationId, simulationZip);
FileUtil.writeString(tempScript, fileContent);
return tempScript;
@@ -530,7 +530,7 @@
// command to :
// - add script in qsub queue
- String command = "./qsub \"" + scriptRemotePath + "\"";
+ String command = "qsub \"" + scriptRemotePath + "\"";
int exit = SSHUtils.exec(session, command);
Deleted: isis-fish/trunk/src/main/resources/ssh/launch-isis-pxe.seq
===================================================================
--- isis-fish/trunk/src/main/resources/ssh/launch-isis-pxe.seq 2009-01-30 12:28:41 UTC (rev 1765)
+++ isis-fish/trunk/src/main/resources/ssh/launch-isis-pxe.seq 2009-01-30 12:47:48 UTC (rev 1766)
@@ -1,7 +0,0 @@
-#!/bin/bash
-
-cd /home/chatellier/isis-fish-3.2.0.3
-#source /usr/share/modules/init/csh
-#module load java/1.6.0
-
-java -jar isis-fish-3.2.0.3.jar --option launch.ui false --simulateWithSimulation "${simulationid}" "${simulationzip}"
1
0
r1765 - isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input
by sletellier@users.labs.libre-entreprise.org Jan. 30, 2009
by sletellier@users.labs.libre-entreprise.org Jan. 30, 2009
Jan. 30, 2009
Author: sletellier
Date: 2009-01-30 12:28:41 +0000 (Fri, 30 Jan 2009)
New Revision: 1765
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyMonthInfoUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx
Log:
Debug final
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2009-01-30 12:08:08 UTC (rev 1764)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2009-01-30 12:28:41 UTC (rev 1765)
@@ -295,7 +295,6 @@
@Override
public void propertyChange(PropertyChangeEvent evt) {
topiaChanged();
- System.out.println(evt.getSource());
}
});
this.currentEntities.add(currentEntity);
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyMonthInfoUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyMonthInfoUI.jaxx 2009-01-30 12:08:08 UTC (rev 1764)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyMonthInfoUI.jaxx 2009-01-30 12:28:41 UTC (rev 1765)
@@ -39,18 +39,18 @@
public void refresh() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- strategyJanuary.init(Month.JANUARY);
- strategyFebuary.init(Month.FEBRUARY);
- strategyMarch.init(Month.MARCH);
- strategyApril.init(Month.APRIL);
- strategyMay.init(Month.MAY);
- strategyJune.init(Month.JUNE);
- strategyJuly.init(Month.JULY);
- strategyAugust.init(Month.AUGUST);
- strategySeptember.init(Month.SEPTEMBER);
- strategyOctober.init(Month.OCTOBER);
- strategyNovember.init(Month.NOVEMBER);
- strategyDecember.init(Month.DECEMBER);
+ strategyJanuary.init(0);
+ strategyFebuary.init(1);
+ strategyMarch.init(2);
+ strategyApril.init(3);
+ strategyMay.init(4);
+ strategyJune.init(5);
+ strategyJuly.init(6);
+ strategyAugust.init(7);
+ strategySeptember.init(8);
+ strategyOctober.init(9);
+ strategyNovember.init(10);
+ strategyDecember.init(11);
getVerifier().addCurrentPanel(strategyJanuary, strategyFebuary, strategyMarch, strategyApril, strategyMay, strategyJune, strategyJuly, strategyAugust, strategySeptember, strategyOctober, strategyNovember, strategyDecember);
}
]]></script>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx 2009-01-30 12:08:08 UTC (rev 1764)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx 2009-01-30 12:28:41 UTC (rev 1765)
@@ -49,7 +49,7 @@
import fr.ifremer.isisfish.entities.TripType;
import fr.ifremer.isisfish.ui.widget.editor.GenericCell;
-Month month = null;
+int month = 0;
PropertyChangeListener listener = null;
addPropertyChangeListener("bean", new PropertyChangeListener() {
@@ -71,7 +71,9 @@
@Override
public void propertyChange(PropertyChangeEvent evt) {
if (fieldStrategyMonthInfoProportion.getMatrix() != null){
- getStrategyMonthInfo().setProportionMetier(fieldStrategyMonthInfoProportion.getMatrix());
+ if (fieldStrategyMonthInfoProportion.getMatrix() != null){
+ getStrategyMonthInfo().setProportionMetier(fieldStrategyMonthInfoProportion.getMatrix());
+ }
}
}
});
@@ -79,14 +81,16 @@
Strategy strategy = (Strategy)getVerifier().getEntity(Strategy.class);
setBean((StrategyImpl) strategy);
if (getBean() != null){
- setStrategyMonthInfo((StrategyMonthInfoImpl)getBean().getStrategyMonthInfo(month));
+// setStrategyMonthInfo((StrategyMonthInfoImpl)getBean().getStrategyMonthInfo(month));
+ Object[] monthInfos = getBean().getStrategyMonthInfo().toArray();
+ setStrategyMonthInfo((StrategyMonthInfoImpl) monthInfos[month]);
getVerifier().addCurrentEntity(getStrategyMonthInfo());
}
if (getStrategyMonthInfo() != null){
jaxx.runtime.swing.Utils.fillComboBox(fieldStrategyMonthInfoTripType,getRegion().getTripType(), getStrategyMonthInfo().getTripType());
}
}
-public void init(Month m){
+public void init(int m){
month = m;
}
]]></script>
1
0
r1764 - isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input
by sletellier@users.labs.libre-entreprise.org Jan. 30, 2009
by sletellier@users.labs.libre-entreprise.org Jan. 30, 2009
Jan. 30, 2009
Author: sletellier
Date: 2009-01-30 12:08:08 +0000 (Fri, 30 Jan 2009)
New Revision: 1764
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyTabUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx
Log:
Debug final - one bug left
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx 2009-01-30 09:34:10 UTC (rev 1763)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx 2009-01-30 12:08:08 UTC (rev 1764)
@@ -34,6 +34,7 @@
<!-- bean property -->
<fr.ifremer.isisfish.entities.SetOfVesselsImpl id='bean' javaBean='null'/>
+
<fr.ifremer.isisfish.entities.EffortDescriptionImpl id='effortDescription' javaBean='null'/>
<script><![CDATA[
@@ -119,7 +120,7 @@
<row>
<cell fill='both' weightx='1.0' weighty='1.0'>
<JScrollPane>
- <JList id="fieldEffortDescriptionEffortDescriptionList" selectionMode="0" onMouseClicked='setEffortDescription((EffortDescriptionImpl)fieldEffortDescriptionEffortDescriptionList.getSelectedValue())' enabled='{isActif()}'/>
+ <JList id="fieldEffortDescriptionEffortDescriptionList" selectionMode="0" onMouseClicked='setEffortDescription((EffortDescriptionImpl)fieldEffortDescriptionEffortDescriptionList.getSelectedValue());getVerifier().addCurrentEntity(getEffortDescription())' enabled='{isActif()}'/>
</JScrollPane>
</cell>
</row>
@@ -140,7 +141,7 @@
<JLabel text="isisfish.effortDescription.fishingOperationDuration" enabled='{isActif()}'/>
</cell>
<cell fill='horizontal' weightx='1.0'>
- <JTextField id="fieldEffortDescriptionFishingOperationDuration" text='{jaxx.runtime.Util.getStringValue(getEffortDescription().getFishingOperationDuration())}' onKeyReleased='getEffortDescription().setFishingOperationDuration(new TimeUnit(Double.parseDouble(fieldEffortDescriptionFishingOperationDuration.getText())))' enabled='{isActif()}'/>
+ <JTextField id="fieldEffortDescriptionFishingOperationDuration" text='{getEffortDescription().getFishingOperationDuration() == null ? "" : getEffortDescription().getFishingOperationDuration().getHour()}' onKeyReleased='getEffortDescription().setFishingOperationDuration(new TimeUnit(Double.parseDouble(fieldEffortDescriptionFishingOperationDuration.getText())))' enabled='{isActif()}'/>
</cell>
</row>
<row>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2009-01-30 09:34:10 UTC (rev 1763)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2009-01-30 12:08:08 UTC (rev 1764)
@@ -295,6 +295,7 @@
@Override
public void propertyChange(PropertyChangeEvent evt) {
topiaChanged();
+ System.out.println(evt.getSource());
}
});
this.currentEntities.add(currentEntity);
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx 2009-01-30 09:34:10 UTC (rev 1763)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx 2009-01-30 12:08:08 UTC (rev 1764)
@@ -153,7 +153,18 @@
}
}
protected void remove(){
- refresh();
+ Object season = ((GenericCell)fieldMetierSeasonInfo.getSelectedItem()).getValue();
+ if (season != null){
+ MetierSeasonInfo m = (MetierSeasonInfo) season;
+ Object[] targetSpecies = m.getSpeciesTargetSpecies().toArray();
+
+ Object o = targetSpecies[tableTargetSpecies.getSelectedRow() + 1];
+ if (o != null){
+ TargetSpecies ts = (TargetSpecies)o;
+ getAction().removeTargetSpecies(m, ts);
+ refresh();
+ }
+ }
}
protected void metierSeasonChanged(){
setTableTargetSpeciesModel();
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx 2009-01-30 09:34:10 UTC (rev 1763)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx 2009-01-30 12:08:08 UTC (rev 1764)
@@ -52,6 +52,7 @@
import fr.ifremer.isisfish.entities.MetierImpl;
import jaxx.runtime.swing.Item;
+ protected Interval interval = null;
protected IntervalPanel ip = new IntervalPanel();
displayMetierSeason.add(ip, BorderLayout.CENTER);
ip.addPropertyChangeListener("first", new PropertyChangeListener() {
@@ -110,49 +111,64 @@
Metier metier = getVerifier().getEntity(Metier.class);
setBean((MetierImpl) metier);
if (getBean() != null){
+ // Model instanciation
+ interval = new Interval();
+ interval.setMin(0);
+ interval.setMax(11);
+ interval.setFirst(0);
+ interval.setLast(2);
+
setCombo();
- if (getMetierSeasonInfo() != null){
-
- // Model instanciation
- Interval interval = new Interval();
- interval.setMin(0);
- interval.setMax(11);
- interval.setFirst(0);
- interval.setLast(2);
+ setSeason();
+ setMetierZone();
+
+ ip.setLabelRenderer(Month.MONTH);
+ ip.setModel(interval);
+ }
+ }
+ protected void setSeason(){
+ if (getMetierSeasonInfo() != null){
- try {
- log.debug("************** Interval ************");
- Month firstMonth = getMetierSeasonInfo().getFirstMonth();
- if (firstMonth != null) {
- interval.setFirst(firstMonth.getMonthNumber());
- log.debug(" first : " + interval.getFirst());
- } else {
- interval.setFirst(0);
- }
+ try {
+ log.debug("************** Interval ************");
+ Month firstMonth = getMetierSeasonInfo().getFirstMonth();
+ if (firstMonth != null) {
+ interval.setFirst(firstMonth.getMonthNumber());
+ log.debug(" first : " + interval.getFirst());
+ } else {
+ interval.setFirst(0);
+ }
- Month lastMonth = getMetierSeasonInfo().getLastMonth();
- if (lastMonth != null) {
- interval.setLast(lastMonth.getMonthNumber());
- log.debug(" last : " + interval.getLast());
- } else {
- interval.setLast(3);
- }
- } catch (Exception e) {
- log.error("Unexpected origin.", e);
- // Only trace the error and go on.
+ Month lastMonth = getMetierSeasonInfo().getLastMonth();
+ if (lastMonth != null) {
+ interval.setLast(lastMonth.getMonthNumber());
+ log.debug(" last : " + interval.getLast());
+ } else {
+ interval.setLast(3);
}
- ip.setLabelRenderer(Month.MONTH);
- ip.setModel(interval);
-
- metierZones.fillList(getRegion().getZone(), getMetierSeasonInfo().getZone());
+ } catch (Exception e) {
+ log.error("Unexpected origin.", e);
+ // Only trace the error and go on.
}
- }
- }
+ }
+ }
+ protected void setMetierZone(){
+ if (getMetierSeasonInfo() != null){
+ ListSelectionListener[] listeners = metierZones.getListSelectionListeners();
+ for (ListSelectionListener listener : listeners){
+ metierZones.removeListSelectionListener(listener);
+ }
+ metierZones.fillList(getRegion().getZone(), getMetierSeasonInfo().getZone());
+ for (ListSelectionListener listener : listeners){
+ metierZones.addListSelectionListener(listener);
+ }
+ }
+ }
protected void setCombo(){
java.util.List<Item> items = new ArrayList<Item>();
- java.util.List<MetierSeasonInfo> metierSeasonInfo = getBean().getMetierSeasonInfo();
- if (metierSeasonInfo != null){
- for (MetierSeasonInfo m : metierSeasonInfo){
+ java.util.List<MetierSeasonInfo> metierSeasonInfoList = getBean().getMetierSeasonInfo();
+ if (metierSeasonInfoList != null){
+ for (MetierSeasonInfo m : metierSeasonInfoList){
items.add(new Item(m.getFirstMonth().toString() + "-" + m.getLastMonth().toString(), m.getFirstMonth().toString() + "-" + m.getLastMonth().toString(), m, false));
}
}
@@ -175,7 +191,7 @@
</cell>
<cell fill='horizontal' weightx='1.0'>
<JComboBox id="fieldMetierSeasonChoice"
- onActionPerformed='refresh();setMetierSeasonInfo((MetierSeasonInfoImpl)fieldMetierSeasonChoice.getSelectedItem());getVerifier().addCurrentEntity(getMetierSeasonInfo());setMetierSeasonInfoNotNull(getMetierSeasonInfo() != null);'
+ onActionPerformed='setMetierSeasonInfo((MetierSeasonInfoImpl)fieldMetierSeasonChoice.getSelectedItem());getVerifier().addCurrentEntity(getMetierSeasonInfo());setMetierSeasonInfoNotNull(getMetierSeasonInfo() != null);setSeason();setMetierZone();'
enabled='{isActif()}'/>
</cell>
</row>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx 2009-01-30 09:34:10 UTC (rev 1763)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx 2009-01-30 12:08:08 UTC (rev 1764)
@@ -124,7 +124,6 @@
interval.setMax(11);
interval.setFirst(0);
interval.setLast(2);
- ip.setModel(interval);
if(getPopulationSeasonInfo() != null){
try {
log.debug("************** Interval ************");
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx 2009-01-30 09:34:10 UTC (rev 1763)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx 2009-01-30 12:08:08 UTC (rev 1764)
@@ -80,6 +80,7 @@
setBean((StrategyImpl) strategy);
if (getBean() != null){
setStrategyMonthInfo((StrategyMonthInfoImpl)getBean().getStrategyMonthInfo(month));
+ getVerifier().addCurrentEntity(getStrategyMonthInfo());
}
if (getStrategyMonthInfo() != null){
jaxx.runtime.swing.Utils.fillComboBox(fieldStrategyMonthInfoTripType,getRegion().getTripType(), getStrategyMonthInfo().getTripType());
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyTabUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyTabUI.jaxx 2009-01-30 09:34:10 UTC (rev 1763)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyTabUI.jaxx 2009-01-30 12:08:08 UTC (rev 1764)
@@ -78,7 +78,14 @@
}
}
protected void setSetOfVesselsModel(){
- jaxx.runtime.swing.Utils.fillComboBox(fieldStrategySetOfVessels,getRegion().getSetOfVessels(), getBean().getSetOfVessels());
+ ActionListener[] listeners = fieldStrategySetOfVessels.getActionListeners();
+ for (ActionListener listener : listeners){
+ fieldStrategySetOfVessels.removeActionListener(listener);
+ }
+ jaxx.runtime.swing.Utils.fillComboBox(fieldStrategySetOfVessels,getRegion().getSetOfVessels(), getBean().getSetOfVessels());
+ for (ActionListener listener : listeners){
+ fieldStrategySetOfVessels.addActionListener(listener);
+ }
}
]]></script>
<Table id='body'>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx 2009-01-30 09:34:10 UTC (rev 1763)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx 2009-01-30 12:08:08 UTC (rev 1764)
@@ -95,7 +95,9 @@
refreshMap();
}
protected void setZoneCells(){
- zoneCells.fillList(getRegion().getCell(), getBean() == null ? null : getBean().getCell());
+ if (getBean() != null){
+ zoneCells.fillList(getRegion().getCell(), getBean().getCell());
+ }
}
protected void setMapListener(){
if (mapListener == null){
1
0
r1763 - isis-fish/trunk/src/main/resources/i18n
by sletellier@users.labs.libre-entreprise.org Jan. 30, 2009
by sletellier@users.labs.libre-entreprise.org Jan. 30, 2009
Jan. 30, 2009
Author: sletellier
Date: 2009-01-30 09:34:10 +0000 (Fri, 30 Jan 2009)
New Revision: 1763
Modified:
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:
Traduction
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-01-30 09:28:04 UTC (rev 1762)
+++ isis-fish/trunk/src/main/resources/i18n/isis-fish-en_GB.properties 2009-01-30 09:34:10 UTC (rev 1763)
@@ -444,8 +444,7 @@
isisfish.infoItem.sum=defaultToolTip-fr.ifremer.resultat.InfoItemDate.sumButton
isisfish.infoItem.sum.year=Sum elements per year
isisfish.infoItem.table=defaultToolTip-fr.ifremer.resultat.InfoItem.table30
-isisfish.input.continueCell=Continue to cells
-isisfish.input.continueCells=
+isisfish.input.continueCells=Continue to cells
isisfish.input.continueGears=Continue to gears
isisfish.input.continueMetiers=Continue to metiers
isisfish.input.continuePopulations=Continue to populations
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-01-30 09:28:04 UTC (rev 1762)
+++ isis-fish/trunk/src/main/resources/i18n/isis-fish-fr_FR.properties 2009-01-30 09:34:10 UTC (rev 1763)
@@ -444,8 +444,8 @@
isisfish.infoItem.sum=defaultToolTip-fr.ifremer.resultat.InfoItemDate.sumButton
isisfish.infoItem.sum.year=Somme de \u00E9l\u00E9ment par ann\u00E9e
isisfish.infoItem.table=defaultToolTip-fr.ifremer.resultat.InfoItem.table30
-isisfish.input.continueCell=Continuer vers les cells
-isisfish.input.continueCells=
+isisfish.input.continueCells=Continuer vers les cells
+isisfish.input.continueZones=Continuer vers les zones
isisfish.input.continueGears=Continuer vers les gears
isisfish.input.continueMetiers=Continuer vers les metiers
isisfish.input.continuePopulations=Continuer vers les populations
1
0
r1762 - in isis-fish/trunk/src/main: java/fr/ifremer/isisfish/ui/input resources/i18n
by sletellier@users.labs.libre-entreprise.org Jan. 30, 2009
by sletellier@users.labs.libre-entreprise.org Jan. 30, 2009
Jan. 30, 2009
Author: sletellier
Date: 2009-01-30 09:28:04 +0000 (Fri, 30 Jan 2009)
New Revision: 1762
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/FisheryRegionUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/GearUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/TripTypeUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx
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:
Traduction
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx 2009-01-30 09:28:04 UTC (rev 1762)
@@ -140,7 +140,7 @@
<JLabel text="isisfish.effortDescription.fishingOperationDuration" enabled='{isActif()}'/>
</cell>
<cell fill='horizontal' weightx='1.0'>
- <JTextField id="fieldEffortDescriptionFishingOperationDuration" text='{getEffortDescription().getFishingOperationDuration()}' onKeyReleased='getEffortDescription().setFishingOperationDuration(new TimeUnit(Double.parseDouble(fieldEffortDescriptionFishingOperationDuration.getText())))' enabled='{isActif()}'/>
+ <JTextField id="fieldEffortDescriptionFishingOperationDuration" text='{jaxx.runtime.Util.getStringValue(getEffortDescription().getFishingOperationDuration())}' onKeyReleased='getEffortDescription().setFishingOperationDuration(new TimeUnit(Double.parseDouble(fieldEffortDescriptionFishingOperationDuration.getText())))' enabled='{isActif()}'/>
</cell>
</row>
<row>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/FisheryRegionUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/FisheryRegionUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/FisheryRegionUI.jaxx 2009-01-30 09:28:04 UTC (rev 1762)
@@ -47,7 +47,7 @@
protected OMToolSet toolSet = new OMToolSet();
-setButtonTitle("isisfish.input.continueCells");
+setButtonTitle(_("isisfish.input.continueCells"));
setNextPath("$root/$cells");
public void refresh(){
getVerifier().setSaveButton(save, false);
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/GearUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/GearUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/GearUI.jaxx 2009-01-30 09:28:04 UTC (rev 1762)
@@ -39,11 +39,11 @@
<script><![CDATA[
import fr.ifremer.isisfish.entities.Metier;
-setButtonTitle("isisfish.input.continueMetiers");
+setButtonTitle(_("isisfish.input.continueMetiers"));
setNextPath("$root/$metiers");
gearTab.addChangeListener(new InputTabbedPaneListener());
public void refresh() {
- getVerifier().addCurrentPanel(gearTabUI, selectivityUI);
+ getVerifier().addCurrentPanel(selectivityUI ,gearTabUI);
}
]]></script>
<JPanel id='body' layout='{new BorderLayout()}'>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx 2009-01-30 09:28:04 UTC (rev 1762)
@@ -41,7 +41,7 @@
import fr.ifremer.isisfish.entities.MetierImpl;
import fr.ifremer.isisfish.entities.Metier;
-setButtonTitle("isisfish.input.continueTripTypes");
+setButtonTitle(_("isisfish.input.continueTripTypes"));
setNextPath("$root/$tripTypes");
metierTab.addChangeListener(new InputTabbedPaneListener());
public void refresh() {
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationUI.jaxx 2009-01-30 09:28:04 UTC (rev 1762)
@@ -46,11 +46,11 @@
import fr.ifremer.isisfish.entities.Population;
import fr.ifremer.isisfish.entities.PopulationImpl;
-setButtonTitle("isisfish.input.continueGears");
+setButtonTitle(_("isisfish.input.continueGears"));
setNextPath("$root/$gears");
populationTab.addChangeListener(new InputTabbedPaneListener());
public void refresh(){
- getVerifier().addCurrentPanel(populationBasicsUI, populationGroupUI, populationEquationUI, populationZoneUI, populationSeasonsUI, populationCapturabilityUI, populationRecruitementUI, populationMigrationUI);
+ getVerifier().addCurrentPanel(populationMigrationUI, populationRecruitementUI, populationCapturabilityUI, populationSeasonsUI, populationZoneUI, populationEquationUI, populationGroupUI, populationBasicsUI);
}
]]>
</script>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx 2009-01-30 09:28:04 UTC (rev 1762)
@@ -58,7 +58,7 @@
protected OMToolSet toolSet = new OMToolSet();
protected OpenMapEvents mapListener = null;
-setButtonTitle("isisfish.input.continueSpecies");
+setButtonTitle(_("isisfish.input.continueSpecies"));
setNextPath("$root/$species");
addPropertyChangeListener("bean", new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsUI.jaxx 2009-01-30 09:28:04 UTC (rev 1762)
@@ -39,11 +39,11 @@
<script><![CDATA[
-setButtonTitle("isisfish.input.continueStrategies");
+setButtonTitle(_("isisfish.input.continueStrategies"));
setNextPath("$root/$strategies");
setOfVesselsTab.addChangeListener(new InputTabbedPaneListener());
public void refresh() {
- getVerifier().addCurrentPanel(setOfVesselsTabsUI, effortDescriptionUI);
+ getVerifier().addCurrentPanel(effortDescriptionUI, setOfVesselsTabsUI);
}
]]></script>
<JPanel id='body' layout='{new BorderLayout()}'>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesUI.jaxx 2009-01-30 09:28:04 UTC (rev 1762)
@@ -44,7 +44,7 @@
import fr.ifremer.isisfish.entities.Species;
import fr.ifremer.isisfish.entities.SpeciesImpl;
-setButtonTitle("isisfish.input.continuePopulations");
+setButtonTitle(_("isisfish.input.continuePopulations"));
addPropertyChangeListener("bean", new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
if (evt.getOldValue() != null || evt.getNewValue() == null) {
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyUI.jaxx 2009-01-30 09:28:04 UTC (rev 1762)
@@ -39,7 +39,7 @@
strategyTab.addChangeListener(new InputTabbedPaneListener());
public void refresh() {
- getVerifier().addCurrentPanel(strategyTabUI, strategyMonthInfoUI);
+ getVerifier().addCurrentPanel(strategyMonthInfoUI, strategyTabUI);
}
]]></script>
<JPanel id='body' layout='{new BorderLayout()}'>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/TripTypeUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/TripTypeUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/TripTypeUI.jaxx 2009-01-30 09:28:04 UTC (rev 1762)
@@ -43,7 +43,7 @@
import fr.ifremer.isisfish.entities.TripTypeImpl;
import fr.ifremer.isisfish.types.TimeUnit;
-setButtonTitle("isisfish.input.continueVesselTypes");
+setButtonTitle(_("isisfish.input.continueVesselTypes"));
setNextPath("$root/$vesselTypes");
addPropertyChangeListener("bean", new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx 2009-01-30 09:28:04 UTC (rev 1762)
@@ -42,7 +42,7 @@
import fr.ifremer.isisfish.entities.TripType;
import fr.ifremer.isisfish.types.TimeUnit;
-setButtonTitle("isisfish.input.continueSetOfVessels");
+setButtonTitle(_("isisfish.input.continueSetOfVessels"));
setNextPath("$root/$setOfVessels");
addPropertyChangeListener("bean", new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
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-01-29 17:57:45 UTC (rev 1761)
+++ isis-fish/trunk/src/main/resources/i18n/isis-fish-en_GB.properties 2009-01-30 09:28:04 UTC (rev 1762)
@@ -444,8 +444,18 @@
isisfish.infoItem.sum=defaultToolTip-fr.ifremer.resultat.InfoItemDate.sumButton
isisfish.infoItem.sum.year=Sum elements per year
isisfish.infoItem.table=defaultToolTip-fr.ifremer.resultat.InfoItem.table30
-isisfish.input.continuePorts=Continue to Ports
-isisfish.input.continueZones=Continue to Zones
+isisfish.input.continueCell=Continue to cells
+isisfish.input.continueCells=
+isisfish.input.continueGears=Continue to gears
+isisfish.input.continueMetiers=Continue to metiers
+isisfish.input.continuePopulations=Continue to populations
+isisfish.input.continuePorts=Continue to ports
+isisfish.input.continueSetOfVessels=Continue to set of vessels
+isisfish.input.continueSpecies=
+isisfish.input.continueStrategies=Continue to strategies
+isisfish.input.continueTripTypes=Continue to trip type
+isisfish.input.continueVesselTypes=Continue to vessel types
+isisfish.input.continueZones=Continue to zones
isisfish.input.menu.addRegion=Add region
isisfish.input.menu.commit=Commit change
isisfish.input.menu.copyRegion=Copy Region
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-01-29 17:57:45 UTC (rev 1761)
+++ isis-fish/trunk/src/main/resources/i18n/isis-fish-fr_FR.properties 2009-01-30 09:28:04 UTC (rev 1762)
@@ -444,8 +444,17 @@
isisfish.infoItem.sum=defaultToolTip-fr.ifremer.resultat.InfoItemDate.sumButton
isisfish.infoItem.sum.year=Somme de \u00E9l\u00E9ment par ann\u00E9e
isisfish.infoItem.table=defaultToolTip-fr.ifremer.resultat.InfoItem.table30
+isisfish.input.continueCell=Continuer vers les cells
+isisfish.input.continueCells=
+isisfish.input.continueGears=Continuer vers les gears
+isisfish.input.continueMetiers=Continuer vers les metiers
+isisfish.input.continuePopulations=Continuer vers les populations
isisfish.input.continuePorts=Continuer vers les ports
-isisfish.input.continueZones=Continuer vers les zones
+isisfish.input.continueSetOfVessels=Continuer vers les set of vessels
+isisfish.input.continueSpecies=Continuer vers les esp\u00E8ces
+isisfish.input.continueStrategies=Continuer vers les strategies
+isisfish.input.continueTripTypes=Continuer vers les trip type
+isisfish.input.continueVesselTypes=Continuer vers les vessel type
isisfish.input.menu.addRegion=Ajouter une r\u00E9gion
isisfish.input.menu.commit=Sauvegarder les changements
isisfish.input.menu.copyRegion=Copier r\u00E9gion
1
0
r1761 - in isis-fish/trunk/src/main: java/fr/ifremer/isisfish/entities java/fr/ifremer/isisfish/ui/input resources/i18n
by sletellier@users.labs.libre-entreprise.org Jan. 29, 2009
by sletellier@users.labs.libre-entreprise.org Jan. 29, 2009
Jan. 29, 2009
Author: sletellier
Date: 2009-01-29 17:57:45 +0000 (Thu, 29 Jan 2009)
New Revision: 1761
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/entities/PopulationImpl.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/entities/PopulationSeasonInfoImpl.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/entities/SetOfVesselsImpl.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/entities/StrategyImpl.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/GearTabUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputAction.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputTabbedPaneListener.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierTabUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEmigrationUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationImmigrationUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationMigrationUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsTabsUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx
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:
Debug final -1
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/entities/PopulationImpl.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/entities/PopulationImpl.java 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/entities/PopulationImpl.java 2009-01-29 17:57:45 UTC (rev 1761)
@@ -155,8 +155,16 @@
}
eq.setName(getName());
+
+ // Fire
+ String _oldValue = eq.getContent();
+ fireOnPreWrite("content", _oldValue, content);
+
eq.setContent(content);
eq.update();
+
+ fireOnPostWrite("content", _oldValue, content);
+
} catch (TopiaException eee) {
throw new IsisFishRuntimeException(_("isisfish.change.equation"), eee);
}
@@ -176,8 +184,16 @@
}
eq.setName(getName());
+
+ // Fire
+ String _oldValue = eq.getContent();
+ fireOnPreWrite("content", _oldValue, content);
+
eq.setContent(content);
eq.update();
+
+ fireOnPostWrite("content", _oldValue, content);
+
} catch (TopiaException eee) {
throw new IsisFishRuntimeException(_("isisfish.error.change.equation"), eee);
}
@@ -197,8 +213,16 @@
}
eq.setName(getName());
+
+ // Fire
+ String _oldValue = eq.getContent();
+ fireOnPreWrite("content", _oldValue, content);
+
eq.setContent(content);
eq.update();
+
+ fireOnPostWrite("content", _oldValue, content);
+
} catch (TopiaException eee) {
throw new IsisFishRuntimeException(_("isisfish.error.change.equation"), eee);
}
@@ -218,8 +242,16 @@
}
eq.setName(getName());
+
+ // Fire
+ String _oldValue = eq.getContent();
+ fireOnPreWrite("content", _oldValue, content);
+
eq.setContent(content);
eq.update();
+
+ fireOnPostWrite("content", _oldValue, content);
+
} catch (TopiaException eee) {
throw new IsisFishRuntimeException(_("isisfish.error.change.equation"), eee);
}
@@ -239,8 +271,16 @@
}
eq.setName(getName());
+
+ // Fire
+ String _oldValue = eq.getContent();
+ fireOnPreWrite("content", _oldValue, content);
+
eq.setContent(content);
eq.update();
+
+ fireOnPostWrite("content", _oldValue, content);
+
} catch (TopiaException eee) {
throw new IsisFishRuntimeException(_("isisfish.error.change.equation"), eee);
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/entities/PopulationSeasonInfoImpl.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/entities/PopulationSeasonInfoImpl.java 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/entities/PopulationSeasonInfoImpl.java 2009-01-29 17:57:45 UTC (rev 1761)
@@ -648,8 +648,16 @@
if (getPopulation() != null) {
eq.setName(getPopulation().getName() + "(" + toString() + ")");
}
+
+ // Fire
+ String _oldValue = eq.getContent();
+ fireOnPreWrite("content", _oldValue, content);
+
eq.setContent(content);
eq.update();
+
+ fireOnPostWrite("content", _oldValue, content);
+
} catch (TopiaException eee) {
throw new IsisFishRuntimeException(_("isisfish.error.change.equation"), eee);
}
@@ -672,8 +680,16 @@
if (getPopulation() != null) {
eq.setName(getPopulation().getName() + "(" + toString() + ")");
}
+
+ // Fire
+ String _oldValue = eq.getContent();
+ fireOnPreWrite("content", _oldValue, content);
+
eq.setContent(content);
eq.update();
+
+ fireOnPostWrite("content", _oldValue, content);
+
} catch (TopiaException eee) {
throw new IsisFishRuntimeException(_("isisfish.error.change.equation"), eee);
}
@@ -696,8 +712,16 @@
if (getPopulation() != null) {
eq.setName(getPopulation().getName() + "(" + toString() + ")");
}
+
+ // Fire
+ String _oldValue = eq.getContent();
+ fireOnPreWrite("content", _oldValue, content);
+
eq.setContent(content);
eq.update();
+
+ fireOnPostWrite("content", _oldValue, content);
+
} catch (TopiaException eee) {
throw new IsisFishRuntimeException(_("isisfish.error.change.equation"), eee);
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/entities/SetOfVesselsImpl.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/entities/SetOfVesselsImpl.java 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/entities/SetOfVesselsImpl.java 2009-01-29 17:57:45 UTC (rev 1761)
@@ -91,8 +91,16 @@
}
eq.setName(getName());
+
+ // Fire
+ String _oldValue = eq.getContent();
+ fireOnPreWrite("content", _oldValue, content);
+
eq.setContent(content);
eq.update();
+
+ fireOnPostWrite("content", _oldValue, content);
+
} catch (TopiaException eee) {
throw new IsisFishRuntimeException(_("isisfish.change.equation"), eee);
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/entities/StrategyImpl.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/entities/StrategyImpl.java 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/entities/StrategyImpl.java 2009-01-29 17:57:45 UTC (rev 1761)
@@ -145,8 +145,16 @@
}
eq.setName(getName());
+
+ // Fire
+ String _oldValue = eq.getContent();
+ fireOnPreWrite("content", _oldValue, content);
+
eq.setContent(content);
eq.update();
+
+ fireOnPostWrite("content", _oldValue, content);
+
} catch (TopiaException eee) {
throw new IsisFishRuntimeException(_("isisfish.change.equation"), eee);
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/GearTabUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/GearTabUI.jaxx 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/GearTabUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
@@ -117,7 +117,7 @@
<JComboBox id="fieldGearParamType" model='{new DefaultComboBoxModel(fr.ifremer.isisfish.types.RangeOfValues.getPossibleTypes())}' onActionPerformed='getBean().setParameterName(fieldGearParamName.getSelectedText())' enabled='{isActif()}'/>
</cell>
<cell fill='horizontal' weightx='0.5'>
- <JTextField id="fieldGearParamPossibleValue" text='{getBean().getPossibleValue().getValues()}' onKeyReleased='getBean().setStandardisationFactor(Double.parseDouble(fieldGearParamPossibleValue.getText()))' enabled='{isActif()}'/>
+ <JTextField id="fieldGearParamPossibleValue" text='{getBean().getPossibleValue() == null ? null : getBean().getPossibleValue().getValues()}' onKeyReleased='getBean().setStandardisationFactor(Double.parseDouble(fieldGearParamPossibleValue.getText()))' enabled='{isActif()}'/>
</cell>
</row>
<row>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputAction.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputAction.java 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputAction.java 2009-01-29 17:57:45 UTC (rev 1761)
@@ -538,7 +538,7 @@
*/
public Object saveAsModel(String category, String language, String content) {
try {
- String name = showInputDialog("");
+ String name = showInputDialog("isisfish.message.saveModel.dialog");
if ("".equals(name)) {
// showMsgBox("Error " +_("isisfish.error.invalid.equation.name"));
}
@@ -756,6 +756,67 @@
return null;
}
+ public void createPopulationSeasonInfo(Population pop) {
+ log.debug("createSeasonInfo called");
+ try {
+ PopulationSeasonInfoDAO dao = IsisFishDAOHelper.getPopulationSeasonInfoDAO(pop.getTopiaContext());
+ PopulationSeasonInfo seasonInfo = dao.create();
+ seasonInfo.setFirstMonth(Month.MONTH[0]);
+ seasonInfo.setLastMonth(Month.MONTH[3]);
+ pop.addPopulationSeasonInfo(seasonInfo);
+ seasonInfo.setPopulation(pop);
+ seasonInfo.update();
+ pop.update();
+// isisContext.commitTransaction();
+ } catch (Exception eee) {
+ log.error("Can't create PopulationSeasonInfo", eee);
+ showMsgBox(eee);
+ }
+ }
+
+ public void removePopulationSeasonInfo(Population pop, PopulationSeasonInfo populationSeasonInfo) {
+ log.debug("removeSeasonInfo called");
+ try {
+ pop.removePopulationSeasonInfo(populationSeasonInfo);
+ pop.update();
+ pop.getTopiaContext().commitTransaction();
+ } catch (Exception eee) {
+ log.error("Can't remove PopulationSeasonInfo", eee);
+ showMsgBox(eee);
+ }
+ }
+
+ public void createMetierSeasonInfo(Metier metier){
+ log.debug("createSeasonInfo called");
+ try {
+ MetierSeasonInfoDAO metierSeasonInfoPS = IsisFishDAOHelper.getMetierSeasonInfoDAO(metier.getTopiaContext());
+ MetierSeasonInfo metierSeasonInfo = metierSeasonInfoPS.create();
+ metierSeasonInfo.setFirstMonth(Month.MONTH[0]);
+ metierSeasonInfo.setLastMonth(Month.MONTH[3]);
+ metier.addMetierSeasonInfo(metierSeasonInfo);
+ metierSeasonInfo.update();
+ metier.update();
+// isisContext.commitTransaction();
+
+ }catch(Exception eee){
+ log.error("Can't create MetierSeasonInfo", eee);
+ showMsgBox(eee);
+ }
+ }
+
+ public void removeMetierSeasonInfo(Metier metier, MetierSeasonInfo info){
+ log.debug("createSeasonInfo called");
+ try {
+ metier.removeMetierSeasonInfo(info);
+ metier.update();
+ metier.getTopiaContext().commitTransaction();
+
+ }catch(Exception eee){
+ log.error("Can't create MetierSeasonInfo", eee);
+ showMsgBox(eee);
+ }
+ }
+
public Object createRecruitmentDistribution(Population pop) {
if (log.isTraceEnabled()) {
log.trace("createRecruitmentDistributionontext called: " + pop);
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
@@ -58,24 +58,32 @@
protected String methodSet;
protected String name;
protected Equation selectedEquation;
+protected DocumentListener listener = null;
-editor.getCurrentEditor().addDocumentListener(new DocumentListener() {
+start();
+protected void start(){
+ if (listener == null){
+ listener = new DocumentListener() {
- @Override
- public void insertUpdate(DocumentEvent e) {
- }
+ @Override
+ public void insertUpdate(DocumentEvent e) {
+ setEquation();
+ }
- @Override
- public void removeUpdate(DocumentEvent e) {
- }
+ @Override
+ public void removeUpdate(DocumentEvent e) {
+ setEquation();
+ }
- @Override
- public void changedUpdate(DocumentEvent e) {
- setEquation();
+ @Override
+ public void changedUpdate(DocumentEvent e) {
+ }
+ };
}
-});
-
+ editor.getCurrentEditor().addDocumentListener(listener);
+}
public void init(String lblText, TopiaEntity bean, String name, String methodGet, String methodSet, Class c){
+ editor.getCurrentEditor().removeDocumentListener(listener);
setLblText(lblText);
this.bean = bean;
this.methodGet = methodGet;
@@ -86,6 +94,7 @@
setComboModel();
setFormule((Formule)combo.getSelectedItem());
setEditorText();
+ editor.getCurrentEditor().addDocumentListener(listener);
}
protected Equation getEquation(){
Equation result = null;
@@ -110,6 +119,7 @@
}
}
public void refresh(){
+ editor.getCurrentEditor().removeDocumentListener(listener);
try {
editor.open(org.codelutin.util.FileUtil.getTempFile("", ".java"));
} catch (IOException ex) {
@@ -120,7 +130,8 @@
setFormule((Formule)combo.getSelectedItem());
setEditorText();
}
-}
+ editor.getCurrentEditor().addDocumentListener(listener);
+ }
protected void setComboModel(){
java.util.List<Formule> formules = getAction().getFormules(getVerifier().getIsisContext(), name);
if (formules != null){
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2009-01-29 17:57:45 UTC (rev 1761)
@@ -327,10 +327,6 @@
setSaveButton(saveButton, true);
}
- public void setNewButton(JButton saveButton, String name){
- setNewButton(saveButton, name, true);
- }
-
public void setSaveButton(JButton saveButton, Boolean listener){
if (listener){
saveButton.removeActionListener(saveListener);
@@ -341,12 +337,8 @@
this.currentSaveButton = saveButton;
}
- public void setCancelButton(JButton cancelButton){
- cancelButton.removeActionListener(cancelListener);
- cancelButton.addActionListener(cancelListener);
- cancelButton.setText(_("isisfish.common.cancel"));
- cancelButton.setEnabled(changed);
- this.currentCancelButton = cancelButton;
+ public void setNewButton(JButton saveButton, String name){
+ setNewButton(saveButton, name, true);
}
public void setNewButton(JButton newButton, String t, Boolean listener){
@@ -360,9 +352,23 @@
this.currentNewButton = newButton;
}
+ public void setCancelButton(JButton cancelButton){
+ cancelButton.removeActionListener(cancelListener);
+ cancelButton.addActionListener(cancelListener);
+ cancelButton.setText(_("isisfish.common.cancel"));
+ cancelButton.setEnabled(changed);
+ this.currentCancelButton = cancelButton;
+ }
+
public void setDeleteButton(JButton deleteButton){
- deleteButton.removeActionListener(deleteListener);
- deleteButton.addActionListener(deleteListener);
+ setDeleteButton(deleteButton, true);
+ }
+
+ public void setDeleteButton(JButton deleteButton, boolean listener){
+ if (listener){
+ deleteButton.removeActionListener(deleteListener);
+ deleteButton.addActionListener(deleteListener);
+ }
deleteButton.setEnabled(!changed);
deleteButton.setText(_("isisfish.common.remove"));
this.currentDeleteButton = deleteButton;
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputTabbedPaneListener.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputTabbedPaneListener.java 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputTabbedPaneListener.java 2009-01-29 17:57:45 UTC (rev 1761)
@@ -33,6 +33,7 @@
pane.setSelectedIndex(selectedIndex);
}
ui = (InputContentUI) pane.getSelectedComponent();
+ ui.refresh();
cacheSelectedIndex = pane.getSelectedIndex();
pane.addChangeListener(this);
} catch (Exception ex) {
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
@@ -36,47 +36,44 @@
<!-- bean property -->
<fr.ifremer.isisfish.entities.MetierImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.MetierSeasonInfo id='metierSeasonInfo' javaBean='null'/>
+
+ <Boolean id='metierSeasonInfoNotNull' javaBean='false'/>
+
<script><![CDATA[
import fr.ifremer.isisfish.entities.Season;
import fr.ifremer.isisfish.types.Month;
import fr.ifremer.isisfish.ui.widget.Interval;
import fr.ifremer.isisfish.entities.MetierSeasonInfo;
- import fr.ifremer.isisfish.ui.widget.editor.GenericCell;
+ import fr.ifremer.isisfish.entities.MetierSeasonInfoImpl;
import fr.ifremer.isisfish.ui.widget.IntervalPanel;
import fr.ifremer.isisfish.entities.Zone;
import fr.ifremer.isisfish.entities.Metier;
import fr.ifremer.isisfish.entities.MetierImpl;
- import org.codelutin.topia.persistence.TopiaEntity;
- import fr.ifremer.isisfish.ui.WelcomePanelUI;
+ import jaxx.runtime.swing.Item;
- protected boolean seasonInit = true;
protected IntervalPanel ip = new IntervalPanel();
displayMetierSeason.add(ip, BorderLayout.CENTER);
ip.addPropertyChangeListener("first", new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent evt) {
- Object selected = fieldMetierSeasonChoice.getSelectedItem();
- if (selected != null){
- Object value = ((GenericCell)selected).getValue();
// Data extraction
- Season season = (Season) value;
- Month first = season.getFirstMonth();
- first.setMonthNumber(ip.getModel().getFirst());
- season.setFirstMonth(first);
- }
+ Season season = (Season) fieldMetierSeasonChoice.getSelectedItem();
+ if (season != null){
+ Month first = season.getFirstMonth();
+ first.setMonthNumber(ip.getModel().getFirst());
+ season.setFirstMonth(first);
+ }
}
});
+ ip.addPropertyChangeListener("last", new PropertyChangeListener() {
- ip.addPropertyChangeListener("last", new PropertyChangeListener() {
-
@Override
public void propertyChange(PropertyChangeEvent evt) {
- Object selected = fieldMetierSeasonChoice.getSelectedItem();
- if (selected != null){
- Object value = ((GenericCell)selected).getValue();
- // Data extraction
- Season season = (Season) value;
+ // Data extraction
+ Season season = (Season) fieldMetierSeasonChoice.getSelectedItem();
+ if (season != null){
Month last = season.getLastMonth();
last.setMonthNumber(ip.getModel().getLast());
season.setLastMonth(last);
@@ -84,140 +81,89 @@
}
});
+ create.addActionListener(new ActionListener() {
+
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ getContextValue(InputAction.class).createMetierSeasonInfo(getBean());
+ setCombo();
+ }
+ });
+
+ remove.addActionListener(new ActionListener() {
+
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ getContextValue(InputAction.class).removeMetierSeasonInfo(getBean(), getMetierSeasonInfo());
+ setCombo();
+ }
+ });
+
public void refresh() {
+ if (!isActif()){
+ setMetierSeasonInfoNotNull(false);
+ }
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- getVerifier().setNewButton(create, "MetierSeasonInfo");
- getVerifier().setDeleteButton(remove);
+ getVerifier().setNewButton(create, "MetierSeasonInfo", false);
+ getVerifier().setDeleteButton(remove, false);
Metier metier = getVerifier().getEntity(Metier.class);
setBean((MetierImpl) metier);
- if (metier != null){
- if (seasonInit){
- DefaultComboBoxModel seasonModel = new DefaultComboBoxModel();
- java.util.List<MetierSeasonInfo> metierSeasonInfo = metier.getMetierSeasonInfo();
- if (metierSeasonInfo != null){
- seasonModel.addElement(new GenericCell(" ", null, null));
- for (MetierSeasonInfo m : metierSeasonInfo){
- seasonModel.addElement(new GenericCell(m.getFirstMonth().toString() + "-" + m.getLastMonth().toString(), m, MetierSeasonInfo.class));
- }
- }
- fieldMetierSeasonChoice.setModel(seasonModel);
- }
- Object selected = fieldMetierSeasonChoice.getSelectedItem();
- if (selected != null){
- Object value = ((GenericCell)selected).getValue();
- if (value != null){
+ if (getBean() != null){
+ setCombo();
+ if (getMetierSeasonInfo() != null){
+
+ // Model instanciation
+ Interval interval = new Interval();
+ interval.setMin(0);
+ interval.setMax(11);
+ interval.setFirst(0);
+ interval.setLast(2);
- // Data extraction
- Season season = (Season) value;
-
- // Model instanciation
- Interval interval = new Interval();
- interval.setMin(0);
- interval.setMax(11);
- interval.setFirst(0);
- interval.setLast(2);
-
- try {
- log.debug("************** Interval ************");
- Month firstMonth = season.getFirstMonth();
- if (firstMonth != null) {
- interval.setFirst(firstMonth.getMonthNumber());
- log.debug(" first : " + interval.getFirst());
- } else {
- interval.setFirst(0);
- }
-
- Month lastMonth = season.getLastMonth();
- if (lastMonth != null) {
- interval.setLast(lastMonth.getMonthNumber());
- log.debug(" last : " + interval.getLast());
- } else {
- interval.setLast(3);
- }
- } catch (Exception e) {
- log.error("Unexpected origin.", e);
- // Only trace the error and go on.
+ try {
+ log.debug("************** Interval ************");
+ Month firstMonth = getMetierSeasonInfo().getFirstMonth();
+ if (firstMonth != null) {
+ interval.setFirst(firstMonth.getMonthNumber());
+ log.debug(" first : " + interval.getFirst());
+ } else {
+ interval.setFirst(0);
}
- ip.setLabelRenderer(Month.MONTH);
- ip.setModel(interval);
- }
-
- DefaultListModel zonesModel = new DefaultListModel();
- java.util.List<Zone> metierZone = getRegion().getZone();
- if (metierZone != null){
- for (Zone z : metierZone ){
- zonesModel.addElement(z);
- // new GenericCell(z.getName(), z, Zone.class)
+ Month lastMonth = getMetierSeasonInfo().getLastMonth();
+ if (lastMonth != null) {
+ interval.setLast(lastMonth.getMonthNumber());
+ log.debug(" last : " + interval.getLast());
+ } else {
+ interval.setLast(3);
}
+ } catch (Exception e) {
+ log.error("Unexpected origin.", e);
+ // Only trace the error and go on.
}
- metierZones.setModel(zonesModel);
- if (value != null){
- Collection<Zone> zones = ((MetierSeasonInfo)value).getZone();
- int [] selectedIndices = new int[zones.size()];
- int cnt = 0;
- for (Zone z : zones){
- selectedIndices[cnt] = zonesModel.indexOf(z);
- cnt++;
- }
- metierZones.setSelectedIndices(selectedIndices);
- fieldMetierSeasonZoneComment.setText(((MetierSeasonInfo)value).getSeasonZoneComment());
- }
+ ip.setLabelRenderer(Month.MONTH);
+ ip.setModel(interval);
+
+ metierZones.fillList(getRegion().getZone(), getMetierSeasonInfo().getZone());
}
- else{
- // Model instanciation
- Interval interval = new Interval();
- interval.setMin(0);
- interval.setMax(11);
- interval.setFirst(0);
- interval.setLast(2);
- ip.setLabelRenderer(Month.MONTH);
- ip.setModel(interval);
- fieldMetierSeasonZoneComment.setText("");
- DefaultListModel zonesModel = new DefaultListModel();
- java.util.List<Zone> metierZone = getRegion().getZone();
- if (metierZone != null){
- for (Zone z : metierZone ){
- zonesModel.addElement(z);
- // new GenericCell(z.getName(), z, Zone.class)
- }
- }
- metierZones.setModel(zonesModel);
- }
}
}
- protected void zonesChanged(){
- Object selected = fieldMetierSeasonChoice.getSelectedItem();
- if (selected != null){
- Object value = ((GenericCell)selected).getValue();
- if (value != null){
- // Data extraction
- MetierSeasonInfo season = (MetierSeasonInfo) value;
- for (Object o : metierZones.getSelectedValues()){
- season.addZone((Zone)o);
- }
+ protected void setCombo(){
+ java.util.List<Item> items = new ArrayList<Item>();
+ java.util.List<MetierSeasonInfo> metierSeasonInfo = getBean().getMetierSeasonInfo();
+ if (metierSeasonInfo != null){
+ for (MetierSeasonInfo m : metierSeasonInfo){
+ items.add(new Item(m.getFirstMonth().toString() + "-" + m.getLastMonth().toString(), m.getFirstMonth().toString() + "-" + m.getLastMonth().toString(), m, false));
}
}
- }
- protected void commentChanged(){
- Object selected = fieldMetierSeasonChoice.getSelectedItem();
- if (selected != null){
- Object value = ((GenericCell)selected).getValue();
- if (value != null){
- // Data extraction
- MetierSeasonInfo season = (MetierSeasonInfo) value;
- season.setSeasonZoneComment(fieldMetierSeasonZoneComment.getText());
- }
+ fieldMetierSeasonChoice.setItems(items);
+ }
+ protected void metierZonesChanged(){
+ Object[] selected = metierZones.getSelectedValues();
+ for (Object o : selected){
+ getMetierSeasonInfo().addZone((Zone)o);
}
}
- public void setSeasonInit(boolean b){
- seasonInit = b;
- }
- protected void metierSeasonChanged(){
- seasonInit = false;
- refresh();
- }
]]></script>
<Table id='body'>
<row>
@@ -228,34 +174,36 @@
<JLabel text="isisfish.metierSeasonInfoZone.selectSeason" enabled='{isActif()}'/>
</cell>
<cell fill='horizontal' weightx='1.0'>
- <JComboBox id="fieldMetierSeasonChoice" onActionPerformed='metierSeasonChanged()' enabled='{isActif()}'/>
+ <JComboBox id="fieldMetierSeasonChoice"
+ onActionPerformed='refresh();setMetierSeasonInfo((MetierSeasonInfoImpl)fieldMetierSeasonChoice.getSelectedItem());getVerifier().addCurrentEntity(getMetierSeasonInfo());setMetierSeasonInfoNotNull(getMetierSeasonInfo() != null);'
+ enabled='{isActif()}'/>
</cell>
</row>
<row>
<cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.metierSeasonInfoZone.season" enabled='{isActif()}'/>
+ <JLabel text="isisfish.metierSeasonInfoZone.season" enabled='{isMetierSeasonInfoNotNull()}'/>
</cell>
<cell fill='horizontal' weightx='1.0'>
- <JPanel id='displayMetierSeason' layout='{new BorderLayout()}' enabled='{isActif()}'/>
+ <JPanel id='displayMetierSeason' layout='{new BorderLayout()}' enabled='{isMetierSeasonInfoNotNull()}'/>
</cell>
</row>
<row>
<cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.common.zone" enabled='{isActif()}'/>
+ <JLabel text="isisfish.common.zone" enabled='{isMetierSeasonInfoNotNull()}'/>
</cell>
<cell fill='both' weightx='1.0' weighty='0.7'>
<JScrollPane minimumSize='{new Dimension(0,0)}' preferredSize='{new Dimension(0,0)}'>
- <JList id="metierZones" onValueChanged='zonesChanged()' enabled='{isActif()}'/>
+ <JList id="metierZones" onValueChanged='metierZonesChanged()' enabled='{isMetierSeasonInfoNotNull()}'/>
</JScrollPane>
</cell>
</row>
<row>
<cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.metierSeasonInfoZone.comments" enabled='{isActif()}'/>
+ <JLabel text="isisfish.metierSeasonInfoZone.comments" enabled='{isMetierSeasonInfoNotNull()}'/>
</cell>
<cell fill='both' weightx='1.0' weighty='0.3'>
<JScrollPane minimumSize='{new Dimension(0,0)}' preferredSize='{new Dimension(0,0)}'>
- <JTextArea id="fieldMetierSeasonZoneComment" onKeyReleased='commentChanged()' enabled='{isActif()}'/>
+ <JTextArea id="fieldMetierSeasonZoneComment" text='{getMetierSeasonInfo() == null ? "" : jaxx.runtime.Util.getStringValue(getMetierSeasonInfo().getSeasonZoneComment())}' onKeyReleased='getMetierSeasonInfo().setSeasonZoneComment(fieldMetierSeasonZoneComment.getText())' enabled='{isMetierSeasonInfoNotNull()}'/>
</JScrollPane>
</cell>
</row>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierTabUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierTabUI.jaxx 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierTabUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
@@ -37,53 +37,27 @@
<fr.ifremer.isisfish.entities.MetierImpl id='bean' javaBean='null'/>
<script><![CDATA[
-
import fr.ifremer.isisfish.entities.Gear;
- import fr.ifremer.isisfish.entities.TripType;
import fr.ifremer.isisfish.entities.Metier;
import fr.ifremer.isisfish.entities.MetierImpl;
- import fr.ifremer.isisfish.ui.WelcomePanelUI;
- import org.codelutin.topia.persistence.TopiaEntity;
- import org.codelutin.topia.TopiaException;
- import java.util.logging.Level;
import java.util.logging.Logger;
+ import java.util.logging.Level;
public void refresh() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
getVerifier().setNewButton(create, "Metier");
getVerifier().setDeleteButton(remove);
+ Metier metier = getVerifier().getEntity(Metier.class);
+ setBean((MetierImpl) metier);
try {
- Metier metier = getVerifier().getEntity(Metier.class);
- setBean((MetierImpl) metier);
- DefaultComboBoxModel model = new DefaultComboBoxModel(getRegion().getGear().toArray());
- fieldMetierGear.setModel(model);
- if (metier != null){
- fieldMetierName.setText(metier.getName());
- fieldMetierParam.setText(metier.getGearParameterValue());
- fieldMetierComment.setText(metier.getComment());
+ if (getBean() != null){
+ jaxx.runtime.swing.Utils.fillComboBox(fieldMetierGear, getRegion().getGear(), getBean().getGear());
}
- else{
- fieldMetierName.setText("");
- fieldMetierParam.setText("");
- fieldMetierComment.setText("");
- }
} catch (Exception ex) {
- Logger.getLogger(MetierTabUI.class.getName()).log(Level.SEVERE, null, ex);
+ Logger.getLogger(MetierTabUI.class.getName()).log(Level.SEVERE, null, ex);
}
}
- protected void nameChanged(){
- getBean().setName(fieldMetierName.getText());
- }
- protected void gearChanged(){
- getBean().setGear((Gear)fieldMetierGear.getSelectedItem());
- }
- protected void paramChanged(){
- getBean().setGearParameterValue(fieldMetierParam.getText());
- }
- protected void commentChanged(){
- getBean().setComment(fieldMetierComment.getText());
- }
]]></script>
<Table id='bady'>
<row>
@@ -94,7 +68,7 @@
<JLabel text="isisfish.metier.name" enabled='{isActif()}'/>
</cell>
<cell fill='horizontal' weightx='1.0'>
- <JTextField id="fieldMetierName" onKeyReleased='nameChanged()' enabled='{isActif()}'/>
+ <JTextField id="fieldMetierName" text='{getBean().getName()}' onKeyReleased='getBean().setName(fieldMetierName.getText())' enabled='{isActif()}'/>
</cell>
</row>
<row>
@@ -102,7 +76,7 @@
<JLabel text="isisfish.common.gear" enabled='{isActif()}'/>
</cell>
<cell fill='horizontal' weightx='1.0'>
- <JComboBox id="fieldMetierGear" onActionPerformed='gearChanged()' enabled='{isActif()}'/>
+ <JComboBox id="fieldMetierGear" onActionPerformed='getBean().setGear((Gear)fieldMetierGear.getSelectedItem())' enabled='{isActif()}'/>
</cell>
</row>
<row>
@@ -110,7 +84,7 @@
<JLabel text="isisfish.metier.rangeValues" enabled='{isActif()}'/>
</cell>
<cell fill='horizontal' weightx='1.0'>
- <JTextField id="fieldMetierParam" onKeyReleased='paramChanged()' enabled='{isActif()}'/>
+ <JTextField id="fieldMetierParam" text='{jaxx.runtime.Util.getStringValue(getBean().getGearParameterValue())}' onKeyReleased='getBean().setGearParameterValue(fieldMetierParam.getText())' enabled='{isActif()}'/>
</cell>
</row>
<row>
@@ -119,7 +93,7 @@
</cell>
<cell fill='both' weightx='1.0' weighty='1.0'>
<JScrollPane minimumSize='{new Dimension(0,0)}' preferredSize='{new Dimension(0,0)}'>
- <JTextArea id="fieldMetierComment" onKeyReleased='commentChanged()' enabled='{isActif()}'/>
+ <JTextArea id="fieldMetierComment" text='{jaxx.runtime.Util.getStringValue(getBean().getComment())}' onKeyReleased='getBean().setComment(fieldMetierComment.getText())' enabled='{isActif()}'/>
</JScrollPane>
</cell>
</row>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
@@ -45,8 +45,7 @@
setNextPath("$root/$tripTypes");
metierTab.addChangeListener(new InputTabbedPaneListener());
public void refresh() {
- getVerifier().addCurrentPanel(metierTabUI, metierSeasonInfoUI, metierSeasonSpeciesUI);
- metierSeasonInfoUI.setSeasonInit(true);
+ getVerifier().addCurrentPanel(metierSeasonSpeciesUI, metierSeasonInfoUI, metierTabUI);
}
]]></script>
<JPanel id='body' layout='{new BorderLayout()}'>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
@@ -80,7 +80,9 @@
growthEquation.init(_("isisfish.populationBasics.growth"), getBean(), "Growth", "Growth", "EquationGrowth", fr.ifremer.isisfish.equation.PopulationGrowth.class);
growthReverseEquation.init(_("isisfish.populationBasics.growthReverse"), getBean(), "GrowthReverse", "GrowthReverse", "EquationGrowthReverse", fr.ifremer.isisfish.equation.PopulationGrowthReverse.class);
if (getBean() != null){
- jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationBasicsMatureClass, getBean().getPopulationGroup(), getBean().getMaturityGroup());
+ if (getBean().getPopulationGroup() != null){
+ jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationBasicsMatureClass, getBean().getPopulationGroup(), getBean().getMaturityGroup());
+ }
setTableAgeLengthModel();
}
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
@@ -82,7 +82,7 @@
</row>
<row>
<cell columns='2' fill='both' weightx='1.0'>
- <org.codelutin.math.matrix.gui.MatrixPanelEditor id ='fieldPopulationCapturability' matrix='{getBean().getCapturability().copy()}' enabled='{isActif()}'/>
+ <org.codelutin.math.matrix.gui.MatrixPanelEditor id ='fieldPopulationCapturability' matrix='{getBean().getCapturability() == null ? null : getBean().getCapturability().copy()}' enabled='{isActif()}'/>
</cell>
</row>
<row>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
@@ -38,16 +38,19 @@
<fr.ifremer.isisfish.entities.PopulationGroupImpl id='populationGroup' javaBean='null'/>
+ <Boolean id='popGroupNotNull' javaBean='false'/>
+
<script><![CDATA[
-
import fr.ifremer.isisfish.entities.PopulationGroup;
import fr.ifremer.isisfish.entities.PopulationGroupImpl;
import fr.ifremer.isisfish.entities.Population;
import fr.ifremer.isisfish.entities.PopulationImpl;
import org.codelutin.math.matrix.gui.MatrixPanelListener;
import org.codelutin.math.matrix.gui.MatrixPanelEvent;
+import org.codelutin.math.matrix.AbstractMatrixND;
+import org.codelutin.math.matrix.MatrixND;
-addPropertyChangeListener("bean", new PropertyChangeListener() {
+addPropertyChangeListener("populationGroup", new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
if (evt.getOldValue() != null || evt.getNewValue() == null) {
// remove previous binding on getBean()
@@ -59,7 +62,7 @@
fieldPopulationGroupMinLength.setText("");
fieldPopulationGroupMaxLength.setText("");
fieldPopulationGroupComment.setText("");
-// fieldPopulationGroupNaturalDeathRate.setMatrix(null);
+ fieldPopulationGroupNaturalDeathRate.setMatrix(null);
}
if (evt.getNewValue() != null) {
// add binding on getBean()
@@ -69,13 +72,13 @@
});
public void refresh(){
+ if (!isActif()){
+ setPopGroupNotNull(false);
+ }
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
Population population = getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
- if (getPopulationGroup() != null){
- getVerifier().addCurrentEntity(getPopulationGroup());
- }
if (getBean() != null){
jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationGroupPopulationGroup,getBean().getPopulationGroup(), null);
}
@@ -88,66 +91,67 @@
<JLabel text="isisfish.common.populationGroup" enabled='{isActif()}'/>
</cell>
<cell columns='2' fill='horizontal' weightx='1.0'>
- <JComboBox id='fieldPopulationGroupPopulationGroup' onActionPerformed='setPopulationGroup((PopulationGroupImpl)fieldPopulationGroupPopulationGroup.getSelectedItem())' enabled='{isActif()}'/>
+ <JComboBox id='fieldPopulationGroupPopulationGroup' onActionPerformed='setPopulationGroup((PopulationGroupImpl)fieldPopulationGroupPopulationGroup.getSelectedItem());getVerifier().addCurrentEntity(getPopulationGroup());setPopGroupNotNull(getPopulationGroup() != null);' enabled='{isActif()}'/>
</cell>
</row>
<row>
<cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.populationGroup.meanWeigth" enabled='{isActif()}'/>
+ <JLabel text="isisfish.populationGroup.meanWeigth" enabled='{isPopGroupNotNull()}'/>
</cell>
<cell columns='2' fill='horizontal' weightx='1.0'>
- <JTextField id="fieldPopulationGroupMeanWeight" text='{getPopulationGroup().getMeanWeight()}' enabled='{isActif()}'/>
+ <JTextField id="fieldPopulationGroupMeanWeight" text='{getPopulationGroup().getMeanWeight()}' editable='{false}' enabled='{isPopGroupNotNull()}'/>
</cell>
</row>
<row>
<cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.populationGroup.price" enabled='{isActif()}'/>
+ <JLabel text="isisfish.populationGroup.price" enabled='{isPopGroupNotNull()}'/>
</cell>
<cell columns='2' fill='horizontal' weightx='1.0'>
- <JTextField id="fieldPopulationGroupPrice" text='{getPopulationGroup().getPrice()}' enabled='{isActif()}'/>
+ <JTextField id="fieldPopulationGroupPrice" text='{getPopulationGroup().getPrice()}' editable='{false}' enabled='{isPopGroupNotNull()}'/>
</cell>
</row>
<row>
<cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.populationGroup.naturalDeathRate" enabled='{isActif()}'/>
+ <JLabel text="isisfish.populationGroup.naturalDeathRate" enabled='{isPopGroupNotNull()}'/>
</cell>
<cell columns='2' fill='both' weightx='1.0' weighty='0.5'>
+ <org.codelutin.math.matrix.gui.MatrixPanelEditor id ='fieldPopulationGroupNaturalDeathRate' matrix='{getBean() == null || getPopulationGroup() == null ? null : ((AbstractMatrixND)getBean().getNaturalDeathRateMatrix()).getSubMatrixOnSemantic(0, getPopulationGroup())}' enabled='{isPopGroupNotNull()}'/>
</cell>
</row>
<row>
<cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.populationGroup.reproductionRate" enabled='{isActif()}'/>
+ <JLabel text="isisfish.populationGroup.reproductionRate" enabled='{isPopGroupNotNull()}'/>
</cell>
<cell columns='2' fill='horizontal' weightx='1.0'>
- <JTextField id="fieldPopulationGroupReproductionRate" text='{getPopulationGroup().getReproductionRate()}' onKeyReleased='getPopulationGroup().setReproductionRate(Double.parseDouble(fieldPopulationGroupReproductionRate.getText()))' enabled='{isActif()}'/>
+ <JTextField id="fieldPopulationGroupReproductionRate" text='{getPopulationGroup().getReproductionRate()}' onKeyReleased='getPopulationGroup().setReproductionRate(Double.parseDouble(fieldPopulationGroupReproductionRate.getText()))' enabled='{isPopGroupNotNull()}'/>
</cell>
</row>
<row>
<cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.populationGroup.age" enabled='{isActif()}'/>
+ <JLabel text="isisfish.populationGroup.age" enabled='{isPopGroupNotNull()}'/>
</cell>
<cell columns='2' fill='horizontal' weightx='1.0'>
- <JTextField id="fieldPopulationGroupAge" text='{getPopulationGroup().getAge()}' enabled='{isActif()}'/>
+ <JTextField id="fieldPopulationGroupAge" text='{getPopulationGroup().getAge()}' enabled='{isPopGroupNotNull()}'/>
</cell>
</row>
<row>
<cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.populationGroup.length" enabled='{isActif()}'/>
+ <JLabel text="isisfish.populationGroup.length" enabled='{isPopGroupNotNull()}'/>
</cell>
<cell fill='both' weightx='0.5'>
- <JTextField id="fieldPopulationGroupMinLength" text='{getPopulationGroup().getMinLength()}' onKeyReleased='getPopulationGroup().setMinLength(Double.parseDouble(fieldPopulationGroupMinLength.getText()))' enabled='{isActif()}'/>
+ <JTextField id="fieldPopulationGroupMinLength" text='{getPopulationGroup().getMinLength()}' onKeyReleased='getPopulationGroup().setMinLength(Double.parseDouble(fieldPopulationGroupMinLength.getText()))' enabled='{isPopGroupNotNull()}'/>
</cell>
<cell fill='both' weightx='0.5'>
- <JTextField id="fieldPopulationGroupMaxLength" text='{getPopulationGroup().getMaxLength()}' onKeyReleased='getPopulationGroup().setMaxLength(Double.parseDouble(fieldPopulationGroupMaxLength.getText()))' enabled='{isActif()}'/>
+ <JTextField id="fieldPopulationGroupMaxLength" text='{getPopulationGroup().getMaxLength()}' onKeyReleased='getPopulationGroup().setMaxLength(Double.parseDouble(fieldPopulationGroupMaxLength.getText()))' enabled='{isPopGroupNotNull()}'/>
</cell>
</row>
<row>
<cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.populationGroup.comments" enabled='{isActif()}'/>
+ <JLabel text="isisfish.populationGroup.comments" enabled='{isPopGroupNotNull()}'/>
</cell>
<cell columns='2' fill='both' weightx='1.0' weighty='0.5'>
<JScrollPane>
- <JTextArea id="fieldPopulationGroupComment" text='{jaxx.runtime.Util.getStringValue(getPopulationGroup().getComment())}' onKeyReleased='getPopulationGroup().setComment(fieldPopulationGroupComment.getText())' enabled='{isActif()}'/>
+ <JTextArea id="fieldPopulationGroupComment" text='{jaxx.runtime.Util.getStringValue(getPopulationGroup().getComment())}' onKeyReleased='getPopulationGroup().setComment(fieldPopulationGroupComment.getText())' enabled='{isPopGroupNotNull()}'/>
</JScrollPane>
</cell>
</row>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEmigrationUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEmigrationUI.jaxx 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEmigrationUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
@@ -80,7 +80,9 @@
@Override
public void matrixChanged(MatrixPanelEvent arg0) {
- popInfo.setMigrationMatrix(populationMigrationEmigrationTable.getMatrix());
+ if (popInfo != null){
+ popInfo.setMigrationMatrix(populationMigrationEmigrationTable.getMatrix());
+ }
}
});
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationImmigrationUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationImmigrationUI.jaxx 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationImmigrationUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
@@ -79,7 +79,9 @@
@Override
public void matrixChanged(MatrixPanelEvent arg0) {
- popInfo.setImmigrationMatrix(populationMigrationImmigrationTable.getMatrix());
+ if (popInfo != null){
+ popInfo.setImmigrationMatrix(populationMigrationImmigrationTable.getMatrix());
+ }
}
});
if (popInfo != null){
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationMigrationUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationMigrationUI.jaxx 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationMigrationUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
@@ -81,7 +81,9 @@
@Override
public void matrixChanged(MatrixPanelEvent arg0) {
- popInfo.setMigrationMatrix(populationMigrationMigrationTable.getMatrix());
+ if (popInfo != null){
+ popInfo.setMigrationMatrix(populationMigrationMigrationTable.getMatrix());
+ }
}
});
if (popInfo != null){
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
@@ -38,6 +38,8 @@
<fr.ifremer.isisfish.entities.PopulationSeasonInfoImpl id='populationSeasonInfo' javaBean='null'/>
+ <Boolean id='popSeasonInfoNotNull' javaBean='false'/>
+
<script><![CDATA[
import fr.ifremer.isisfish.entities.PopulationSeasonInfo;
import fr.ifremer.isisfish.entities.PopulationSeasonInfoImpl;
@@ -53,9 +55,11 @@
@Override
public void propertyChange(PropertyChangeEvent evt) {
- Month first = getPopulationSeasonInfo().getFirstMonth();
- first.setMonthNumber(ip.getModel().getFirst());
- getPopulationSeasonInfo().setFirstMonth(first);
+ if (getPopulationSeasonInfo() != null){
+ Month first = getPopulationSeasonInfo().getFirstMonth();
+ first.setMonthNumber(ip.getModel().getFirst());
+ getPopulationSeasonInfo().setFirstMonth(first);
+ }
}
});
@@ -63,9 +67,11 @@
@Override
public void propertyChange(PropertyChangeEvent evt) {
- Month last = getPopulationSeasonInfo().getLastMonth();
- last.setMonthNumber(ip.getModel().getLast());
- getPopulationSeasonInfo().setLastMonth(last);
+ if (getPopulationSeasonInfo() != null){
+ Month last = getPopulationSeasonInfo().getLastMonth();
+ last.setMonthNumber(ip.getModel().getLast());
+ getPopulationSeasonInfo().setLastMonth(last);
+ }
}
});
@@ -83,16 +89,34 @@
}
});
+create.addActionListener(new ActionListener() {
+
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ getContextValue(InputAction.class).createPopulationSeasonInfo(getBean());
+ setCombo();
+ }
+});
+
+remove.addActionListener(new ActionListener() {
+
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ getContextValue(InputAction.class).removePopulationSeasonInfo(getBean(), getPopulationSeasonInfo());
+ setCombo();
+ }
+});
+
public void refresh(){
+ if (!isActif()){
+ setPopSeasonInfoNotNull(false);
+ }
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- getVerifier().setNewButton(create, "PopulationSeasonInfo");
- getVerifier().setDeleteButton(remove);
+ getVerifier().setNewButton(create, "PopulationSeasonInfo", false);
+ getVerifier().setDeleteButton(remove, false);
Population population = getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
- if (getBean() != null){
- jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationSeasonInfoChooser,getBean().getPopulationSeasonInfo(), null);
- }
// Model instanciation
Interval interval = new Interval();
@@ -128,6 +152,16 @@
ip.setLabelRenderer(Month.MONTH);
ip.setModel(interval);
}
+protected void setCombo(){
+ if (getBean() != null){
+ jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationSeasonInfoChooser,getBean().getPopulationSeasonInfo(), null);
+ }
+}
+protected void seasonGroupChanged(){
+ if (getPopulationSeasonInfo() == null){
+ getPopulationSeasonInfo().setGroupChange(fieldPopulationSeasonGroupChange.isSelected());
+ }
+}
]]>
</script>
<Table id='body'>
@@ -139,15 +173,17 @@
<JLabel text="isisfish.populationSeasons.selectSeason" enabled='{isActif()}'/>
</cell>
<cell fill='horizontal' weightx='1.0'>
- <JComboBox id="fieldPopulationSeasonInfoChooser" onActionPerformed='setPopulationSeasonInfo((PopulationSeasonInfoImpl)fieldPopulationSeasonInfoChooser.getSelectedItem())' enabled='{isActif()}'/>
+ <JComboBox id="fieldPopulationSeasonInfoChooser"
+ onActionPerformed='setPopulationSeasonInfo((PopulationSeasonInfoImpl)fieldPopulationSeasonInfoChooser.getSelectedItem());getVerifier().addCurrentEntity(getPopulationSeasonInfo());setPopSeasonInfoNotNull(getPopulationSeasonInfo() != null);'
+ enabled='{isActif()}'/>
</cell>
</row>
<row>
<cell anchor='east'>
- <JLabel text="isisfish.common.season" enabled='{isActif()}'/>
+ <JLabel text="isisfish.common.season" enabled='{isPopSeasonInfoNotNull()}'/>
</cell>
<cell fill='horizontal' weightx='1.0'>
- <JPanel id='fieldPopulationSeasonInterval' layout='{new BorderLayout()}' enabled='{isActif()}'/>
+ <JPanel id='fieldPopulationSeasonInterval' layout='{new BorderLayout()}' enabled='{isPopSeasonInfoNotNull()}'/>
</cell>
</row>
<row>
@@ -156,24 +192,24 @@
</cell>
<cell fill='horizontal' weightx='1.0'>
<JCheckBox id="fieldPopulationSeasonGroupChange" text="isisfish.populationSeasons.changeGroup" selected='{getPopulationSeasonInfo().getGroupChange()}'
- onActionPerformed='getPopulationSeasonInfo().setGroupChange(fieldPopulationSeasonGroupChange.isSelected())' enabled='{isActif()}'/>
+ onActionPerformed='seasonGroupChanged()' enabled='{isPopSeasonInfoNotNull()}'/>
</cell>
</row>
<row>
<cell anchor='east'>
- <JLabel text="isisfish.populationSeasons.distributionSpawning" enabled='{isActif()}'/>
+ <JLabel text="isisfish.populationSeasons.distributionSpawning" enabled='{isPopSeasonInfoNotNull()}'/>
</cell>
<cell fill='both' weightx='1.0'>
- <org.codelutin.math.matrix.gui.MatrixPanelEditor id ='fieldPopulationSeasonReproductionDistribution' matrix='{getPopulationSeasonInfo().getLengthChangeMatrix()}' enabled='{isActif()}'/>
+ <org.codelutin.math.matrix.gui.MatrixPanelEditor id ='fieldPopulationSeasonReproductionDistribution' matrix='{getPopulationSeasonInfo() == null ? null : getPopulationSeasonInfo().getLengthChangeMatrix()}' enabled='{isPopSeasonInfoNotNull()}'/>
</cell>
</row>
<row>
<cell anchor='east'>
- <JLabel text="isisfish.populationSeasons.comments" enabled='{isActif()}'/>
+ <JLabel text="isisfish.populationSeasons.comments" enabled='{isPopSeasonInfoNotNull()}'/>
</cell>
<cell fill='both' weightx='1.0' weighty='1.0'>
<JScrollPane>
- <JTextArea id="fieldPopulationSeasonComment" text='{jaxx.runtime.Util.getStringValue(getBean().getSeasonsComment())}' onKeyReleased='getBean().setSeasonsComment(fieldPopulationSeasonComment.getText())' enabled='{isActif()}'/>
+ <JTextArea id="fieldPopulationSeasonComment" text='{jaxx.runtime.Util.getStringValue(getBean().getSeasonsComment())}' onKeyReleased='getBean().setSeasonsComment(fieldPopulationSeasonComment.getText())' enabled='{isPopSeasonInfoNotNull()}'/>
</JScrollPane>
</cell>
</row>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsTabsUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsTabsUI.jaxx 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsTabsUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
@@ -76,7 +76,7 @@
jaxx.runtime.swing.Utils.fillComboBox(fieldSetOfVesselsPort,getRegion().getPort(), getBean().getPort());
jaxx.runtime.swing.Utils.fillComboBox(fieldSetOfVesselsVesselType,getRegion().getVesselType(), getBean().getVesselType());
- technicalEfficiency.init(_("isisfish.setOfVessels.technicalEfficiency"), bean, "TechnicalEfficiency", "TechnicalEfficiencyEquation", "EquationTechnicalEfficiency", fr.ifremer.isisfish.equation.SoVTechnicalEfficiencyEquation.class);
+ technicalEfficiency.init(_("isisfish.setOfVessels.technicalEfficiency"), getBean(), "TechnicalEfficiency", "TechnicalEfficiencyEquation", "EquationTechnicalEfficiency", fr.ifremer.isisfish.equation.SoVTechnicalEfficiencyEquation.class);
getVerifier().addCurrentPanel(technicalEfficiency);
}
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
@@ -73,7 +73,7 @@
VesselType vesselType = getVerifier().getEntity(VesselType.class);
setBean((VesselTypeImpl) vesselType);
if (getBean() != null){
- vesselTypeTripType.fillList(getRegion().getTripType(), getBean().getTripType());
+ vesselTypeTripType.fillList(getRegion().getTripType(), getBean().getTripType() == null ? null : getBean().getTripType());
}
}
protected void tripTypeChanged(){
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx 2009-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx 2009-01-29 17:57:45 UTC (rev 1761)
@@ -83,7 +83,7 @@
if (log.isDebugEnabled()) {
log.debug("zone nb cells : "+ ( zone==null ? 0 : zone.getCell().size() ) );
}
- zoneCells.fillList(getRegion().getCell(), getBean() == null ? java.util.Collections.EMPTY_LIST : getBean().getCell());
+ setZoneCells();
zoneMap.setFisheryRegion(getRegion());
if (mapListener == null){
zoneMap.setActiveMouseMode(new SelectMouseMode(false));
@@ -94,17 +94,17 @@
}
refreshMap();
}
+protected void setZoneCells(){
+ zoneCells.fillList(getRegion().getCell(), getBean() == null ? null : getBean().getCell());
+}
protected void setMapListener(){
if (mapListener == null){
mapListener = new OpenMapEvents(zoneMap, new SelectMouseMode(false), CellSelectionLayer.MULT_SELECTION) {
@Override
public boolean onMouseClicked() {
- if (!isActif()) {
- //TODO don't known what does mean that return...
- return false;
- }
java.util.List<Cell> selectedCell = zoneMap.getSelectedCells();
getBean().setCell(selectedCell);
+ setZoneCells();
return true;
}
};
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-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/resources/i18n/isis-fish-en_GB.properties 2009-01-29 17:57:45 UTC (rev 1761)
@@ -558,6 +558,7 @@
isisfish.message.removing.region=Removing region %1$s ...
isisfish.message.result.verif.region=R\u00E9sultat de la v\u00E9rification de la r\u00E9gion
isisfish.message.save.finished=Save finished
+isisfish.message.saveModel.dialog=Model name to save
isisfish.message.saveModel.finished=Save model finished
isisfish.message.setting.cache.aspects=Setting Cache aspects
isisfish.message.setting.trace.aspects=Setting Trace aspects
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-01-28 10:35:22 UTC (rev 1760)
+++ isis-fish/trunk/src/main/resources/i18n/isis-fish-fr_FR.properties 2009-01-29 17:57:45 UTC (rev 1761)
@@ -558,6 +558,7 @@
isisfish.message.removing.region=Suppression de lar\u00E9gion %1$s ...
isisfish.message.result.verif.region=R\u00E9sultat de la v\u00E9rification de la r\u00E9gion
isisfish.message.save.finished=Sauvegarde termin\u00E9e
+isisfish.message.saveModel.dialog=Nom du model \u00E0 sauvegarder
isisfish.message.saveModel.finished=Sauvegarde du mod\u00E8le termin\u00E9e
isisfish.message.setting.cache.aspects=Mise en place des aspects Cache
isisfish.message.setting.trace.aspects=Mise en place des aspects Trace
1
0
r1760 - in isis-fish/trunk: . src/main/java/fr/ifremer/isisfish/simulator src/main/java/fr/ifremer/isisfish/simulator/launcher src/main/resources/i18n
by chatellier@users.labs.libre-entreprise.org Jan. 28, 2009
by chatellier@users.labs.libre-entreprise.org Jan. 28, 2009
Jan. 28, 2009
Author: chatellier
Date: 2009-01-28 10:35:22 +0000 (Wed, 28 Jan 2009)
New Revision: 1760
Modified:
isis-fish/trunk/changelog.txt
isis-fish/trunk/pom.xml
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulatorServer.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/IsisFishServerSimulationLauncher.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:
Update XML-RPC to 3.1
Modified: isis-fish/trunk/changelog.txt
===================================================================
--- isis-fish/trunk/changelog.txt 2009-01-27 15:21:13 UTC (rev 1759)
+++ isis-fish/trunk/changelog.txt 2009-01-28 10:35:22 UTC (rev 1760)
@@ -1,5 +1,6 @@
isis-fish (3.2.0.x) xxx
+ * Update XML-RPC launcher to xmlprc 3
* Add ssh simulation launcher
* Add Jaxx UI for all interfaces
* Remove SwixAT UI
Modified: isis-fish/trunk/pom.xml
===================================================================
--- isis-fish/trunk/pom.xml 2009-01-27 15:21:13 UTC (rev 1759)
+++ isis-fish/trunk/pom.xml 2009-01-28 10:35:22 UTC (rev 1760)
@@ -145,20 +145,28 @@
<scope>compile</scope>
</dependency>
+ <!-- XML-RPC Client and server (don't try 3.1.1) -->
<dependency>
- <groupId>xmlrpc</groupId>
- <artifactId>xmlrpc</artifactId>
- <version>2.0</version>
+ <groupId>org.apache.xmlrpc</groupId>
+ <artifactId>xmlrpc-client</artifactId>
+ <version>3.1</version>
<scope>compile</scope>
</dependency>
<dependency>
- <groupId>commons-codec</groupId>
- <artifactId>commons-codec</artifactId>
- <version>1.3</version>
+ <groupId>org.apache.xmlrpc</groupId>
+ <artifactId>xmlrpc-server</artifactId>
+ <version>3.1</version>
+ <scope>compile</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>commons-httpclient</groupId>
+ <artifactId>commons-httpclient</artifactId>
+ <version>3.1</version>
<scope>runtime</scope>
</dependency>
-
+
<!-- encore utilise pour les pre-scripts -->
<dependency>
<groupId>org.beanshell</groupId>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulatorServer.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulatorServer.java 2009-01-27 15:21:13 UTC (rev 1759)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulatorServer.java 2009-01-28 10:35:22 UTC (rev 1760)
@@ -1,48 +1,46 @@
-/*
- * *##% Copyright (C) 2002-2005 Code Lutin, Cédric Pineau, Benjamin Poussin
- *
- * 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, write to the Free Software Foundation, Inc., 59 Temple
- * Place - Suite 330, Boston, MA 02111-1307, USA. ##%
- */
+/* *##%
+ * Copyright (C) 2007, 2009
+ * Ifremer, Code Lutin, Cédric Pineau, Benjamin Poussin
+ *
+ * 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, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *##%*/
-/*******************************************************************************
- * SimulatorServer.java
- *
- * Created: Thu Aug 22 2002
- *
- * @author <poussin at codelutin.com> Copyright Code Lutin
- *
- * @version $Revision$
- *
- * Mise a jour: $Date$ par : $Author$
- */
-
package fr.ifremer.isisfish.simulator;
import static org.codelutin.i18n.I18n._;
import java.io.File;
+import java.io.IOException;
import java.util.Hashtable;
+import java.util.Map;
import java.util.Vector;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.xmlrpc.AuthenticatedXmlRpcHandler;
-import org.apache.xmlrpc.WebServer;
-import org.apache.xmlrpc.XmlRpc;
+import org.apache.xmlrpc.XmlRpcException;
+import org.apache.xmlrpc.XmlRpcHandler;
+import org.apache.xmlrpc.XmlRpcRequest;
+import org.apache.xmlrpc.XmlRpcRequestConfig;
+import org.apache.xmlrpc.common.XmlRpcHttpRequestConfig;
+import org.apache.xmlrpc.server.XmlRpcHandlerMapping;
+import org.apache.xmlrpc.server.XmlRpcNoSuchHandlerException;
+import org.apache.xmlrpc.server.XmlRpcServer;
+import org.apache.xmlrpc.webserver.WebServer;
import org.codelutin.util.FileUtil;
+import fr.ifremer.isisfish.IsisFish;
import fr.ifremer.isisfish.datastore.SimulationStorage;
import fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher;
import fr.ifremer.isisfish.simulator.launcher.SimulatorLauncher;
@@ -52,54 +50,99 @@
* de simulation. Il est ensuite possible de lui demander ou en est rendu
* une simulation.
*
- * @author poussin
+ * Created: Thu Aug 22 2002
+ *
+ * @author <poussin at codelutin.com> Copyright Code Lutin
+ *
+ * @version $Revision$
+ *
+ * Mise a jour: $Date$ par : $Author$
*/
-public class SimulatorServer implements AuthenticatedXmlRpcHandler { // SimulatorServer
+public class SimulatorServer implements XmlRpcHandler, XmlRpcHandlerMapping { // SimulatorServer
/** to use log facility, just put in your code: log.info(\"...\"); */
- static private Log log = LogFactory.getLog(SimulatorServer.class);
+ private static Log log = LogFactory.getLog(SimulatorServer.class);
- // TODO dans SimulationControlServer ajouter une date de lancement de
- // simulation. Si cette date est par exemple > 7 j on supprime
- // automatiquement de simulationControls. Et on fait
- // ce petit traitement a chaque connexion au serveur.
- Hashtable simulationControls = new Hashtable();
+ /**
+ * TODO dans SimulationControl ajouter une date de lancement de
+ * simulation. Si cette date est par exemple > 7 j on supprime
+ * automatiquement de simulationControls. Et on fait
+ * ce petit traitement a chaque connexion au serveur.
+ */
+ protected Hashtable<String, SimulationControl> simulationControls = new Hashtable<String, SimulationControl>();
- public SimulatorServer() {
+ /*
+ * @see org.apache.xmlrpc.server.XmlRpcHandlerMapping#getHandler(java.lang.String)
+ */
+ @Override
+ public XmlRpcHandler getHandler(String handler)
+ throws XmlRpcNoSuchHandlerException, XmlRpcException {
+ if (log.isDebugEnabled()) {
+ log.debug("Request handler : " + handler);
+ }
+
+ return this;
}
- /**
- * Method execute
- *
- * @param method les 2 noms de methodes possibles sont <b>simulate</b> pour
- * commencer une nouvelle simulation, et <b>checkPoint</b> pour
- * demander ou en est la simulation que l'utilisateur a demande.
- * @param params si la methode est <b>simulate</b>, il faut donnee l'id,
- * les parameters, le code ecmascript, les regles de gestions, les
- * objets de la base a utilse. Si la methode est <b>checkPoint</b>
- * il faut redonner le meme id que pour le lancement de la
- * simulation.
- * @param user le login a utiliser pour pouvoir faire une simulation
- * @param password le mot de passe
- * @return si la methode est <b>simulate</b> retourne un objet
- * {@link SimulationStorage} Simulation sous forme XML. Si la
- * methode est <b>checkPoint</b> retourne le nombre de mois simule.
+ /*
+ * @see org.apache.xmlrpc.XmlRpcHandler#execute(org.apache.xmlrpc.XmlRpcRequest)
*/
- public Object execute(String method, Vector params, String user,
- String password) throws Exception {
- log.info("L'utilisateur " + user + " demande " + method);
+ @Override
+ public Object execute(XmlRpcRequest request) throws XmlRpcException {
- // TODO: verifier que l'utilisateur a le droit de faire des simulations
+ /*
+ * Parametres:
+ * method les 2 noms de methodes possibles sont <b>simulate</b> pour
+ * commencer une nouvelle simulation, et <b>checkPoint</b> pour
+ * demander ou en est la simulation que l'utilisateur a demande.
+ * param params si la methode est <b>simulate</b>, il faut donnee l'id,
+ * et le zip de la simulation. Si la methode est <b>checkPoint</b>
+ * il faut redonner le meme id que pour le lancement de la
+ * simulation.
+ * user le login a utiliser pour pouvoir faire une simulation
+ * password le mot de passe
+ * si la methode est <b>simulate</b> retourne un objet
+ * {@link Simulation} Simulation sous forme XML. Si la
+ * methode est <b>checkPoint</b> retourne le nombre de mois simule.
+ */
- if ("simulate".equals(method)) {
- return new SimulatorServer().simulate(params);
- } else if ("checkPoint".equals(method)) {
- return checkPoint(params);
- } else {
- throw new NoSuchMethodException("Erreur: la methode " + method
- + " n'existe pas");
+ String user = null;
+ String password = null;
+
+ // get basic connection info
+ XmlRpcRequestConfig config = request.getConfig();
+ if (config instanceof XmlRpcHttpRequestConfig) {
+ XmlRpcHttpRequestConfig httpConfig = (XmlRpcHttpRequestConfig) config;
+ user = httpConfig.getBasicUserName();
+ password = httpConfig.getBasicPassword();
}
+
+ // TODO check authenticated users
+
+ // get params
+ Vector params = new Vector();
+ for (int index = 0; index < request.getParameterCount(); ++index) {
+ params.add(request.getParameter(index));
+ }
+
+ // launch requested method
+ String method = request.getMethodName();
+ Object result = null;
+ try {
+ if ("simulate".equals(method)) {
+ result = new SimulatorServer().simulate(params);
+ } else if ("checkPoint".equals(method)) {
+ result = checkPoint(params);
+ } else {
+ throw new NoSuchMethodException("Erreur: la methode " + method
+ + " n'existe pas");
+ }
+ } catch (Exception e) {
+ throw new XmlRpcException("Error during xmlrpc call", e);
+ }
+
+ return result;
}
/**
@@ -117,30 +160,33 @@
*/
protected Object simulate(Vector params) throws Exception {
// on creer une nouvelle simulation
- if (params.size() < 6)
+ if (params.size() < 2) {
throw new IllegalArgumentException("Mauvais nombre d'argument");
+ }
String id = (String) params.get(0);
File zip = FileUtil.byteToFile((byte[]) params.get(1));
-
+
SimulationControl control = new SimulationControl(id);
SimulationStorage simulation = null;
-
+
simulationControls.put(id, control);
try {
SimulatorLauncher launcher = new InProcessSimulatorLauncher();
simulation = launcher.simulate(null, control, zip);
zip = simulation.createZip();
- byte [] result = FileUtil.fileToByte(zip);
-
+ byte[] result = FileUtil.fileToByte(zip);
+
return result;
} catch (Exception eee) {
log.warn(_("isisfish.error.during.simulation"), eee);
throw eee;
} finally {
simulationControls.remove(id);
- simulation.delete(false);
+ if (simulation != null) {
+ simulation.delete(false);
+ }
}
}
@@ -148,44 +194,47 @@
* synchronized two SimulationControl (local and remote)
*
* @param params
- * @return ?
+ * @return
* @throws Exception
*/
synchronized protected Object checkPoint(Vector params) throws Exception {
// on retourne a l'utilisateur on en est la simulation
- if (params.size() < 1)
+ if (params.size() < 1) {
throw new IllegalArgumentException("Mauvais nombre d'argument");
+ }
- Hashtable<String, Object> args = (Hashtable<String, Object>)params.get(0);
-
+ Hashtable<String, Object> args = new Hashtable<String, Object>();
+ args.putAll((Map<String, Object>) params.get(0));
+
String id = (String) args.get("id");
SimulationControl callback = (SimulationControl) simulationControls
.get(id);
- if (callback == null)
+ if (callback == null) {
throw new SimulatorServerBadIdException("Erreur: " + id
+ " n'est pas un identifiant de simulation");
+ }
callback.updateFromHashtable(args);
-
+
return callback.getUpdateHashtable();
}
-// synchronized protected Object stop(Vector params) throws Exception {
-// if (params.size() < 1)
-// throw new IllegalArgumentException("Mauvais nombre d'argument");
-//
-// String id = (String) params.get(0);
-// SimulationControl callback = (SimulationControl) simulationControls
-// .get(id);
-// if (callback == null)
-// throw new SimulationException("Erreur: " + id
-// + " n'est pas un identifiant de simulation");
-//
-// callback.stopSimulation();
-//
-// return "";
-// }
+ // synchronized protected Object stop(Vector params) throws Exception {
+ // if (params.size() < 1)
+ // throw new IllegalArgumentException("Mauvais nombre d'argument");
+ //
+ // String id = (String) params.get(0);
+ // SimulationControl callback = (SimulationControl) simulationControls
+ // .get(id);
+ // if (callback == null)
+ // throw new SimulationException("Erreur: " + id
+ // + " n'est pas un identifiant de simulation");
+ //
+ // callback.stopSimulation();
+ //
+ // return "";
+ // }
/**
* Method main permet de lancer un serveur de simulation sur une machine.
@@ -193,8 +242,17 @@
* @param args
*/
public static void main(String[] args) {
- System.err.println("Usage: SimulatorServer [port]");
+ try {
+ IsisFish.init();
+ } catch (Exception e) {
+ if (log.isErrorEnabled()) {
+ log.error("Can't ini IsisFish", e);
+ }
+ }
+
+ System.out.println("Usage: SimulatorServer [port]");
+
int p = 9090;
if (args.length > 0) {
@@ -205,18 +263,23 @@
}
}
- XmlRpc.setKeepAlive(true);
+ // FIXME KeepAlive in xmlrpc 3.x ?
+ //XmlRpc.setKeepAlive(true);
try {
WebServer webserver = new WebServer(p);
+ XmlRpcServer xmlRpcServer = webserver.getXmlRpcServer();
- webserver.addHandler("$default", new SimulatorServer());
+ //xmlRpcServer.addHandler("$default", new SimulatorServer()); // 2.x
+ xmlRpcServer.setHandlerMapping(new SimulatorServer()); // 3.x
- System.err.println("started web server on port " + p);
-
webserver.start();
- } catch (Exception x) {
- System.err.println("Error creating web server: " + x);
+ System.out.println("Started web server on port " + p);
+
+ } catch (IOException e) {
+ if (log.isErrorEnabled()) {
+ log.error("Error creating web server", e);
+ }
}
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/IsisFishServerSimulationLauncher.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/IsisFishServerSimulationLauncher.java 2009-01-27 15:21:13 UTC (rev 1759)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/IsisFishServerSimulationLauncher.java 2009-01-28 10:35:22 UTC (rev 1760)
@@ -1,5 +1,5 @@
/* *##%
- * Copyright (C) 2002-2008 Code Lutin, Benjamin Poussin
+ * Copyright (C) 2002-2009 Code Lutin, Benjamin Poussin
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
@@ -21,19 +21,23 @@
import static org.codelutin.i18n.I18n._;
-import fr.ifremer.isisfish.IsisConfig;
-import fr.ifremer.isisfish.IsisFish;
-import fr.ifremer.isisfish.datastore.SimulationStorage;
-import fr.ifremer.isisfish.simulator.SimulationControl;
import java.io.File;
+import java.net.URL;
import java.rmi.RemoteException;
import java.util.Hashtable;
import java.util.Vector;
+
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.xmlrpc.XmlRpcClient;
+import org.apache.xmlrpc.client.XmlRpcClient;
+import org.apache.xmlrpc.client.XmlRpcClientConfigImpl;
+import org.apache.xmlrpc.client.XmlRpcCommonsTransportFactory;
import org.codelutin.util.FileUtil;
+import fr.ifremer.isisfish.IsisFish;
+import fr.ifremer.isisfish.datastore.SimulationStorage;
+import fr.ifremer.isisfish.simulator.SimulationControl;
+
/**
*
* @author poussin
@@ -45,18 +49,24 @@
public class IsisFishServerSimulationLauncher implements SimulatorLauncher {
/** to use log facility, just put in your code: log.info(\"...\"); */
- static private Log log = LogFactory.getLog(IsisFishServerSimulationLauncher.class);
+ private static Log log = LogFactory
+ .getLog(IsisFishServerSimulationLauncher.class);
- public SimulationStorage simulate(SimulationService simulationService, SimulationControl control, File simulationZip) throws RemoteException {
+ public SimulationStorage simulate(SimulationService simulationService,
+ SimulationControl control, File simulationZip)
+ throws RemoteException {
String simulationId = control.getId();
SimulationStorage simulation = null;
try {
- simulation = SimulationStorage.importAndRenameZip(
- simulationZip, simulationId);
+ simulation = SimulationStorage.importAndRenameZip(simulationZip,
+ simulationId);
simulation = remoteSimulate(control, simulation);
} catch (Exception eee) {
log.error(_("Can't do simulation %s", simulationId), eee);
- simulation.getInformation().setException(eee);
+ // FIXME simulation allways null here
+ if(simulation != null) {
+ simulation.getInformation().setException(eee);
+ }
}
// on retourne directement le simulation storage passe en argument
@@ -70,21 +80,21 @@
return 1;
}
- /**
- * execute la simulation en remote
- *
- * @param control le controleur de simulation, peut-etre null si on ne
- * souhaite pas controler la simulation
- * @param simulation la simulation a faire
- *
- * @return le storage après simulation
- * @throws Exception pour toute erreur
- */
+ /**
+ * execute la simulation en remote
+ *
+ * @param control le controleur de simulation, peut-etre null si on ne
+ * souhaite pas controler la simulation
+ * @param simulation la simulation a faire
+ *
+ * @return le storage après simulation
+ * @throws Exception pour toute erreur
+ */
public SimulationStorage remoteSimulate(SimulationControl control,
SimulationStorage simulation) throws Exception {
// export en zip du storage
File zip = simulation.createZip();
-
+
if (control != null) {
// creation du thread de surveillance de la simulation distante
// qui sert a mettre a jour les valeurs de control
@@ -97,13 +107,22 @@
Vector<Object> a = new Vector<Object>();
//fixme : on peut avori control à null ?
a.add(control.getId());
- a.add(FileUtil.fileToByte(zip));
+ a.add(FileUtil.fileToByte(zip));
// lancement de la simulation
- XmlRpcClient c = new XmlRpcClient(IsisFish.config.getSimulatorServer());
- c.setBasicAuthentication(IsisFish.config.getSimulatorUsername(),
- IsisFish.config.getSimulatorPassword());
- byte[] callResult = (byte[])c.execute("simulate", a);
+ //XmlRpcClient c = new XmlRpcClient(IsisFish.config.getSimulatorServer());
+ //c.setBasicAuthentication(IsisFish.config.getSimulatorUsername(),
+ // IsisFish.config.getSimulatorPassword());
+
+ XmlRpcClientConfigImpl xmlrpcconfig = new XmlRpcClientConfigImpl();
+ xmlrpcconfig.setServerURL(new URL(IsisFish.config.getSimulatorServer()));
+ xmlrpcconfig.setBasicUserName(IsisFish.config.getSimulatorUsername());
+ xmlrpcconfig.setBasicPassword(IsisFish.config.getSimulatorPassword());
+ XmlRpcClient client = new XmlRpcClient();
+ client.setTransportFactory(new XmlRpcCommonsTransportFactory(client));
+ client.setConfig(xmlrpcconfig);
+
+ byte[] callResult = (byte[]) client.execute("simulate", a);
// ecriture du resultat dans un fichier
File tmpzip = FileUtil.byteToFile(callResult);
@@ -164,16 +183,27 @@
public void updateControl(SimulationControl control) throws Exception {
// essai l'ancienne etait en dur: "http://localhost:9090"
- IsisConfig config = IsisFish.config;
- XmlRpcClient c = new XmlRpcClient(config.getSimulatorServer());
- c.setBasicAuthentication(config.getSimulatorUsername(), config.getSimulatorPassword());
+
+ XmlRpcClientConfigImpl xmlrpcconfig = new XmlRpcClientConfigImpl();
+ xmlrpcconfig.setServerURL(new URL(IsisFish.config.getSimulatorServer()));
+ xmlrpcconfig.setBasicUserName(IsisFish.config.getSimulatorUsername());
+ xmlrpcconfig.setBasicPassword(IsisFish.config.getSimulatorPassword());
+ XmlRpcClient client = new XmlRpcClient();
+ client.setTransportFactory(new XmlRpcCommonsTransportFactory(client));
+ client.setConfig(xmlrpcconfig);
Vector a = new Vector();
a.add(control.getUpdateHashtable());
- Hashtable<String, Object> result = (Hashtable<String, Object>) c.execute("checkPoint", a);
+ Hashtable<String, Object> result = (Hashtable<String, Object>) client
+ .execute("checkPoint", a);
// on remet de le temps normal, vu que la connexion a reussi
control.updateFromHashtable(result);
}
} // SimulationCheckpointRemoteThread
+
+ @Override
+ public String toString() {
+ return _("Remote IsisFish server");
+ }
}
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-01-27 15:21:13 UTC (rev 1759)
+++ isis-fish/trunk/src/main/resources/i18n/isis-fish-en_GB.properties 2009-01-28 10:35:22 UTC (rev 1760)
@@ -44,7 +44,9 @@
Process\ template\ error=
Region\ %s\ allready\ exist\ in\ repository.\ Can't\ import=
Region\ %s\ already\ inited=
+Remote\ IsisFish\ server=
Remote\ control\ file\ doen't\ exists\ %s=
+Remote\ control\ file\ doesn't\ exists\ %s=
Rename\ data\ directory\ to\ %s=
Show\ help=
SimulationExecutor\ started\ with\ %s\ thread\ for\ %s=
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-01-27 15:21:13 UTC (rev 1759)
+++ isis-fish/trunk/src/main/resources/i18n/isis-fish-fr_FR.properties 2009-01-28 10:35:22 UTC (rev 1760)
@@ -44,7 +44,9 @@
Process\ template\ error=
Region\ %s\ allready\ exist\ in\ repository.\ Can't\ import=
Region\ %s\ already\ inited=La r\u00E9gion %s a d\u00E9j\u00E0 \u00E9t\u00E9 initialis\u00E9e
+Remote\ IsisFish\ server=
Remote\ control\ file\ doen't\ exists\ %s=
+Remote\ control\ file\ doesn't\ exists\ %s=
Rename\ data\ directory\ to\ %s=
Show\ help=
SimulationExecutor\ started\ with\ %s\ thread\ for\ %s=
1
0
Author: chatellier
Date: 2009-01-27 15:21:13 +0000 (Tue, 27 Jan 2009)
New Revision: 1759
Modified:
isis-fish/trunk/pom.xml
Log:
Ass missing runtime dep for xmlrpc
Modified: isis-fish/trunk/pom.xml
===================================================================
--- isis-fish/trunk/pom.xml 2009-01-27 15:20:44 UTC (rev 1758)
+++ isis-fish/trunk/pom.xml 2009-01-27 15:21:13 UTC (rev 1759)
@@ -151,6 +151,13 @@
<version>2.0</version>
<scope>compile</scope>
</dependency>
+
+ <dependency>
+ <groupId>commons-codec</groupId>
+ <artifactId>commons-codec</artifactId>
+ <version>1.3</version>
+ <scope>runtime</scope>
+ </dependency>
<!-- encore utilise pour les pre-scripts -->
<dependency>
1
0
r1758 - isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator
by chatellier@users.labs.libre-entreprise.org Jan. 27, 2009
by chatellier@users.labs.libre-entreprise.org Jan. 27, 2009
Jan. 27, 2009
Author: chatellier
Date: 2009-01-27 15:20:44 +0000 (Tue, 27 Jan 2009)
New Revision: 1758
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulatorServer.java
Log:
start serveur
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulatorServer.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulatorServer.java 2009-01-27 14:46:47 UTC (rev 1757)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulatorServer.java 2009-01-27 15:20:44 UTC (rev 1758)
@@ -213,6 +213,8 @@
webserver.addHandler("$default", new SimulatorServer());
System.err.println("started web server on port " + p);
+
+ webserver.start();
} catch (Exception x) {
System.err.println("Error creating web server: " + x);
}
1
0
r1757 - isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore
by chatellier@users.labs.libre-entreprise.org Jan. 27, 2009
by chatellier@users.labs.libre-entreprise.org Jan. 27, 2009
Jan. 27, 2009
Author: chatellier
Date: 2009-01-27 14:46:47 +0000 (Tue, 27 Jan 2009)
New Revision: 1757
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/VersionStorage.java
Log:
N?\195?\169gation en trop non ?
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/VersionStorage.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/VersionStorage.java 2009-01-27 12:12:42 UTC (rev 1756)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/VersionStorage.java 2009-01-27 14:46:47 UTC (rev 1757)
@@ -120,7 +120,7 @@
* @return <code>true</code> si le fichier est versionné
*/
protected boolean isVersionnableAbleFile(File file) {
- return !getVCS().isVersionnableAbleFile(file);
+ return getVCS().isVersionnableAbleFile(file);
}
/**
1
0
r1756 - in isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher: . ssh
by chatellier@users.labs.libre-entreprise.org Jan. 27, 2009
by chatellier@users.labs.libre-entreprise.org Jan. 27, 2009
Jan. 27, 2009
Author: chatellier
Date: 2009-01-27 12:12:42 +0000 (Tue, 27 Jan 2009)
New Revision: 1756
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/SSHUserInfo.java
Log:
Store ssh session in static context to not ask for passphrase at each connection
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java 2009-01-26 10:39:35 UTC (rev 1755)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java 2009-01-27 12:12:42 UTC (rev 1756)
@@ -76,6 +76,13 @@
protected Configuration freemarkerConfiguration;
/**
+ * Opened session.
+ * Stored in static context to not reask passphrase
+ * at each connection.
+ */
+ protected static Session sshSession;
+
+ /**
* Constructor.
*
* Init freemarker.
@@ -164,7 +171,7 @@
// connection
message(control, _("isisfish.simulation.remote.message.connection"));
- Session sshSession = openSSHSession();
+ Session sshSession = getSSHSession(); //openSSHSession();
// upload simulation on server
message(control, _("isisfish.simulation.remote.message.upload"));
@@ -210,6 +217,23 @@
}
/**
+ * Get opened ssh session or try to open a new one.
+ *
+ * This method must synchronized.
+ *
+ * @return opened ssh session.
+ * @throws JSchException
+ */
+ protected synchronized Session getSSHSession() throws JSchException {
+
+ if(sshSession == null || !sshSession.isConnected()) {
+ sshSession = openSSHSession();
+ }
+
+ return sshSession;
+ }
+
+ /**
* Connect to remote server throw SSH, and return session.
*
* @return valid opened session
@@ -392,42 +416,6 @@
SSHUtils.scpFrom(session, remoteFile, localFile);
}
-
- /*
- * Launch simulation on remote server.
- *
- * @param session opened ssh session
- * @param simulationService simulation service
- * @param control control
- * @param remotePath remote zip simulation path
- * @throws JSchException
- *
- protected void launchSimulation(Session session,
- SimulationService simulationService, SimulationControl control,
- String remotePath) throws JSchException {
-
- String simulationId = control.getId();
-
- String command = String.format("%s %s %s %s '%s' '%s' %s '%s' '%s'",
- "java", // java command
- "-jar", // java jar option
- IsisFish.config.getSimulatorSshJarPath(), // remote jar path
- "--option", "launch.ui", "false", // additionnal option ui
- "--simulateWithSimulation", simulationId, remotePath // add option simulation
- );
-
- if (log.isDebugEnabled()) {
- log.debug("Launch : " + command);
- }
-
- try {
- SSHUtils.exec(session, command);
- } catch (SSHException e) {
- if (log.isErrorEnabled()) {
- log.error(_("Error while launching simulation"), e);
- }
- }
- }*/
/**
* Upload script on remote server.
@@ -642,7 +630,7 @@
// file doesn't exist
if(log.isDebugEnabled()) {
// not add ,e plz :)
- log.debug(_("Remote control file doen't exists %s", e.getMessage()));
+ log.debug(_("Remote control file doesn't exists %s", e.getMessage()));
}
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/SSHUserInfo.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/SSHUserInfo.java 2009-01-26 10:39:35 UTC (rev 1755)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/SSHUserInfo.java 2009-01-27 12:12:42 UTC (rev 1756)
@@ -50,7 +50,7 @@
*
* Static to be stored on multiple connexion.
*/
- protected static String passphrase;
+ protected String passphrase;
/**
* Passphrase text field.
@@ -160,18 +160,6 @@
response = new String[prompt.length];
for (int i = 0; i < prompt.length; i++) {
response[i] = texts[i].getText();
-
- // hack to remember password
- if (prompt[i] != null
- && prompt[i].toLowerCase().indexOf("password") >= 0) {
- passwd = response[i];
- }
-
- // hack to remember passphrase
- if (prompt[i] != null
- && prompt[i].toLowerCase().indexOf("passphrase") >= 0) {
- passphrase = response[i];
- }
}
}
// else = cancel
1
0
r1755 - isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input
by sletellier@users.labs.libre-entreprise.org Jan. 26, 2009
by sletellier@users.labs.libre-entreprise.org Jan. 26, 2009
Jan. 26, 2009
Author: sletellier
Date: 2009-01-26 10:39:35 +0000 (Mon, 26 Jan 2009)
New Revision: 1755
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationEquationUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEquationUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationRecruitmentUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsTabsUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyTabUI.jaxx
Log:
Update Tony's fillList()
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx 2009-01-23 17:37:09 UTC (rev 1754)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx 2009-01-26 10:39:35 UTC (rev 1755)
@@ -75,12 +75,12 @@
SetOfVessels setOfVessels = getVerifier().getEntity(SetOfVessels.class);
setBean((SetOfVesselsImpl) setOfVessels);
if (getBean() != null){
- fieldEffortDescriptionMetierList.fillList(getRegion().getMetier(), null);
+ fieldEffortDescriptionMetierList.fillList(getRegion().getMetier(), (Object)null);
setEffortDescriptionEffortDescriptionList();
}
}
protected void setEffortDescriptionEffortDescriptionList(){
- fieldEffortDescriptionEffortDescriptionList.fillList(getBean().getPossibleMetiers(), null);
+ fieldEffortDescriptionEffortDescriptionList.fillList(getBean().getPossibleMetiers(), (Object)null);
}
protected void add(){
Object value = fieldEffortDescriptionMetierList.getSelectedValue();
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx 2009-01-23 17:37:09 UTC (rev 1754)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx 2009-01-26 10:39:35 UTC (rev 1755)
@@ -54,47 +54,59 @@
protected Class clazz;
protected TopiaEntity bean;
-protected String method;
+protected String methodGet;
+protected String methodSet;
protected String name;
protected Equation selectedEquation;
+editor.getCurrentEditor().addDocumentListener(new DocumentListener() {
-public void init(String lblText, TopiaEntity bean, String method, String name, Class c){
+ @Override
+ public void insertUpdate(DocumentEvent e) {
+ }
+
+ @Override
+ public void removeUpdate(DocumentEvent e) {
+ }
+
+ @Override
+ public void changedUpdate(DocumentEvent e) {
+ setEquation();
+ }
+});
+
+public void init(String lblText, TopiaEntity bean, String name, String methodGet, String methodSet, Class c){
setLblText(lblText);
this.bean = bean;
- this.method = method;
+ this.methodGet = methodGet;
+ this.methodSet = methodSet;
this.name = name;
this.clazz = c;
selectedEquation = getEquation();
+ setComboModel();
+ setFormule((Formule)combo.getSelectedItem());
+ setEditorText();
}
protected Equation getEquation(){
Equation result = null;
try {
- if (bean != null){
- Method m = bean.getClass().getMethod("get" + method, null);
+ if (bean != null && methodGet != null){
+ Method m = bean.getClass().getMethod("get" + methodGet, null);
result = (Equation) m.invoke(bean, (Object[])null);
}
} catch (Exception ex) {
- Logger.getLogger(InputOneEquationUI.class.getName()).log(Level.SEVERE, null, ex);
+ System.out.println(ex);
}
return result;
}
-protected void setEquation(Formule f){
+protected void setEquation(){
try {
- EquationDAO dao = IsisFishDAOHelper.getEquationDAO(bean.getTopiaContext());
- Equation e = dao.create("name", f.getName());
- e.setCategory(f.getCategory());
- e.setContent(f.getContent());
- e.setJavaInterface(clazz);
- e.setLanguage("java");
- e.update();
- e.getTopiaContext().commitTransaction();
- if (bean != null) {
- Method m = bean.getClass().getMethod("set" + method, Equation.class);
- m.invoke(bean, e);
+ if (bean != null && methodSet != null) {
+ Method m = bean.getClass().getMethod("set" + methodSet, String.class);
+ m.invoke(bean, editor.getText());
}
} catch (Exception ex) {
- Logger.getLogger(InputOneEquationUI.class.getName()).log(Level.SEVERE, null, ex);
+ System.out.println(ex);
}
}
public void refresh(){
@@ -103,33 +115,26 @@
} catch (IOException ex) {
Logger.getLogger(InputOneEquationUI.class.getName()).log(Level.SEVERE, null, ex);
}
- setComboModel();
- setFormule((Formule)combo.getSelectedItem());
- setEditorText();
+ if (name != null){
+ setComboModel();
+ setFormule((Formule)combo.getSelectedItem());
+ setEditorText();
+ }
}
protected void setComboModel(){
java.util.List<Formule> formules = getAction().getFormules(getVerifier().getIsisContext(), name);
if (formules != null){
- if (selectedEquation != null){
- java.util.List<Item> items = new ArrayList<Item>();
- for (Formule f : formules) {
- System.out.println(selectedEquation.getClass().getName());
- boolean selected = f.equals(selectedEquation);
- items.add(new Item(f.getName(), f.getName(), f, selected));
- }
- combo.setItems(items);
+ java.util.List<Item> items = new ArrayList<Item>();
+ for (Formule f : formules) {
+ boolean selected = f.equals(selectedEquation);
+ items.add(new Item(f.getName(), f.getName(), f, selected));
}
+ combo.setItems(items);
}
}
protected void saveModel(){
- Formule e = (Formule)combo.getSelectedItem();
- if (e != null){
- getContextValue(InputAction.class).saveAsModel(e.getCategory(), "Java", e.getContent());
- }
- else{
- getContextValue(InputAction.class).saveAsModel(name, "Java", editor.getText());
- setComboModel();
- }
+ getContextValue(InputAction.class).saveAsModel(name, "Java", editor.getText());
+ setComboModel();
setInfoText(_("isisfish.message.saveModel.finished"));
}
protected void openEditor(){
@@ -154,7 +159,7 @@
<JLabel id='lbl' text='{getLblText()}' enabled='{isActif()}'/>
</cell>
<cell fill='horizontal' weightx='1.0'>
- <JComboBox id="combo" onActionPerformed='setFormule((Formule)combo.getSelectedItem());setEquation(getFormule());setEditorText();' enabled='{isActif()}'/>
+ <JComboBox id="combo" onActionPerformed='setFormule((Formule)combo.getSelectedItem());setEditorText();' enabled='{isActif()}'/>
</cell>
</row>
<row>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2009-01-23 17:37:09 UTC (rev 1754)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2009-01-26 10:39:35 UTC (rev 1755)
@@ -300,10 +300,6 @@
this.currentEntities.add(currentEntity);
setPanelsActifs();
}
- else{
- editable = false;
- setPanelsActifs();
- }
}
public void removeAllEntity(){
currentEntities.clear();
@@ -313,6 +309,7 @@
}
public void addCurrentPanel(InputContentUI... panels) {
for (InputContentUI ui : panels){
+ editable = !currentEntities.isEmpty();
this.currentPanels.add(ui);
ui.refresh();
ui.setActif(editable);
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx 2009-01-23 17:37:09 UTC (rev 1754)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx 2009-01-26 10:39:35 UTC (rev 1755)
@@ -74,7 +74,7 @@
}
// TODO : Equation selectionne
- targetFactor.init(_("isisfish.metierSeasonInfoSpecies.targetFactor"), null, "TargetFactor", "TargetSpeciesTargetFactorEquation", fr.ifremer.isisfish.equation.TargetSpeciesTargetFactorEquation.class);
+ targetFactor.init(_("isisfish.metierSeasonInfoSpecies.targetFactor"), null, "TargetFactor", null, null, fr.ifremer.isisfish.equation.TargetSpeciesTargetFactorEquation.class);
}
else{
DefaultComboBoxModel seasonModel = new DefaultComboBoxModel();
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx 2009-01-23 17:37:09 UTC (rev 1754)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx 2009-01-26 10:39:35 UTC (rev 1755)
@@ -73,12 +73,12 @@
getVerifier().setNewButton(create, "Population", false);
getVerifier().setDeleteButton(remove);
Population population = getVerifier().getEntity(Population.class);
+ getVerifier().addCurrentPanel(growthEquation, growthReverseEquation);
setBean((PopulationImpl) population);
if (getBean() != null){
// TODO : Selection equation
- growthEquation.init(_("isisfish.populationBasics.growth"), getBean(), "Growth", "PopulationGrowth", fr.ifremer.isisfish.equation.PopulationGrowth.class);
- growthReverseEquation.init(_("isisfish.populationBasics.growthReverse"), getBean(), "GrowthReverse", "PopulationGrowthReverse", fr.ifremer.isisfish.equation.PopulationGrowthReverse.class);
- getVerifier().addCurrentPanel(growthEquation, growthReverseEquation);
+ growthEquation.init(_("isisfish.populationBasics.growth"), getBean(), "Growth", "Growth", "EquationGrowth", fr.ifremer.isisfish.equation.PopulationGrowth.class);
+ growthReverseEquation.init(_("isisfish.populationBasics.growthReverse"), getBean(), "GrowthReverse", "GrowthReverse", "EquationGrowthReverse", fr.ifremer.isisfish.equation.PopulationGrowthReverse.class);
if (getBean() != null){
jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationBasicsMatureClass, getBean().getPopulationGroup(), getBean().getMaturityGroup());
setTableAgeLengthModel();
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationEquationUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationEquationUI.jaxx 2009-01-23 17:37:09 UTC (rev 1754)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationEquationUI.jaxx 2009-01-26 10:39:35 UTC (rev 1755)
@@ -48,9 +48,9 @@
getVerifier().setCancelButton(cancel);
Population population = getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
- naturalDeathRate.init(_("isisfish.populationEquation.naturalDeathRate"), getBean(), "NaturalDeathRate", "PopulationNaturalDeathRate", fr.ifremer.isisfish.equation.PopulationNaturalDeathRate.class);
- meanWeight.init(_("isisfish.populationEquation.meanWeight"), getBean(), "MeanWeight", "PopulationMeanWeight", fr.ifremer.isisfish.equation.PopulationMeanWeight.class);
- price.init(_("isisfish.populationEquation.price"), getBean(), "Price", "PopulationPrice", fr.ifremer.isisfish.equation.PopulationPrice.class);
+ naturalDeathRate.init(_("isisfish.populationEquation.naturalDeathRate"), getBean(), "NaturalDeathRate", "NaturalDeathRate", "EquationNaturalDeathRate", fr.ifremer.isisfish.equation.PopulationNaturalDeathRate.class);
+ meanWeight.init(_("isisfish.populationEquation.meanWeight"), getBean(), "MeanWeight", "MeanWeight", "EquationMeanWeight", fr.ifremer.isisfish.equation.PopulationMeanWeight.class);
+ price.init(_("isisfish.populationEquation.price"), getBean(), "Price", "Price", "EquationPrice", fr.ifremer.isisfish.equation.PopulationPrice.class);
getVerifier().addCurrentPanel(naturalDeathRate, meanWeight, price);
}
]]>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx 2009-01-23 17:37:09 UTC (rev 1754)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx 2009-01-26 10:39:35 UTC (rev 1755)
@@ -73,7 +73,9 @@
getVerifier().setCancelButton(cancel);
Population population = getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
- getVerifier().addCurrentEntity(getPopulationGroup());
+ if (getPopulationGroup() != null){
+ getVerifier().addCurrentEntity(getPopulationGroup());
+ }
if (getBean() != null){
jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationGroupPopulationGroup,getBean().getPopulationGroup(), null);
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEquationUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEquationUI.jaxx 2009-01-23 17:37:09 UTC (rev 1754)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEquationUI.jaxx 2009-01-26 10:39:35 UTC (rev 1755)
@@ -52,9 +52,9 @@
public void refresh(){
Population population = getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
- migrationEquation.init(_("isisfish.common.migration"), getPopInfo(), "MigrationEquation", "Migration", fr.ifremer.isisfish.equation.MigrationEquation.class);
- emigrationEquation.init(_("isisfish.common.emigration"), getPopInfo(), "EmigrationEquation", "Emigration", fr.ifremer.isisfish.equation.EmigrationEquation.class);
- immigrationEquation.init(_("isisfish.common.immigration"), getPopInfo(), "ImmigrationEquation", "Immigration", fr.ifremer.isisfish.equation.ImmigrationEquation.class);
+ migrationEquation.init(_("isisfish.common.migration"), getPopInfo(), "Migration", "MigrationEquation", "MigrationEquationAsString", fr.ifremer.isisfish.equation.MigrationEquation.class);
+ emigrationEquation.init(_("isisfish.common.emigration"), getPopInfo(), "Emigration", "EmigrationEquation", "EmigrationEquationAsString", fr.ifremer.isisfish.equation.EmigrationEquation.class);
+ immigrationEquation.init(_("isisfish.common.immigration"), getPopInfo(), "Immigration", "ImmigrationEquation", "ImmigrationEquationAsString", fr.ifremer.isisfish.equation.ImmigrationEquation.class);
getVerifier().addCurrentPanel(migrationEquation, emigrationEquation, immigrationEquation);
}
]]>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationRecruitmentUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationRecruitmentUI.jaxx 2009-01-23 17:37:09 UTC (rev 1754)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationRecruitmentUI.jaxx 2009-01-26 10:39:35 UTC (rev 1755)
@@ -65,7 +65,7 @@
Population population = getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
- reproductionEquation.init(_("isisfish.populationRecruitment.reproductionEquation"), getBean(), "ReproductionEquation", "PopulationReproductionEquation", fr.ifremer.isisfish.equation.PopulationGrowth.class);
+ reproductionEquation.init(_("isisfish.populationRecruitment.reproductionEquation"), getBean(), "Reproduction", "ReproductionEquation", "EquationReproductionEquation", fr.ifremer.isisfish.equation.PopulationGrowth.class);
getVerifier().addCurrentPanel(reproductionEquation);
}
]]>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx 2009-01-23 17:37:09 UTC (rev 1754)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx 2009-01-26 10:39:35 UTC (rev 1755)
@@ -89,10 +89,10 @@
toolMap.add((Component)toolSet);
setMapListener();
}
- refreshMap();
if (getBean() != null){
portCell.fillList(getRegion().getCell(), getBean().getCell());
}
+ refreshMap();
}
protected void refreshMap(){
java.util.List<Cell> cells = new ArrayList<Cell>();
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityUI.jaxx 2009-01-23 17:37:09 UTC (rev 1754)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityUI.jaxx 2009-01-26 10:39:35 UTC (rev 1755)
@@ -69,7 +69,7 @@
}
// TODO : Equation selection
- selectivityEquation.init(_("isisfish.selectivity.equation"), null, "", "SelectivityEquation", fr.ifremer.isisfish.equation.SelectivityEquation.class);
+ selectivityEquation.init(_("isisfish.selectivity.equation"), null, "Selectivity", null, null, fr.ifremer.isisfish.equation.SelectivityEquation.class);
getVerifier().addCurrentPanel(selectivityEquation);
}
protected void setSelectivityTableModel(){
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsTabsUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsTabsUI.jaxx 2009-01-23 17:37:09 UTC (rev 1754)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsTabsUI.jaxx 2009-01-26 10:39:35 UTC (rev 1755)
@@ -76,7 +76,7 @@
jaxx.runtime.swing.Utils.fillComboBox(fieldSetOfVesselsPort,getRegion().getPort(), getBean().getPort());
jaxx.runtime.swing.Utils.fillComboBox(fieldSetOfVesselsVesselType,getRegion().getVesselType(), getBean().getVesselType());
- technicalEfficiency.init(_("isisfish.setOfVessels.technicalEfficiency"), getBean(), "TechnicalEfficiencyEquation", "SoVTechnicalEfficiencyEquation", fr.ifremer.isisfish.equation.SoVTechnicalEfficiencyEquation.class);
+ technicalEfficiency.init(_("isisfish.setOfVessels.technicalEfficiency"), bean, "TechnicalEfficiency", "TechnicalEfficiencyEquation", "EquationTechnicalEfficiency", fr.ifremer.isisfish.equation.SoVTechnicalEfficiencyEquation.class);
getVerifier().addCurrentPanel(technicalEfficiency);
}
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyTabUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyTabUI.jaxx 2009-01-23 17:37:09 UTC (rev 1754)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyTabUI.jaxx 2009-01-26 10:39:35 UTC (rev 1755)
@@ -72,7 +72,7 @@
Strategy strategy = (Strategy)getVerifier().getEntity(Strategy.class);
setBean((StrategyImpl) strategy);
if (getBean() != null){
- strategyInactivity.init("", getBean(), "InactivityEquation", "StrategyInactivityEquation", fr.ifremer.isisfish.equation.StrategyInactivityEquation.class);
+ strategyInactivity.init("isisfish.strategy.inactivity", getBean(), "Inactivity", "InactivityEquation", "EquationInactivity", fr.ifremer.isisfish.equation.StrategyInactivityEquation.class);
getVerifier().addCurrentPanel(strategyInactivity);
setSetOfVesselsModel();
}
1
0
r1754 - in isis-fish/trunk: . src/main/java/fr/ifremer/isisfish src/main/java/fr/ifremer/isisfish/simulator/launcher src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh src/main/resources src/main/resources/i18n src/main/resources/ssh src/test/java/fr/ifremer/isisfish/simulator src/test/java/fr/ifremer/isisfish/simulator/launcher
by chatellier@users.labs.libre-entreprise.org Jan. 23, 2009
by chatellier@users.labs.libre-entreprise.org Jan. 23, 2009
Jan. 23, 2009
Author: chatellier
Date: 2009-01-23 17:37:09 +0000 (Fri, 23 Jan 2009)
New Revision: 1754
Added:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/ClasspathTemplateLoader.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/SSHException.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/SSHUserInfo.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/SSHUtils.java
isis-fish/trunk/src/main/resources/ssh/
isis-fish/trunk/src/main/resources/ssh/launch-isis-pxe.seq
isis-fish/trunk/src/main/resources/ssh/launch-isis.seq
isis-fish/trunk/src/test/java/fr/ifremer/isisfish/simulator/launcher/
isis-fish/trunk/src/test/java/fr/ifremer/isisfish/simulator/launcher/SshSimulatorLauncherTest.java
Removed:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHUtils.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SshSimulatorLauncher.java
Modified:
isis-fish/trunk/pom.xml
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SimulationJob.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SimulatorLauncher.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:
Mise ?\195?\160 jour du launcher SSH sur caparmor
Modified: isis-fish/trunk/pom.xml
===================================================================
--- isis-fish/trunk/pom.xml 2009-01-23 09:22:36 UTC (rev 1753)
+++ isis-fish/trunk/pom.xml 2009-01-23 17:37:09 UTC (rev 1754)
@@ -11,7 +11,7 @@
<parent>
<groupId>org.codelutin</groupId>
<artifactId>lutinproject</artifactId>
- <version>3.4-SNAPSHOT</version>
+ <version>3.3</version>
</parent>
<groupId>ifremer</groupId>
@@ -208,7 +208,7 @@
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
- <version>1.1.105</version>
+ <version>1.1.106</version>
<scope>compile</scope>
</dependency>
@@ -292,6 +292,11 @@
</dependency>
<!-- fin svnkit pour communication subversion -->
+ <dependency>
+ <groupId>org.freemarker</groupId>
+ <artifactId>freemarker</artifactId>
+ <version>2.3.15</version>
+ </dependency>
</dependencies>
<!-- ************************************************************* -->
@@ -334,7 +339,6 @@
<!-- Ignore failure test for now -->
<maven.test.testFailureIgnore>true</maven.test.testFailureIgnore>
- <maven.javadoc.skip>true</maven.javadoc.skip>
<!-- jnlp -->
<keystorepath>../../../CodeLutinKeystore</keystorepath>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java 2009-01-23 09:22:36 UTC (rev 1753)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java 2009-01-23 17:37:09 UTC (rev 1754)
@@ -50,7 +50,7 @@
import fr.ifremer.isisfish.simulator.SimulationContext;
import fr.ifremer.isisfish.simulator.launcher.InProcessSimulatorLauncher;
import fr.ifremer.isisfish.simulator.launcher.SimulationService;
-import fr.ifremer.isisfish.simulator.launcher.SshSimulatorLauncher;
+import fr.ifremer.isisfish.simulator.launcher.SSHSimulatorLauncher;
import fr.ifremer.isisfish.simulator.launcher.SubProcessSimulationLauncher;
import fr.ifremer.isisfish.vcs.VCS;
@@ -633,7 +633,7 @@
/** prevu pour l'architecture de lancement en plugin: local, isis-server, caparmor, ... */
SIMULATOR_LAUNCHER(SimulationService.SIMULATION_LAUNCHER + ".localDefault", _("isisfish.config.main.localSimulator.description"), InProcessSimulatorLauncher.class.getName()),
SIMULATOR_LAUNCHER_SUB(SimulationService.SIMULATION_LAUNCHER + ".subDefault", _("isisfish.config.main.subSimulator.description"), SubProcessSimulationLauncher.class.getName()),
- SIMULATOR_LAUNCHER_REMOTE(SimulationService.SIMULATION_LAUNCHER + ".remoteCaparmor", _("isisfish.config.main.remoteCaparmor.description"), SshSimulatorLauncher.class.getName()),
+ SIMULATOR_LAUNCHER_REMOTE(SimulationService.SIMULATION_LAUNCHER + ".remoteCaparmor", _("isisfish.config.main.remoteCaparmor.description"), SSHSimulatorLauncher.class.getName()),
SIMULATOR_SERVER("simulation.server", _("isisfish.config.main.simulationServer.description"), "http://simulateur.ifremer.fr:9090"),
/** le login a utiliser pour les launcher distant, le type du launcher est ajouter a la cle (car 1 login par launcher) */
Copied: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java (from rev 1751, isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SshSimulatorLauncher.java)
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java (rev 0)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java 2009-01-23 17:37:09 UTC (rev 1754)
@@ -0,0 +1,694 @@
+/* *##%
+ * Copyright (C) 2008, 2009 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, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *##%*/
+
+package fr.ifremer.isisfish.simulator.launcher;
+
+import static org.codelutin.i18n.I18n._;
+
+import java.io.File;
+import java.io.IOException;
+import java.io.StringWriter;
+import java.io.Writer;
+import java.rmi.RemoteException;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.apache.commons.io.FileUtils;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.codelutin.util.FileUtil;
+
+import com.jcraft.jsch.JSch;
+import com.jcraft.jsch.JSchException;
+import com.jcraft.jsch.Session;
+import com.jcraft.jsch.UserInfo;
+
+import fr.ifremer.isisfish.IsisFish;
+import fr.ifremer.isisfish.datastore.SimulationStorage;
+import fr.ifremer.isisfish.simulator.SimulationControl;
+import fr.ifremer.isisfish.simulator.launcher.ssh.ClasspathTemplateLoader;
+import fr.ifremer.isisfish.simulator.launcher.ssh.SSHException;
+import fr.ifremer.isisfish.simulator.launcher.ssh.SSHUserInfo;
+import fr.ifremer.isisfish.simulator.launcher.ssh.SSHUtils;
+import freemarker.cache.TemplateLoader;
+import freemarker.template.Configuration;
+import freemarker.template.Template;
+import freemarker.template.TemplateException;
+
+/**
+ * Use a remote simulation server.
+ *
+ * Upload zip simulation file on server and launch
+ * simulation on that file.
+ *
+ * Isis-Fish must be installed on remote server.
+ *
+ * @see JSch
+ *
+ * @author chatellier
+ * @version $Revision: 1.0 $
+ *
+ * Last update : $Date: 18 nov. 2008 $
+ * By : $Author: chatellier $
+ */
+public class SSHSimulatorLauncher implements SimulatorLauncher {
+
+ /** Class logger */
+ protected static Log log = LogFactory.getLog(SSHSimulatorLauncher.class);
+
+ /** Freemarker configuration */
+ protected Configuration freemarkerConfiguration;
+
+ /**
+ * Constructor.
+ *
+ * Init freemarker.
+ */
+ public SSHSimulatorLauncher() {
+ initFreemarker();
+ }
+
+ /**
+ * Init freemarker configuration.
+ */
+ protected void initFreemarker() {
+
+ freemarkerConfiguration = new Configuration();
+
+ // needed to overwrite "Defaults to default system encoding."
+ // fix encoding issue on some systems
+ freemarkerConfiguration.setDefaultEncoding("utf-8");
+
+ // specific template loader to get template from jars (classpath)
+ TemplateLoader templateLoader = new ClasspathTemplateLoader();
+ freemarkerConfiguration.setTemplateLoader(templateLoader);
+
+ //freemarkerConfiguration.setObjectWrapper(new BeansWrapper());
+
+ }
+
+ /**
+ * Display message both in commons-logging and control text progress.
+ *
+ * @param control control
+ * @param message message to display
+ */
+ protected void message(SimulationControl control, String message) {
+ // log
+ if (log.isInfoEnabled()) {
+ log.info(message);
+ }
+ // control
+ if (control != null) {
+ control.setText(message);
+ }
+ }
+
+ /*
+ * @see fr.ifremer.isisfish.simulator.launcher.SimulatorLauncher#maxSimulationThread()
+ */
+ @Override
+ public int maxSimulationThread() {
+
+ // FIXME pour toutes les envoyer
+ // met le serveur les lance quand il veut
+
+ return 1;
+ }
+
+ /*
+ * @see java.lang.Object#toString()
+ */
+ @Override
+ public String toString() {
+ return _("isisfish.simulator.launcher.remote");
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * Dans le cas de ssh:
+ * - upload la simulation
+ * - construit le script pour qsub
+ * - upload le script qsub
+ * - ajoute le script a qsub
+ *
+ * Et :
+ * - lance le thread de control de la simulation
+ */
+ @Override
+ public SimulationStorage simulate(SimulationService simulationService,
+ SimulationControl control, File simulationZip)
+ throws RemoteException {
+
+ SimulationStorage simulationStorage = null;
+
+ // start ssh session
+ try {
+
+ // connection
+ message(control, _("isisfish.simulation.remote.message.connection"));
+ Session sshSession = openSSHSession();
+
+ // upload simulation on server
+ message(control, _("isisfish.simulation.remote.message.upload"));
+ String simulationRemotePath = uploadSimulation(sshSession, simulationZip);
+
+ // build du contenu du script
+ message(control, _("isisfish.simulation.remote.message.waitingstart"));
+ File simulationScript = getSimulationScriptFile(control.getId(), simulationRemotePath);
+ String scriptRemotePath = uploadSimulationScript(sshSession, simulationScript);
+ addScriptToQsubQueue(sshSession, scriptRemotePath);
+
+ // just start a thread
+ Thread thread = checkSimulationProgression(sshSession, simulationService,
+ control);
+ try {
+ thread.join();
+ } catch (InterruptedException e) {
+ if (log.isErrorEnabled()) {
+ log.error(_("Control thread interrupted"), e);
+ }
+ }
+
+ // recuperation des resultats
+ message(control,
+ _("isisfish.simulation.remote.message.downloadresults"));
+ downloadResults(sshSession, control.getId());
+ simulationStorage = SimulationStorage.getSimulation(control.getId());
+
+ // force thread to stop
+ synchronized (control) {
+ control.stopSimulation();
+ }
+
+ } catch (Exception e) {
+ if (log.isErrorEnabled()) {
+ log.error(_("isisfish.error.simulation.remote.global"));
+ }
+ throw new RemoteException(
+ _("isisfish.error.simulation.remote.global"), e);
+ }
+
+ return simulationStorage;
+ }
+
+ /**
+ * Connect to remote server throw SSH, and return session.
+ *
+ * @return valid opened session
+ *
+ * @throws JSchException
+ */
+ protected Session openSSHSession() throws JSchException {
+
+ JSch jsch = new JSch();
+
+ // extract connection infos
+ String host = IsisFish.config.getSimulatorSshServer();
+ String username = IsisFish.config.getSimulatorSshUsername();
+
+ int port = 22; // by default, 22
+
+ if (host.indexOf(':') > 0) {
+ String sPort = host.substring(host.indexOf(':') + 1);
+ try {
+ port = Integer.parseInt(sPort);
+ } catch (NumberFormatException e) {
+ if (log.isWarnEnabled()) {
+ log.warn(_(
+ "isisfish.error.simulation.remote.wrongportvalue",
+ sPort));
+ }
+ }
+ host = host.substring(0, host.indexOf(':'));
+ }
+
+ if (log.isInfoEnabled()) {
+ log.info(_("Try to log on %s@%s:%d", username, host, port));
+ }
+
+ // add ssh key
+ boolean sshKeyUsed = false;
+ File sshKey = IsisFish.config.getSSHPrivateKeyFilePath();
+ if (sshKey.canRead()) {
+ if (log.isInfoEnabled()) {
+ log.info(_("Ssh key found '%s' will be used to connect to",
+ sshKey.getAbsoluteFile(), host));
+ }
+ jsch.addIdentity(sshKey.getAbsolutePath());
+ sshKeyUsed = true;
+ }
+
+ Session session = jsch.getSession(username, host, port);
+
+ // username and password will be given via UserInfo interface.
+ UserInfo ui = new SSHUserInfo();
+ session.setUserInfo(ui);
+ session.connect(60000); // timeout
+
+ // test here, if password has been asked to user
+ if (session.isConnected() && sshKeyUsed && ui.getPassword() != null) {
+ putSshKeyOnRemoteServer(session, sshKey);
+ }
+ return session;
+ }
+
+ /**
+ * Close ssh session.
+ *
+ * @param session session to close
+ */
+ protected void closeSSHSession(Session session) {
+ if (session != null) {
+ session.disconnect();
+ }
+ }
+
+ /**
+ * Add ssh key into $HOME/.ssh/authorized_keys file.
+ *
+ * Just connect and do an "echo xx >> .ssh/authorized_keys"
+ * @param session opened session
+ * @param sshKey
+ * @throws JSchException
+ */
+ protected void putSshKeyOnRemoteServer(Session session, File sshKey)
+ throws JSchException {
+
+ // get public key for argument private key file
+ File publicKey = new File(sshKey.getAbsoluteFile() + ".pub");
+
+ // command to :
+ // - make ssh directory
+ // - add key to authorized_keys
+ String command = "if [ ! -d .ssh ] ; then mkdir .ssh; fi ; echo \"%s\" >> .ssh/authorized_keys";
+
+ try {
+ // use usefull readLines from commons-io
+ @SuppressWarnings("unchecked")
+ List<String> contents = FileUtils.readLines(publicKey);
+
+ // only one line
+ if (contents != null && contents.size() == 1) {
+ command = String.format(command, contents.get(0));
+
+ if (log.isInfoEnabled()) {
+ log.info("Add key on remote authorized keys");
+ }
+ if (log.isDebugEnabled()) {
+ log.debug("command is : " + command);
+ }
+
+ SSHUtils.exec(session, command);
+ }
+ } catch (IOException e) {
+ if (log.isErrorEnabled()) {
+ log.error(_("Error while uploading public key to remote serveur authorized_keys"),
+ e);
+ }
+ } catch (SSHException e) {
+ if (log.isErrorEnabled()) {
+ log.error(_("Error while uploading public key to remote serveur authorized_keys"),
+ e);
+ }
+ }
+ }
+
+ /**
+ * Upload simulation file to server.
+ *
+ * @param session already open valid ssh session
+ * @param simulationFile simulation file to upload
+ *
+ * @return remote file path or <tt>null</tt> if errors
+ * @throws SSHException if upload fail
+ */
+ protected String uploadSimulation(Session session, File simulationFile) throws SSHException {
+
+ String localPath = simulationFile.getAbsolutePath();
+
+ // Copy simulation file in same arch as local arch
+ // on windows, it's a bad idee :)))
+ // copy it always on caparmor remote temp dir ?
+ // /tmp ?
+ // TODO check it
+
+ String remotePath = "/tmp/";
+
+ if (localPath.lastIndexOf("/") > 0) {
+ remotePath += localPath.substring(localPath.lastIndexOf("/") + 1);
+ } else if (localPath.lastIndexOf("\\") > 0) { // windows
+ remotePath += localPath.substring(localPath.lastIndexOf("\\") + 1);
+ } else {
+ remotePath += localPath;
+ }
+
+ SSHUtils.scpTo(session, simulationFile, remotePath);
+
+ return remotePath;
+ }
+
+ /**
+ * Download simulation results.
+ *
+ * Simulation result is save in {@link SimulationStorage#SIMULATION_PATH}.
+ *
+ * @throws SSHException if download fail (can happen if remote file doesn't exist
+ */
+ protected void downloadResults(Session session, String simulationId) throws SSHException {
+
+ // simulation directory
+ File localFile = new File(IsisFish.config.getDatabaseDirectory(),
+ SimulationStorage.SIMULATION_PATH);
+
+ if (log.isDebugEnabled()) {
+ log.debug("Downloading results in " + localFile.getAbsolutePath());
+ }
+
+ // build remote file path
+ // FIXME this path should be given by remote IsisFish app
+ // TODO to change
+ String remoteFile = IsisFish.config.getSimulatorSshDataPath();
+ remoteFile += "/" + SimulationStorage.SIMULATION_PATH;
+ remoteFile += "/" + simulationId;
+
+ SSHUtils.scpFrom(session, remoteFile, localFile);
+
+ }
+
+ /*
+ * Launch simulation on remote server.
+ *
+ * @param session opened ssh session
+ * @param simulationService simulation service
+ * @param control control
+ * @param remotePath remote zip simulation path
+ * @throws JSchException
+ *
+ protected void launchSimulation(Session session,
+ SimulationService simulationService, SimulationControl control,
+ String remotePath) throws JSchException {
+
+ String simulationId = control.getId();
+
+ String command = String.format("%s %s %s %s '%s' '%s' %s '%s' '%s'",
+ "java", // java command
+ "-jar", // java jar option
+ IsisFish.config.getSimulatorSshJarPath(), // remote jar path
+ "--option", "launch.ui", "false", // additionnal option ui
+ "--simulateWithSimulation", simulationId, remotePath // add option simulation
+ );
+
+ if (log.isDebugEnabled()) {
+ log.debug("Launch : " + command);
+ }
+
+ try {
+ SSHUtils.exec(session, command);
+ } catch (SSHException e) {
+ if (log.isErrorEnabled()) {
+ log.error(_("Error while launching simulation"), e);
+ }
+ }
+ }*/
+
+ /**
+ * Upload script on remote server.
+ *
+ * @param session valid opened ssh session
+ * @param simulationScript file to upload
+ *
+ * @throws SSHException if upload fail
+ */
+ protected String uploadSimulationScript(Session session, File simulationScript) throws SSHException {
+
+ String localPath = simulationScript.getAbsolutePath();
+
+ // Copy simulation file in same arch as local arch
+ // on windows, it's a bad idee :)))
+ // copy it always on caparmor remote temp dir ?
+ // /tmp ?
+ // TODO check it
+
+ String remotePath = "/tmp/";
+
+ if (localPath.lastIndexOf("/") > 0) {
+ remotePath += localPath.substring(localPath.lastIndexOf("/") + 1);
+ } else if (localPath.lastIndexOf("\\") > 0) { // windows
+ remotePath += localPath.substring(localPath.lastIndexOf("\\") + 1);
+ } else {
+ remotePath += localPath;
+ }
+
+ SSHUtils.scpTo(session, simulationScript, remotePath);
+
+ return remotePath;
+ }
+
+ /**
+ * Retourne un fichier temporaire contenant le script de lancement
+ * de simulation.
+ *
+ * Le fichier temporaire est configuré pour se supprimer tout seul.
+ *
+ * @param simuationId id de la simulation
+ * @param simulationZip zip de la simulation
+ *
+ * @return un Fichier temporaire ou <tt>null</tt> en cas d'exception
+ *
+ * @throws IOException if can't build script
+ */
+ protected File getSimulationScriptFile(String simuationId, String simulationZip) throws IOException {
+
+ File tempScript = File.createTempFile("launch-isis", ".seq");
+ tempScript.deleteOnExit(); // auto delete
+
+ String fileContent = getSimulationScriptLaunchContent("ssh/launch-isis-pxe.seq", simuationId, simulationZip);
+ FileUtil.writeString(tempScript, fileContent);
+
+ return tempScript;
+ }
+
+ /**
+ * Utilise freemarker pour recuperer le contenu
+ * du script.
+ *
+ * Remplace aussi la variable $simulation du template.
+ *
+ * @param templateName url du template
+ * @param simuationId id de la simulation
+ * @param simulationZip zip de la simulation
+ *
+ * @throws IOException if can't get script content
+ */
+ protected String getSimulationScriptLaunchContent(String templateName,
+ String simuationId, String simulationZip) throws IOException {
+
+ String scriptContent = null;
+
+ try {
+ // get template
+ Template template = freemarkerConfiguration
+ .getTemplate(templateName);
+
+ // context values
+ Map<String, Object> root = new HashMap<String, Object>();
+ root.put("simulationid", simuationId);
+ root.put("simulationzip", simulationZip);
+
+ // process template
+ Writer out = new StringWriter();
+ template.process(root, out);
+ out.flush();
+ scriptContent = out.toString();
+
+ } catch (TemplateException e) {
+ if (log.isErrorEnabled()) {
+ log.error(_("Process template error"), e);
+ }
+
+ throw new IOException(_("Process template error"), e);
+ }
+
+ return scriptContent;
+ }
+
+ /**
+ * Add script in remote qsub queue.
+ *
+ * @param session valid opened session
+ * @param scriptRemotePath remote script path
+ *
+ * @throws SSHException if call fail
+ */
+ protected void addScriptToQsubQueue(Session session, String scriptRemotePath) throws SSHException {
+
+ // command to :
+ // - add script in qsub queue
+ String command = "./qsub \"" + scriptRemotePath + "\"";
+
+ int exit = SSHUtils.exec(session, command);
+
+ if(exit != 0) {
+ throw new SSHException(_("Command '%s' fail to execute", command));
+ }
+ }
+
+ /**
+ * Launch a thread to check simulation progression on remote
+ * server.
+ *
+ * Use IsisFish.config.SIMULATOR_SSH_DATAPATH to download
+ * remote simulation control file.
+ *
+ * @param sshSession
+ * @param simulationService
+ * @param control
+ */
+ protected Thread checkSimulationProgression(Session sshSession,
+ SimulationService simulationService, SimulationControl control) {
+
+ Runnable controlRunnable = new RemoteSSHControlThread(sshSession,
+ control);
+ Thread controlThread = new Thread(controlRunnable);
+ controlThread.start();
+
+ return controlThread;
+ }
+
+ /**
+ * Thread that check remote control file every 2s.
+ */
+ protected class RemoteSSHControlThread implements Runnable {
+
+ /** Sleep 1s */
+ protected static final int SLEEPTIME = 1000;
+
+ /** Opened ssh session */
+ protected Session sshSession;
+
+ /** Control (to update progression) */
+ protected SimulationControl control;
+
+ /**
+ * Constructor.
+ * @param sshSession
+ *
+ * @param control control
+ */
+ protected RemoteSSHControlThread(Session sshSession,
+ SimulationControl control) {
+ this.sshSession = sshSession;
+ this.control = control;
+ }
+
+ /*
+ * @see java.lang.Runnable#run()
+ */
+ @Override
+ public void run() {
+
+ boolean running = true;
+ while (running) {
+
+ // wait
+ try {
+ Thread.sleep(SLEEPTIME);
+
+ // log (to check if thread is still alive)
+ if (log.isDebugEnabled()) {
+ log.debug("Control thread wake up");
+ }
+
+ try {
+ // download control file
+ File controlFile = downloadControlFile(control.getId());
+
+ if (log.isDebugEnabled()) {
+ log.debug("Control have been downloaded : "
+ + controlFile.getAbsolutePath());
+ }
+
+ synchronized (control) {
+ // le thread principal a pu le modifier pendant le sleep
+ //if (control.isRunning()) {
+ // on ne lit pas le stop, car le stop ne peut-etre appeler
+ // que par l'utilisateur qui est de ce cote de la machine
+ SimulationStorage.readControl(controlFile,
+ control, "stop");
+ //}
+ }
+
+ // deleteTempFile
+ controlFile.delete();
+ } catch (SSHException e) {
+ // file doesn't exist
+ if(log.isDebugEnabled()) {
+ // not add ,e plz :)
+ log.debug(_("Remote control file doen't exists %s", e.getMessage()));
+ }
+ }
+
+ } catch (InterruptedException e) {
+ if (log.isErrorEnabled()) {
+ log.error("Thread has been interrupted", e);
+ }
+ } catch (IOException e) {
+ if (log.isErrorEnabled()) {
+ log.error("Error while reading control file", e);
+ }
+ }
+
+ synchronized (control) {
+ running = control.getProgressMax() == 0 || (control.getProgress() < control.getProgressMax() - 1);
+ }
+ }
+ }
+
+ /**
+ * Download remote simulation control file and store
+ * its content into temp file.
+ *
+ * @return downloaded temp file (file have to be manually deleted)
+ * @throws IOException
+ * @throws SSHException if remote file doesn't exists
+ */
+ protected File downloadControlFile(String simulationId)
+ throws IOException, SSHException {
+
+ File localFile = null;
+
+ // build remote file path
+ // FIXME this path should be given by remote IsisFish app
+ // TODO to change
+ String remoteFile = IsisFish.config.getSimulatorSshDataPath();
+ remoteFile += "/" + SimulationStorage.SIMULATION_PATH;
+ remoteFile += "/" + simulationId;
+ remoteFile += "/control";
+
+ // local tmp file
+ localFile = File.createTempFile(simulationId, "control");
+
+ SSHUtils.scpFrom(sshSession, remoteFile, localFile);
+
+ return localFile;
+ }
+ }
+}
Property changes on: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java
___________________________________________________________________
Name: svn:mergeinfo
+
Deleted: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHUtils.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHUtils.java 2009-01-23 09:22:36 UTC (rev 1753)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHUtils.java 2009-01-23 17:37:09 UTC (rev 1754)
@@ -1,495 +0,0 @@
-/* *##%
- * Copyright (C) 2008 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *##%*/
-
-package fr.ifremer.isisfish.simulator.launcher;
-
-import java.io.BufferedReader;
-import java.io.ByteArrayOutputStream;
-import java.io.EOFException;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.OutputStream;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import com.jcraft.jsch.Channel;
-import com.jcraft.jsch.ChannelExec;
-import com.jcraft.jsch.JSchException;
-import com.jcraft.jsch.Session;
-
-/**
- * SSH utils class.
- *
- * All this code has be taken from ant optionnal ssh task.
- *
- * Use full for:
- * - scpTo command
- * - scpFrom command
- * - exec command
- *
- * @author chatellier
- * @version $Revision: 1.0 $
- *
- * Last update : $Date: 13 janv. 2009 $
- * By : $Author: chatellier $
- */
-public class SSHUtils {
-
- /** log. */
- private static Log log = LogFactory.getLog(SSHUtils.class);
-
- protected static final byte LINE_FEED = 0x0a;
- protected static final int BUFFER_SIZE = 1024;
- private static final int HUNDRED_KILOBYTES = 102400;
-
- /** Utility class */
- protected SSHUtils() {
-
- }
-
- /**
- * Exec command on remote server.
- *
- * @param session opened valid session
- * @param command command to exec
- * @throws SSHException
- */
- public static void exec(Session session, String command)
- throws SSHException {
-
- try {
- // exec previous command
- Channel channel = session.openChannel("exec");
- ((ChannelExec) channel).setCommand(command);
-
- BufferedReader br = new BufferedReader(new InputStreamReader(
- channel.getInputStream()));
- channel.connect();
- String line = null;
- while (true) {
- while ((line = br.readLine()) != null) {
- if (log.isInfoEnabled()) {
- log.info("Remote output : " + line);
- }
- }
- if (channel.isClosed()) {
- if (log.isInfoEnabled()) {
- log.info("JSch channel exit-status: "
- + channel.getExitStatus());
- }
- break;
- }
- try {
- Thread.sleep(500);
- } catch (Exception ee) {
- }
- }
- channel.disconnect();
- // end read buffer
- } catch (JSchException e) {
- throw new SSHException("I/O error while executing command", e);
- } catch (IOException e) {
- throw new SSHException("I/O error while executing command", e);
- }
-
- }
-
- /**
- * Download a local file from remote server.
- *
- * @param session opened valid jsch session
- * @param remoteFileName remote file name to download
- * @param localFile local file name to download into
- *
- * @throws SSHException
- */
- public static void scpFrom(Session session, String remoteFileName,
- File localFile) throws SSHException {
-
- String command = "scp -f -r \"" + remoteFileName + "\"";
-
- ChannelExec channel = null;
- try {
- channel = (ChannelExec) session.openChannel("exec");
- channel.setCommand(command);
-
- // get I/O streams for remote scp
- OutputStream out = channel.getOutputStream();
- InputStream in = channel.getInputStream();
-
- channel.connect();
-
- sendAck(out);
- startRemoteCpProtocol(in, out, localFile);
- } catch (IOException e) {
- throw new SSHException(e);
- } catch (JSchException e) {
- throw new SSHException(e);
- } finally {
- if (channel != null) {
- channel.disconnect();
- }
- }
- }
-
- /**
- * Upload file on remote server.
- *
- * @param session opened valid session
- * @param localFile file to upload
- * @param remoteFilePath remote file path
- *
- * @throws SSHException
- */
- public static void scpTo(Session session, File localFile,
- String remoteFilePath) throws SSHException {
-
- try {
- doSingleTransfer(session, localFile, remoteFilePath);
- } catch (IOException e) {
- throw new SSHException(e);
- } catch (JSchException e) {
- throw new SSHException(e);
- }
- }
-
- /**
- * Send an ack.
- * @param out the output stream to use
- * @throws IOException on error
- */
- protected static void sendAck(OutputStream out) throws IOException {
- byte[] buf = new byte[1];
- buf[0] = 0;
- out.write(buf);
- out.flush();
- }
-
- /**
- * Reads the response, throws a BuildException if the response
- * indicates an error.
- * @param in the input stream to use
- * @throws IOException on I/O error
- */
- protected static void waitForAck(InputStream in) throws IOException,
- SSHException {
- int b = in.read();
-
- // b may be 0 for success,
- // 1 for error,
- // 2 for fatal error,
-
- if (b == -1) {
- // didn't receive any response
- throw new SSHException("No response from server");
- } else if (b != 0) {
- StringBuffer sb = new StringBuffer();
-
- int c = in.read();
- while (c > 0 && c != '\n') {
- sb.append((char) c);
- c = in.read();
- }
-
- if (b == 1) {
- throw new SSHException("server indicated an error: "
- + sb.toString());
- } else if (b == 2) {
- throw new SSHException("server indicated a fatal error: "
- + sb.toString());
- } else {
- throw new SSHException("unknown response, code " + b
- + " message: " + sb.toString());
- }
- }
- }
-
- /**
- * Track progress every 10% if 100kb < filesize < 1mb. For larger
- * files track progress for every percent transmitted.
- * @param filesize the size of the file been transmitted
- * @param totalLength the total transmission size
- * @param percentTransmitted the current percent transmitted
- * @return the percent that the file is of the total
- */
- protected static int trackProgress(long filesize, long totalLength,
- int percentTransmitted) {
-
- // CheckStyle:MagicNumber OFF
- int percent = (int) Math.round(Math
- .floor((totalLength / (double) filesize) * 100));
-
- if (percent > percentTransmitted) {
- if (filesize < 1048576) {
- if (percent % 5 == 0) {
- if (percent == 100) {
- System.out.println(" 100%");
- } else {
- System.out.print("*");
- }
- }
- } else {
- if (percent == 50) {
- System.out.println(" 50%");
- } else if (percent == 100) {
- System.out.println(" 100%");
- } else {
- System.out.print(".");
- }
- }
- }
- // CheckStyle:MagicNumber ON
-
- return percent;
- }
-
- protected static void startRemoteCpProtocol(InputStream in,
- OutputStream out, File localFile) throws IOException, SSHException {
- File startFile = localFile;
- while (true) {
- // C0644 filesize filename - header for a regular file
- // T time 0 time 0\n - present if perserve time.
- // D directory - this is the header for a directory.
- ByteArrayOutputStream stream = new ByteArrayOutputStream();
- while (true) {
- int read = in.read();
- if (read < 0) {
- return;
- }
- if ((byte) read == LINE_FEED) {
- break;
- }
- stream.write(read);
- }
- String serverResponse = stream.toString("UTF-8");
- if (serverResponse.charAt(0) == 'C') {
- parseAndFetchFile(serverResponse, startFile, out, in);
- } else if (serverResponse.charAt(0) == 'D') {
- startFile = parseAndCreateDirectory(serverResponse, startFile);
- sendAck(out);
- } else if (serverResponse.charAt(0) == 'E') {
- startFile = startFile.getParentFile();
- sendAck(out);
- } else if (serverResponse.charAt(0) == '\01'
- || serverResponse.charAt(0) == '\02') {
- // this indicates an error.
- throw new IOException(serverResponse.substring(1));
- }
- }
- }
-
- protected static File parseAndCreateDirectory(String serverResponse,
- File localFile) {
- int start = serverResponse.indexOf(" ");
- // appears that the next token is not used and it's zero.
- start = serverResponse.indexOf(" ", start + 1);
- String directoryName = serverResponse.substring(start + 1);
- if (localFile.isDirectory()) {
- File dir = new File(localFile, directoryName);
- dir.mkdir();
- log.debug("Creating: " + dir);
- return dir;
- }
- return null;
- }
-
- protected static void parseAndFetchFile(String serverResponse,
- File localFile, OutputStream out, InputStream in)
- throws IOException, SSHException {
- int start = 0;
- int end = serverResponse.indexOf(" ", start + 1);
- start = end + 1;
- end = serverResponse.indexOf(" ", start + 1);
- long filesize = Long.parseLong(serverResponse.substring(start, end));
- String filename = serverResponse.substring(end + 1);
- log.debug("Receiving: " + filename + " : " + filesize);
- File transferFile = (localFile.isDirectory()) ? new File(localFile,
- filename) : localFile;
- fetchFile(transferFile, filesize, out, in);
- waitForAck(in);
- sendAck(out);
- }
-
- protected static void fetchFile(File localFile, long filesize,
- OutputStream out, InputStream in) throws IOException {
- byte[] buf = new byte[BUFFER_SIZE];
- sendAck(out);
-
- // read a content of lfile
- FileOutputStream fos = new FileOutputStream(localFile);
- int length;
- long totalLength = 0;
-
- // only track progress for files larger than 100kb in verbose mode
- boolean trackProgress = filesize > HUNDRED_KILOBYTES;
- // since filesize keeps on decreasing we have to store the
- // initial filesize
- long initFilesize = filesize;
- int percentTransmitted = 0;
-
- try {
- while (true) {
- length = in.read(buf, 0, (BUFFER_SIZE < filesize) ? BUFFER_SIZE
- : (int) filesize);
- if (length < 0) {
- throw new EOFException("Unexpected end of stream.");
- }
- fos.write(buf, 0, length);
- filesize -= length;
- totalLength += length;
- if (filesize == 0) {
- break;
- }
-
- if (trackProgress) {
- percentTransmitted = trackProgress(initFilesize,
- totalLength, percentTransmitted);
- }
- }
- } finally {
- fos.flush();
- fos.close();
- }
- }
-
- protected static void doSingleTransfer(Session session, File localFile,
- String remoteFilePath) throws IOException, JSchException,
- SSHException {
-
- String command = "scp -t \"" + remoteFilePath + "\"";
- ChannelExec channel = (ChannelExec) session.openChannel("exec");
- channel.setCommand(command);
- try {
-
- OutputStream out = channel.getOutputStream();
- InputStream in = channel.getInputStream();
-
- channel.connect();
-
- waitForAck(in);
- sendFileToRemote(localFile, in, out);
- } finally {
- channel.disconnect();
- }
- }
-
- protected static void sendFileToRemote(File localFile, InputStream in,
- OutputStream out) throws IOException, SSHException {
- // send "C0644 filesize filename", where filename should not include '/'
- long filesize = localFile.length();
- String command = "C0644 " + filesize + " ";
- command += localFile.getName();
- command += "\n";
-
- out.write(command.getBytes());
- out.flush();
-
- waitForAck(in);
-
- // send a content of lfile
- FileInputStream fis = new FileInputStream(localFile);
- byte[] buf = new byte[BUFFER_SIZE];
- long totalLength = 0;
-
- // only track progress for files larger than 100kb in verbose mode
- boolean trackProgress = filesize > HUNDRED_KILOBYTES;
- // since filesize keeps on decreasing we have to store the
- // initial filesize
- long initFilesize = filesize;
- int percentTransmitted = 0;
-
- try {
- while (true) {
- int len = fis.read(buf, 0, buf.length);
- if (len <= 0) {
- break;
- }
- out.write(buf, 0, len);
- totalLength += len;
-
- if (trackProgress) {
- percentTransmitted = trackProgress(initFilesize,
- totalLength, percentTransmitted);
- }
- }
- out.flush();
- sendAck(out);
- waitForAck(in);
- } finally {
- fis.close();
- }
- }
-}
-
-/**
- * SSHException.
- *
- * @author chatellier
- * @version $Revision: 1.0 $
- *
- * Last update : $Date: 14 janv. 2009 $
- * By : $Author: chatellier $
- */
-class SSHException extends Exception {
-
- /** serialVersionUID. */
- private static final long serialVersionUID = -198651402309210758L;
-
- /**
- * Constructs a new exception with null as its detail message.
- */
- public SSHException() {
- super();
- }
-
- /**
- * Constructs a new exception with the specified detail message.
- *
- * @param message message
- * @param cause cause
- */
- public SSHException(String message, Throwable cause) {
- super(message, cause);
- }
-
- /**
- * Constructs a new exception with the specified detail message and cause.
- *
- * @param message message
- */
- public SSHException(String message) {
- super(message);
- }
-
- /**
- * Constructs a new exception with the specified cause and a detail message
- * of (cause==null ? null : cause.toString()) (which typically contains the
- * class and detail message of cause).
- *
- * @param cause cause
- */
- public SSHException(Throwable cause) {
- super(cause);
- }
-
-}
\ No newline at end of file
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SimulationJob.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SimulationJob.java 2009-01-23 09:22:36 UTC (rev 1753)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SimulationJob.java 2009-01-23 17:37:09 UTC (rev 1754)
@@ -238,7 +238,9 @@
log.error(_("Can't do post action %s", action), eee);
}
}
- // la simulation est termine on, avant la progress au dernier cran
+ // la simulation est termine on avance la progress au dernier cran
+ // attention on utilise ca aussi pour detecer la fin d'une simulation
+ // quand date =progressMax
control.setProgress(control.getProgress()+1);
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SimulatorLauncher.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SimulatorLauncher.java 2009-01-23 09:22:36 UTC (rev 1753)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SimulatorLauncher.java 2009-01-23 17:37:09 UTC (rev 1754)
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2002-2008 Code Lutin, Benjamin Poussin
+ * Copyright (C) 2002-2009 Code Lutin, Benjamin Poussin
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
@@ -50,7 +50,7 @@
* responsable du stockage de chaque simulation dans des storages.
* <b>IMPORTANT</b> Quoi qu'il arrive
*
- * @throws java.rmi.RemoteException Si pour l'execution de la simulation
+ * @throws RemoteException Si pour l'execution de la simulation
* on utilise des resources distantes (serveurs) et que ceux si non pas pu
* etre contacte. Dans ce cas la simulation n'a pas ete faite et cette
* exception est levee.
Deleted: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SshSimulatorLauncher.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SshSimulatorLauncher.java 2009-01-23 09:22:36 UTC (rev 1753)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SshSimulatorLauncher.java 2009-01-23 17:37:09 UTC (rev 1754)
@@ -1,679 +0,0 @@
-/* *##%
- * Copyright (C) 2008 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *##%*/
-
-package fr.ifremer.isisfish.simulator.launcher;
-
-import static org.codelutin.i18n.I18n._;
-
-import java.awt.Container;
-import java.awt.GridBagConstraints;
-import java.awt.GridBagLayout;
-import java.awt.Insets;
-import java.io.File;
-import java.io.IOException;
-import java.rmi.RemoteException;
-import java.util.List;
-
-import javax.swing.JLabel;
-import javax.swing.JOptionPane;
-import javax.swing.JPanel;
-import javax.swing.JPasswordField;
-import javax.swing.JTextField;
-
-import org.apache.commons.io.FileUtils;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import com.jcraft.jsch.JSch;
-import com.jcraft.jsch.JSchException;
-import com.jcraft.jsch.Session;
-import com.jcraft.jsch.UIKeyboardInteractive;
-import com.jcraft.jsch.UserInfo;
-
-import fr.ifremer.isisfish.IsisFish;
-import fr.ifremer.isisfish.datastore.SimulationStorage;
-import fr.ifremer.isisfish.simulator.SimulationControl;
-import fr.ifremer.isisfish.simulator.SimulationException;
-
-/**
- * Use a remote simulation server.
- *
- * Upload zip simulation file on server and launch
- * simulation on that file.
- *
- * Isis-Fish must be installed on remote server.
- *
- * @see JSch
- *
- * @author chatellier
- * @version $Revision: 1.0 $
- *
- * Last update : $Date: 18 nov. 2008 $
- * By : $Author: chatellier $
- */
-public class SshSimulatorLauncher implements SimulatorLauncher {
-
- /** Class logger */
- protected static Log log = LogFactory.getLog(SshSimulatorLauncher.class);
-
- /**
- * Display message both in commons-logging and control text progress.
- *
- * @param control control
- * @param message message to display
- */
- protected void message(SimulationControl control, String message) {
- // log
- if (log.isInfoEnabled()) {
- log.info(message);
- }
- // control
- if (control != null) {
- control.setText(message);
- }
- }
-
- /*
- * @see fr.ifremer.isisfish.simulator.launcher.SimulatorLauncher#maxSimulationThread()
- */
- @Override
- public int maxSimulationThread() {
- return 1;
- }
-
- /*
- * @see java.lang.Object#toString()
- */
- @Override
- public String toString() {
- return _("isisfish.simulator.launcher.remote");
- }
-
- /*
- * @see fr.ifremer.isisfish.simulator.launcher.SimulatorLauncher#simulate(fr.ifremer.isisfish.simulator.launcher.SimulationService, fr.ifremer.isisfish.simulator.SimulationControl, java.io.File)
- */
- @Override
- public SimulationStorage simulate(SimulationService simulationService,
- SimulationControl control, File simulationZip)
- throws RemoteException {
-
- // start ssh session
- try {
-
- // connection
- message(control, _("isisfish.simulation.remote.message.connection"));
- Session sshSession = openSSHSession();
-
- // upload simulation on server
- message(control, _("isisfish.simulation.remote.message.upload"));
- String remotePath = uploadSimulation(sshSession, simulationZip);
-
- // si l'upload a fonctionné
- if (remotePath != null) {
- message(control, _("isisfish.simulation.remote.message.launch"));
-
- // just start a thread
- checkSimulationProgression(sshSession, simulationService,
- control);
- launchSimulation(sshSession, simulationService, control,
- remotePath);
-
- // recuperation des resultats
- message(control, _("isisfish.simulation.remote.message.downloadresults"));
- downloadResults(sshSession, control.getId());
-
- // force thread to stop
- synchronized(control) {
- control.stopSimulation();
- }
- }
- } catch (JSchException e) {
- if (log.isErrorEnabled()) {
- log.error(_("isisfish.error.simulation.remote.global"));
- }
- throw new SimulationException(
- _("isisfish.error.simulation.remote.global"), e);
- }
-
- return null;
- }
-
- /**
- * Connect to remote server throw SSH, and return session.
- *
- * @return valid opened session
- *
- * @throws JSchException
- */
- protected Session openSSHSession() throws JSchException {
-
- JSch jsch = new JSch();
-
- // extract connection infos
- String host = IsisFish.config.getSimulatorSshServer();
- String username = IsisFish.config.getSimulatorSshUsername();
-
- int port = 22; // by default, 22
-
- if (host.indexOf(':') > 0) {
- String sPort = host.substring(host.indexOf(':') + 1);
- try {
- port = Integer.parseInt(sPort);
- } catch (NumberFormatException e) {
- if (log.isWarnEnabled()) {
- log.warn(_(
- "isisfish.error.simulation.remote.wrongportvalue",
- sPort));
- }
- }
- host = host.substring(0, host.indexOf(':'));
- }
-
- if (log.isInfoEnabled()) {
- log.info(_("Try to log on %s@%s:%d", username, host, port));
- }
-
- // add ssh key
- boolean sshKeyUsed = false;
- File sshKey = IsisFish.config.getSSHPrivateKeyFilePath();
- if (sshKey.canRead()) {
- if (log.isInfoEnabled()) {
- log.info(_("Ssh key found '%s' will be used to connect to",
- sshKey.getAbsoluteFile(), host));
- }
- jsch.addIdentity(sshKey.getAbsolutePath());
- sshKeyUsed = true;
- }
-
- Session session = jsch.getSession(username, host, port);
-
- // username and password will be given via UserInfo interface.
- UserInfo ui = new SSHUserInfo();
- session.setUserInfo(ui);
- session.connect(60000); // timeout
-
- // test here, if password has been asked to user
- if (session.isConnected() && sshKeyUsed && ui.getPassword() != null) {
- putSshKeyOnRemoteServer(session, sshKey);
- }
- return session;
- }
-
- /**
- * Close ssh session.
- *
- * @param session session to close
- */
- protected void closeSSHSession(Session session) {
- if (session != null) {
- session.disconnect();
- }
- }
-
- /**
- * Add ssh key into $HOME/.ssh/authorized_keys file.
- *
- * Just connect and do an "echo xx >>
- * @param session opened session
- * @param sshKey
- * @throws JSchException
- */
- protected void putSshKeyOnRemoteServer(Session session, File sshKey)
- throws JSchException {
-
- // get public key for argument private key file
- // TODO always .pub ?
- File publicKey = new File(sshKey.getAbsoluteFile() + ".pub");
-
- // command to :
- // - make ssh directory
- // - add key to authorized_keys
- String command = "if [ ! -d .ssh ] ; then mkdir .ssh; fi ; echo \"%s\" >> .ssh/authorized_keys";
-
- try {
- // use usefull readLines from commons-io
- @SuppressWarnings("unchecked")
- List<String> contents = FileUtils.readLines(publicKey);
-
- // only one line
- if (contents != null && contents.size() == 1) {
- command = String.format(command, contents.get(0));
-
- if (log.isInfoEnabled()) {
- log.info("Add key on remote authorized keys");
- }
- if (log.isDebugEnabled()) {
- log.debug("command is : " + command);
- }
-
- SSHUtils.exec(session, command);
- }
- } catch (IOException e) {
- if (log.isErrorEnabled()) {
- log.error(_("Error while uploading public key to remote serveur authorized_keys"),
- e);
- }
- }
- catch (SSHException e) {
- if (log.isErrorEnabled()) {
- log.error(_("Error while uploading public key to remote serveur authorized_keys"),
- e);
- }
- }
- }
-
- /**
- * Upload simulation file to server.
- *
- * @param session already open valid ssh session
- * @param simulationFile simulation file to upload
- *
- * @return remote file path or <tt>null</tt> if errors
- */
- protected String uploadSimulation(Session session, File simulationFile) {
-
- String localPath = simulationFile.getAbsolutePath();
-
- // Copy simulation file in same arch as local arch
- // on windows, it's a bad idee :)))
- // copy it always on caparmor remote temp dir ?
- // /tmp ?
- // TODO check it
-
- String remotePath = "/tmp/";
-
- if(localPath.lastIndexOf("/") > 0) {
- remotePath += localPath.substring(localPath.lastIndexOf("/") + 1);
- }
- else if(localPath.lastIndexOf("\\") > 0) { // windows
- remotePath += localPath.substring(localPath.lastIndexOf("\\") + 1);
- }
- else {
- remotePath += localPath;
- }
-
- try {
- SSHUtils.scpTo(session, simulationFile, remotePath);
- }
- catch(SSHException e) {
- if (log.isErrorEnabled()) {
- log.error(_("Error while uploading simulation"),
- e);
- }
-
- remotePath = null;
- }
-
- return remotePath;
- }
-
- /**
- * Download resulation results.
- *
- * @return downloaded temp file (file have to be manually deleted)
- */
- protected File downloadResults(Session session, String simulationId) {
-
- // simulation directory
- File localFile = new File(IsisFish.config.getDatabaseDirectory(),
- SimulationStorage.SIMULATION_PATH);
-
- if(log.isDebugEnabled()) {
- log.debug("Downloading results in " + localFile.getAbsolutePath());
- }
-
- // build remote file path
- // FIXME this path should be given by remote IsisFish app
- // TODO to change
- String remoteFile = IsisFish.config.getSimulatorSshDataPath();
- remoteFile += "/" + SimulationStorage.SIMULATION_PATH;
- remoteFile += "/" + simulationId;
-
- try {
- SSHUtils.scpFrom(session, remoteFile, localFile);
- }
- catch(SSHException e) {
- // error can append because control file does'nt exist yet
- if (log.isDebugEnabled()) {
- log.debug(_("Error while downloading simulation control"));
- }
-
- localFile = null;
- }
-
- return localFile;
- }
-
- /**
- * Launch simulation on remote server.
- *
- * @param session opened ssh session
- * @param simulationService simulation service
- * @param control control
- * @param remotePath remote zip simulation path
- * @throws JSchException
- */
- protected void launchSimulation(Session session,
- SimulationService simulationService, SimulationControl control,
- String remotePath) throws JSchException {
-
- String simulationId = control.getId();
-
- String command = String.format("%s %s %s %s '%s' '%s' %s '%s' '%s'",
- "java", // java command
- "-jar", // java jar option
- IsisFish.config.getSimulatorSshJarPath(), // remote jar path
- "--option", "launch.ui", "false", // additionnal option ui
- "--simulateWithSimulation", simulationId, remotePath // add option simulation
- );
-
- if (log.isDebugEnabled()) {
- log.debug("Launch : " + command);
- }
-
- try {
- SSHUtils.exec(session, command);
- }
- catch(SSHException e) {
- if (log.isErrorEnabled()) {
- log.error(_("Error while launching simulation"),
- e);
- }
- }
- }
-
- /**
- * Launch a thread to check simulation progression on remote
- * server.
- *
- * Use IsisFish.config.SIMULATOR_SSH_DATAPATH to download
- * remote simulation control file.
- *
- * @param sshSession
- * @param simulationService
- * @param control
- */
- protected void checkSimulationProgression(Session sshSession,
- SimulationService simulationService, SimulationControl control) {
-
- Runnable controlRunnable = new RemoteSSHControlThread(sshSession, control);
- Thread controlThread = new Thread(controlRunnable);
- controlThread.start();
-
- }
-
- /**
- * Thread that check remote control file every 2s.
- */
- protected class RemoteSSHControlThread implements Runnable {
-
- /** Sleep 1s */
- protected static final int SLEEPTIME = 1000;
-
- /** Opened ssh session */
- protected Session sshSession;
-
- /** Control (to update progression) */
- protected SimulationControl control;
-
- /**
- * Constructor.
- * @param sshSession
- *
- * @param control control
- */
- protected RemoteSSHControlThread(Session sshSession, SimulationControl control) {
- this.sshSession = sshSession;
- this.control = control;
- }
-
- /*
- * @see java.lang.Runnable#run()
- */
- @Override
- public void run() {
-
- boolean running = true;
- while (running) {
-
- // wait
- try {
- Thread.sleep(SLEEPTIME);
-
- // download control file
- File controlFile = downloadControlFile(control.getId());
-
- if (controlFile != null) {
- if(log.isDebugEnabled()) {
- log.debug("Control have been downloaded : " + controlFile.getAbsolutePath());
- }
-
- synchronized (control) {
- // le thread principal a pu le modifier pendant le sleep
- if(control.isRunning()) {
- // on ne lit pas le stop, car le stop ne peut-etre appeler
- // que par l'utilisateur qui est de ce cote de la machine
- SimulationStorage.readControl(controlFile, control,
- "stop");
- }
- }
-
- // deleteTempFile
- controlFile.delete();
- }
- else {
- if(log.isDebugEnabled()) {
- log.debug("Control can't have been downloaded");
- }
- }
-
- } catch (InterruptedException e) {
- if (log.isErrorEnabled()) {
- log.error("Thread has been interrupted", e);
- }
- } catch (IOException e) {
- if (log.isErrorEnabled()) {
- log.error("Error while reading control file", e);
- }
- }
-
- synchronized (control) {
- running = control.isRunning();
- }
- }
- }
-
- /**
- * Download remote simulation control file and store
- * its content into temp file.
- *
- * @return downloaded temp file (file have to be manually deleted)
- * @throws IOException
- */
- protected File downloadControlFile(String simulationId)
- throws IOException {
-
- File localFile = null;
-
- // build remote file path
- // FIXME this path should be given by remote IsisFish app
- // TODO to change
- String remoteFile = IsisFish.config.getSimulatorSshDataPath();
- remoteFile += "/" + SimulationStorage.SIMULATION_PATH;
- remoteFile += "/" + simulationId;
- remoteFile += "/control";
-
- // local tmp file
- localFile = File.createTempFile(simulationId, "control");
-
- try {
- SSHUtils.scpFrom(sshSession, remoteFile, localFile);
- }
- catch(SSHException e) {
- if (log.isErrorEnabled()) {
- log.error(_("Error while launching simulation"),
- e);
- }
-
- localFile = null;
- }
- return localFile;
- }
- }
-}
-
-/**
- * Class used to ask used for connection info.
- *
- * Password, passphrase...
- */
-class SSHUserInfo implements UserInfo, UIKeyboardInteractive {
-
- /**
- * Passphrase.
- *
- * Static to be stored on multiple connexion.
- */
- protected static String passphrase;
-
- /**
- * Passphrase text field.
- */
- protected JTextField passphraseField = new JPasswordField(20);
-
- /**
- * Password text field.
- */
- protected String passwd;
-
- /**
- * Password text field.
- */
- protected JTextField passwordField = new JPasswordField(20);
-
- /**
- * Call to ask user in remote server key
- * can be trusted. Here, auto accept.
- */
- @Override
- public boolean promptYesNo(String str) {
- return true;
- }
-
- @Override
- public String getPassphrase() {
- return passphrase;
- }
-
- @Override
- public boolean promptPassphrase(String message) {
- Object[] ob = { passphraseField };
- int result = JOptionPane.showConfirmDialog(null, ob, message,
- JOptionPane.OK_CANCEL_OPTION);
- boolean bResult = false;
- if (result == JOptionPane.OK_OPTION) {
- passphrase = passphraseField.getText();
- bResult = true;
- }
- return bResult;
- }
-
- @Override
- public String getPassword() {
- return passwd;
- }
-
- @Override
- public boolean promptPassword(String message) {
- Object[] ob = { passwordField };
- int result = JOptionPane.showConfirmDialog(null, ob, message,
- JOptionPane.OK_CANCEL_OPTION);
- boolean bResult = false;
- if (result == JOptionPane.OK_OPTION) {
- passwd = passwordField.getText();
- bResult = true;
- }
- return bResult;
- }
-
- @Override
- public void showMessage(String message) {
- JOptionPane.showMessageDialog(null, message);
- }
-
- @Override
- public String[] promptKeyboardInteractive(String destination, String name,
- String instruction, String[] prompt, boolean[] echo) {
- final GridBagConstraints gbc = new GridBagConstraints(0, 0, 1, 1, 1, 1,
- GridBagConstraints.NORTHWEST, GridBagConstraints.NONE,
- new Insets(0, 0, 0, 0), 0, 0);
- Container panel = new JPanel();
- panel.setLayout(new GridBagLayout());
-
- gbc.weightx = 1.0;
- gbc.gridwidth = GridBagConstraints.REMAINDER;
- gbc.gridx = 0;
- panel.add(new JLabel(instruction), gbc);
- gbc.gridy++;
-
- gbc.gridwidth = GridBagConstraints.RELATIVE;
-
- JTextField[] texts = new JTextField[prompt.length];
- for (int i = 0; i < prompt.length; i++) {
- gbc.fill = GridBagConstraints.NONE;
- gbc.gridx = 0;
- gbc.weightx = 1;
- panel.add(new JLabel(prompt[i]), gbc);
-
- gbc.gridx = 1;
- gbc.fill = GridBagConstraints.HORIZONTAL;
- gbc.weighty = 1;
- if (echo[i]) {
- texts[i] = new JTextField(20);
- } else {
- texts[i] = new JPasswordField(20);
- }
- panel.add(texts[i], gbc);
- gbc.gridy++;
- }
-
- String[] response = null;
- if (JOptionPane.showConfirmDialog(null, panel, destination + ": "
- + name, JOptionPane.OK_CANCEL_OPTION,
- JOptionPane.QUESTION_MESSAGE) == JOptionPane.OK_OPTION) {
- response = new String[prompt.length];
- for (int i = 0; i < prompt.length; i++) {
- response[i] = texts[i].getText();
-
- // hack to remember password
- if (prompt[i] != null
- && prompt[i].toLowerCase().indexOf("password") >= 0) {
- passwd = response[i];
- }
-
- // hack to remember passphrase
- if (prompt[i] != null
- && prompt[i].toLowerCase().indexOf("passphrase") >= 0) {
- passphrase = response[i];
- }
- }
- }
- // else = cancel
- return response;
- }
-}
Added: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/ClasspathTemplateLoader.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/ClasspathTemplateLoader.java (rev 0)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/ClasspathTemplateLoader.java 2009-01-23 17:37:09 UTC (rev 1754)
@@ -0,0 +1,68 @@
+/* *##%
+ * Copyright (C) 2008, 2009 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, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *##%*/
+
+package fr.ifremer.isisfish.simulator.launcher.ssh;
+
+import java.net.URL;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.codelutin.util.Resource;
+import org.codelutin.util.ResourceNotFoundException;
+
+import freemarker.cache.URLTemplateLoader;
+
+/**
+ * Freemarker custom template loader.
+ * Load template from classpath jars.
+ *
+ * @author chatellier
+ * @version $Revision: 1.0 $
+ *
+ * Last update : $Date: 1 déc. 2008 $
+ * By : $Author: chatellier $
+ */
+public class ClasspathTemplateLoader extends URLTemplateLoader {
+
+ /** log */
+ private static Log log = LogFactory.getLog(ClasspathTemplateLoader.class);
+
+ /*
+ * @see freemarker.cache.URLTemplateLoader#getURL(java.lang.String)
+ */
+ @Override
+ protected URL getURL(String name) {
+
+ if (log.isDebugEnabled()) {
+ log.debug("Loading url template " + name);
+ }
+
+ URL url = null;
+
+ try {
+ url = Resource.getURL(name);
+ } catch (ResourceNotFoundException e) {
+ // not big deal
+ // freemarker ask for name_fr_FR, name_fr, name
+ url = null;
+ }
+
+ return url;
+ }
+
+}
Added: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/SSHException.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/SSHException.java (rev 0)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/SSHException.java 2009-01-23 17:37:09 UTC (rev 1754)
@@ -0,0 +1,72 @@
+/* *##%
+ * Copyright (C) 2008, 2009 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, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *##%*/
+
+package fr.ifremer.isisfish.simulator.launcher.ssh;
+
+/**
+ * SSHException.
+ *
+ * @author chatellier
+ * @version $Revision: 1.0 $
+ *
+ * Last update : $Date: 14 janv. 2009 $
+ * By : $Author: chatellier $
+ */
+public class SSHException extends Exception {
+
+ /** serialVersionUID. */
+ private static final long serialVersionUID = -198651402309210758L;
+
+ /**
+ * Constructs a new exception with null as its detail message.
+ */
+ public SSHException() {
+ super();
+ }
+
+ /**
+ * Constructs a new exception with the specified detail message.
+ *
+ * @param message message
+ * @param cause cause
+ */
+ public SSHException(String message, Throwable cause) {
+ super(message, cause);
+ }
+
+ /**
+ * Constructs a new exception with the specified detail message and cause.
+ *
+ * @param message message
+ */
+ public SSHException(String message) {
+ super(message);
+ }
+
+ /**
+ * Constructs a new exception with the specified cause and a detail message
+ * of (cause==null ? null : cause.toString()) (which typically contains the
+ * class and detail message of cause).
+ *
+ * @param cause cause
+ */
+ public SSHException(Throwable cause) {
+ super(cause);
+ }
+
+}
Added: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/SSHUserInfo.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/SSHUserInfo.java (rev 0)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/SSHUserInfo.java 2009-01-23 17:37:09 UTC (rev 1754)
@@ -0,0 +1,180 @@
+/* *##%
+ * Copyright (C) 2008, 2009 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, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *##%*/
+
+package fr.ifremer.isisfish.simulator.launcher.ssh;
+
+import java.awt.Container;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
+import java.awt.Insets;
+
+import javax.swing.JLabel;
+import javax.swing.JOptionPane;
+import javax.swing.JPanel;
+import javax.swing.JPasswordField;
+import javax.swing.JTextField;
+
+import com.jcraft.jsch.UIKeyboardInteractive;
+import com.jcraft.jsch.UserInfo;
+
+/**
+ * Class used to ask used for connection info.
+ *
+ * Password, passphrase...
+ *
+ * @author chatellier
+ * @version $Revision: 1.0 $
+ *
+ * Last update : $Date: 1 déc. 2008 $
+ * By : $Author: chatellier $
+ */
+public class SSHUserInfo implements UserInfo, UIKeyboardInteractive {
+
+ /**
+ * Passphrase.
+ *
+ * Static to be stored on multiple connexion.
+ */
+ protected static String passphrase;
+
+ /**
+ * Passphrase text field.
+ */
+ protected JTextField passphraseField = new JPasswordField(20);
+
+ /**
+ * Password text field.
+ */
+ protected String passwd;
+
+ /**
+ * Password text field.
+ */
+ protected JTextField passwordField = new JPasswordField(20);
+
+ /**
+ * Call to ask user in remote server key
+ * can be trusted. Here, auto accept.
+ */
+ @Override
+ public boolean promptYesNo(String str) {
+ return true;
+ }
+
+ @Override
+ public String getPassphrase() {
+ return passphrase;
+ }
+
+ @Override
+ public boolean promptPassphrase(String message) {
+ Object[] ob = { passphraseField };
+ int result = JOptionPane.showConfirmDialog(null, ob, message,
+ JOptionPane.OK_CANCEL_OPTION);
+ boolean bResult = false;
+ if (result == JOptionPane.OK_OPTION) {
+ passphrase = passphraseField.getText();
+ bResult = true;
+ }
+ return bResult;
+ }
+
+ @Override
+ public String getPassword() {
+ return passwd;
+ }
+
+ @Override
+ public boolean promptPassword(String message) {
+ Object[] ob = { passwordField };
+ int result = JOptionPane.showConfirmDialog(null, ob, message,
+ JOptionPane.OK_CANCEL_OPTION);
+ boolean bResult = false;
+ if (result == JOptionPane.OK_OPTION) {
+ passwd = passwordField.getText();
+ bResult = true;
+ }
+ return bResult;
+ }
+
+ @Override
+ public void showMessage(String message) {
+ JOptionPane.showMessageDialog(null, message);
+ }
+
+ @Override
+ public String[] promptKeyboardInteractive(String destination, String name,
+ String instruction, String[] prompt, boolean[] echo) {
+ final GridBagConstraints gbc = new GridBagConstraints(0, 0, 1, 1, 1, 1,
+ GridBagConstraints.NORTHWEST, GridBagConstraints.NONE,
+ new Insets(0, 0, 0, 0), 0, 0);
+ Container panel = new JPanel();
+ panel.setLayout(new GridBagLayout());
+
+ gbc.weightx = 1.0;
+ gbc.gridwidth = GridBagConstraints.REMAINDER;
+ gbc.gridx = 0;
+ panel.add(new JLabel(instruction), gbc);
+ gbc.gridy++;
+
+ gbc.gridwidth = GridBagConstraints.RELATIVE;
+
+ JTextField[] texts = new JTextField[prompt.length];
+ for (int i = 0; i < prompt.length; i++) {
+ gbc.fill = GridBagConstraints.NONE;
+ gbc.gridx = 0;
+ gbc.weightx = 1;
+ panel.add(new JLabel(prompt[i]), gbc);
+
+ gbc.gridx = 1;
+ gbc.fill = GridBagConstraints.HORIZONTAL;
+ gbc.weighty = 1;
+ if (echo[i]) {
+ texts[i] = new JTextField(20);
+ } else {
+ texts[i] = new JPasswordField(20);
+ }
+ panel.add(texts[i], gbc);
+ gbc.gridy++;
+ }
+
+ String[] response = null;
+ if (JOptionPane.showConfirmDialog(null, panel, destination + ": "
+ + name, JOptionPane.OK_CANCEL_OPTION,
+ JOptionPane.QUESTION_MESSAGE) == JOptionPane.OK_OPTION) {
+ response = new String[prompt.length];
+ for (int i = 0; i < prompt.length; i++) {
+ response[i] = texts[i].getText();
+
+ // hack to remember password
+ if (prompt[i] != null
+ && prompt[i].toLowerCase().indexOf("password") >= 0) {
+ passwd = response[i];
+ }
+
+ // hack to remember passphrase
+ if (prompt[i] != null
+ && prompt[i].toLowerCase().indexOf("passphrase") >= 0) {
+ passphrase = response[i];
+ }
+ }
+ }
+ // else = cancel
+ return response;
+ }
+}
Copied: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/SSHUtils.java (from rev 1751, isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHUtils.java)
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/SSHUtils.java (rev 0)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/SSHUtils.java 2009-01-23 17:37:09 UTC (rev 1754)
@@ -0,0 +1,448 @@
+/* *##%
+ * Copyright (C) 2008, 2009 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, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *##%*/
+
+package fr.ifremer.isisfish.simulator.launcher.ssh;
+
+import java.io.BufferedReader;
+import java.io.ByteArrayOutputStream;
+import java.io.EOFException;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.OutputStream;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import com.jcraft.jsch.Channel;
+import com.jcraft.jsch.ChannelExec;
+import com.jcraft.jsch.JSchException;
+import com.jcraft.jsch.Session;
+
+/**
+ * SSH utils class.
+ *
+ * All this code has be taken from ant optionnal ssh task.
+ *
+ * Use full for:
+ * - scpTo command
+ * - scpFrom command
+ * - exec command
+ *
+ * @author chatellier
+ * @version $Revision: 1.0 $
+ *
+ * Last update : $Date: 13 janv. 2009 $
+ * By : $Author: chatellier $
+ */
+public class SSHUtils {
+
+ /** log. */
+ private static Log log = LogFactory.getLog(SSHUtils.class);
+
+ protected static final byte LINE_FEED = 0x0a;
+ protected static final int BUFFER_SIZE = 1024;
+ private static final int HUNDRED_KILOBYTES = 102400;
+
+ /** Utility class */
+ protected SSHUtils() {
+
+ }
+
+ /**
+ * Exec command on remote server.
+ *
+ * @param session opened valid session
+ * @param command command to exec
+ *
+ * @return channel exit status (0 = no problem)
+ * @throws SSHException
+ */
+ public static int exec(Session session, String command)
+ throws SSHException {
+
+ int exitStatus = 0;
+
+ try {
+ // exec previous command
+ Channel channel = session.openChannel("exec");
+ ((ChannelExec) channel).setCommand(command);
+
+ BufferedReader br = new BufferedReader(new InputStreamReader(
+ channel.getInputStream()));
+ channel.connect();
+ String line = null;
+ while (true) {
+ while ((line = br.readLine()) != null) {
+ if (log.isInfoEnabled()) {
+ log.info("Remote output : " + line);
+ }
+ }
+ if (channel.isClosed()) {
+ exitStatus = channel.getExitStatus();
+ if (log.isInfoEnabled()) {
+ log.info("JSch channel exit-status: "
+ + exitStatus);
+ }
+ break;
+ }
+ try {
+ Thread.sleep(500);
+ } catch (Exception ee) {
+ }
+ }
+ channel.disconnect();
+ // end read buffer
+ } catch (JSchException e) {
+ throw new SSHException("I/O error while executing command", e);
+ } catch (IOException e) {
+ throw new SSHException("I/O error while executing command", e);
+ }
+
+ return exitStatus;
+ }
+
+ /**
+ * Download a local file from remote server.
+ *
+ * @param session opened valid jsch session
+ * @param remoteFileName remote file name to download
+ * @param localFile local file name to download into
+ *
+ * @throws SSHException
+ */
+ public static void scpFrom(Session session, String remoteFileName,
+ File localFile) throws SSHException {
+
+ String command = "scp -f -r \"" + remoteFileName + "\"";
+
+ ChannelExec channel = null;
+ try {
+ channel = (ChannelExec) session.openChannel("exec");
+ channel.setCommand(command);
+
+ // get I/O streams for remote scp
+ OutputStream out = channel.getOutputStream();
+ InputStream in = channel.getInputStream();
+
+ channel.connect();
+
+ sendAck(out);
+ startRemoteCpProtocol(in, out, localFile);
+ } catch (IOException e) {
+ throw new SSHException(e);
+ } catch (JSchException e) {
+ throw new SSHException(e);
+ } finally {
+ if (channel != null) {
+ channel.disconnect();
+ }
+ }
+ }
+
+ /**
+ * Upload file on remote server.
+ *
+ * @param session opened valid session
+ * @param localFile file to upload
+ * @param remoteFilePath remote file path
+ *
+ * @throws SSHException
+ */
+ public static void scpTo(Session session, File localFile,
+ String remoteFilePath) throws SSHException {
+
+ try {
+ doSingleTransfer(session, localFile, remoteFilePath);
+ } catch (IOException e) {
+ throw new SSHException(e);
+ } catch (JSchException e) {
+ throw new SSHException(e);
+ }
+ }
+
+ /**
+ * Send an ack.
+ * @param out the output stream to use
+ * @throws IOException on error
+ */
+ protected static void sendAck(OutputStream out) throws IOException {
+ byte[] buf = new byte[1];
+ buf[0] = 0;
+ out.write(buf);
+ out.flush();
+ }
+
+ /**
+ * Reads the response, throws a BuildException if the response
+ * indicates an error.
+ * @param in the input stream to use
+ * @throws IOException on I/O error
+ */
+ protected static void waitForAck(InputStream in) throws IOException,
+ SSHException {
+ int b = in.read();
+
+ // b may be 0 for success,
+ // 1 for error,
+ // 2 for fatal error,
+
+ if (b == -1) {
+ // didn't receive any response
+ throw new SSHException("No response from server");
+ } else if (b != 0) {
+ StringBuffer sb = new StringBuffer();
+
+ int c = in.read();
+ while (c > 0 && c != '\n') {
+ sb.append((char) c);
+ c = in.read();
+ }
+
+ if (b == 1) {
+ throw new SSHException("server indicated an error: "
+ + sb.toString());
+ } else if (b == 2) {
+ throw new SSHException("server indicated a fatal error: "
+ + sb.toString());
+ } else {
+ throw new SSHException("unknown response, code " + b
+ + " message: " + sb.toString());
+ }
+ }
+ }
+
+ /**
+ * Track progress every 10% if 100kb < filesize < 1mb. For larger
+ * files track progress for every percent transmitted.
+ * @param filesize the size of the file been transmitted
+ * @param totalLength the total transmission size
+ * @param percentTransmitted the current percent transmitted
+ * @return the percent that the file is of the total
+ */
+ protected static int trackProgress(long filesize, long totalLength,
+ int percentTransmitted) {
+
+ // CheckStyle:MagicNumber OFF
+ int percent = (int) Math.round(Math
+ .floor((totalLength / (double) filesize) * 100));
+
+ if (percent > percentTransmitted) {
+ if (filesize < 1048576) {
+ if (percent % 5 == 0) {
+ if (percent == 100) {
+ System.out.println(" 100%");
+ } else {
+ System.out.print("*");
+ }
+ }
+ } else {
+ if (percent == 50) {
+ System.out.println(" 50%");
+ } else if (percent == 100) {
+ System.out.println(" 100%");
+ } else {
+ System.out.print(".");
+ }
+ }
+ }
+ // CheckStyle:MagicNumber ON
+
+ return percent;
+ }
+
+ protected static void startRemoteCpProtocol(InputStream in,
+ OutputStream out, File localFile) throws IOException, SSHException {
+ File startFile = localFile;
+ while (true) {
+ // C0644 filesize filename - header for a regular file
+ // T time 0 time 0\n - present if perserve time.
+ // D directory - this is the header for a directory.
+ ByteArrayOutputStream stream = new ByteArrayOutputStream();
+ while (true) {
+ int read = in.read();
+ if (read < 0) {
+ return;
+ }
+ if ((byte) read == LINE_FEED) {
+ break;
+ }
+ stream.write(read);
+ }
+ String serverResponse = stream.toString("UTF-8");
+ if (serverResponse.charAt(0) == 'C') {
+ parseAndFetchFile(serverResponse, startFile, out, in);
+ } else if (serverResponse.charAt(0) == 'D') {
+ startFile = parseAndCreateDirectory(serverResponse, startFile);
+ sendAck(out);
+ } else if (serverResponse.charAt(0) == 'E') {
+ startFile = startFile.getParentFile();
+ sendAck(out);
+ } else if (serverResponse.charAt(0) == '\01'
+ || serverResponse.charAt(0) == '\02') {
+ // this indicates an error.
+ throw new IOException(serverResponse.substring(1));
+ }
+ }
+ }
+
+ protected static File parseAndCreateDirectory(String serverResponse,
+ File localFile) {
+ int start = serverResponse.indexOf(" ");
+ // appears that the next token is not used and it's zero.
+ start = serverResponse.indexOf(" ", start + 1);
+ String directoryName = serverResponse.substring(start + 1);
+ if (localFile.isDirectory()) {
+ File dir = new File(localFile, directoryName);
+ dir.mkdir();
+ log.debug("Creating: " + dir);
+ return dir;
+ }
+ return null;
+ }
+
+ protected static void parseAndFetchFile(String serverResponse,
+ File localFile, OutputStream out, InputStream in)
+ throws IOException, SSHException {
+ int start = 0;
+ int end = serverResponse.indexOf(" ", start + 1);
+ start = end + 1;
+ end = serverResponse.indexOf(" ", start + 1);
+ long filesize = Long.parseLong(serverResponse.substring(start, end));
+ String filename = serverResponse.substring(end + 1);
+ log.debug("Receiving: " + filename + " : " + filesize);
+ File transferFile = (localFile.isDirectory()) ? new File(localFile,
+ filename) : localFile;
+ fetchFile(transferFile, filesize, out, in);
+ waitForAck(in);
+ sendAck(out);
+ }
+
+ protected static void fetchFile(File localFile, long filesize,
+ OutputStream out, InputStream in) throws IOException {
+ byte[] buf = new byte[BUFFER_SIZE];
+ sendAck(out);
+
+ // read a content of lfile
+ FileOutputStream fos = new FileOutputStream(localFile);
+ int length;
+ long totalLength = 0;
+
+ // only track progress for files larger than 100kb in verbose mode
+ boolean trackProgress = filesize > HUNDRED_KILOBYTES;
+ // since filesize keeps on decreasing we have to store the
+ // initial filesize
+ long initFilesize = filesize;
+ int percentTransmitted = 0;
+
+ try {
+ while (true) {
+ length = in.read(buf, 0, (BUFFER_SIZE < filesize) ? BUFFER_SIZE
+ : (int) filesize);
+ if (length < 0) {
+ throw new EOFException("Unexpected end of stream.");
+ }
+ fos.write(buf, 0, length);
+ filesize -= length;
+ totalLength += length;
+ if (filesize == 0) {
+ break;
+ }
+
+ if (trackProgress) {
+ percentTransmitted = trackProgress(initFilesize,
+ totalLength, percentTransmitted);
+ }
+ }
+ } finally {
+ fos.flush();
+ fos.close();
+ }
+ }
+
+ protected static void doSingleTransfer(Session session, File localFile,
+ String remoteFilePath) throws IOException, JSchException,
+ SSHException {
+
+ String command = "scp -t \"" + remoteFilePath + "\"";
+ ChannelExec channel = (ChannelExec) session.openChannel("exec");
+ channel.setCommand(command);
+ try {
+
+ OutputStream out = channel.getOutputStream();
+ InputStream in = channel.getInputStream();
+
+ channel.connect();
+
+ waitForAck(in);
+ sendFileToRemote(localFile, in, out);
+ } finally {
+ channel.disconnect();
+ }
+ }
+
+ protected static void sendFileToRemote(File localFile, InputStream in,
+ OutputStream out) throws IOException, SSHException {
+ // send "C0644 filesize filename", where filename should not include '/'
+ long filesize = localFile.length();
+ String command = "C0644 " + filesize + " ";
+ command += localFile.getName();
+ command += "\n";
+
+ out.write(command.getBytes());
+ out.flush();
+
+ waitForAck(in);
+
+ // send a content of lfile
+ FileInputStream fis = new FileInputStream(localFile);
+ byte[] buf = new byte[BUFFER_SIZE];
+ long totalLength = 0;
+
+ // only track progress for files larger than 100kb in verbose mode
+ boolean trackProgress = filesize > HUNDRED_KILOBYTES;
+ // since filesize keeps on decreasing we have to store the
+ // initial filesize
+ long initFilesize = filesize;
+ int percentTransmitted = 0;
+
+ try {
+ while (true) {
+ int len = fis.read(buf, 0, buf.length);
+ if (len <= 0) {
+ break;
+ }
+ out.write(buf, 0, len);
+ totalLength += len;
+
+ if (trackProgress) {
+ percentTransmitted = trackProgress(initFilesize,
+ totalLength, percentTransmitted);
+ }
+ }
+ out.flush();
+ sendAck(out);
+ waitForAck(in);
+ } finally {
+ fis.close();
+ }
+ }
+}
Property changes on: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/ssh/SSHUtils.java
___________________________________________________________________
Name: svn:mergeinfo
+
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-01-23 09:22:36 UTC (rev 1753)
+++ isis-fish/trunk/src/main/resources/i18n/isis-fish-en_GB.properties 2009-01-23 17:37:09 UTC (rev 1754)
@@ -18,6 +18,8 @@
Can't\ simulate\ %s=
Check\ state\ of\ local\ repository\:\ %s=
Checkout\ pom.xml\ to\ %s=
+Command\ '%s'\ fail\ to\ execute=
+Control\ thread\ interrupted=
Could\ not\ found\ formule\ type\ %s\ autorised\ type\ are\ %s=
Error\ during\ vcs\ initialisation=
Error\ while\ downloading\ simulation\ control=
@@ -39,8 +41,10 @@
Month\ Gap\ BetweenRepro\ Recruitment=
Normal\ stop\ thread,\ this\ is\ not\ an\ error=
Not\ start\ simulation\ %s\ because\ user\ ask\ stop=
+Process\ template\ error=
Region\ %s\ allready\ exist\ in\ repository.\ Can't\ import=
Region\ %s\ already\ inited=
+Remote\ control\ file\ doen't\ exists\ %s=
Rename\ data\ directory\ to\ %s=
Show\ help=
SimulationExecutor\ started\ with\ %s\ thread\ for\ %s=
@@ -845,8 +849,8 @@
isisfish.simulation.name=Simulation name
isisfish.simulation.remote.message.connection=Connecting to Caparmor
isisfish.simulation.remote.message.downloadresults=Downloading results
-isisfish.simulation.remote.message.launch=Launching simulation
isisfish.simulation.remote.message.upload=Uploading simulation
+isisfish.simulation.remote.message.waitingstart=Waiting for simulation start
isisfish.simulation.title=Simulation launcher
isisfish.simulator.launcher.inprocess=in current process
isisfish.simulator.launcher.remote=on Caparmor server
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-01-23 09:22:36 UTC (rev 1753)
+++ isis-fish/trunk/src/main/resources/i18n/isis-fish-fr_FR.properties 2009-01-23 17:37:09 UTC (rev 1754)
@@ -18,6 +18,8 @@
Can't\ simulate\ %s=
Check\ state\ of\ local\ repository\:\ %s=
Checkout\ pom.xml\ to\ %s=
+Command\ '%s'\ fail\ to\ execute=
+Control\ thread\ interrupted=
Could\ not\ found\ formule\ type\ %s\ autorised\ type\ are\ %s=
Error\ during\ vcs\ initialisation=
Error\ while\ downloading\ simulation\ control=
@@ -39,8 +41,10 @@
Month\ Gap\ BetweenRepro\ Recruitment=
Normal\ stop\ thread,\ this\ is\ not\ an\ error=
Not\ start\ simulation\ %s\ because\ user\ ask\ stop=
+Process\ template\ error=
Region\ %s\ allready\ exist\ in\ repository.\ Can't\ import=
Region\ %s\ already\ inited=La r\u00E9gion %s a d\u00E9j\u00E0 \u00E9t\u00E9 initialis\u00E9e
+Remote\ control\ file\ doen't\ exists\ %s=
Rename\ data\ directory\ to\ %s=
Show\ help=
SimulationExecutor\ started\ with\ %s\ thread\ for\ %s=
@@ -845,8 +849,8 @@
isisfish.simulation.name=Nom de la simulation
isisfish.simulation.remote.message.connection=Connexion \u00E0 Caparmor
isisfish.simulation.remote.message.downloadresults=T\u00E9l\u00E9chargement des r\u00E9sultats
-isisfish.simulation.remote.message.launch=Lancement de la simulation
isisfish.simulation.remote.message.upload=Upload de la simulation
+isisfish.simulation.remote.message.waitingstart=Attente du d\u00E9marrage de la simulation
isisfish.simulation.title=Lanceur de simulation
isisfish.simulator.launcher.inprocess=dans le m\u00EAme processus
isisfish.simulator.launcher.remote=sur le serveur Caparmor
Added: isis-fish/trunk/src/main/resources/ssh/launch-isis-pxe.seq
===================================================================
--- isis-fish/trunk/src/main/resources/ssh/launch-isis-pxe.seq (rev 0)
+++ isis-fish/trunk/src/main/resources/ssh/launch-isis-pxe.seq 2009-01-23 17:37:09 UTC (rev 1754)
@@ -0,0 +1,7 @@
+#!/bin/bash
+
+cd /home/chatellier/isis-fish-3.2.0.3
+#source /usr/share/modules/init/csh
+#module load java/1.6.0
+
+java -jar isis-fish-3.2.0.3.jar --option launch.ui false --simulateWithSimulation "${simulationid}" "${simulationzip}"
Added: isis-fish/trunk/src/main/resources/ssh/launch-isis.seq
===================================================================
--- isis-fish/trunk/src/main/resources/ssh/launch-isis.seq (rev 0)
+++ isis-fish/trunk/src/main/resources/ssh/launch-isis.seq 2009-01-23 17:37:09 UTC (rev 1754)
@@ -0,0 +1,9 @@
+#!/bin/csh
+
+#PBS -l mem=1000mb
+
+cd /export/home3/smahevas/isis-fish
+source /usr/share/modules/init/csh
+module load java/1.6.0
+
+java -jar isis-fish-3.2.0.3/isis-fish.jar --option launch.ui false --simulateWithSimulation "${simulationid}" "${simulationzip}"
Added: isis-fish/trunk/src/test/java/fr/ifremer/isisfish/simulator/launcher/SshSimulatorLauncherTest.java
===================================================================
--- isis-fish/trunk/src/test/java/fr/ifremer/isisfish/simulator/launcher/SshSimulatorLauncherTest.java (rev 0)
+++ isis-fish/trunk/src/test/java/fr/ifremer/isisfish/simulator/launcher/SshSimulatorLauncherTest.java 2009-01-23 17:37:09 UTC (rev 1754)
@@ -0,0 +1,66 @@
+/* *##%
+ * Copyright (C) 2008 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, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *##%*/
+
+package fr.ifremer.isisfish.simulator.launcher;
+
+import java.io.IOException;
+
+import junit.framework.Assert;
+
+import org.junit.Test;
+
+import freemarker.template.TemplateException;
+
+/**
+ * Test portant sur la classe qui doit lancer des
+ * simulation au travers de SSH.
+ *
+ * @author chatellier
+ * @version $Revision: 1.0 $
+ *
+ * Last update : $Date: 22 janv. 2009 $
+ * By : $Author: chatellier $
+ */
+public class SshSimulatorLauncherTest {
+
+ /**
+ * Test l'instantiation du script qsub (caparmor).
+ *
+ * Le script contient une variable $simulation qui
+ * doit être remplacée.
+ *
+ * @throws IOException when freemarker throws it
+ * @throws TemplateException when freemarker throws it
+ */
+ @Test
+ public void testFreemarkerTemplate() throws IOException, TemplateException {
+
+ final String TEMPLATE = "ssh/launch-isis.seq";
+ final String SIMULATIONID = "testid";
+ final String SIMULATIONZIP = "test.zip";
+
+ SSHSimulatorLauncher launcher = new SSHSimulatorLauncher();
+ String content = launcher.getSimulationScriptLaunchContent(TEMPLATE, SIMULATIONID, SIMULATIONZIP);
+
+ Assert.assertTrue("String \"" + SIMULATIONID + "\" not found in template",
+ content.indexOf(SIMULATIONID) > 0);
+
+ Assert.assertTrue("String \"" + SIMULATIONZIP + "\" not found in template",
+ content.indexOf(SIMULATIONZIP) > 0);
+ }
+}
\ No newline at end of file
1
0
r1753 - in isis-fish/trunk/src/main/java/fr/ifremer/isisfish: aspect datastore/update equation map simulator simulator/launcher types ui/input ui/result ui/simulator util vcs
by chatellier@users.labs.libre-entreprise.org Jan. 23, 2009
by chatellier@users.labs.libre-entreprise.org Jan. 23, 2009
Jan. 23, 2009
Author: chatellier
Date: 2009-01-23 09:22:36 +0000 (Fri, 23 Jan 2009)
New Revision: 1753
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/aspect/Cache.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/update/ImportFromV2.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/PopulationGrowth.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/PopulationNaturalDeathRate.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/PopulationPrice.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/SelectivityEquation.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/SoVTechnicalEfficiencyEquation.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/StrategyInactivityEquation.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/TargetSpeciesTargetFactorEquation.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/Coordinate.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/DataMap.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/DataMapInfo.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/DefaultDataMap.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/DefaultScale.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/IsisMapBean.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/Motif.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/ResultatLayer.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/Scale.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/ZoneDelimiterLayer.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/AnalysePlan.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/AnalysePlanContext.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/RuleMonitor.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulationContext.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulationControl.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulatorServer.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SimulationExecutor.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SimulationService.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/package.html
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/types/Date.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/types/Month.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphBean.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphBeanModel.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphComboRenderer.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphEvent.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphListener.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphMatrixNDDataset.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/InfoItemDateListRenderer.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/InfoPanelable.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/LegendModel.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/LegendPanel.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/MatrixInfoTableModel.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/ResultView.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/ResumePanel.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/SimulAction.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/util/CompileHelper.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/util/Docable.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/vcs/package.html
Log:
Fix javadoc
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/aspect/Cache.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/aspect/Cache.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/aspect/Cache.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -120,7 +120,7 @@
* dans les traces
*
* @param jp
- * @return
+ * @return ?
* @throws Throwable
*/
protected Object realCall(final JoinPoint jp) throws Throwable {
@@ -137,7 +137,7 @@
* toString, pour que 2 soit bien egal a 2.
*
* @param jp
- * @return
+ * @return ?
*/
protected Object computeKey(JoinPoint jp) {
Method method = ((MethodSignature)jp.getSignature()).getMethod();
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/update/ImportFromV2.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/update/ImportFromV2.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/datastore/update/ImportFromV2.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -294,7 +294,6 @@
* Converti un fichier XML version 2 en un zip importable en v3
*
* @param xml
- * @return
* @throws Exception
*/
public void importXML(File xml) throws Exception {
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/PopulationGrowth.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/PopulationGrowth.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/PopulationGrowth.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -48,7 +48,7 @@
* @param context
* @param age l'age du groupe en mois
* @param group le groupe dont on souhaite avoir la longueur en fonction de l'age
- * @return
+ * @return equation result
*/
@Args({"context", "age", "group"})
public double compute(SimulationContext context, double age, PopulationGroup group) throws Exception;
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/PopulationNaturalDeathRate.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/PopulationNaturalDeathRate.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/PopulationNaturalDeathRate.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -54,7 +54,7 @@
* @param zone la zone du groupe pour lequel on souhaite la mortalité natrurelle
* seulement utilisé pour la mortalité naturelle du group des naissances,
* sinon null
- * @return
+ * @return eqaution result
*/
@Args({"context", "pop", "group", "zone"})
public double compute(SimulationContext context,
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/PopulationPrice.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/PopulationPrice.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/PopulationPrice.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -47,7 +47,7 @@
*
* @param context
* @param group le groupe dont on souhaite le poids moyen
- * @return
+ * @return equation result
*/
@Args({"context", "group"})
public double compute(SimulationContext context, PopulationGroup group) throws Exception;
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/SelectivityEquation.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/SelectivityEquation.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/SelectivityEquation.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -51,7 +51,7 @@
* @param pop La population pour lequel on souhaite la selectivite de l'engin
* @param group le group pour lequel on souhaite la selectivite de l'engin
* @param metier le metier pour lequel on souhaite la selectivite de l'engin
- * @return
+ * @return eqaution result
*/
@Args({"context", "pop", "group", "metier"})
public double compute(SimulationContext context,
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/SoVTechnicalEfficiencyEquation.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/SoVTechnicalEfficiencyEquation.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/SoVTechnicalEfficiencyEquation.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -38,7 +38,7 @@
* @param context
* @param metier le metier pour lequel on demande le calcul
* @param gear l'engin utilise par le metier
- * @return
+ * @return equation result
*/
@Args({"context", "metier", "gear"})
public double compute(SimulationContext context, Metier metier, Gear gear) throws Exception;
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/StrategyInactivityEquation.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/StrategyInactivityEquation.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/StrategyInactivityEquation.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -39,7 +39,7 @@
* @param context
* @param month le mois courant de simulation
* @param info l'objet associe a la strategie pour le mois courant
- * @return
+ * @return equation result
*/
@Args({"context", "month", "info"})
public double compute(SimulationContext context, Month month, StrategyMonthInfo info) throws Exception;
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/TargetSpeciesTargetFactorEquation.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/TargetSpeciesTargetFactorEquation.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/equation/TargetSpeciesTargetFactorEquation.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -52,7 +52,7 @@
* @param species l'espece pour lequel on recherche le facteur de ciblage
* @param infoMetier
* @param primaryCatch
- * @return
+ * @return equation result
*/
@Args({"context", "group", "species", "infoMetier", "primaryCatch"})
public double compute(SimulationContext context,
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/Coordinate.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/Coordinate.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/Coordinate.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -1,17 +1,16 @@
package fr.ifremer.isisfish.map;
/**
-* Coordinate.java
-*
-*
-* Created: Mon Apr 22 16:49:52 2002
-*
-* @author <a href="mailto:seb.regnier at free.fr"></a>
-* @version
-*/
-
+ * Coordinate.
+ *
+ * Created: Mon Apr 22 16:49:52 2002
+ *
+ * @author <a href="mailto:seb.regnier at free.fr"></a>
+ * @version $Revision$
+ */
public class Coordinate extends java.awt.geom.Point2D.Float implements java.io.Serializable {
- /** */
+
+ /** serialVersionUID */
private static final long serialVersionUID = 1L;
public Coordinate() {
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/DataMap.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/DataMap.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/DataMap.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -3,7 +3,7 @@
import java.io.Serializable;
/**
- * DataMap.java
+ * DataMap.
*
* A DataMap is some data we have to put on the map.
* To do this, we use a motif that tells the layer how to render the data.
@@ -11,9 +11,8 @@
* Created: Mon Apr 22 16:45:38 2002
*
* @author <a href="mailto:seb.regnier at free.fr"></a>
- * @version
+ * @version $Revision$
*/
-
public interface DataMap extends Serializable{
/**
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/DataMapInfo.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/DataMapInfo.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/DataMapInfo.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -7,18 +7,16 @@
import java.util.List;
/**
- * DataMapInfo.java
+ * DataMapInfo.
*
- *
* Created: Mon Apr 22 16:47:31 2002
*
* @author <a href="mailto:seb.regnier at free.fr"></a>
- * @version
+ * @version $Revision$
*/
-
public class DataMapInfo implements Serializable {
- /** */
+ /** serialVersionUID */
private static final long serialVersionUID = -8530276186766231164L;
protected List<String> labels = new ArrayList<String>();
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/DefaultDataMap.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/DefaultDataMap.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/DefaultDataMap.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -7,12 +7,12 @@
* A default DataMap implementation. Created: Mon Apr 22 16:39:08 2002
*
* @author <a href="mailto:seb.regnier at free.fr"></a>
- * @version
+ * @version $Revision$
*/
public class DefaultDataMap implements DataMap {
- /** */
+ /** serialVersionUID */
private static final long serialVersionUID = 3277576798583867731L;
protected double value;
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/DefaultScale.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/DefaultScale.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/DefaultScale.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -8,12 +8,12 @@
* Created: Mon Apr 22 16:52:17 2002
*
* @author <a href="mailto:seb.regnier at free.fr"></a>
- * @version
+ * @version $Revision$
*/
public class DefaultScale implements Scale {
- /** */
+ /** serialVersionUID */
private static final long serialVersionUID = -3348731042237607596L;
public double min;
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/IsisMapBean.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/IsisMapBean.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/IsisMapBean.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -335,9 +335,8 @@
}
/**
- * init the mServer property value.
- * @return MapServer
- */
+ * init the mServer property value.
+ */
protected void initMap() {
try {
float centerLat = (maxLatitude + minLatitude) / 2f;
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/Motif.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/Motif.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/Motif.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -17,12 +17,12 @@
* Created: Mon Apr 22 16:31:39 2002
*
* @author <a href="mailto:seb.regnier at free.fr"></a>
- * @version
+ * @version $Revision$
*/
public class Motif implements Serializable {
- /** */
+ /** serialVersionUID */
private static final long serialVersionUID = -2814583859271654759L;
public static final Color defaultLineColor = new Color(0, true);
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/ResultatLayer.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/ResultatLayer.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/ResultatLayer.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -296,9 +296,7 @@
* return new String[1] { SelectMouseMode.modeID };
* </pre>
* <code>
- * @see NavMouseMode#modeID
* @see SelectMouseMode#modeID
- * @see NullMouseMode#modeID
*/
public String[] getMouseModeServiceList() {
return new String[] { SelectMouseMode.modeID };
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/Scale.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/Scale.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/Scale.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -3,16 +3,15 @@
import java.io.Serializable;
/**
-* Scale.java
-* This interface allows the user to define a graduation between 0.0 and 1.0
-* whose movement are proportionnal to a bounded value.
-*
-* Created: Mon Apr 22 16:36:05 2002
-*
-* @author <a href="mailto:seb.regnier at free.fr"></a>
-* @version
-*/
-
+ * Scale.
+ * This interface allows the user to define a graduation between 0.0 and 1.0
+ * whose movement are proportionnal to a bounded value.
+ *
+ * Created: Mon Apr 22 16:36:05 2002
+ *
+ * @author <a href="mailto:seb.regnier at free.fr"></a>
+ * @version $Revision$
+ */
public interface Scale extends Serializable{
/** Get the corresponding value between 0.0 and 1.0 */
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/ZoneDelimiterLayer.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/ZoneDelimiterLayer.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/map/ZoneDelimiterLayer.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -23,18 +23,16 @@
import fr.ifremer.isisfish.entities.FisheryRegion;
/**
-* ZoneDelimiterLayer.java
-*
-*
-* Created: Wed Apr 17 15:59:09 2002
-*
-* @author <a href="mailto:seb.regnier at free.fr"></a>
-* @version
-*/
+ * ZoneDelimiterLayer.
+ *
+ * Created: Wed Apr 17 15:59:09 2002
+ *
+ * @author <a href="mailto:seb.regnier at free.fr"></a>
+ * @version $Revision$
+ */
+public class ZoneDelimiterLayer extends Layer implements TopiaTransactionListener { //ZoneDelimiterLayer
-public class ZoneDelimiterLayer extends Layer implements TopiaTransactionListener { //TopiaEntityListener {
-
- /** */
+ /** serialVersionUID */
private static final long serialVersionUID = 1127201121371123690L;
/** to use log facility, just put in your code: log.info(\"...\"); */
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/AnalysePlan.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/AnalysePlan.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/AnalysePlan.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -48,7 +48,7 @@
/**
* return plan description
- * @return
+ * @return plan description
* @throws Exception
*/
public String getDescription() throws Exception;
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/AnalysePlanContext.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/AnalysePlanContext.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/AnalysePlanContext.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -98,9 +98,6 @@
return this.values.get(key);
}
- /**
- * @param values The values to set.
- */
public void setValue(String key, Object value) {
this.values.put(key, value);
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/RuleMonitor.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/RuleMonitor.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/RuleMonitor.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -48,16 +48,10 @@
protected MultiKeyMap evalutionCondition = new MultiKeyMap();
- /**
- * @return Returns the lastEvalutionCondition.
- */
public boolean getEvalutionCondition(Date date, Rule rule, Metier metier) {
return (Boolean)this.evalutionCondition.get(date, rule, metier);
}
-
- /**
- * @param lastEvalutionCondition The lastEvalutionCondition to set.
- */
+
public void setEvaluationCondition(Date date, Rule rule, Metier metier, boolean evalutionCondition) {
this.evalutionCondition.put(date, rule, metier, evalutionCondition);
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulationContext.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulationContext.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulationContext.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -208,7 +208,7 @@
}
/**
- * @param topiaContext The topiaContext to set.
+ * @param simulation The simulation storage to set.
*/
public void setSimulationStorage(SimulationStorage simulation) {
this.simulation = simulation;
@@ -310,7 +310,7 @@
}
/**
- * @param string
+ * @param message message
*/
public void message(String message) {
log.info(message);
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulationControl.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulationControl.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulationControl.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -266,7 +266,7 @@
/**
* Convert current object in hashtable representation, and clear hashtable
* that contains last modified field
- * @return
+ * @return object hashtable representation
*/
public Hashtable<String, Object> getUpdateHashtable() {
Hashtable<String, Object> result = new Hashtable<String, Object>(update);
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulatorServer.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulatorServer.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/SimulatorServer.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -83,7 +83,7 @@
* @param user le login a utiliser pour pouvoir faire une simulation
* @param password le mot de passe
* @return si la methode est <b>simulate</b> retourne un objet
- * {@link fr.ifremer.db.Simulation} Simulation sous forme XML. Si la
+ * {@link SimulationStorage} Simulation sous forme XML. Si la
* methode est <b>checkPoint</b> retourne le nombre de mois simule.
*/
public Object execute(String method, Vector params, String user,
@@ -148,7 +148,7 @@
* synchronized two SimulationControl (local and remote)
*
* @param params
- * @return
+ * @return ?
* @throws Exception
*/
synchronized protected Object checkPoint(Vector params) throws Exception {
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SimulationExecutor.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SimulationExecutor.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SimulationExecutor.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -169,7 +169,7 @@
/**
* Change la valeur de la variable pause, si pause est alors vrai
* notifie tous les threads en attente
- * @param autoLaunch The autoLaunch to set.
+ * @param pause pause value to set
*/
public void setPause(boolean pause) {
boolean oldValue = this.pause;
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SimulationService.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SimulationService.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SimulationService.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -56,7 +56,6 @@
import java.util.TreeSet;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
-import java.util.concurrent.PriorityBlockingQueue;
import org.apache.commons.lang.mutable.MutableInt;
import org.apache.commons.lang.time.DurationFormatUtils;
import org.apache.commons.logging.Log;
@@ -78,10 +77,10 @@
* Il existe une instance unique pour toute l'application
* <p>
* Lors de l'instanciation de la classe, l'ensemble des
- * {@link SimulationLauncher} disponible est recherche dans la configuration
+ * {@link SimulatorLauncher} disponible est recherche dans la configuration
* et un executor est cree pour chaque.
* <p>
- * Si un {@link SimulationLauncher} genere trop d'erreur (RemoteException)
+ * Si un {@link SimulatorLauncher} genere trop d'erreur (RemoteException)
* Il est alors suspendu pour ne plus etre utilise pour les simulations.
*
* @author poussin
@@ -104,7 +103,7 @@
/**
* Retourne l'instance du SimulationService a utiliser
- * @return
+ * @return l'instance a utiliser
*/
static public SimulationService getService() {
return instance;
@@ -377,7 +376,7 @@
* que le launcher de l'executor ne fonctionne plus (il se met en pause
* tout seul)
*
- * @param item l'item a resoumettre
+ * @param job l'item a resoumettre
*/
protected void resubmit(SimulationJob job) {
submit(job);
@@ -484,9 +483,9 @@
/**
* Indique s'il y a encore des simulations dans le plan. Par defaut pour
* Eviter les plans sans fin, le nombre de plan genere par simulation
- * est limite a {@link MAX_PLAN_SIMULATION}
+ * est limite a {@link SimulationService.MAX_PLAN_SIMULATION}
*
- * @return
+ * @return <tt>true</tt> if has next
*/
public boolean hasNext() {
try {
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/package.html
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/package.html 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/package.html 2009-01-23 09:22:36 UTC (rev 1753)
@@ -1,4 +1,6 @@
-<h1>Launcher</h1>
+<html>
+ <body>
+ <h1>Launcher</h1>
<h2>To do</h2>
<li> voir pourquoi l'interface de visu des simulations en cours ne se
@@ -116,3 +118,5 @@
SimulationService} ce {@link SimulatorLauncher} n'est plus pris en compte et
n'importe quel {@link SimulatorLauncher} peut faire cette simulation.
</p>
+</body>
+</html>
\ No newline at end of file
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/types/Date.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/types/Date.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/types/Date.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -163,7 +163,7 @@
/**
* @param date2
- * @return
+ * @return month array
*/
public Month[] getMonthBetweenDate(Date date2) {
if(date2.getDate() - getDate() <0) {
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/types/Month.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/types/Month.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/types/Month.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -184,7 +184,9 @@
}
/**
- * @return
+ * Get number of days.
+ *
+ * @return number of day
*/
public int getNumbersOfDays() {
int result = NUMBERS_OF_DAYS[getMonthNumber()];
@@ -197,7 +199,7 @@
*
* @param first
* @param last
- * @return
+ * @return month list
*/
static public List<Month> getMonths(Month first, Month last) {
List<Month> result = new ArrayList<Month>();
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -144,8 +144,6 @@
* <p/>
* Refresh all ui component where name match "input<entity type without
* package >.*"
- *
- * @return if ok return null else OutView error
*/
public void topiaRemove() {
if (log.isTraceEnabled()) {
@@ -253,8 +251,6 @@
/**
* Cancel all modification on entity (rollback), and force reload it and
* refresh all ui component that name match 'type'Tab
- *
- * @return the roolbacked entity
*/
public void topiaCancel() {
try {
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphBean.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphBean.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphBean.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -18,17 +18,18 @@
import com.jrefinery.chart.ui.ChartPropertyEditPanel;
/**
- * GraphBean.java
+ * GraphBean.
*
- *
* Created: Mon Apr 29 17:48:40 2002
*
* @author <a href="mailto:seb.regnier at free.fr"></a>
- * @version
+ * @version $Revision$
*/
-
public class GraphBean extends GraphBeanUI implements GraphBeanUICallback,GraphListener {
+ /** serialVersionUID */
+ private static final long serialVersionUID = -4474836708965453250L;
+
protected GraphBeanModel model;
protected ChartPropertyEditPanel graphPalette;
protected ChartPanel chartPanel;
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphBeanModel.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphBeanModel.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphBeanModel.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -15,15 +15,13 @@
import com.jrefinery.data.CategoryDataset;
/**
-* GraphBeanModel.java
-*
-*
-* Created: Fri May 17 13:29:47 2002
-*
-* @author <a href="mailto:seb.regnier at free.fr"></a>
-* @version
-*/
-
+ * GraphBeanModel.
+ *
+ * Created: Fri May 17 13:29:47 2002
+ *
+ * @author <a href="mailto:seb.regnier at free.fr"></a>
+ * @version $Revision$
+ */
public class GraphBeanModel {
// protected VerticalCategoryPlot verticalCategoryPlot;
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphComboRenderer.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphComboRenderer.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphComboRenderer.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -17,17 +17,18 @@
import com.jrefinery.chart.VerticalBarRenderer3D;
/**
- * GraphComboRenderer.java
+ * GraphComboRenderer.
*
- *
* Created: Thu Sep 12 19:55:10 2002
*
* @author <a href="mailto:seb.regnier at free.fr"></a>
- * @version
+ * @version $Revision$
*/
-
public class GraphComboRenderer extends DefaultListCellRenderer {
+ /** serialVersionUID */
+ private static final long serialVersionUID = 5439698068065934760L;
+
public GraphComboRenderer (){
super();
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphEvent.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphEvent.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphEvent.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -5,16 +5,17 @@
/**
* GraphEvent.java
*
- *
* Created: Tue May 21 16:42:58 2002
*
* @author <a href="mailto:seb.regnier at free.fr"></a>
- * @version
+ * @version $Revision$
*/
+public class GraphEvent extends EventObject {
+ /** serialVersionUID */
+ private static final long serialVersionUID = 4189617216481564748L;
-public class GraphEvent extends EventObject {
- public GraphEvent (GraphBeanModel gbm){
- super((Object)gbm);
+ public GraphEvent(GraphBeanModel gbm) {
+ super((Object) gbm);
}
-
+
}// GraphEvent
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphListener.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphListener.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphListener.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -3,15 +3,13 @@
import java.util.EventListener;
/**
- * GraphListener.java
+ * GraphListener.
*
- *
* Created: Tue May 21 16:36:39 2002
*
* @author <a href="mailto:seb.regnier at free.fr"></a>
- * @version
+ * @version $Revision$
*/
-
public interface GraphListener extends EventListener {
public void graphChanged(GraphEvent e);
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphMatrixNDDataset.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphMatrixNDDataset.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/GraphMatrixNDDataset.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -11,15 +11,13 @@
import com.jrefinery.data.CategoryDataset;
/**
-* GraphMatrixNDDataset.java
-*
-*
-* Created: Fri May 17 16:26:19 2002
-*
-* @author <a href="mailto:seb.regnier at free.fr"></a>
-* @version
-*/
-
+ * GraphMatrixNDDataset.
+ *
+ * Created: Fri May 17 16:26:19 2002
+ *
+ * @author <a href="mailto:seb.regnier at free.fr"></a>
+ * @version $Revision$
+ */
public class GraphMatrixNDDataset extends AbstractSeriesDataset implements CategoryDataset {//,XYDataset {
/** The series names. */
@@ -55,7 +53,7 @@
*
* @param seriesNames The series names.
* @param categories The categories.
- * @param data The matrice.
+ * @param mat The matrice.
*/
public GraphMatrixNDDataset(List seriesNames, List categories, MatrixND mat) {
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/InfoItemDateListRenderer.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/InfoItemDateListRenderer.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/InfoItemDateListRenderer.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -8,16 +8,18 @@
import fr.ifremer.isisfish.types.Date;
/**
- * InfoItemDateListRenderer.java
+ * InfoItemDateListRenderer.
*
- *
* Created: Thu Sep 12 20:16:20 2002
*
* @author <a href="mailto:seb.regnier at free.fr"></a>
- * @version
+ * @version $Revision$
*/
+public class InfoItemDateListRenderer extends DefaultListCellRenderer {
+
+ /** serialVersionUID */
+ private static final long serialVersionUID = -3340579108147857972L;
-public class InfoItemDateListRenderer extends DefaultListCellRenderer {
public InfoItemDateListRenderer (){
super();
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/InfoPanelable.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/InfoPanelable.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/InfoPanelable.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -3,15 +3,13 @@
import javax.swing.*;
/**
- * InfoPanelable.java
+ * InfoPanelable.
*
- *
* Created: Mon Jun 3 18:58:09 2002
*
* @author <a href="mailto:seb.regnier at free.fr"></a>
- * @version
+ * @version $Revision$
*/
-
public interface InfoPanelable {
public JLabel getLabel();
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/LegendModel.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/LegendModel.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/LegendModel.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -20,15 +20,13 @@
/**
- * LegendModel.java
+ * LegendModel.
*
- *
* Created: Tue Oct 8 11:31:57 2002
*
* @author <a href="mailto:seb.regnier at free.fr"></a>
- * @version
+ * @version $Revision$
*/
-
public class LegendModel {
protected double min;
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/LegendPanel.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/LegendPanel.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/LegendPanel.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -31,17 +31,18 @@
import javax.swing.JPanel;
/**
- * LegendPanel.java
+ * LegendPanel.
*
- *
* Created: Tue Oct 8 10:56:14 2002
*
* @author <a href="mailto:seb.regnier at free.fr"></a>
- * @version
+ * @version $Revision$
*/
-
public class LegendPanel extends JPanel {
+ /** serialVersionUID */
+ private static final long serialVersionUID = -6803899655178581165L;
+
private final static int DEFAULT_WIDTH = 110;
private final static int DEFAULT_HEIGHT = 50;
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/MatrixInfoTableModel.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/MatrixInfoTableModel.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/MatrixInfoTableModel.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -6,17 +6,18 @@
import javax.swing.table.AbstractTableModel;
/**
-* MatrixInfoTableModel.java
-*
-*
-* Created: Fri May 31 18:31:20 2002
-*
-* @author <a href="mailto:seb.regnier at free.fr"></a>
-* @version
-*/
-
+ * MatrixInfoTableModel.
+ *
+ * Created: Fri May 31 18:31:20 2002
+ *
+ * @author <a href="mailto:seb.regnier at free.fr"></a>
+ * @version $Revision$
+ */
public class MatrixInfoTableModel extends AbstractTableModel {
+ /** serialVersionUID */
+ private static final long serialVersionUID = 2632133167225155487L;
+
protected MatrixND matrix;
public MatrixInfoTableModel (MatrixND mat){
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/ResultView.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/ResultView.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/ResultView.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -99,21 +99,21 @@
// setSelectedSimulation((Simulation)getSimulation().getSelectedItem());
}
- /**
+ /*
* Get the value of selectedSimulation.
* @return value of selectedSimulation.
- */
- // public Simulation getSelectedSimulation() {
- //return selectedSimulation;
- //}
+ *
+ public Simulation getSelectedSimulation() {
+ return selectedSimulation;
+ }*/
- /**
+ /*
* Set the value of selectedSimulation.
* @param v Value to assign to selectedSimulation.
- */
- //public void setSelectedSimulation(Simulation v) {
- //this.selectedSimulation = v;
- //}
+ *
+ public void setSelectedSimulation(Simulation v) {
+ this.selectedSimulation = v;
+ }*/
public void on_supprimerSimulationButton_clicked(){
String name = (String)getSimulation().getSelectedItem();
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/ResumePanel.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/ResumePanel.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/result/ResumePanel.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -2,16 +2,16 @@
/**
-* ResumePanel.java
-*
-*
-*
-* @author <a href="mailto:seb.regnier at free.fr"></a>
-* @version
+ * ResumePanel.
+ *
+ * @author <a href="mailto:seb.regnier at free.fr"></a>
+ * @version $Revision$
*/
-
public class ResumePanel extends ResumePanelUI {
+ /** serialVersionUID */
+ private static final long serialVersionUID = 5424709605082901110L;
+
protected String resume;
// protected Vector vmatInfo;
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-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/SimulAction.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -241,7 +241,6 @@
* Change region in simulation launcher
*
* @param simulName name of simulation to load
- * @return <code>null</code> if ok, an OutputView otherwise with error
*/
public void loadOldSimulation(String simulName) {
log.debug("call loadOldSimulation: " + simulName);
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/util/CompileHelper.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/util/CompileHelper.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/util/CompileHelper.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -81,10 +81,11 @@
private static Method compileMethodWithPrintStream;
/**
- * Recherche tous les fichiers qui un source plus recent que la version compilé
+ * Recherche tous les fichiers qui un source plus recent que la version compilé.
+ *
* @param srcDir
* @param destDir
- * @return
+ * @return File list
*/
static public List<File> searchSrcToCompile(File srcDir, File destDir) {
List<File> result = new ArrayList<File>();
@@ -278,7 +279,7 @@
* @param category
* @param name
* @param javaInterface
- * @return
+ * @return doc
*/
static public String extractDoc(String category, String name, Class javaInterface) {
String content = "";
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/util/Docable.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/util/Docable.java 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/util/Docable.java 2009-01-23 09:22:36 UTC (rev 1753)
@@ -4,8 +4,8 @@
* This is the contract to be realize by any class wich wanted to have a @Doc support.
*
* @author chemit
- * @see @Doc
- * @see @DocHelper
+ * @see Doc
+ * @see DocHelper
*/
public interface Docable {
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/vcs/package.html
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/vcs/package.html 2009-01-22 21:08:00 UTC (rev 1752)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/vcs/package.html 2009-01-23 09:22:36 UTC (rev 1753)
@@ -1,4 +1,5 @@
-Try to keep this classes agnostic about IsisFish specific objects. This permit
+<html>
+ <body>Try to keep this classes agnostic about IsisFish specific objects. This permit
library creation in near futur.
<h1>Politique d'utilisation du VCS pour les datas</h1>
@@ -35,3 +36,5 @@
<li>En lecture (trunk, tag, branch) car reseau indisponible</li>
</ul>
</p>
+</body>
+</html>
\ No newline at end of file
1
0
Author: tchemit
Date: 2009-01-22 21:08:00 +0000 (Thu, 22 Jan 2009)
New Revision: 1752
Modified:
isis-fish/trunk/pom.xml
Log:
remplacement du goal pour assembly quin'existe plus!
ajout d'un todo pour faire une nouvelle passe sur jnlp car on a mieux maintenant :)
Modified: isis-fish/trunk/pom.xml
===================================================================
--- isis-fish/trunk/pom.xml 2009-01-22 00:12:27 UTC (rev 1751)
+++ isis-fish/trunk/pom.xml 2009-01-22 21:08:00 UTC (rev 1752)
@@ -11,7 +11,7 @@
<parent>
<groupId>org.codelutin</groupId>
<artifactId>lutinproject</artifactId>
- <version>3.3</version>
+ <version>3.4-SNAPSHOT</version>
</parent>
<groupId>ifremer</groupId>
@@ -57,7 +57,7 @@
<version>${lutinwidget.version}</version>
<scope>compile</scope>
</dependency>
-
+
<!--Jaxx-->
<dependency>
<groupId>org.codelutin.jaxx</groupId>
@@ -72,7 +72,7 @@
<version>${jaxx.version}</version>
<scope>compile</scope>
</dependency>
-
+
<!--Commons-->
<dependency>
<groupId>commons-jxpath</groupId>
@@ -108,7 +108,7 @@
<version>1.8.0</version>
<scope>compile</scope>
</dependency>
-
+
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
@@ -328,12 +328,13 @@
<lutinwidget.version>0.12</lutinwidget.version>
<lutinmatrix.version>1.2-SNAPSHOT</lutinmatrix.version>
<openmap.version>4.6.4</openmap.version>
-
+
<!--Main class in JAR -->
<maven.jar.main.class>fr.ifremer.isisfish.IsisFish</maven.jar.main.class>
<!-- Ignore failure test for now -->
<maven.test.testFailureIgnore>true</maven.test.testFailureIgnore>
+ <maven.javadoc.skip>true</maven.javadoc.skip>
<!-- jnlp -->
<keystorepath>../../../CodeLutinKeystore</keystorepath>
@@ -506,7 +507,7 @@
<plugins>
<plugin>
-
+ <!-- todo utiliser ce qui a ete refait dans observe ou jaxx par exemple -->
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<!-- Ajout des libs signe par Sun dans un fichier jnlp separe -->
@@ -560,7 +561,7 @@
<execution>
<phase>verify</phase>
<goals>
- <goal>inline</goal>
+ <goal>attached</goal>
</goals>
</execution>
</executions>
@@ -621,6 +622,7 @@
<verbose>false</verbose>
</configuration>
</plugin>
+
</plugins>
</build>
</profile>
1
0
r1751 - isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input
by tchemit@users.labs.libre-entreprise.org Jan. 22, 2009
by tchemit@users.labs.libre-entreprise.org Jan. 22, 2009
Jan. 22, 2009
Author: tchemit
Date: 2009-01-22 00:12:27 +0000 (Thu, 22 Jan 2009)
New Revision: 1751
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/FisheryRegionUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/GearTabUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierTabUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationEquationUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEmigrationUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEquationUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationImmigrationUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationMigrationUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationRecruitmentUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx
Log:
- generics on getVerifier().getEntity()
- use Jaxx methods moved to JAXXList and JAXXComboBox
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -72,15 +72,15 @@
public void refresh(){
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- SetOfVessels setOfVessels = (SetOfVessels)getVerifier().getEntity(SetOfVessels.class);
+ SetOfVessels setOfVessels = getVerifier().getEntity(SetOfVessels.class);
setBean((SetOfVesselsImpl) setOfVessels);
if (getBean() != null){
- jaxx.runtime.swing.Utils.fillList(fieldEffortDescriptionMetierList,getRegion().getMetier(), null);
+ fieldEffortDescriptionMetierList.fillList(getRegion().getMetier(), null);
setEffortDescriptionEffortDescriptionList();
}
}
protected void setEffortDescriptionEffortDescriptionList(){
- jaxx.runtime.swing.Utils.fillList(fieldEffortDescriptionEffortDescriptionList,getBean().getPossibleMetiers(), null);
+ fieldEffortDescriptionEffortDescriptionList.fillList(getBean().getPossibleMetiers(), null);
}
protected void add(){
Object value = fieldEffortDescriptionMetierList.getSelectedValue();
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/FisheryRegionUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/FisheryRegionUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/FisheryRegionUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -53,7 +53,7 @@
getVerifier().setSaveButton(save, false);
getVerifier().setCancelButton(cancel);
setBean(null);
- FisheryRegion region = (FisheryRegion) getVerifier().getEntity(FisheryRegion.class);
+ FisheryRegion region = getVerifier().getEntity(FisheryRegion.class);
setBean((FisheryRegionImpl)region);
if (region != null){
setFieldMapfilesModel(getBean());
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/GearTabUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/GearTabUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/GearTabUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -68,7 +68,7 @@
getVerifier().setCancelButton(cancel);
getVerifier().setNewButton(create, "Gear");
getVerifier().setDeleteButton(remove);
- Gear gear = (Gear)getVerifier().getEntity(Gear.class);
+ Gear gear = getVerifier().getEntity(Gear.class);
setBean((GearImpl) gear);
}
]]>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -59,7 +59,7 @@
public void refresh() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- Metier metier = (Metier)getVerifier().getEntity(Metier.class);
+ Metier metier = getVerifier().getEntity(Metier.class);
setBean((MetierImpl) metier);
getVerifier().addCurrentPanel(targetFactor);
if (getBean() != null){
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -89,7 +89,7 @@
getVerifier().setCancelButton(cancel);
getVerifier().setNewButton(create, "MetierSeasonInfo");
getVerifier().setDeleteButton(remove);
- Metier metier = (Metier)getVerifier().getEntity(Metier.class);
+ Metier metier = getVerifier().getEntity(Metier.class);
setBean((MetierImpl) metier);
if (metier != null){
if (seasonInit){
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierTabUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierTabUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierTabUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -54,7 +54,7 @@
getVerifier().setNewButton(create, "Metier");
getVerifier().setDeleteButton(remove);
try {
- Metier metier = (Metier)getVerifier().getEntity(Metier.class);
+ Metier metier = getVerifier().getEntity(Metier.class);
setBean((MetierImpl) metier);
DefaultComboBoxModel model = new DefaultComboBoxModel(getRegion().getGear().toArray());
fieldMetierGear.setModel(model);
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -72,7 +72,7 @@
getVerifier().setCancelButton(cancel);
getVerifier().setNewButton(create, "Population", false);
getVerifier().setDeleteButton(remove);
- Population population = (Population)getVerifier().getEntity(Population.class);
+ Population population = getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
if (getBean() != null){
// TODO : Selection equation
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -61,7 +61,7 @@
public void refresh(){
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- Population population = (Population)getVerifier().getEntity(Population.class);
+ Population population = getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
fieldPopulationCapturability.addMatrixListener(new MatrixPanelListener() {
@Override
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationEquationUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationEquationUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationEquationUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -46,7 +46,7 @@
public void refresh(){
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- Population population = (Population)getVerifier().getEntity(Population.class);
+ Population population = getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
naturalDeathRate.init(_("isisfish.populationEquation.naturalDeathRate"), getBean(), "NaturalDeathRate", "PopulationNaturalDeathRate", fr.ifremer.isisfish.equation.PopulationNaturalDeathRate.class);
meanWeight.init(_("isisfish.populationEquation.meanWeight"), getBean(), "MeanWeight", "PopulationMeanWeight", fr.ifremer.isisfish.equation.PopulationMeanWeight.class);
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -71,7 +71,7 @@
public void refresh(){
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- Population population = (Population)getVerifier().getEntity(Population.class);
+ Population population = getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
getVerifier().addCurrentEntity(getPopulationGroup());
if (getBean() != null){
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEmigrationUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEmigrationUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEmigrationUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -71,7 +71,7 @@
setPopInfo((PopulationSeasonInfoImpl)pi);
}
public void refresh(){
- Population population = (Population)getVerifier().getEntity(Population.class);
+ Population population = getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
setFieldPopulationMigrationMigrationGroupChooserModel();
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEquationUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEquationUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEquationUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -50,7 +50,7 @@
setPopInfo((PopulationSeasonInfoImpl)pi);
}
public void refresh(){
- Population population = (Population)getVerifier().getEntity(Population.class);
+ Population population = getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
migrationEquation.init(_("isisfish.common.migration"), getPopInfo(), "MigrationEquation", "Migration", fr.ifremer.isisfish.equation.MigrationEquation.class);
emigrationEquation.init(_("isisfish.common.emigration"), getPopInfo(), "EmigrationEquation", "Emigration", fr.ifremer.isisfish.equation.EmigrationEquation.class);
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationImmigrationUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationImmigrationUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationImmigrationUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -71,7 +71,7 @@
this.popInfo = pi;
}
public void refresh(){
- Population population = (Population)getVerifier().getEntity(Population.class);
+ Population population = getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
setFieldPopulationMigrationMigrationGroupChooserModel();
setFieldPopulationMigrationMigrationArrivalZoneChooserModel();
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationMigrationUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationMigrationUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationMigrationUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -71,7 +71,7 @@
}
public void refresh(){
popInfo = pi;
- Population population = (Population)getVerifier().getEntity(Population.class);
+ Population population = getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
setFieldPopulationMigrationMigrationGroupChooserModel();
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -63,7 +63,7 @@
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
getVerifier().addCurrentPanel(populationMigrationEquationUI, populationMigrationMigrationUI, populationMigrationImmigrationUI, populationMigrationEmigrationUI);
- Population population = (Population)getVerifier().getEntity(Population.class);
+ Population population = getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
if (getBean() != null){
setFieldPopulationMigrationSeasonChooserModel();
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationRecruitmentUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationRecruitmentUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationRecruitmentUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -62,7 +62,7 @@
public void refresh() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- Population population = (Population)getVerifier().getEntity(Population.class);
+ Population population = getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
reproductionEquation.init(_("isisfish.populationRecruitment.reproductionEquation"), getBean(), "ReproductionEquation", "PopulationReproductionEquation", fr.ifremer.isisfish.equation.PopulationGrowth.class);
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -88,7 +88,7 @@
getVerifier().setCancelButton(cancel);
getVerifier().setNewButton(create, "PopulationSeasonInfo");
getVerifier().setDeleteButton(remove);
- Population population = (Population)getVerifier().getEntity(Population.class);
+ Population population = getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
if (getBean() != null){
jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationSeasonInfoChooser,getBean().getPopulationSeasonInfo(), null);
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -64,7 +64,7 @@
public void refresh(){
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- Population population = (Population)getVerifier().getEntity(Population.class);
+ Population population = getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
setPopulationZonesPresenceModel();
setFieldPopulationZonesReproductionModel();
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -79,7 +79,7 @@
getVerifier().setCancelButton(cancel);
getVerifier().setNewButton(create, "Port");
getVerifier().setDeleteButton(remove);
- Port port = (Port)getVerifier().getEntity(Port.class);
+ Port port = getVerifier().getEntity(Port.class);
setBean((PortImpl) port);
portMap.setFisheryRegion(getRegion());
if(mapListener == null){
@@ -91,7 +91,7 @@
}
refreshMap();
if (getBean() != null){
- jaxx.runtime.swing.Utils.fillList(portCell, getRegion().getCell(), getBean().getCell());
+ portCell.fillList(getRegion().getCell(), getBean().getCell());
}
}
protected void refreshMap(){
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -70,10 +70,10 @@
getVerifier().setCancelButton(cancel);
getVerifier().setNewButton(create, "VesselType");
getVerifier().setDeleteButton(delete);
- VesselType vesselType = (VesselType)getVerifier().getEntity(VesselType.class);
+ VesselType vesselType = getVerifier().getEntity(VesselType.class);
setBean((VesselTypeImpl) vesselType);
if (getBean() != null){
- jaxx.runtime.swing.Utils.fillList(vesselTypeTripType, getRegion().getTripType(), getBean().getTripType());
+ vesselTypeTripType.fillList(getRegion().getTripType(), getBean().getTripType());
}
}
protected void tripTypeChanged(){
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx 2009-01-22 00:12:27 UTC (rev 1751)
@@ -64,7 +64,7 @@
// jaxx.runtime.Util.removeDataBinding($InputContentUI0, "fieldZoneName.text", "fieldZoneComment.text");
fieldZoneName.setText("");
fieldZoneComment.setText("");
- //jaxx.runtime.swing.Utils.fillList(zoneCells, getRegion().getCell(), java.util.Collections.EMPTY_LIST);
+ //zoneCells.fillList(getRegion().getCell(), java.util.Collections.EMPTY_LIST);
}
if (evt.getNewValue() != null) {
// add binding on getBean()
@@ -83,7 +83,7 @@
if (log.isDebugEnabled()) {
log.debug("zone nb cells : "+ ( zone==null ? 0 : zone.getCell().size() ) );
}
- jaxx.runtime.swing.Utils.fillList(zoneCells, getRegion().getCell(), getBean() == null ? java.util.Collections.EMPTY_LIST : getBean().getCell());
+ zoneCells.fillList(getRegion().getCell(), getBean() == null ? java.util.Collections.EMPTY_LIST : getBean().getCell());
zoneMap.setFisheryRegion(getRegion());
if (mapListener == null){
zoneMap.setActiveMouseMode(new SelectMouseMode(false));
1
0
r1750 - isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input
by sletellier@users.labs.libre-entreprise.org Jan. 20, 2009
by sletellier@users.labs.libre-entreprise.org Jan. 20, 2009
Jan. 20, 2009
Author: sletellier
Date: 2009-01-20 17:54:50 +0000 (Tue, 20 Jan 2009)
New Revision: 1750
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEmigrationUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationImmigrationUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationMigrationUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx
Log:
UI actif work
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx 2009-01-20 17:53:42 UTC (rev 1749)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
@@ -50,6 +50,7 @@
import org.codelutin.topia.persistence.TopiaEntity;
import fr.ifremer.isisfish.entities.EquationDAO;
import fr.ifremer.isisfish.IsisFishDAOHelper;
+import jaxx.runtime.swing.Item;
protected Class clazz;
protected TopiaEntity bean;
@@ -109,7 +110,15 @@
protected void setComboModel(){
java.util.List<Formule> formules = getAction().getFormules(getVerifier().getIsisContext(), name);
if (formules != null){
- jaxx.runtime.swing.Utils.fillComboBox(combo,formules, selectedEquation, "getName");
+ if (selectedEquation != null){
+ java.util.List<Item> items = new ArrayList<Item>();
+ for (Formule f : formules) {
+ System.out.println(selectedEquation.getClass().getName());
+ boolean selected = f.equals(selectedEquation);
+ items.add(new Item(f.getName(), f.getName(), f, selected));
+ }
+ combo.setItems(items);
+ }
}
}
protected void saveModel(){
@@ -133,14 +142,16 @@
}
}
protected void setEditorText(){
- editor.setText(getFormule().getContent());
+ if (getFormule() != null){
+ editor.setText(getFormule().getContent());
+ }
}
]]>
</script>
<Table id='body'>
<row>
<cell fill='horizontal' anchor='east'>
- <JLabel id='lbl' text='{getLblText()}'/>
+ <JLabel id='lbl' text='{getLblText()}' enabled='{isActif()}'/>
</cell>
<cell fill='horizontal' weightx='1.0'>
<JComboBox id="combo" onActionPerformed='setFormule((Formule)combo.getSelectedItem());setEquation(getFormule());setEditorText();' enabled='{isActif()}'/>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2009-01-20 17:53:42 UTC (rev 1749)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2009-01-20 17:54:50 UTC (rev 1750)
@@ -34,7 +34,7 @@
*
* @author letellier
*/
-public class InputSaveVerifier implements JAXXAction {
+public class InputSaveVerifier implements JAXXAction, fr.ifremer.isisfish.ui.SaveVerfier {
protected JButton currentNewButton = null;
protected JButton currentDeleteButton = null;
protected JButton currentSaveButton = null;
@@ -92,6 +92,7 @@
throw new UnsupportedOperationException("Not supported yet.");
}
+ @Override
public int checkEdit() {
int responce = JOptionPane.NO_OPTION;
if (editable) {
@@ -287,8 +288,8 @@
protected void refreshAll(){
for (InputContentUI panel : currentPanels){
panel.refresh();
+ panel.setActif(editable);
}
- setPanelsActifs();
}
public void addCurrentEntity(TopiaEntity currentEntity) {
if (currentEntity != null){
@@ -318,8 +319,8 @@
for (InputContentUI ui : panels){
this.currentPanels.add(ui);
ui.refresh();
+ ui.setActif(editable);
}
- setPanelsActifs();
}
public void removeAllPanels(){
currentPanels.clear();
@@ -422,4 +423,5 @@
void setRootPanel(InputUI inputUI) {
this.rootUI = inputUI;
}
+
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputUI.jaxx 2009-01-20 17:53:42 UTC (rev 1749)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
@@ -76,7 +76,7 @@
import fr.ifremer.isisfish.entities.FisheryRegion;
import fr.ifremer.isisfish.datastore.RegionStorage;
-getContextValue(WelcomeSaveVerifier.class).setInputVerifier(getVerifier());
+getContextValue(WelcomeSaveVerifier.class).addSaveVerifier(getVerifier());
protected FisheryRegion getRegion(){
return getContextValue(FisheryRegion.class);
}
@@ -111,8 +111,8 @@
getAction().loadRegion(this, name);
}
protected void setTreeModel(){
- String regionName = getRegion().getName();
if (getRegion() != null){
+ String regionName = getRegion().getName();
setContextValue(getRegion());
NavigationTreeModel model = InputNavigationTreeSelectionAdapter.getTreeModel(regionName, getRegion());
navigation.setSelectionModel(navigationSelectionModel);
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx 2009-01-20 17:53:42 UTC (rev 1749)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
@@ -61,6 +61,7 @@
getVerifier().setCancelButton(cancel);
Metier metier = (Metier)getVerifier().getEntity(Metier.class);
setBean((MetierImpl) metier);
+ getVerifier().addCurrentPanel(targetFactor);
if (getBean() != null){
if (fieldMetierSeasonInfo.getSelectedIndex() <= 0){
setSeasonModel();
@@ -73,8 +74,7 @@
}
// TODO : Equation selectionne
- targetFactor.init(_("isisfish.metierSeasonInfoSpecies.targetFactor"), null, "", "TargetSpeciesTargetFactorEquation", fr.ifremer.isisfish.equation.TargetSpeciesTargetFactorEquation.class);
- getVerifier().addCurrentPanel(targetFactor);
+ targetFactor.init(_("isisfish.metierSeasonInfoSpecies.targetFactor"), null, "TargetFactor", "TargetSpeciesTargetFactorEquation", fr.ifremer.isisfish.equation.TargetSpeciesTargetFactorEquation.class);
}
else{
DefaultComboBoxModel seasonModel = new DefaultComboBoxModel();
@@ -165,7 +165,7 @@
<Table>
<row>
<cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.metierSeasonInfoSpecies.selectSeason"/>
+ <JLabel text="isisfish.metierSeasonInfoSpecies.selectSeason" enabled='{isActif()}'/>
</cell>
<cell fill='horizontal' weightx='1.0'>
<JComboBox id="fieldMetierSeasonInfo" onActionPerformed='metierSeasonChanged()' enabled='{isActif()}'/>
@@ -173,7 +173,7 @@
</row>
<row>
<cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.metierSeasonInfoSpecies.selectSpecies"/>
+ <JLabel text="isisfish.metierSeasonInfoSpecies.selectSpecies" enabled='{isActif()}'/>
</cell>
<cell fill='horizontal' weightx='1.0'>
<JComboBox id="fieldTargetSpecies" enabled='{isActif()}'/>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx 2009-01-20 17:53:42 UTC (rev 1749)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
@@ -66,7 +66,9 @@
fieldPopulationCapturability.addMatrixListener(new MatrixPanelListener() {
@Override
public void matrixChanged(MatrixPanelEvent arg0) {
- getBean().setCapturability(fieldPopulationCapturability.getMatrix());
+ if (getBean() != null){
+ getBean().setCapturability(fieldPopulationCapturability.getMatrix());
+ }
}
});
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx 2009-01-20 17:53:42 UTC (rev 1749)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
@@ -73,8 +73,10 @@
getVerifier().setCancelButton(cancel);
Population population = (Population)getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
- jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationGroupPopulationGroup,getBean().getPopulationGroup(), null);
getVerifier().addCurrentEntity(getPopulationGroup());
+ if (getBean() != null){
+ jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationGroupPopulationGroup,getBean().getPopulationGroup(), null);
+ }
}
]]>
</script>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEmigrationUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEmigrationUI.jaxx 2009-01-20 17:53:42 UTC (rev 1749)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEmigrationUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
@@ -74,7 +74,7 @@
Population population = (Population)getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
- setFieldPopulationMigrationMigrationGroupChooserModel();
+ setFieldPopulationMigrationMigrationGroupChooserModel();
setFieldPopulationMigrationMigrationDepartureZoneChooserModel();
populationMigrationEmigrationTable.addMatrixListener(new MatrixPanelListener() {
@@ -85,10 +85,14 @@
});
}
protected void setFieldPopulationMigrationMigrationGroupChooserModel(){
- jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationMigrationEmigrationGroupChooser,getBean().getPopulationGroup(), null);
+ if (getBean() != null){
+ jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationMigrationEmigrationGroupChooser,getBean().getPopulationGroup(), null);
+ }
}
protected void setFieldPopulationMigrationMigrationDepartureZoneChooserModel(){
- jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationMigrationEmigrationDepartureZoneChooser,getBean().getPopulationZone(), null);
+ if (getBean() != null){
+ jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationMigrationEmigrationDepartureZoneChooser,getBean().getPopulationZone(), null);
+ }
}
protected void add(){
getContextValue(InputAction.class).addEmigration(
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationImmigrationUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationImmigrationUI.jaxx 2009-01-20 17:53:42 UTC (rev 1749)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationImmigrationUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
@@ -75,7 +75,6 @@
setBean((PopulationImpl) population);
setFieldPopulationMigrationMigrationGroupChooserModel();
setFieldPopulationMigrationMigrationArrivalZoneChooserModel();
- populationMigrationImmigrationTable.setMatrix(popInfo.getMigrationMatrix());
populationMigrationImmigrationTable.addMatrixListener(new MatrixPanelListener() {
@Override
@@ -83,12 +82,19 @@
popInfo.setImmigrationMatrix(populationMigrationImmigrationTable.getMatrix());
}
});
+ if (popInfo != null){
+ populationMigrationImmigrationTable.setMatrix(popInfo.getMigrationMatrix());
+ }
}
protected void setFieldPopulationMigrationMigrationGroupChooserModel(){
- jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationMigrationImmigrationArrivalZoneChooser,getBean().getPopulationGroup(), null);
+ if (getBean() != null){
+ jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationMigrationImmigrationArrivalZoneChooser,getBean().getPopulationGroup(), null);
+ }
}
protected void setFieldPopulationMigrationMigrationArrivalZoneChooserModel(){
- jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationMigrationImmigrationArrivalZoneChooser,getBean().getPopulationZone(), null);
+ if (getBean() != null){
+ jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationMigrationImmigrationArrivalZoneChooser,getBean().getPopulationZone(), null);
+ }
}
protected void add(){
getContextValue(InputAction.class).addImmigration(popInfo,
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationMigrationUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationMigrationUI.jaxx 2009-01-20 17:53:42 UTC (rev 1749)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationMigrationUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
@@ -77,7 +77,6 @@
setFieldPopulationMigrationMigrationGroupChooserModel();
setFieldPopulationMigrationMigrationDepartureZoneChooserModel();
setFieldPopulationMigrationMigrationArrivalZoneChooserModel();
- populationMigrationMigrationTable.setMatrix(popInfo.getMigrationMatrix());
populationMigrationMigrationTable.addMatrixListener(new MatrixPanelListener() {
@Override
@@ -85,15 +84,24 @@
popInfo.setMigrationMatrix(populationMigrationMigrationTable.getMatrix());
}
});
+ if (popInfo != null){
+ populationMigrationMigrationTable.setMatrix(popInfo.getMigrationMatrix());
+ }
}
protected void setFieldPopulationMigrationMigrationGroupChooserModel(){
- jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationMigrationMigrationGroupChooser,getBean().getPopulationGroup(), null);
+ if (getBean() != null){
+ jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationMigrationMigrationGroupChooser,getBean().getPopulationGroup(), null);
+ }
}
protected void setFieldPopulationMigrationMigrationDepartureZoneChooserModel(){
- jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationMigrationMigrationGroupChooser,getBean().getPopulationZone(), null);
+ if (getBean() != null){
+ jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationMigrationMigrationGroupChooser,getBean().getPopulationZone(), null);
+ }
}
protected void setFieldPopulationMigrationMigrationArrivalZoneChooserModel(){
- jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationMigrationMigrationGroupChooser,getBean().getPopulationZone(), null);
+ if (getBean() != null){
+ jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationMigrationMigrationGroupChooser,getBean().getPopulationZone(), null);
+ }
}
protected void add(){
getAction().addMigration(popInfo,
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationUI.jaxx 2009-01-20 17:53:42 UTC (rev 1749)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
@@ -65,7 +65,9 @@
getVerifier().addCurrentPanel(populationMigrationEquationUI, populationMigrationMigrationUI, populationMigrationImmigrationUI, populationMigrationEmigrationUI);
Population population = (Population)getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
- setFieldPopulationMigrationSeasonChooserModel();
+ if (getBean() != null){
+ setFieldPopulationMigrationSeasonChooserModel();
+ }
PopulationSeasonInfo selected = getPopulationSeasonInfo();
if (selected != null){
fieldUseEquationMigration.setSelected(selected.getUseEquationMigration());
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx 2009-01-20 17:53:42 UTC (rev 1749)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
@@ -90,7 +90,9 @@
getVerifier().setDeleteButton(remove);
Population population = (Population)getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
- jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationSeasonInfoChooser,getBean().getPopulationSeasonInfo(), null);
+ if (getBean() != null){
+ jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationSeasonInfoChooser,getBean().getPopulationSeasonInfo(), null);
+ }
// Model instanciation
Interval interval = new Interval();
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesUI.jaxx 2009-01-20 17:53:42 UTC (rev 1749)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
@@ -82,18 +82,26 @@
getBean().setMappingZoneReproZoneRecru(fieldPopulationMappingZoneReproZoneRecru.getMatrix());
}
protected void setFieldPopulationMappingZoneReproZoneRecru(){
- if (getBean().getMappingZoneReproZoneRecru() != null){
- fieldPopulationMappingZoneReproZoneRecru.setMatrix(getBean().getMappingZoneReproZoneRecru().copy());
+ if (getBean() != null){
+ if (getBean().getMappingZoneReproZoneRecru() != null){
+ fieldPopulationMappingZoneReproZoneRecru.setMatrix(getBean().getMappingZoneReproZoneRecru().copy());
+ }
}
}
protected void setPopulationZonesPresenceModel(){
- setModel(getBean().getPopulationZone(), populationZonesPresence);
+ if (getBean() != null){
+ setModel(getBean().getPopulationZone(), populationZonesPresence);
+ }
}
protected void setFieldPopulationZonesReproductionModel(){
- setModel(getBean().getReproductionZone(), fieldPopulationZonesReproduction);
+ if (getBean() != null){
+ setModel(getBean().getReproductionZone(), fieldPopulationZonesReproduction);
+ }
}
protected void setFieldPopulationZonesRecruitmentModel(){
- setModel(getBean().getRecruitmentZone(), fieldPopulationZonesRecruitment);
+ if (getBean() != null){
+ setModel(getBean().getRecruitmentZone(), fieldPopulationZonesRecruitment);
+ }
}
protected void setModel(java.util.List<Zone> selected, JAXXList componant){
DefaultListModel model = new DefaultListModel();
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx 2009-01-20 17:53:42 UTC (rev 1749)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
@@ -81,7 +81,6 @@
getVerifier().setDeleteButton(remove);
Port port = (Port)getVerifier().getEntity(Port.class);
setBean((PortImpl) port);
- jaxx.runtime.swing.Utils.fillList(portCell, getRegion().getCell(), getBean().getCell());
portMap.setFisheryRegion(getRegion());
if(mapListener == null){
portMap.setSelectionMode(CellSelectionLayer.SINGLE_SELECTION);
@@ -91,6 +90,9 @@
setMapListener();
}
refreshMap();
+ if (getBean() != null){
+ jaxx.runtime.swing.Utils.fillList(portCell, getRegion().getCell(), getBean().getCell());
+ }
}
protected void refreshMap(){
java.util.List<Cell> cells = new ArrayList<Cell>();
@@ -141,7 +143,7 @@
<row>
<cell columns='2' fill='both' weighty='0.7' weightx='1.0'>
<JScrollPane>
- <JList id="portCell" selectionMode="0" onMouseClicked='getBean().setCell((Cell)portCell.getSelectedValue())' enabled='{isActif()}'/>
+ <JList id="portCell" selectionMode="0" onMouseClicked='getBean().setCell((Cell)portCell.getSelectedValue());refreshMap();' enabled='{isActif()}'/>
</JScrollPane>
</cell>
</row>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesUI.jaxx 2009-01-20 17:53:42 UTC (rev 1749)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
@@ -69,7 +69,9 @@
getVerifier().setDeleteButton(delete);
Species species = (Species)getVerifier().getEntity(Species.class);
setBean((SpeciesImpl) species);
- setNextPath("$root/$species/" + getBean().getTopiaId() + "/$populations");
+ if (getBean() != null){
+ setNextPath("$root/$species/" + getBean().getTopiaId() + "/$populations");
+ }
}
]]>
</script>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx 2009-01-20 17:53:42 UTC (rev 1749)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
@@ -78,8 +78,12 @@
public void refresh() {
Strategy strategy = (Strategy)getVerifier().getEntity(Strategy.class);
setBean((StrategyImpl) strategy);
- setStrategyMonthInfo((StrategyMonthInfoImpl)getBean().getStrategyMonthInfo(month));
- jaxx.runtime.swing.Utils.fillComboBox(fieldStrategyMonthInfoTripType,getRegion().getTripType(), getStrategyMonthInfo().getTripType());
+ if (getBean() != null){
+ setStrategyMonthInfo((StrategyMonthInfoImpl)getBean().getStrategyMonthInfo(month));
+ }
+ if (getStrategyMonthInfo() != null){
+ jaxx.runtime.swing.Utils.fillComboBox(fieldStrategyMonthInfoTripType,getRegion().getTripType(), getStrategyMonthInfo().getTripType());
+ }
}
public void init(Month m){
month = m;
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx 2009-01-20 17:53:42 UTC (rev 1749)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx 2009-01-20 17:54:50 UTC (rev 1750)
@@ -72,7 +72,9 @@
getVerifier().setDeleteButton(delete);
VesselType vesselType = (VesselType)getVerifier().getEntity(VesselType.class);
setBean((VesselTypeImpl) vesselType);
- jaxx.runtime.swing.Utils.fillList(vesselTypeTripType, getRegion().getTripType(), getBean().getTripType());
+ if (getBean() != null){
+ jaxx.runtime.swing.Utils.fillList(vesselTypeTripType, getRegion().getTripType(), getBean().getTripType());
+ }
}
protected void tripTypeChanged(){
Object[] values = vesselTypeTripType.getSelectedValues();
1
0
r1749 - isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui
by sletellier@users.labs.libre-entreprise.org Jan. 20, 2009
by sletellier@users.labs.libre-entreprise.org Jan. 20, 2009
Jan. 20, 2009
Author: sletellier
Date: 2009-01-20 17:53:42 +0000 (Tue, 20 Jan 2009)
New Revision: 1749
Added:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/SaveVerfier.java
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomePanelUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomeSaveVerifier.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomeTabUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomeUI.jaxx
Log:
Multi save verifier
Added: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/SaveVerfier.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/SaveVerfier.java (rev 0)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/SaveVerfier.java 2009-01-20 17:53:42 UTC (rev 1749)
@@ -0,0 +1,14 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+package fr.ifremer.isisfish.ui;
+
+/**
+ *
+ * @author letellier
+ */
+public interface SaveVerfier {
+ public int checkEdit();
+}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomePanelUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomePanelUI.jaxx 2009-01-20 17:34:19 UTC (rev 1748)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomePanelUI.jaxx 2009-01-20 17:53:42 UTC (rev 1749)
@@ -33,12 +33,24 @@
<JPanel id='welcomePanelUI' layout='{new BorderLayout()}'>
<script>
<![CDATA[
+ import fr.ifremer.isisfish.IsisFish;
public void setContent(Container c){
this.add(c, BorderLayout.CENTER);
}
public void setInfoText(String s){
statusBar.getLabelStatus().setText(s);
}
+ public void close() {
+ if (getVerifier().allIsSaved()){
+ exit();
+ }
+ }
+ protected void exit(){
+ IsisFish.quit();
+ }
+ protected WelcomeSaveVerifier getVerifier(){
+ return getContextValue(WelcomeSaveVerifier.class);
+ }
]]>
</script>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomeSaveVerifier.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomeSaveVerifier.java 2009-01-20 17:34:19 UTC (rev 1748)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomeSaveVerifier.java 2009-01-20 17:53:42 UTC (rev 1749)
@@ -6,26 +6,26 @@
package fr.ifremer.isisfish.ui;
import fr.ifremer.isisfish.ui.input.InputSaveVerifier;
+import java.util.ArrayList;
+import java.util.List;
import javax.swing.JOptionPane;
-
/**
*
* @author letellier
*/
public class WelcomeSaveVerifier {
- protected InputSaveVerifier inputVerifier = null;
+ protected List<fr.ifremer.isisfish.ui.SaveVerfier> verifiers = new ArrayList<fr.ifremer.isisfish.ui.SaveVerfier>();
- public void setInputVerifier(InputSaveVerifier inputVerifier) {
- this.inputVerifier = inputVerifier;
+ public void addSaveVerifier(InputSaveVerifier inputVerifier) {
+ verifiers.add(inputVerifier);
}
- public InputSaveVerifier getInputVerifier() {
- return inputVerifier;
- }
-
public boolean allIsSaved(){
boolean exit = true;
- int responce = inputVerifier.checkEdit();
+ int responce = JOptionPane.CANCEL_OPTION;
+ for (fr.ifremer.isisfish.ui.SaveVerfier s : verifiers){
+ responce = s.checkEdit();
+ }
//boolean exit = checkEdit(event, component);
if (responce == JOptionPane.OK_OPTION){
}
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomeTabUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomeTabUI.jaxx 2009-01-20 17:34:19 UTC (rev 1748)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomeTabUI.jaxx 2009-01-20 17:53:42 UTC (rev 1749)
@@ -49,7 +49,7 @@
<fr.ifremer.isisfish.ui.result.ResultView/>
</tab>
<tab title=' ' icon='{new ImageIcon(getClass().getResource("/images/book.gif"))}'>
- <fr.ifremer.isisfish.ui.input.InputUI constructorParams='new JAXXInitialContext().add(getContextValue(WelcomeSaveVerifier.class)).add(new InputAction()).add(new InputSaveVerifier())'/>
+ <fr.ifremer.isisfish.ui.input.InputUI constructorParams='new JAXXInitialContext().add(getContextValue(WelcomeSaveVerifier.class)).add(new InputAction()).add(new InputSaveVerifier()).add(this)'/>
</tab>
<tab title=' ' icon='{new ImageIcon(getClass().getResource("/images/bookPage.gif"))}'>
<fr.ifremer.isisfish.ui.script.ScriptUI/>
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomeUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomeUI.jaxx 2009-01-20 17:34:19 UTC (rev 1748)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/WelcomeUI.jaxx 2009-01-20 17:53:42 UTC (rev 1749)
@@ -49,16 +49,52 @@
import jaxx.runtime.JAXXInitialContext;
import fr.ifremer.isisfish.ui.input.InputSaveVerifier;
+ java.util.Map <JFrame, WelcomePanelUI> allFrameOpened;
+
setContextValue(new WelcomeSaveVerifier());
+ allFrameOpened = new java.util.HashMap <JFrame, WelcomePanelUI> ();
welcomePanelUI.setContent(new WelcomeTabUI(new JAXXInitialContext().add(getVerifier())));
protected void openFrame(Container c, String title){
JFrame f = new JFrame();
f.setLayout(new BorderLayout());
- WelcomePanelUI welcome = new WelcomePanelUI(this);
+ WelcomePanelUI welcome = new WelcomePanelUI(new JAXXInitialContext().add(getContextValue(WelcomeSaveVerifier.class)).add(this));
welcome.setContent(c);
f.add(welcome, BorderLayout.CENTER);
f.setTitle(title);
f.setSize(new Dimension(800, 600));
+ f.setDefaultCloseOperation(f.DO_NOTHING_ON_CLOSE);
+ allFrameOpened.put(f, welcome);
+ f.addWindowListener(new WindowListener() {
+
+ @Override
+ public void windowOpened(WindowEvent e) {
+ }
+
+ @Override
+ public void windowClosing(WindowEvent e) {
+ allFrameOpened.get((JFrame) e.getSource()).close();
+ }
+
+ @Override
+ public void windowClosed(WindowEvent e) {
+ }
+
+ @Override
+ public void windowIconified(WindowEvent e) {
+ }
+
+ @Override
+ public void windowDeiconified(WindowEvent e) {
+ }
+
+ @Override
+ public void windowActivated(WindowEvent e) {
+ }
+
+ @Override
+ public void windowDeactivated(WindowEvent e) {
+ }
+ });
f.setVisible(true);
}
public void close() {
@@ -122,7 +158,7 @@
<JMenu text="isisfish.welcome.menu.frame">
<JMenuItem text="isisfish.welcome.menu.simulation" onActionPerformed='openFrame(new SimulUI(new SimulAction()), _("isisfish.simulation.title"))'/>
<JMenuItem text="isisfish.welcome.menu.result" onActionPerformed='openFrame(new ResultView(), _("isisfish.result.title"))'/>
- <JMenuItem text="isisfish.welcome.menu.input" onActionPerformed='openFrame(new InputUI(new JAXXInitialContext().add(this).add(new InputAction()).add(new InputSaveVerifier())), _("isisfish.input.title"))'/>
+ <JMenuItem text="isisfish.welcome.menu.input" onActionPerformed='openFrame(new InputUI(new JAXXInitialContext().add(getContextValue(WelcomeSaveVerifier.class)).add(new InputAction()).add(new InputSaveVerifier())), _("isisfish.input.title"))'/>
<JMenuItem text="isisfish.welcome.menu.script" onActionPerformed='openFrame(new ScriptUI(), _("isisfish.script.title"))'/>
<JSeparator/>
<JMenuItem text="isisfish.welcome.menu.queue" onActionPerformed='openFrame(new QueueUI(), _("isisfish.queue.title"))'/>
1
0
r1748 - in isis-fish/trunk/src/main: java/fr/ifremer/isisfish/ui/simulator resources/i18n
by chatellier@users.labs.libre-entreprise.org Jan. 20, 2009
by chatellier@users.labs.libre-entreprise.org Jan. 20, 2009
Jan. 20, 2009
Author: chatellier
Date: 2009-01-20 17:34:19 +0000 (Tue, 20 Jan 2009)
New Revision: 1748
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/QueueUI.jaxx
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:
Translation
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/QueueUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/QueueUI.jaxx 2009-01-20 10:18:43 UTC (rev 1747)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/QueueUI.jaxx 2009-01-20 17:34:19 UTC (rev 1748)
@@ -127,7 +127,7 @@
<JButton id="showLogButton" text="isisfish.queue.showLog" onActionPerformed='viewLog()'/>
</cell>
<cell fill="horizontal" weightx="0.3">
- <JButton id="clearDoneJobsButton" text="Clear done jobs" onActionPerformed='clearDoneJobs()'/>
+ <JButton id="clearDoneJobsButton" text="isisfish.queue.clearDone" onActionPerformed='clearDoneJobs()'/>
</cell>
</row>
</Table>
\ No newline at end of file
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-01-20 10:18:43 UTC (rev 1747)
+++ isis-fish/trunk/src/main/resources/i18n/isis-fish-en_GB.properties 2009-01-20 17:34:19 UTC (rev 1748)
@@ -18,7 +18,6 @@
Can't\ simulate\ %s=
Check\ state\ of\ local\ repository\:\ %s=
Checkout\ pom.xml\ to\ %s=
-Clear\ done\ jobs=
Could\ not\ found\ formule\ type\ %s\ autorised\ type\ are\ %s=
Error\ during\ vcs\ initialisation=
Error\ while\ downloading\ simulation\ control=
@@ -210,7 +209,7 @@
isisfish.error.check.region=
isisfish.error.compile.script=Can't compile script\: %1$s
isisfish.error.compiled.parameter=Can't get rule parameter from compiled class
-isisfish.error.conversion.data=Erreur lors de la conversion du fichier de donn\u00e9es
+isisfish.error.conversion.data=Erreur lors de la conversion du fichier de donn\u00E9es
isisfish.error.create.equation=Can't create equation
isisfish.error.delete.database=Can't delete database
isisfish.error.delete.file=could not delete file %1$s
@@ -244,12 +243,12 @@
isisfish.error.immigration.negative=immigration negative
isisfish.error.import.convertible=Erreur lors de l'import, la version du fichier que vous souhaitez importer n'est pas transformable en une version importable.
isisfish.error.import.file=Can't import file %1$s
-isisfish.error.import.recent.files=Erreur lors de l'import, la version du fichier que vous souhaitez importer est plus r\u00e9cente que la version souhait\u00e9e.
+isisfish.error.import.recent.files=Erreur lors de l'import, la version du fichier que vous souhaitez importer est plus r\u00E9cente que la version souhait\u00E9e.
isisfish.error.init.map=Can't init map.
isisfish.error.init.remove.button=could not init remove button (button or list is null) button \: %1$s, list \: %2$s
isisfish.error.instanciate=Can't instanciate %1$s
isisfish.error.instanciate.export=Can't instanciate export %1$s
-isisfish.error.invalid.costs.fix=les co\u00fbts fixes sont invalides
+isisfish.error.invalid.costs.fix=les co\u00FBts fixes sont invalides
isisfish.error.invalid.distribution.recruitment=distribution de recrutement invalide
isisfish.error.invalid.equation=Equation invalid
isisfish.error.invalid.equation.name=Invalid equation name
@@ -270,7 +269,7 @@
isisfish.error.log.console.dispose=Une erreur est survenue pendant la fermeture de la console %1$s de log, raison %2$s
isisfish.error.log.createAppender=could not create appender [%1$s] \: %2$s for reason %3$s
isisfish.error.log.foundAppender=\=could not found log appender %1$s for category %2$s
-isisfish.error.matrix.more.2d=Matrice de plus de 2 dimensions\!\!\nS\u00e9lectionnez moins d'\u00e9l\u00e9ments ou utilisez l'op\u00e9rateur somme.
+isisfish.error.matrix.more.2d=Matrice de plus de 2 dimensions\!\!\nS\u00E9lectionnez moins d'\u00E9l\u00E9ments ou utilisez l'op\u00E9rateur somme.
isisfish.error.migration.negative=Migration negative
isisfish.error.no.matrix=No matrix for\:
isisfish.error.no.null.time.step=Error, the time step should not be null
@@ -285,7 +284,7 @@
isisfish.error.not.null.class.grown=classe mature vaut nul
isisfish.error.not.null.mean.weight=poids moyen nul
isisfish.error.not.null.natiral.death=natural mortality null
-isisfish.error.not.possible.metier=Pas de m\u00e9tier possible
+isisfish.error.not.possible.metier=Pas de m\u00E9tier possible
isisfish.error.not.support.class=this class does not support
isisfish.error.number.classes.upper.zero=Error, the number of classes must be upper than 0
isisfish.error.obtain.analyseplan=Can't obtain description of AnalysePlan
@@ -551,7 +550,7 @@
isisfish.message.remove.finished=Remove finished
isisfish.message.remove.unnecessary.cells=
isisfish.message.removing.region=Removing region %1$s ...
-isisfish.message.result.verif.region=R\u00e9sultat de la v\u00e9rification de la r\u00e9gion
+isisfish.message.result.verif.region=R\u00E9sultat de la v\u00E9rification de la r\u00E9gion
isisfish.message.save.finished=Save finished
isisfish.message.saveModel.finished=Save model finished
isisfish.message.setting.cache.aspects=Setting Cache aspects
@@ -602,7 +601,7 @@
isisfish.params.ruleParameters=Rule's parameters
isisfish.params.simulationName=Simulation name
isisfish.params.title=Parameters
-isisfish.params.toString.fishery=P\u00eacherie\: %1$s\n\n
+isisfish.params.toString.fishery=P\u00EAcherie\: %1$s\n\n
isisfish.params.toString.lib.logger.level=Level of libraries' logger %1$s
isisfish.params.toString.number.years=Number of years\: %1$s\n\n
isisfish.params.toString.plan=Plan\: %1$s
@@ -613,7 +612,7 @@
isisfish.params.toString.script.presimulation=Script de presimulation
isisfish.params.toString.simul.logger.level=Level of simulator's logger %1$s
isisfish.params.toString.simulation.done=Simulation done with %1$s\:
-isisfish.params.toString.strategies=Strat\u00e9gies d'exploitation\:
+isisfish.params.toString.strategies=Strat\u00E9gies d'exploitation\:
isisfish.params.useAnalysePlan=Use analyse plan
isisfish.params.usePreSimulationScript=Use pre simulation script
isisfish.population.capturability=Capturability
@@ -691,6 +690,7 @@
isisfish.port.name=Name
isisfish.preScript.backParameter=Back to parameter tab
isisfish.preScript.title=Pre simulation script
+isisfish.queue.clearDone=Clear done jobs
isisfish.queue.id=Id
isisfish.queue.launcher=Simulation launcher
isisfish.queue.plan=Plan
@@ -737,7 +737,7 @@
isisfish.result.statusBar=defaultToolTip-fr.ifremer.resultat.ResultatEdit.statusbar1
isisfish.result.statusImage=defaultToolTip-fr.ifremer.resultat.ResultatEdit.statusImage
isisfish.result.stress.metier=Effort par metier
-isisfish.result.summary=R\u00e9sum\u00e9
+isisfish.result.summary=R\u00E9sum\u00E9
isisfish.result.summaryRadioButton=defaultToolTip-fr.ifremer.resultat.ResultatEdit.resumeRadioButton
isisfish.result.table=defaultToolTip-fr.ifremer.resultat.ResultatView.table33
isisfish.result.title=Resultat
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-01-20 10:18:43 UTC (rev 1747)
+++ isis-fish/trunk/src/main/resources/i18n/isis-fish-fr_FR.properties 2009-01-20 17:34:19 UTC (rev 1748)
@@ -18,7 +18,6 @@
Can't\ simulate\ %s=
Check\ state\ of\ local\ repository\:\ %s=
Checkout\ pom.xml\ to\ %s=
-Clear\ done\ jobs=
Could\ not\ found\ formule\ type\ %s\ autorised\ type\ are\ %s=
Error\ during\ vcs\ initialisation=
Error\ while\ downloading\ simulation\ control=
@@ -41,7 +40,7 @@
Normal\ stop\ thread,\ this\ is\ not\ an\ error=
Not\ start\ simulation\ %s\ because\ user\ ask\ stop=
Region\ %s\ allready\ exist\ in\ repository.\ Can't\ import=
-Region\ %s\ already\ inited=La r\u00e9gion %s a d\u00e9j\u00e0 \u00e9t\u00e9 initialis\u00e9e
+Region\ %s\ already\ inited=La r\u00E9gion %s a d\u00E9j\u00E0 \u00E9t\u00E9 initialis\u00E9e
Rename\ data\ directory\ to\ %s=
Show\ help=
SimulationExecutor\ started\ with\ %s\ thread\ for\ %s=
@@ -68,22 +67,22 @@
directory\ %s\ must\ be\ a\ directory=
filter\ loaded\ in\ %1$s\ ms\ \:\ found\ %2$s\ lines.=filter loaded in %1$s ms \: found %2$s lines.
isisfish.about.abouthtmltext=<html><b>Isis-Fish (%s)</b><br /><br />Copyright IFREMER-MAERHA 2000-2008.<br /><br /><a href\="http\://isis-fish.labs.libre-entreprise.org">http\://isis-fish.labs.libre-entreprise.org</a><br /><br />Merci de rapporter les bugs.<html>
-isisfish.about.licensetext=Vous pouvez modifier et redistribuer ce programme sous les conditions \u00e9nonc\u00e9es par la licence GNU GPL (version 2 ou ult\u00e9rieure). Une copie de la licence GPL est dans le fichier \u00ab\u00a0LICENSE.txt\u00a0\u00bb fourni avec Isis-Fish. Tous droits r\u00e9serv\u00e9s. Aucune garantie n'est fournie pour l'utilisation de ce programme.
-isisfish.about.title=\u00c0 propos de Isis-Fish...
-isisfish.advancedParameters.title=Param\u00e8tres avanc\u00e9s
-isisfish.advancedParams.freeParameters=Param\u00e8tres libres
+isisfish.about.licensetext=Vous pouvez modifier et redistribuer ce programme sous les conditions \u00E9nonc\u00E9es par la licence GNU GPL (version 2 ou ult\u00E9rieure). Une copie de la licence GPL est dans le fichier \u00AB\u00A0LICENSE.txt\u00A0\u00BB fourni avec Isis-Fish. Tous droits r\u00E9serv\u00E9s. Aucune garantie n'est fournie pour l'utilisation de ce programme.
+isisfish.about.title=\u00C0 propos de Isis-Fish...
+isisfish.advancedParameters.title=Param\u00E8tres avanc\u00E9s
+isisfish.advancedParams.freeParameters=Param\u00E8tres libres
isisfish.advancedParams.libLevelLogger=Niveau de tracage des librairies
isisfish.advancedParams.scriptLevelLogger=Niveau de tracage des scripts
isisfish.advancedParams.simulLevelLogger=Niveau de tracage du simulateur
isisfish.advancedParams.simulationCache=Simulation cache
isisfish.advancedParams.simulationStatistique=Simulation statistique
-isisfish.advancedParams.simulatorUse=Simulateur \u00e0 utiliser
+isisfish.advancedParams.simulatorUse=Simulateur \u00E0 utiliser
isisfish.cell.comments=Commentaires
isisfish.cell.land=Land
isisfish.cell.latitude=Latitude
isisfish.cell.longitude=Longitude
isisfish.cell.name=Nom
-isisfish.change.equation=Ne peut pas changer l'\u00e9quation
+isisfish.change.equation=Ne peut pas changer l'\u00E9quation
isisfish.commit.message=Entrer un message de commit
isisfish.common.add=Ajouter
isisfish.common.add.short=Aj.
@@ -91,12 +90,12 @@
isisfish.common.apply=Appliquer
isisfish.common.blank=\
isisfish.common.cancel=Annuler
-isisfish.common.check=V\u00e9rifier
+isisfish.common.check=V\u00E9rifier
isisfish.common.clear=Effacer
isisfish.common.date=Date
isisfish.common.debug=Debug
isisfish.common.ellipsis=...
-isisfish.common.emigration=\u00e9migration
+isisfish.common.emigration=\u00E9migration
isisfish.common.empty=vide
isisfish.common.error=Erreur
isisfish.common.finish=Terminer
@@ -109,49 +108,49 @@
isisfish.common.newMatrix=Nouvelle matrice
isisfish.common.next=Suivant
isisfish.common.ok=Ok
-isisfish.common.openEditor=Ouvrir l'\u00e9diteur
+isisfish.common.openEditor=Ouvrir l'\u00E9diteur
isisfish.common.populationGroup=Groupe de population
isisfish.common.populations=Populations
isisfish.common.port=port
-isisfish.common.prev=Pr\u00e9c\u00e9dent
-isisfish.common.previous=Pr\u00e9c\u00e9dent
-isisfish.common.region=R\u00e9gion
+isisfish.common.prev=Pr\u00E9c\u00E9dent
+isisfish.common.previous=Pr\u00E9c\u00E9dent
+isisfish.common.region=R\u00E9gion
isisfish.common.remove=Supprimer
isisfish.common.reset=reset
-isisfish.common.rules=R\u00e8gles
+isisfish.common.rules=R\u00E8gles
isisfish.common.save=Sauver
-isisfish.common.saveModel=Sauver comme mod\u00e8le
+isisfish.common.saveModel=Sauver comme mod\u00E8le
isisfish.common.saveNextSimulation=Sauver pour la prochaine simulation
isisfish.common.season=Saison
isisfish.common.setOfVessels=Ensemble de navires
isisfish.common.simulate=Simuler
-isisfish.common.stop=Arr\u00eater
-isisfish.common.strategies=Strat\u00e9gies
+isisfish.common.stop=Arr\u00EAter
+isisfish.common.strategies=Strat\u00E9gies
isisfish.common.sum=somme
isisfish.common.tag=Tag
isisfish.common.tripType=Type de trajet
isisfish.common.value=Valeur
isisfish.common.warn=Warn
-isisfish.common.year=ann\u00e9e
+isisfish.common.year=ann\u00E9e
isisfish.common.zone=Zone
-isisfish.config.main.compileDirectory.description=le r\u00e9pertoire o\u00f9 sont compil\u00e9s les scripts
-isisfish.config.main.configFileName.description=le fichier de configuration \u00e0 utiliser
-isisfish.config.main.defaultBackupDirectory.description=le r\u00e9pertoire o\u00f9 stocker les backups des donn\u00e9es
-isisfish.config.main.defaultExportDirectory.description=le r\u00e9pertoire o\u00f9 exporter les r\u00e9sultats des simulations
-isisfish.config.main.defaultExportNames.description=les noms des exports \u00e0 effectuer apr\u00e8s une simulation
+isisfish.config.main.compileDirectory.description=le r\u00E9pertoire o\u00F9 sont compil\u00E9s les scripts
+isisfish.config.main.configFileName.description=le fichier de configuration \u00E0 utiliser
+isisfish.config.main.defaultBackupDirectory.description=le r\u00E9pertoire o\u00F9 stocker les backups des donn\u00E9es
+isisfish.config.main.defaultExportDirectory.description=le r\u00E9pertoire o\u00F9 exporter les r\u00E9sultats des simulations
+isisfish.config.main.defaultExportNames.description=les noms des exports \u00E0 effectuer apr\u00E8s une simulation
isisfish.config.main.defaultMapFile.description=TODO
-isisfish.config.main.defaultResultNames.description=les noms des r\u00e9sultats \u00e0 traiter apr\u00e8s une simulation
-isisfish.config.main.defaultSimulator.description=le nom du simulateur par d\u00e9faut \u00e0 utiliser lors d'une simulation
+isisfish.config.main.defaultResultNames.description=les noms des r\u00E9sultats \u00E0 traiter apr\u00E8s une simulation
+isisfish.config.main.defaultSimulator.description=le nom du simulateur par d\u00E9faut \u00E0 utiliser lors d'une simulation
isisfish.config.main.defaultTagValue.description=TODO
-isisfish.config.main.encoding.description=l'encoding du syst\u00e8me
+isisfish.config.main.encoding.description=l'encoding du syst\u00E8me
isisfish.config.main.javadocURL.description=l'url de la javadoc des scripts
isisfish.config.main.launchUI.description=
-isisfish.config.main.localSimulator.description=pour indiquer si les simulations sont \u00e0 effectuer localement
+isisfish.config.main.localSimulator.description=pour indiquer si les simulations sont \u00E0 effectuer localement
isisfish.config.main.locale.description=la locale utilisateur
isisfish.config.main.login.description=le login pour se connecter au serveur de simulations distant
isisfish.config.main.password.description=le mot de passe pour se connecter au serveur de simulations distant
isisfish.config.main.projectName.description=le nom du projet
-isisfish.config.main.regionMap.description=le nom du r\u00e9pertoire contenant les maps d'une r\u00e9gion
+isisfish.config.main.regionMap.description=le nom du r\u00E9pertoire contenant les maps d'une r\u00E9gion
isisfish.config.main.remoteCaparmor.description=lance les simulations sur un serveur distant
isisfish.config.main.resultExport.description=TODO
isisfish.config.main.simulation.ssh.datapath.description=
@@ -159,22 +158,22 @@
isisfish.config.main.simulation.ssh.login.description=
isisfish.config.main.simulation.ssh.server.description=
isisfish.config.main.simulationServer.description=l'url du serveur de simulations distant
-isisfish.config.main.simulationShowOnlyError.description=pour indiquer si l'on doit conserver dans l'UI des simulations termin\u00e9es uniquement celles avec erreur
-isisfish.config.main.simulationShowOnlyQueue.description=pour indiquer si l'on doit conserver dans l'UI des simulations termin\u00e9es uniquement celles effectu\u00e9es localement
-isisfish.config.main.smtpServer.description=le nom du serveur smpt \u00e0 utiliser pour envoyer les courriels
-isisfish.config.main.subSimulator.description=pour indiquer si les simulations sont \u00e0 effectuer localement dans un sous process
+isisfish.config.main.simulationShowOnlyError.description=pour indiquer si l'on doit conserver dans l'UI des simulations termin\u00E9es uniquement celles avec erreur
+isisfish.config.main.simulationShowOnlyQueue.description=pour indiquer si l'on doit conserver dans l'UI des simulations termin\u00E9es uniquement celles effectu\u00E9es localement
+isisfish.config.main.smtpServer.description=le nom du serveur smpt \u00E0 utiliser pour envoyer les courriels
+isisfish.config.main.subSimulator.description=pour indiquer si les simulations sont \u00E0 effectuer localement dans un sous process
isisfish.config.main.userMail.description=le courriel de l'utilisateur
-isisfish.config.main.userName.description=le nom - pr\u00e9nom de l'utilisateur
-isisfish.config.vcs.hostName.description=le nom du serveur vcs \u00e0 utiliser
-isisfish.config.vcs.keyFile.description=le chemin complet du fichier de clef priv\u00e9e ssh2 \u00e0 utiliser lors d'une connexion s\u00e9curis\u00e9e
+isisfish.config.main.userName.description=le nom - pr\u00E9nom de l'utilisateur
+isisfish.config.vcs.hostName.description=le nom du serveur vcs \u00E0 utiliser
+isisfish.config.vcs.keyFile.description=le chemin complet du fichier de clef priv\u00E9e ssh2 \u00E0 utiliser lors d'une connexion s\u00E9curis\u00E9e
isisfish.config.vcs.localDatabasePath.description=
-isisfish.config.vcs.noPassPhrase.description=pour indiquer si la clef priv\u00e9e ssh2 utilis\u00e9e pour communiquer avec le serveur vcs contient est prot\u00e9g\u00e9 par une passe-phrase
-isisfish.config.vcs.passphrase.description=la passe-phrase utilis\u00e9e pour prot\u00e9ger la clef priv\u00e9e ssh
-isisfish.config.vcs.remoteDatabase.description=le nom du module de donn\u00e9es sur le serveur vcs
-isisfish.config.vcs.remotePath.description=le chemin jusqu'au parent du module de donn\u00e9es sur le serveur vcs
-isisfish.config.vcs.type.description=le type de communication vcs utilis\u00e9
-isisfish.config.vcs.typeRepo.description=le type de r\u00e9pository vcs utilis\u00e9
-isisfish.config.vcs.useSshConnexion.description=pour indiquer si l'on utilise une connexion s\u00e9curis\u00e9e pour communiquer avec le serveur vcs (ssh2)
+isisfish.config.vcs.noPassPhrase.description=pour indiquer si la clef priv\u00E9e ssh2 utilis\u00E9e pour communiquer avec le serveur vcs contient est prot\u00E9g\u00E9 par une passe-phrase
+isisfish.config.vcs.passphrase.description=la passe-phrase utilis\u00E9e pour prot\u00E9ger la clef priv\u00E9e ssh
+isisfish.config.vcs.remoteDatabase.description=le nom du module de donn\u00E9es sur le serveur vcs
+isisfish.config.vcs.remotePath.description=le chemin jusqu'au parent du module de donn\u00E9es sur le serveur vcs
+isisfish.config.vcs.type.description=le type de communication vcs utilis\u00E9
+isisfish.config.vcs.typeRepo.description=le type de r\u00E9pository vcs utilis\u00E9
+isisfish.config.vcs.useSshConnexion.description=pour indiquer si l'on utilise une connexion s\u00E9curis\u00E9e pour communiquer avec le serveur vcs (ssh2)
isisfish.config.vcs.userName.description=le login de l'utilisateur sur le serveur vcs
isisfish.config.vcs.userPassword.description=
isisfish.dataResult.descriptionLabel=defaultToolTip-fr.ifremer.resultat.DataResult.descriptionLabel
@@ -185,54 +184,54 @@
isisfish.dataResult.scrolledwindow2=defaultToolTip-fr.ifremer.resultat.DataResult.scrolledwindow2
isisfish.dataResult.table2=defaultToolTip-fr.ifremer.resultat.DataResult.table2
isisfish.date.toString=%1$s %2$s
-isisfish.effortDescription.crewFoodCost=Co\u00fbt de l'alimentation pour l'\u00e9quipage
-isisfish.effortDescription.crewShareRate=Taux de partage de l'\u00e9quipage
-isisfish.effortDescription.crewSize=Taille de l'\u00e9quipage
-isisfish.effortDescription.fishingOperation=Op\u00e9ration de p\u00eache
-isisfish.effortDescription.fishingOperationDuration=Dur\u00e9e de la p\u00eache
-isisfish.effortDescription.fixedCrewSalary=Salaire d'\u00e9quipage fixe
-isisfish.effortDescription.gearsNumberPerOperation=Nombre d'engins par op\u00e9ration
+isisfish.effortDescription.crewFoodCost=Co\u00FBt de l'alimentation pour l'\u00E9quipage
+isisfish.effortDescription.crewShareRate=Taux de partage de l'\u00E9quipage
+isisfish.effortDescription.crewSize=Taille de l'\u00E9quipage
+isisfish.effortDescription.fishingOperation=Op\u00E9ration de p\u00EAche
+isisfish.effortDescription.fishingOperationDuration=Dur\u00E9e de la p\u00EAche
+isisfish.effortDescription.fixedCrewSalary=Salaire d'\u00E9quipage fixe
+isisfish.effortDescription.gearsNumberPerOperation=Nombre d'engins par op\u00E9ration
isisfish.effortDescription.landingCosts=landingCosts
-isisfish.effortDescription.otherRunningCost=Autres co\u00fbts
+isisfish.effortDescription.otherRunningCost=Autres co\u00FBts
isisfish.effortDescription.repairAndMaintenanceGearCost=repairAndMaintenanceGearCost
isisfish.effortDescription.title=inputEffortDescription
isisfish.effortDescription.toString=EffortDescription for %1$s with %2$s
-isisfish.effortDescription.unitCostOfFishing=Co\u00fbt unitaire de la p\u00eache
-isisfish.equation.editor.title=Editeur d'\u00e9quation
+isisfish.effortDescription.unitCostOfFishing=Co\u00FBt unitaire de la p\u00EAche
+isisfish.equation.editor.title=Editeur d'\u00E9quation
isisfish.error.acceptable.population=New value isn't acceptable value for this population
-isisfish.error.add.card=Erreur lors de l'ajout du r\u00e9sultat \u00e0 la carte.
+isisfish.error.add.card=Erreur lors de l'ajout du r\u00E9sultat \u00E0 la carte.
isisfish.error.add.logger.simulation\ =isisfish.error.add.logger.simulation
-isisfish.error.add.result.data=Erreur lors de l'ajout du r\u00e9sultat au data.
-isisfish.error.add.result.graph=Erreur lors de l'ajout du r\u00e9sultat au graph.
+isisfish.error.add.result.data=Erreur lors de l'ajout du r\u00E9sultat au data.
+isisfish.error.add.result.graph=Erreur lors de l'ajout du r\u00E9sultat au graph.
isisfish.error.add.tray=Impossible d'ajouter une icone de notification
isisfish.error.change.classloader=Can't change classloader because can't create URL from file %1$s
isisfish.error.change.equation=Can't change equation
isisfish.error.check.region=
isisfish.error.compile.script=Can't compile script\: %1$s
isisfish.error.compiled.parameter=Can't get rule parameter from compiled class
-isisfish.error.conversion.data=Erreur lors de la conversion du fichier de donn\u00e9es
+isisfish.error.conversion.data=Erreur lors de la conversion du fichier de donn\u00E9es
isisfish.error.create.equation=Can't create equation
isisfish.error.delete.database=Can't delete database
isisfish.error.delete.file=could not delete file %1$s
isisfish.error.delete.vcs.files=Can't delete vcs files
-isisfish.error.dialog.message=Une erreur a \u00e9t\u00e9 d\u00e9tect\u00e9e
+isisfish.error.dialog.message=Une erreur a \u00E9t\u00E9 d\u00E9tect\u00E9e
isisfish.error.dialog.title=Erreur
isisfish.error.during.simulation=Error during simulation
isisfish.error.emigration.negative=emigration negative
isisfish.error.empty.code.rubbin=le code rubbin est vide
isisfish.error.empty.emigration=emigration vide
-isisfish.error.empty.id.geographic=l'identifiant g\u00e9ographique est vide
+isisfish.error.empty.id.geographic=l'identifiant g\u00E9ographique est vide
isisfish.error.empty.immigration=immigration vide
isisfish.error.empty.migration=Migration vide
isisfish.error.empty.name=le nom est vide
-isisfish.error.empty.params.name=le nom du param\u00e8tre est vide
+isisfish.error.empty.params.name=le nom du param\u00E8tre est vide
isisfish.error.empty.population=Population est vide
isisfish.error.empty.scientific.name=le nom scientifique est vide
isisfish.error.empty.season=info saison vide
-isisfish.error.empty.selectivity=s\u00e9lectivit\u00e9 est vide
+isisfish.error.empty.selectivity=s\u00E9lectivit\u00E9 est vide
isisfish.error.empty.species=espece capturable vide
isisfish.error.empty.species.name=le nom d'espece est vide
-isisfish.error.empty.unit=l'unit\u00e9 de mesure est vide
+isisfish.error.empty.unit=l'unit\u00E9 de mesure est vide
isisfish.error.emty.emigration=emigration vide
isisfish.error.emty.migration=Migration vide
isisfish.error.equation.retun.number=EquationImpl must retun a number\: %1$s
@@ -244,22 +243,22 @@
isisfish.error.immigration.negative=immigration negative
isisfish.error.import.convertible=Erreur lors de l'import, la version du fichier que vous souhaitez importer n'est pas transformable en une version importable.
isisfish.error.import.file=Can't import file %1$s
-isisfish.error.import.recent.files=Erreur lors de l'import, la version du fichier que vous souhaitez importer est plus r\u00e9cente que la version souhait\u00e9e.
+isisfish.error.import.recent.files=Erreur lors de l'import, la version du fichier que vous souhaitez importer est plus r\u00E9cente que la version souhait\u00E9e.
isisfish.error.init.map=Can't init map.
isisfish.error.init.remove.button=could not init remove button (button or list is null) button \: %1$s, list \: %2$s
isisfish.error.instanciate=Can't instanciate %1$s
isisfish.error.instanciate.export=Can't instanciate export %1$s
-isisfish.error.invalid.costs.fix=les co\u00fbts fixes sont invalides
+isisfish.error.invalid.costs.fix=les co\u00FBts fixes sont invalides
isisfish.error.invalid.distribution.recruitment=distribution de recrutement invalide
isisfish.error.invalid.equation=Equation invalide
-isisfish.error.invalid.equation.name=Nom d'\u00e9quation invalide
+isisfish.error.invalid.equation.name=Nom d'\u00E9quation invalide
isisfish.error.invalid.file.name=Le nom du script %1$s n'est pas valide.
isisfish.error.invalid.interval.reproduction.recruitment=interval entre la reproduction et le recrutement invalide
isisfish.error.invalid.mean.weight=poids moyen invalide
-isisfish.error.invalid.natural.death=mortalit\u00e9 naturelle sur les classes naissantes invalide
+isisfish.error.invalid.natural.death=mortalit\u00E9 naturelle sur les classes naissantes invalide
isisfish.error.invalid.number=le nombre est invalide
isisfish.error.invalid.range=La gamme possible n'a pas de valeur acceptable
-isisfish.error.invalid.values.params=Param\u00e8tre controlable hors valeurs possibles
+isisfish.error.invalid.values.params=Param\u00E8tre controlable hors valeurs possibles
isisfish.error.invalidate.natural.death=mortalite naturelle invalide
isisfish.error.invoke.method=Can't invoke method '%1$s' for class %2$s
isisfish.error.load.class=Can't load class\: %1$s
@@ -270,11 +269,11 @@
isisfish.error.log.console.dispose=Une erreur est survenue pendant la fermeture de la console %1$s de log, raison %2$s
isisfish.error.log.createAppender=n'a pas pu creer l'appender [%1$s] \: %2$s pour la raison %3$s
isisfish.error.log.foundAppender=n'a pas trouve l'appender %1$s pour la categorie %2$s
-isisfish.error.matrix.more.2d=Matrice de plus de 2 dimensions\!\!\nS\u00e9lectionnez moins d'\u00e9l\u00e9ments ou utilisez l'op\u00e9rateur somme.
+isisfish.error.matrix.more.2d=Matrice de plus de 2 dimensions\!\!\nS\u00E9lectionnez moins d'\u00E9l\u00E9ments ou utilisez l'op\u00E9rateur somme.
isisfish.error.migration.negative=Migration negative
isisfish.error.no.matrix=No matrix for\:
isisfish.error.no.null.time.step=Error, the time step should not be null
-isisfish.error.no.sector=il n'y a pas de secteur de d\u00e9finit
+isisfish.error.no.sector=il n'y a pas de secteur de d\u00E9finit
isisfish.error.no.select.simulation=could not select simulation
isisfish.error.no.target.species=no target species in %1$s for %2$s
isisfish.error.not.found.class=this class does not
@@ -285,7 +284,7 @@
isisfish.error.not.null.class.grown=classe mature vaut nul
isisfish.error.not.null.mean.weight=poids moyen nul
isisfish.error.not.null.natiral.death=mortalite naturelle nulle
-isisfish.error.not.possible.metier=Pas de m\u00e9tier possible
+isisfish.error.not.possible.metier=Pas de m\u00E9tier possible
isisfish.error.not.support.class=La classe %s ne supporte pas les descritions
isisfish.error.number.classes.upper.zero=Error, the number of classes must be upper than 0
isisfish.error.obtain.analyseplan=Can't obtain description of AnalysePlan
@@ -302,9 +301,9 @@
isisfish.error.prepare.data=Can't prepare data
isisfish.error.prepare.information.simulation=Can't prepare information for simulation
isisfish.error.read.simulation=Can't read simulation information %1$s
-isisfish.error.read.simulation.parameters=Impossible de lire les param\u00eatres du fichier \: %1$s
-isisfish.error.region.already.exists=Cette r\u00e9gion existe d\u00e9j\u00e0
-isisfish.error.region.name.empty=Le nom de la R\u00e9gion est vide
+isisfish.error.read.simulation.parameters=Impossible de lire les param\u00EAtres du fichier \: %1$s
+isisfish.error.region.already.exists=Cette r\u00E9gion existe d\u00E9j\u00E0
+isisfish.error.region.name.empty=Le nom de la R\u00E9gion est vide
isisfish.error.remove.directory=Can't remove directory %1$s
isisfish.error.rename.region=Can't rename region to %1$s
isisfish.error.save.checkSum.compilation=Can't save checkSum to compilation\: %1$s
@@ -324,28 +323,28 @@
isisfish.error.simulation.resultXml.write=Can't write simulation result XML for reason %1$s
isisfish.error.source.parameter=Can't get parameter from source
isisfish.error.strategy.order=Strategy %1$s don't have 12 StrategyMonthInfo but %2$s. Recreate them
-isisfish.error.undefined.classes=pas de classes d\u00e9finies
+isisfish.error.undefined.classes=pas de classes d\u00E9finies
isisfish.error.undefined.correspondence.zones.reproduction.recruitment=pas de correspondance entre les zones de reproduction et les zones de recrutement
-isisfish.error.undefined.gear=l'engin n'est pas d\u00e9fini
-isisfish.error.undefined.mesh=aucune maille de d\u00e9fini
+isisfish.error.undefined.gear=l'engin n'est pas d\u00E9fini
+isisfish.error.undefined.mesh=aucune maille de d\u00E9fini
isisfish.error.undefined.mesh.sector=aucune maille dans le secteur
-isisfish.error.undefined.meta.population=aucune meta population de d\u00e9fini
-isisfish.error.undefined.natural.death=pas de mortalit\u00e9 naturelle sur les classes naissantes
-isisfish.error.undefined.sector=aucun secteur de d\u00e9fini
-isisfish.error.undefined.stategy=aucune strat\u00e9gie de d\u00e9fini
-isisfish.error.undefined.stategy.months=La strat\u00e9gie n'est pas d\u00e9finie pour certain mois
-isisfish.error.undefined.zone.population=il n'y a pas de zone de population de d\u00e9finit
-isisfish.error.undefined.zone.recruitment=il n'y a pas de zone de recrutement de d\u00e9finit
-isisfish.error.undefined.zone.reproduction=il n'y a pas de zone de reproduction de d\u00e9finit
+isisfish.error.undefined.meta.population=aucune meta population de d\u00E9fini
+isisfish.error.undefined.natural.death=pas de mortalit\u00E9 naturelle sur les classes naissantes
+isisfish.error.undefined.sector=aucun secteur de d\u00E9fini
+isisfish.error.undefined.stategy=aucune strat\u00E9gie de d\u00E9fini
+isisfish.error.undefined.stategy.months=La strat\u00E9gie n'est pas d\u00E9finie pour certain mois
+isisfish.error.undefined.zone.population=il n'y a pas de zone de population de d\u00E9finit
+isisfish.error.undefined.zone.recruitment=il n'y a pas de zone de recrutement de d\u00E9finit
+isisfish.error.undefined.zone.reproduction=il n'y a pas de zone de reproduction de d\u00E9finit
isisfish.error.unsupported.equation.langage=unsupported langage '%1$s' for equation\: %2$s
isisfish.error.wait.simThread=Can't wait SimThread
isisfish.error.warning.title=Attention
isisfish.error.write.simulation=Can't write information %1$s
-isisfish.exit.text=Quelque chose a chang\u00e9, merci de saisir un commentaire
+isisfish.exit.text=Quelque chose a chang\u00E9, merci de saisir un commentaire
isisfish.exit.title=Exit
isisfish.export.directory=Dossier d'export
-isisfish.export.saved=Exports des r\u00e9sultats sauvegard\u00e9s
-isisfish.export.title=Export des r\u00e9sultats
+isisfish.export.saved=Exports des r\u00E9sultats sauvegard\u00E9s
+isisfish.export.title=Export des r\u00E9sultats
isisfish.filter=Filtrer
isisfish.filter.apply=Appliquer le filtre
isisfish.filter.cancel=Annuler
@@ -355,37 +354,37 @@
isisfish.filter.log.levelInfo=info
isisfish.filter.log.levelTrace=trace
isisfish.filter.log.levelWarn=warning
-isisfish.filter.log.tooltip.levelDebug=s\u00e9lectionner pour filtrer ce niveau
-isisfish.filter.log.tooltip.levelError=s\u00e9lectionner pour filtrer ce niveau
-isisfish.filter.log.tooltip.levelFatal=s\u00e9lectionner pour filtrer ce niveau
-isisfish.filter.log.tooltip.levelInfo=s\u00e9lectionner pour filtrer ce niveau
-isisfish.filter.log.tooltip.levelTrace=s\u00e9lectionner pour filtrer ce niveau
-isisfish.filter.log.tooltip.levelWarn=s\u00e9lectionner pour filtrer ce niveau
-isisfish.filter.log.tooltip.message=Entrer un terme \u00e0 rechercher et appuyer sur Entr\u00e9e
-isisfish.filter.reset=R\u00e9initialiser
-isisfish.filter.result=R\u00e9sultats
-isisfish.filter.result.found=R\u00e9sultats (%d/%d)
-isisfish.filter.select=S\u00e9lectionner
-isisfish.filter.select.simulation=S\u00e9lectionner une simulation
+isisfish.filter.log.tooltip.levelDebug=s\u00E9lectionner pour filtrer ce niveau
+isisfish.filter.log.tooltip.levelError=s\u00E9lectionner pour filtrer ce niveau
+isisfish.filter.log.tooltip.levelFatal=s\u00E9lectionner pour filtrer ce niveau
+isisfish.filter.log.tooltip.levelInfo=s\u00E9lectionner pour filtrer ce niveau
+isisfish.filter.log.tooltip.levelTrace=s\u00E9lectionner pour filtrer ce niveau
+isisfish.filter.log.tooltip.levelWarn=s\u00E9lectionner pour filtrer ce niveau
+isisfish.filter.log.tooltip.message=Entrer un terme \u00E0 rechercher et appuyer sur Entr\u00E9e
+isisfish.filter.reset=R\u00E9initialiser
+isisfish.filter.result=R\u00E9sultats
+isisfish.filter.result.found=R\u00E9sultats (%d/%d)
+isisfish.filter.select=S\u00E9lectionner
+isisfish.filter.select.simulation=S\u00E9lectionner une simulation
isisfish.filter.simulation=Filtrer les simulations
-isisfish.filter.simulation.analysePlanNumber=num\u00e9ro d'analyse
+isisfish.filter.simulation.analysePlanNumber=num\u00E9ro d'analyse
isisfish.filter.simulation.description=description
isisfish.filter.simulation.local=locale
-isisfish.filter.simulation.numberOfYear=nombre d'ann\u00e9e(s)
-isisfish.filter.simulation.regionName=nom de r\u00e9gion
+isisfish.filter.simulation.numberOfYear=nombre d'ann\u00E9e(s)
+isisfish.filter.simulation.regionName=nom de r\u00E9gion
isisfish.filter.simulation.simulationEnd=date de fin (dd/MM/yyyy)
isisfish.filter.simulation.simulationName=nom de simulation
-isisfish.filter.simulation.simulationStart=date de d\u00e9but (dd/MM/yyyy)
+isisfish.filter.simulation.simulationStart=date de d\u00E9but (dd/MM/yyyy)
isisfish.filter.simulation.simulatorName=nom du simulateur
-isisfish.filter.simulation.tooltip.analysePlanNumber=filter sur le num\u00e9ro d'analyse (uniquement pour les simulations avec plan d'analyse)
+isisfish.filter.simulation.tooltip.analysePlanNumber=filter sur le num\u00E9ro d'analyse (uniquement pour les simulations avec plan d'analyse)
isisfish.filter.simulation.tooltip.description=filtrer sur la description (format regex)
isisfish.filter.simulation.tooltip.local=filter uniquement les simulations locales
-isisfish.filter.simulation.tooltip.numberOfYear=filter sur le nombre d'ann\u00e9e(s) (recherche extacte)
-isisfish.filter.simulation.tooltip.regionName=filtrer sur le nom de la r\u00e9gion (format regex)
+isisfish.filter.simulation.tooltip.numberOfYear=filter sur le nombre d'ann\u00E9e(s) (recherche extacte)
+isisfish.filter.simulation.tooltip.regionName=filtrer sur le nom de la r\u00E9gion (format regex)
isisfish.filter.simulation.tooltip.simulationEnd=filtrer sur la date de fin de simulation (format dd/MM/yyyy)
isisfish.filter.simulation.tooltip.simulationName=filtrer sur le nom de simulation (format regex)
-isisfish.filter.simulation.tooltip.simulationStart=filtrer sur la date de d\u00e9but de simulation (format dd/MM/yyyy)
-isisfish.filter.simulation.tooltip.simulatorName=filter sur le nom du simulateur utilis\u00e9 (format regex)
+isisfish.filter.simulation.tooltip.simulationStart=filtrer sur la date de d\u00E9but de simulation (format dd/MM/yyyy)
+isisfish.filter.simulation.tooltip.simulatorName=filter sur le nom du simulateur utilis\u00E9 (format regex)
isisfish.filter.simulation.tooltip.useAnalysePlan=filter uniquement les simulations avec plan d'analyse
isisfish.filter.simulation.tooltip.useOptimization=filter uniquement les simulations avec optimisation
isisfish.filter.simulation.tooltip.usePreScript=filter uniquement les simulations avec Prescript
@@ -395,7 +394,7 @@
isisfish.filter.simulation.usePreScript=prescript
isisfish.filter.simulation.useStatistic=statistiques
isisfish.fisheryRegion.addMap=Ajouter une carte
-isisfish.fisheryRegion.area=Extr\u00e9mit\u00e9s de la zone de p\u00eache
+isisfish.fisheryRegion.area=Extr\u00E9mit\u00E9s de la zone de p\u00EAche
isisfish.fisheryRegion.comments=Commentaires
isisfish.fisheryRegion.delMap=Supprimer la carte
isisfish.fisheryRegion.latitude=Lat.
@@ -404,12 +403,12 @@
isisfish.fisheryRegion.longitude=Long.
isisfish.fisheryRegion.longitude.max=Long. max.
isisfish.fisheryRegion.longitude.min=Long. min.
-isisfish.fisheryRegion.name=Nom de la r\u00e9gion
+isisfish.fisheryRegion.name=Nom de la r\u00E9gion
isisfish.fisheryRegion.ofCells=de mailles (option)
-isisfish.fisheryRegion.selectFile=S\u00e9lectionnez un fichier
-isisfish.fisheryRegion.spatial=R\u00e9solution spatiale
+isisfish.fisheryRegion.selectFile=S\u00E9lectionnez un fichier
+isisfish.fisheryRegion.spatial=R\u00E9solution spatiale
isisfish.gear.comments=Commentaires
-isisfish.gear.effortUnit=Unit\u00e9 d'effort
+isisfish.gear.effortUnit=Unit\u00E9 d'effort
isisfish.gear.name=Nom
isisfish.gear.rangeValues=Range of values
isisfish.gear.standardisationFactor=Facteur de standardisation
@@ -437,48 +436,48 @@
isisfish.infoItem.list=defaultToolTip-fr.ifremer.resultat.InfoItem.list
isisfish.infoItem.scrolledwindow=defaultToolTip-fr.ifremer.resultat.InfoItem.scrolledwindow1
isisfish.infoItem.sum=defaultToolTip-fr.ifremer.resultat.InfoItemDate.sumButton
-isisfish.infoItem.sum.year=Somme de \u00e9l\u00e9ment par ann\u00e9e
+isisfish.infoItem.sum.year=Somme de \u00E9l\u00E9ment par ann\u00E9e
isisfish.infoItem.table=defaultToolTip-fr.ifremer.resultat.InfoItem.table30
isisfish.input.continuePorts=Continuer vers les ports
isisfish.input.continueZones=Continuer vers les zones
-isisfish.input.menu.addRegion=Ajouter une r\u00e9gion
+isisfish.input.menu.addRegion=Ajouter une r\u00E9gion
isisfish.input.menu.commit=Sauvegarder les changements
-isisfish.input.menu.copyRegion=Copier r\u00e9gion
-isisfish.input.menu.exportRegion=Exporter la r\u00e9gion
-isisfish.input.menu.importRegion=Importer une r\u00e9gion
-isisfish.input.menu.importRegionSimulation=Importer la r\u00e9gion d'une simulation
-isisfish.input.menu.importRegionV2=Importer une r\u00e9gion de la v2 d'IsisFish
-isisfish.input.menu.importRenameRegion=Importer une r\u00e9gion et la renommer
+isisfish.input.menu.copyRegion=Copier r\u00E9gion
+isisfish.input.menu.exportRegion=Exporter la r\u00E9gion
+isisfish.input.menu.importRegion=Importer une r\u00E9gion
+isisfish.input.menu.importRegionSimulation=Importer la r\u00E9gion d'une simulation
+isisfish.input.menu.importRegionV2=Importer une r\u00E9gion de la v2 d'IsisFish
+isisfish.input.menu.importRenameRegion=Importer une r\u00E9gion et la renommer
isisfish.input.menu.removeLocaly=Supprimer localement
-isisfish.input.menu.removeLocalyRemotely=Supprimer localement et \u00e0 distance
+isisfish.input.menu.removeLocalyRemotely=Supprimer localement et \u00E0 distance
isisfish.input.menu.server=Serveur
-isisfish.input.newRegion=Nouvelle r\u00e9gion
-isisfish.input.selectNodeTree=S\u00e9lectionnez un noeud de l'arbre
-isisfish.input.title=Saisie de la p\u00eacherie
+isisfish.input.newRegion=Nouvelle r\u00E9gion
+isisfish.input.selectNodeTree=S\u00E9lectionnez un noeud de l'arbre
+isisfish.input.title=Saisie de la p\u00EAcherie
isisfish.launch.anonymous=lecture seule
isisfish.launch.debugMode=debug mode
isisfish.launch.email=courriel
isisfish.launch.firstname=nom
isisfish.launch.init.done=init done in %1$s.
-isisfish.launch.lasstname=pr\u00e9nom
-isisfish.launch.server.authenticationMethod=droit d'acc\u00e8s au serveur
+isisfish.launch.lasstname=pr\u00E9nom
+isisfish.launch.server.authenticationMethod=droit d'acc\u00E8s au serveur
isisfish.launch.server.login=nom utilisateur
isisfish.launch.server.ssh.confirm.passphrase=confirmer la passphrase
isisfish.launch.server.ssh.key.change=Changer la clef ssh
-isisfish.launch.server.ssh.key.generate=G\u00e9n\u00e9rer la clef ssh
+isisfish.launch.server.ssh.key.generate=G\u00E9n\u00E9rer la clef ssh
isisfish.launch.server.ssh.no.passphrase=pas de passphrase
isisfish.launch.server.ssh.passphrase=passphrase
-isisfish.launch.server.ssh.privateKeyFile=clef priv\u00e9e ssh
+isisfish.launch.server.ssh.privateKeyFile=clef priv\u00E9e ssh
isisfish.launch.server.ssh.publicKeyFile=clef publique ssh
-isisfish.launch.ssh=lecture-\u00e9criture (ssh)
+isisfish.launch.ssh=lecture-\u00E9criture (ssh)
isisfish.launch.start=Lancement Isis-fish... %1$s
isisfish.launch.stop=Stopping simulation...
isisfish.launching=after init done in %1$s.
isisfish.log.addAppender=ajoute un appender [%1$s]
-isisfish.log.body=Message \u00e0 joindre
+isisfish.log.body=Message \u00E0 joindre
isisfish.log.closeAppender=ferme l'appender [%1$s] pour la categorie %2$s
isisfish.log.mail.failed=Impossible d'envoyer le rapport par courriel. Le serveur smtp fonctionne ? (J'essaye de contacter < %1$s > smtp server)
-isisfish.log.mail.send=Un rapport a \u00e9t\u00e9 envoy\u00e9 \u00e0 %1$s
+isisfish.log.mail.send=Un rapport a \u00E9t\u00E9 envoy\u00E9 \u00E0 %1$s
isisfish.log.mail.send.title=Send simulation %1$s by email
isisfish.log.mailTo=Adresse du destinataire
isisfish.log.removeAppender=supprime l'appender [%1$s]
@@ -487,101 +486,101 @@
isisfish.log.sendMail=Envoyer par email
isisfish.log.simulation.name=IsisFish simulation %1$s
isisfish.log.swapLogLevel=permute le niveau du logger %1$s du niveau %2$s au niveau %3$s
-isisfish.log.tooltip.body=Le message saisi sera joint au courriel envoy\u00e9
+isisfish.log.tooltip.body=Le message saisi sera joint au courriel envoy\u00E9
isisfish.log.tooltip.mailTo=Entrer l'adresse du destinataire du courriel
isisfish.log.tooltip.sendAll=Envoyer toute la simulation, ou uniquement le fichier de log
isisfish.log.tooltip.sendMail=Cliquer pour envoyer le courriel contentant les fichiers
-isisfish.message.add.objets.simulation=Ajout des nouveaux objets cr\u00e9\u00e9s durant la simulation
+isisfish.message.add.objets.simulation=Ajout des nouveaux objets cr\u00E9\u00E9s durant la simulation
isisfish.message.backup.database.finished=backup database finished
isisfish.message.backup.database.progress=backup database in progress
isisfish.message.cancel.finished=Cancel finished
-isisfish.message.check.finished=v\u00e9rification termin\u00e9e
+isisfish.message.check.finished=v\u00E9rification termin\u00E9e
isisfish.message.check.region=
isisfish.message.checking.cell=
isisfish.message.choose.archive=choose archive file or directory
isisfish.message.commit=
-isisfish.message.commit.cancelled=commit annul\u00e9
-isisfish.message.commit.finished=commit termin\u00e9
-isisfish.message.commit.region.canceled=Commit de la r\u00e9gion annul\u00e9
-isisfish.message.commiting.region=En train de commiter la r\u00e9gion %1$s ...
+isisfish.message.commit.cancelled=commit annul\u00E9
+isisfish.message.commit.finished=commit termin\u00E9
+isisfish.message.commit.region.canceled=Commit de la r\u00E9gion annul\u00E9
+isisfish.message.commiting.region=En train de commiter la r\u00E9gion %1$s ...
isisfish.message.compilation.time=Temps de compilation %1$ss
isisfish.message.confirm.delete.object=Voulez-vous vraiment supprimer l'objet %1$s
-isisfish.message.confirm.remove.region=Voulez-vous vraiement supprimer la r\u00e9gion %1$s ?
+isisfish.message.confirm.remove.region=Voulez-vous vraiement supprimer la r\u00E9gion %1$s ?
isisfish.message.confirm.remove.script=Voulez-vous vraiment supprimer le script '%1$s' ?
-isisfish.message.copy.finished=Copie termin\u00e9e
-isisfish.message.copy.region=Copier la r\u00e9gion vers %1$s
-isisfish.message.creating.region=En train de cr\u00e9er la r\u00e9gion %1$s
-isisfish.message.creation.done=cr\u00e9ation termin\u00e9e %1$s
-isisfish.message.creation.finished=Cr\u00e9ation termin\u00e9e
-isisfish.message.delete.canceled=supression annul\u00e9e
-isisfish.message.delete.entities=Supprimer les entit\u00e9s
-isisfish.message.delete.entity=Supprimer l'entit\u00e9
-isisfish.message.delete.finished=Suppression termin\u00e9e
-isisfish.message.delete.object=Pour supprimer l'objet %1$s, tous les objets suivants seront aussi supprim\u00e9s \n\n
-isisfish.message.evaluation.finished=\u00e9valuation termin\u00e9e
-isisfish.message.export.done=Export termin\u00e9
+isisfish.message.copy.finished=Copie termin\u00E9e
+isisfish.message.copy.region=Copier la r\u00E9gion vers %1$s
+isisfish.message.creating.region=En train de cr\u00E9er la r\u00E9gion %1$s
+isisfish.message.creation.done=cr\u00E9ation termin\u00E9e %1$s
+isisfish.message.creation.finished=Cr\u00E9ation termin\u00E9e
+isisfish.message.delete.canceled=supression annul\u00E9e
+isisfish.message.delete.entities=Supprimer les entit\u00E9s
+isisfish.message.delete.entity=Supprimer l'entit\u00E9
+isisfish.message.delete.finished=Suppression termin\u00E9e
+isisfish.message.delete.object=Pour supprimer l'objet %1$s, tous les objets suivants seront aussi supprim\u00E9s \n\n
+isisfish.message.evaluation.finished=\u00E9valuation termin\u00E9e
+isisfish.message.export.done=Export termin\u00E9
isisfish.message.export.zip=Exporter dans le fichier zip %1$s
-isisfish.message.file.overwrite=Le fichier existe, Voulez-vous l'\u00e9craser ?
+isisfish.message.file.overwrite=Le fichier existe, Voulez-vous l'\u00E9craser ?
isisfish.message.import=Importer %1$s
-isisfish.message.import.equation.convert=Conversion manuelle de l'\u00e9quation
-isisfish.message.import.finished=Import termin\u00e9
-isisfish.message.import.region.name=Entre le nom de la r\u00e9egion \u00e0 importer
-isisfish.message.import.region.xml=R\u00e9gion XML (Isis-Fish V2.x)
+isisfish.message.import.equation.convert=Conversion manuelle de l'\u00E9quation
+isisfish.message.import.finished=Import termin\u00E9
+isisfish.message.import.region.name=Entre le nom de la r\u00E9egion \u00E0 importer
+isisfish.message.import.region.xml=R\u00E9gion XML (Isis-Fish V2.x)
isisfish.message.import.region.zipped=Zipped Region
-isisfish.message.import.scripts.file.cancelled=Importation des scripts annul\u00e9
+isisfish.message.import.scripts.file.cancelled=Importation des scripts annul\u00E9
isisfish.message.import.xml.v2.file=Import xml v2 file
isisfish.message.import.zip=Import zip file
isisfish.message.launchui.notlaunch=
-isisfish.message.load.finished=Chargement termin\u00e9
+isisfish.message.load.finished=Chargement termin\u00E9
isisfish.message.load.map=Chargement de la carte \: %1$s (%2$s, %3$s)
isisfish.message.loading.old.simulation=Chargement d'une ancienne simulation ...
-isisfish.message.loading.region=Chargement de la r\u00e9gion
-isisfish.message.name.imported.region=Entrez le nom de la r\u00e9gion \u00e0 importer
-isisfish.message.new.filename=Entrer le nom du nouveau du fichier.\n\t (utiliser uniquemment des caract\u00e8res et _ en commencant avec une majuscule)
-isisfish.message.new.region.name=Entrer le nom de la nouvell r\u00e9gion
-isisfish.message.old.simulation.loaded=Ancienne simulation charg\u00e9e
-isisfish.message.page.modified=Cette page a \u00e9t\u00e9 modifi\u00e9, voulez-vous la sauvegarder ?
-isisfish.message.presimulation.script.execution=Ex\u00e9cution des scripts de Presimulation
+isisfish.message.loading.region=Chargement de la r\u00E9gion
+isisfish.message.name.imported.region=Entrez le nom de la r\u00E9gion \u00E0 importer
+isisfish.message.new.filename=Entrer le nom du nouveau du fichier.\n\t (utiliser uniquemment des caract\u00E8res et _ en commencant avec une majuscule)
+isisfish.message.new.region.name=Entrer le nom de la nouvell r\u00E9gion
+isisfish.message.old.simulation.loaded=Ancienne simulation charg\u00E9e
+isisfish.message.page.modified=Cette page a \u00E9t\u00E9 modifi\u00E9, voulez-vous la sauvegarder ?
+isisfish.message.presimulation.script.execution=Ex\u00E9cution des scripts de Presimulation
isisfish.message.recruitment.number.month=Input the number of month of recruitment
-isisfish.message.region.commited=R\u00e9gion commit\u00e9e
-isisfish.message.region.loaded=R\u00e9gion charg\u00e9e
-isisfish.message.region.remove.canceled=Suppression de r\u00e9gion annul\u00e9
-isisfish.message.region.removed=R\u00e9gion supprim\u00e9e
-isisfish.message.remove.canceled=Suppression annul\u00e9e
-isisfish.message.remove.finished=Suppresison termin\u00e9
+isisfish.message.region.commited=R\u00E9gion commit\u00E9e
+isisfish.message.region.loaded=R\u00E9gion charg\u00E9e
+isisfish.message.region.remove.canceled=Suppression de r\u00E9gion annul\u00E9
+isisfish.message.region.removed=R\u00E9gion supprim\u00E9e
+isisfish.message.remove.canceled=Suppression annul\u00E9e
+isisfish.message.remove.finished=Suppresison termin\u00E9
isisfish.message.remove.unnecessary.cells=
-isisfish.message.removing.region=Suppression de lar\u00e9gion %1$s ...
-isisfish.message.result.verif.region=R\u00e9sultat de la v\u00e9rification de la r\u00e9gion
-isisfish.message.save.finished=Sauvegarde termin\u00e9e
-isisfish.message.saveModel.finished=Sauvegarde du mod\u00e8le termin\u00e9e
+isisfish.message.removing.region=Suppression de lar\u00E9gion %1$s ...
+isisfish.message.result.verif.region=R\u00E9sultat de la v\u00E9rification de la r\u00E9gion
+isisfish.message.save.finished=Sauvegarde termin\u00E9e
+isisfish.message.saveModel.finished=Sauvegarde du mod\u00E8le termin\u00E9e
isisfish.message.setting.cache.aspects=Mise en place des aspects Cache
isisfish.message.setting.trace.aspects=Mise en place des aspects Trace
-isisfish.message.simulation.ended=Simulation termin\u00e9e
+isisfish.message.simulation.ended=Simulation termin\u00E9e
isisfish.message.simulation.execution=Simulation execution
-isisfish.message.simulation.prepare=Pr\u00e9paration de la simulation
-isisfish.message.tray.disabled=Icone de notification d\u00e9sactiv\u00e9e
-isisfish.message.update.finished=Mise \u00e0 jour termin\u00e9e
+isisfish.message.simulation.prepare=Pr\u00E9paration de la simulation
+isisfish.message.tray.disabled=Icone de notification d\u00E9sactiv\u00E9e
+isisfish.message.update.finished=Mise \u00E0 jour termin\u00E9e
isisfish.metier.comments=Commentaires
isisfish.metier.name=Nom
isisfish.metier.rangeValues=Range of values
-isisfish.metier.title=M\u00e9tier
-isisfish.metierMonitor.metiers=M\u00e9tiers
-isisfish.metierMonitor.strategies=Strat\u00e9gies
+isisfish.metier.title=M\u00E9tier
+isisfish.metierMonitor.metiers=M\u00E9tiers
+isisfish.metierMonitor.strategies=Strat\u00E9gies
isisfish.metierSeasonInfo.toString=%1$s saison %2$s-%3$s
-isisfish.metierSeasonInfoSpecies.mainSpecies=Esp\u00e8ces principales pour le m\u00e9tier
-isisfish.metierSeasonInfoSpecies.selectSeason=S\u00e9lectionnez une saison
-isisfish.metierSeasonInfoSpecies.selectSpecies=Choix de l'esp\u00e8ce
+isisfish.metierSeasonInfoSpecies.mainSpecies=Esp\u00E8ces principales pour le m\u00E9tier
+isisfish.metierSeasonInfoSpecies.selectSeason=S\u00E9lectionnez une saison
+isisfish.metierSeasonInfoSpecies.selectSpecies=Choix de l'esp\u00E8ce
isisfish.metierSeasonInfoSpecies.targetFactor=Facteur cible
-isisfish.metierSeasonInfoSpecies.title=Esp\u00e8ces capturables
+isisfish.metierSeasonInfoSpecies.title=Esp\u00E8ces capturables
isisfish.metierSeasonInfoZone.comments=Commentaires
isisfish.metierSeasonInfoZone.season=Saison
-isisfish.metierSeasonInfoZone.selectSeason=S\u00e9lectionnez une saison
+isisfish.metierSeasonInfoZone.selectSeason=S\u00E9lectionnez une saison
isisfish.metierSeasonInfoZone.title=Saison / Zones
isisfish.monitor.title=Application Monitor
isisfish.month.april=avril
-isisfish.month.august=ao\u00fbt
-isisfish.month.december=d\u00e9cembre
-isisfish.month.february=f\u00e9vrier
+isisfish.month.august=ao\u00FBt
+isisfish.month.december=d\u00E9cembre
+isisfish.month.february=f\u00E9vrier
isisfish.month.january=janvier
isisfish.month.july=juillet
isisfish.month.june=juin
@@ -596,15 +595,15 @@
isisfish.params.filter=Filtrer
isisfish.params.lblLauncher=Lanceur de simulation
isisfish.params.loadOldSimulation=Charger une ancienne simulation
-isisfish.params.numberYear=Nombre d'ann\u00e9es
+isisfish.params.numberYear=Nombre d'ann\u00E9es
isisfish.params.onlyExportSimulation=Exporter uniquement des simulations
-isisfish.params.populationNumbers=Donn\u00e9es de population
-isisfish.params.ruleParameters=Param\u00e8tres des r\u00e8gles
+isisfish.params.populationNumbers=Donn\u00E9es de population
+isisfish.params.ruleParameters=Param\u00E8tres des r\u00E8gles
isisfish.params.simulationName=Nom de la simulation
-isisfish.params.title=Param\u00e8tres
-isisfish.params.toString.fishery=P\u00eacherie\: %1$s\n\n
+isisfish.params.title=Param\u00E8tres
+isisfish.params.toString.fishery=P\u00EAcherie\: %1$s\n\n
isisfish.params.toString.lib.logger.level=niveau du logger de librairies %1$s
-isisfish.params.toString.number.years=Nombre d'ann\u00e9\u00e9s \: %1$s\n\n
+isisfish.params.toString.number.years=Nombre d'ann\u00E9\u00E9s \: %1$s\n\n
isisfish.params.toString.plan=Plan\: %1$s
isisfish.params.toString.plan.number=Analyse plan sequence number\: %1$s\n\n
isisfish.params.toString.populations=Populations\:
@@ -612,11 +611,11 @@
isisfish.params.toString.script.logger.level=niveau du logger de scripts %1$s
isisfish.params.toString.script.presimulation=Script de presimulation
isisfish.params.toString.simul.logger.level=niveau du logger de simulateur %1$s
-isisfish.params.toString.simulation.done=Simulation r\u00e9alis\u00e9e avec %1$s\:
-isisfish.params.toString.strategies=Strat\u00e9gies d'exploitation\:
+isisfish.params.toString.simulation.done=Simulation r\u00E9alis\u00E9e avec %1$s\:
+isisfish.params.toString.strategies=Strat\u00E9gies d'exploitation\:
isisfish.params.useAnalysePlan=Utiliser le plan d'analyse
-isisfish.params.usePreSimulationScript=Utiliser un script de pr\u00e9-simulation
-isisfish.population.capturability=Capturabilit\u0e009e
+isisfish.params.usePreSimulationScript=Utiliser un script de pr\u00E9-simulation
+isisfish.population.capturability=Capturabilit\u0E009e
isisfish.population.comments=Commentaires
isisfish.population.group=Groupe
isisfish.population.groups=Groupes
@@ -627,48 +626,48 @@
isisfish.population.reproduction=Reproduction
isisfish.population.season=Saison
isisfish.population.zones=Zones
-isisfish.populationBasics.geographicID=Identifiant g\u00e9ographique
+isisfish.populationBasics.geographicID=Identifiant g\u00E9ographique
isisfish.populationBasics.growth=Croissance
isisfish.populationBasics.growthReverse=Croissance inverse
-isisfish.populationBasics.maturityGroup=Groupe de maturit\u00e9
+isisfish.populationBasics.maturityGroup=Groupe de maturit\u00E9
isisfish.populationBasics.name=nom
isisfish.populationBasics.numberGroup=Nombre de groupes
isisfish.populationBasics.plusGroup=plusGroup
isisfish.populationBasics.recreateClasses=Recruter les classes
isisfish.populationBasics.title=Saisie des Populations
isisfish.populationCapturability.comments=Commentaires
-isisfish.populationCapturability.selectCoefficient=S\u00e9lectionnez un coefficient par saison et par classe
-isisfish.populationCapturability.title=Saisie de la capturabilit\u00e9
+isisfish.populationCapturability.selectCoefficient=S\u00E9lectionnez un coefficient par saison et par classe
+isisfish.populationCapturability.title=Saisie de la capturabilit\u00E9
isisfish.populationEquation.meanWeight=Poids principal
-isisfish.populationEquation.naturalDeathRate=Taux de mortalit\u00e9 naturelle
+isisfish.populationEquation.naturalDeathRate=Taux de mortalit\u00E9 naturelle
isisfish.populationEquation.price=Prix
isisfish.populationEquation.title=inputPopulationEquation
isisfish.populationGroup.age=age
isisfish.populationGroup.comments=Commentaires
isisfish.populationGroup.length=longueur
isisfish.populationGroup.meanWeigth=Poids principal
-isisfish.populationGroup.naturalDeathRate=Taux de mortalit\u00e9 naturelle
+isisfish.populationGroup.naturalDeathRate=Taux de mortalit\u00E9 naturelle
isisfish.populationGroup.price=prix
isisfish.populationGroup.reproductionRate=Taux de reproduction
isisfish.populationGroup.title=Saisie des groupes de population
isisfish.populationGroup.toString=%1$s Groupe %2$s
isisfish.populationMigration.comments=Commentaires
-isisfish.populationMigration.selectSeason=S\u00e9lectionnez une saison
+isisfish.populationMigration.selectSeason=S\u00E9lectionnez une saison
isisfish.populationMigration.title=Migration
-isisfish.populationMigration.useEquation=Utiliser l'\u00e9quation
+isisfish.populationMigration.useEquation=Utiliser l'\u00E9quation
isisfish.populationMigrationEmigration.coefficient=Coefficient
-isisfish.populationMigrationEmigration.departureZone=Zone de d\u00e9part
-isisfish.populationMigrationImmigration.arrivalZone=Zone d'arriv\u00e9e
+isisfish.populationMigrationEmigration.departureZone=Zone de d\u00E9part
+isisfish.populationMigrationImmigration.arrivalZone=Zone d'arriv\u00E9e
isisfish.populationMigrationImmigration.coefficient=Coefficient
-isisfish.populationMigrationMigration.arrivalZone=Zone d'arriv\u00e9e
+isisfish.populationMigrationMigration.arrivalZone=Zone d'arriv\u00E9e
isisfish.populationMigrationMigration.coefficient=Coefficient
-isisfish.populationMigrationMigration.departureZone=Zone de d\u00e9part
+isisfish.populationMigrationMigration.departureZone=Zone de d\u00E9part
isisfish.populationRecruitment.comments=Commentaires
isisfish.populationRecruitment.recruitmentDistribution=Distribution du recrutement
isisfish.populationRecruitment.reproductionEquation=Equation de reproduction
isisfish.populationRecruitment.title=Saisie des recrutements
-isisfish.populationSeasonInfo.arrival=Arriv\u00e9e
-isisfish.populationSeasonInfo.departure=D\u00e9part
+isisfish.populationSeasonInfo.arrival=Arriv\u00E9e
+isisfish.populationSeasonInfo.departure=D\u00E9part
isisfish.populationSeasonInfo.distributionSpawing=Distribution of spawing
isisfish.populationSeasonInfo.emigration=Emigration
isisfish.populationSeasonInfo.group=Groupe
@@ -678,35 +677,36 @@
isisfish.populationSeasonInfo.toString=%1$s saison %2$s-%3$s
isisfish.populationSeasons.changeGroup=Changement de groupe
isisfish.populationSeasons.comments=Commentaires
-isisfish.populationSeasons.distributionSpawning=R\u00e9partition des apparitions
-isisfish.populationSeasons.selectSeason=S\u00e9lectionnez une saison
+isisfish.populationSeasons.distributionSpawning=R\u00E9partition des apparitions
+isisfish.populationSeasons.selectSeason=S\u00E9lectionnez une saison
isisfish.populationSeasons.title=Saisons
isisfish.populationZones.betweenSpawningRecruitmentAreas=Correspondance entre les zones d'apparitions et de recrutement
-isisfish.populationZones.selectPopulationAreas=S\u00e9lectionnez les zones des populations
-isisfish.populationZones.selectRecruitmentAreas=S\u00e9lectionnez les zones de recrutement
-isisfish.populationZones.selectSpawningAreas=S\u00e9lectionnez les zones d'apparition
+isisfish.populationZones.selectPopulationAreas=S\u00E9lectionnez les zones des populations
+isisfish.populationZones.selectRecruitmentAreas=S\u00E9lectionnez les zones de recrutement
+isisfish.populationZones.selectSpawningAreas=S\u00E9lectionnez les zones d'apparition
isisfish.populationZones.title=Zones
isisfish.port.cell=Maille du port
isisfish.port.comments=Commentaires
isisfish.port.name=Nom
-isisfish.preScript.backParameter=Retour aux param\u00e8tres
-isisfish.preScript.title=Script de pr\u00e9-simulation
+isisfish.preScript.backParameter=Retour aux param\u00E8tres
+isisfish.preScript.title=Script de pr\u00E9-simulation
+isisfish.queue.clearDone=Retirer les simulations termin\u00E9es
isisfish.queue.id=Identifiant
isisfish.queue.launcher=Lanceur de simulation
isisfish.queue.plan=Plan
isisfish.queue.progression=Progression
isisfish.queue.showLog=Voir les logs de la simulation
isisfish.queue.simulationLaunch=Lanceur de la queue des simulations
-isisfish.queue.status=\u00c9tat
-isisfish.queue.stopSimulation=Arr\u00eater la simulation
+isisfish.queue.status=\u00C9tat
+isisfish.queue.stopSimulation=Arr\u00EAter la simulation
isisfish.queue.title=Queue
isisfish.result.abundance=Abondance
-isisfish.result.add=Ajouter un r\u00e9sultat
-isisfish.result.begin.simulation=En d\u00e9but de simulation\:
+isisfish.result.add=Ajouter un r\u00E9sultat
+isisfish.result.begin.simulation=En d\u00E9but de simulation\:
isisfish.result.capture=Capturer
-isisfish.result.capture.metier=Capturer par m\u00e9tier
+isisfish.result.capture.metier=Capturer par m\u00E9tier
isisfish.result.choose.simulation=Choisir une simulation
-isisfish.result.datas=Donn\u00e9es
+isisfish.result.datas=Donn\u00E9es
isisfish.result.datasRadioButton=defaultToolTip-fr.ifremer.resultat.ResultatEdit.donneeRadioButton
isisfish.result.desktopPane=defaultToolTip-fr.ifremer.resultat.ResultatView.desktopPane
isisfish.result.dimension=Dimension
@@ -724,7 +724,7 @@
isisfish.result.menuExport=defaultToolTip-fr.ifremer.resultat.ResultatEdit.menuExport
isisfish.result.menubar=defaultToolTip-fr.ifremer.resultat.ResultatView.menubar1
isisfish.result.menuitem=defaultToolTip-fr.ifremer.resultat.ResultatView.menuitem2
-isisfish.result.new.window=Ouvrir une nouvelle fen\u00eatre
+isisfish.result.new.window=Ouvrir une nouvelle fen\u00EAtre
isisfish.result.openWindowButton=defaultToolTip-fr.ifremer.resultat.ResultatView.openWindowButton
isisfish.result.quit=Quitter
isisfish.result.reject.metier=Rejet par metier
@@ -737,49 +737,49 @@
isisfish.result.statusBar=defaultToolTip-fr.ifremer.resultat.ResultatEdit.statusbar1
isisfish.result.statusImage=defaultToolTip-fr.ifremer.resultat.ResultatEdit.statusImage
isisfish.result.stress.metier=Effort par metier
-isisfish.result.summary=R\u00e9sum\u00e9
+isisfish.result.summary=R\u00E9sum\u00E9
isisfish.result.summaryRadioButton=defaultToolTip-fr.ifremer.resultat.ResultatEdit.resumeRadioButton
isisfish.result.table=defaultToolTip-fr.ifremer.resultat.ResultatView.table33
-isisfish.result.title=R\u00e9sultat
+isisfish.result.title=R\u00E9sultat
isisfish.result.tooltip.show.simulation.log=Cliquer pour afficher la console des logs de la simulation
isisfish.result.unload.metier=Debarquement par metier
isisfish.result.vbox=defaultToolTip-fr.ifremer.resultat.ResultatView.vbox1
isisfish.result.viewPanel=defaultToolTip-fr.ifremer.resultat.ResultatEdit.viewPanel
-isisfish.resultChoice.save=R\u00e9sultats \u00e0 sauvegarder
-isisfish.resultChoice.saved=R\u00e9sultats sauvegard\u00e9
-isisfish.resultChoice.title=Choix de r\u00e9sultats
+isisfish.resultChoice.save=R\u00E9sultats \u00E0 sauvegarder
+isisfish.resultChoice.saved=R\u00E9sultats sauvegard\u00E9
+isisfish.resultChoice.title=Choix de r\u00E9sultats
isisfish.resume.matrixInfoGrid=defaultToolTip-fr.ifremer.resultat.ResumePanel.matriceInfoGrid
isisfish.resume.resumeTextArea=defaultToolTip-fr.ifremer.resultat.ResumePanel.resumeTextArea
isisfish.resume.scrolledwindow=defaultToolTip-fr.ifremer.resultat.ResumePanel.scrolledwindow2
isisfish.resume.table=defaultToolTip-fr.ifremer.resultat.ResumePanel.table1
-isisfish.script.check=V\u00e9rifier
+isisfish.script.check=V\u00E9rifier
isisfish.script.commit=Commit
isisfish.script.copy=Copier
isisfish.script.cut=Couper
-isisfish.script.evaluate=\u00c9valuer
+isisfish.script.evaluate=\u00C9valuer
isisfish.script.export=Exporter des scripts dans une archive zip
isisfish.script.export.cancel=annuler
isisfish.script.export.checkAll=(de)-select tout
isisfish.script.export.chooseDir=...
isisfish.script.export.ok=exporter
-isisfish.script.export.tooltip.checkAll=(D\u00e9-)S\u00e9lectionner tous les scripts \u00e0 exporter
-isisfish.script.export.tooltip.chooseDir=Choisir le r\u00e9pertoire o\u00f9 exporter les scripts
+isisfish.script.export.tooltip.checkAll=(D\u00E9-)S\u00E9lectionner tous les scripts \u00E0 exporter
+isisfish.script.export.tooltip.chooseDir=Choisir le r\u00E9pertoire o\u00F9 exporter les scripts
isisfish.script.import=Importer des scripts depuis une archive zip
isisfish.script.import.cancel=annuler
isisfish.script.import.checkAll=(de)-select tout
-isisfish.script.import.labelAdd=Le(s) fichier(s) suivant(s) sera(ont) ajout\u00e9(s), Confirmer l'ajout
-isisfish.script.import.labelOverwrite=Le(s) fichier(s) suivant(s) existe(nt) d\u00e9j\u00e0, Confirmer pour l'\u00e9crasement
+isisfish.script.import.labelAdd=Le(s) fichier(s) suivant(s) sera(ont) ajout\u00E9(s), Confirmer l'ajout
+isisfish.script.import.labelOverwrite=Le(s) fichier(s) suivant(s) existe(nt) d\u00E9j\u00E0, Confirmer pour l'\u00E9crasement
isisfish.script.import.ok=importer
-isisfish.script.import.tooltip.checkAll=(D\u00e9-)S\u00e9lectionner tous les scripts \u00e0 importer
-isisfish.script.menu.checkSyntax=V\u00e9rifier la syntaxe
+isisfish.script.import.tooltip.checkAll=(D\u00E9-)S\u00E9lectionner tous les scripts \u00E0 importer
+isisfish.script.menu.checkSyntax=V\u00E9rifier la syntaxe
isisfish.script.menu.code=Code
isisfish.script.menu.commit=Commiter des scripts sur le serveur
isisfish.script.menu.copy=Copier
isisfish.script.menu.cut=Couper
isisfish.script.menu.deleteLocaly=Supprimer localement
isisfish.script.menu.deleteLocalyServer=Supprimer localement et sur le serveur
-isisfish.script.menu.diff=Voir les diff\u00e9rences avec la version du serveur
-isisfish.script.menu.edit=\u00c9dition
+isisfish.script.menu.diff=Voir les diff\u00E9rences avec la version du serveur
+isisfish.script.menu.edit=\u00C9dition
isisfish.script.menu.evaluate=Evaluer
isisfish.script.menu.file=Fichier
isisfish.script.menu.new=Nouveau
@@ -793,7 +793,7 @@
isisfish.script.menu.txtNewAnalysePlan=Nouveau plan d'analyse
isisfish.script.menu.txtNewEquationModel=Nouvelle formule
isisfish.script.menu.txtNewExport=Nouveau script d'export
-isisfish.script.menu.txtNewRule=Nouvelle r\u00e8gle
+isisfish.script.menu.txtNewRule=Nouvelle r\u00E8gle
isisfish.script.menu.txtNewScript=Nouveau Script
isisfish.script.menu.txtNewSimulator=Nouveau Simulateur
isisfish.script.menu.txtVCS=Serveur
@@ -805,10 +805,10 @@
isisfish.script.txtExport=Exporter
isisfish.season.toString=saison %1$s-%2$s
isisfish.selectivity.equation=Equation
-isisfish.selectivity.selectPopulation=S\u00e9lectionnez une population
-isisfish.selectivity.title=S\u00e9lectivit\u00e9
-isisfish.sens.backParameter=Retour aux param\u00e8tres
-isisfish.sens.title=Analyse de sensibilit\u00e9
+isisfish.selectivity.selectPopulation=S\u00E9lectionnez une population
+isisfish.selectivity.title=S\u00E9lectivit\u00E9
+isisfish.sens.backParameter=Retour aux param\u00E8tres
+isisfish.sens.title=Analyse de sensibilit\u00E9
isisfish.sensWizardPanels.add=Ajouter
isisfish.sensWizardPanels.clear=Effacer
isisfish.sensWizardPanels.down=Bas
@@ -818,19 +818,19 @@
isisfish.sensWizardPanels.object=Objet
isisfish.sensWizardPanels.remove=Supprimer
isisfish.sensWizardPanels.scripts=Liste des scripts
-isisfish.sensWizardPanels.selectType=Selectionner le type \u00e0 ajouter
+isisfish.sensWizardPanels.selectType=Selectionner le type \u00E0 ajouter
isisfish.sensWizardPanels.type=Type
isisfish.sensWizardPanels.up=Haut
isisfish.sensWizardPanels.validate=Valider
isisfish.sensWizardPanels.values=Valeurs
isisfish.sensibilityWizard.title=Sensibility Wizard
-isisfish.server.ssh.generateKey.title=G\u00e9n\u00e9rer une cl\u00e9 SSH
+isisfish.server.ssh.generateKey.title=G\u00E9n\u00E9rer une cl\u00E9 SSH
isisfish.setOfVessels.comments=Commentaires
-isisfish.setOfVessels.fixedCosts=Co\u00fbts fixes
+isisfish.setOfVessels.fixedCosts=Co\u00FBts fixes
isisfish.setOfVessels.name=Nom
isisfish.setOfVessels.numberOfVessels=Nombre de navires
isisfish.setOfVessels.technicalEfficiency=
-isisfish.setOfVessels.title=Caract\u00e9ristiques
+isisfish.setOfVessels.title=Caract\u00E9ristiques
isisfish.setOfVessels.vesselType=Type de navire
isisfish.simpleResult.legendPanel=defaultToolTip-fr.ifremer.isisfish.map.SimpleIsisMapBeanBean.legendPanel
isisfish.simpleResult.more.information=Cliquer sur une cellule pour plus d'informations...
@@ -839,35 +839,35 @@
isisfish.simpleResult.table=defaultToolTip-fr.ifremer.isisfish.map.SimpleResultatMapBean.table12
isisfish.simulation.log.console.title=Console de log simulation '%1$s'
isisfish.simulation.log.showConsole=affichage de la console de log pour la simulation %1$s
-isisfish.simulation.menu.import=Restaurer les param\u00e9tres d'une simulation
-isisfish.simulation.menu.save=Sauver les param\u00e8tres de la simulation
+isisfish.simulation.menu.import=Restaurer les param\u00E9tres d'une simulation
+isisfish.simulation.menu.save=Sauver les param\u00E8tres de la simulation
isisfish.simulation.menu.simulation=Simulation
isisfish.simulation.name=Nom de la simulation
-isisfish.simulation.remote.message.connection=Connexion \u00e0 Caparmor
-isisfish.simulation.remote.message.downloadresults=T\u00e9l\u00e9chargement des r\u00e9sultats
+isisfish.simulation.remote.message.connection=Connexion \u00E0 Caparmor
+isisfish.simulation.remote.message.downloadresults=T\u00E9l\u00E9chargement des r\u00E9sultats
isisfish.simulation.remote.message.launch=Lancement de la simulation
isisfish.simulation.remote.message.upload=Upload de la simulation
isisfish.simulation.title=Lanceur de simulation
-isisfish.simulator.launcher.inprocess=dans le m\u00eame processus
+isisfish.simulator.launcher.inprocess=dans le m\u00EAme processus
isisfish.simulator.launcher.remote=sur le serveur Caparmor
isisfish.simulator.launcher.subprocess=dans un sous processus
-isisfish.simulator.simulaction.badid=Impossible de lancer la simulation '%s' \: l'identifiant existe d\u00e9j\u00e0 \!
+isisfish.simulator.simulaction.badid=Impossible de lancer la simulation '%s' \: l'identifiant existe d\u00E9j\u00E0 \!
isisfish.simulator.subprocess.readoutput.error=
isisfish.species.age=Age
isisfish.species.cee=CEE
isisfish.species.comments=Commentaires
isisfish.species.length=Longueur
-isisfish.species.name=Nom des esp\u00e8ces
+isisfish.species.name=Nom des esp\u00E8ces
isisfish.species.rubbinCode=Code Rubbin
isisfish.species.scientificName=Scientific name
-isisfish.species.structured=Structur\u00e9
+isisfish.species.structured=Structur\u00E9
isisfish.strategy.comments=Commentaires
-isisfish.strategy.inactivityEquationUsed=Utiliser une \u00e9quation d'inactivit\u00e9
+isisfish.strategy.inactivityEquationUsed=Utiliser une \u00E9quation d'inactivit\u00E9
isisfish.strategy.name=Nom
isisfish.strategy.proportionSetOfVessels=Proportion des ensembles de navires
-isisfish.strategy.title=Caract\u00e9ristiques
-isisfish.strategyMonthInfo.metier=M\u00e9tier
-isisfish.strategyMonthInfo.minInactivityDays=Jour minimums d'inactivit\u00e9
+isisfish.strategy.title=Caract\u00E9ristiques
+isisfish.strategyMonthInfo.metier=M\u00E9tier
+isisfish.strategyMonthInfo.minInactivityDays=Jour minimums d'inactivit\u00E9
isisfish.strategyMonthInfo.numberOfTrips=Nombre de trajets
isisfish.strategyMonthInfo.proportion=Proportion
isisfish.strategyMonthInfo.title=StrategyMonthInfo
@@ -877,7 +877,7 @@
isisfish.tray.simulation=Isis-fish - %1$s \: %2$s/%3$s
isisfish.tray.simulation.no=Isis-fish - Pas de simulation
isisfish.tripType.comments=Commentaires
-isisfish.tripType.duration=Dur\u00e9e
+isisfish.tripType.duration=Dur\u00E9e
isisfish.tripType.minTime=Temps minimal entre deux voyages
isisfish.tripType.name=Nom
isisfish.vcs.ask.passphrase=Entrez votre passe phrase (si votre clef ssh en contient une).
@@ -886,97 +886,97 @@
isisfish.vcs.commit.cancel=annuler
isisfish.vcs.commit.label=Entrer quelques mots concernant la modification des scripts
isisfish.vcs.commit.ok=confirmer
-isisfish.vcs.init.notfoundcantdownload=La base de donn\u00e9es pour la version %s n'a ni pu \u00eatre trouv\u00e9e, ni t\u00e9l\u00e9charg\u00e9e.\nVous devez la t\u00e9l\u00e9charger manullement \u00e0 partir du site d'Isis-Fish.
-isisfish.vcs.init.wrongprotocol=Votre base de donn\u00e9es locale \: %s n'utilise pas un protocole correct.\nVoulez-vous faire une sauvegarde de cette base et r\u00e9cup\u00e9rer une meilleure version ?
-isisfish.vcs.switchprotocol.confirm=Le protocole d'acc\u00e8s au d\u00e9p\u00f4t des scripts a chang\u00e9.\nVoulez-vous changer vers le nouveau d\u00e9p\u00f4t ?
-isisfish.vcs.switchtag.warningconflict=Votre base de donn\u00e9es a \u00e9t\u00e9 mise \u00e0 jour\nmais les fichiers suivants sont en conflit, merci de les v\u00e9rifier \:\n%s
-isisfish.vcs.switchversion.confirm=Vous n'utilisez pas le d\u00e9p\u00f4t correct pour votre version d'Isis-Fish \: %s.\nVoulez-vous changer de d\u00e9p\u00f4t ?
-isisfish.vcs.update=R\u00e9sultats de la synchronisation avec le serveur
+isisfish.vcs.init.notfoundcantdownload=La base de donn\u00E9es pour la version %s n'a ni pu \u00EAtre trouv\u00E9e, ni t\u00E9l\u00E9charg\u00E9e.\nVous devez la t\u00E9l\u00E9charger manullement \u00E0 partir du site d'Isis-Fish.
+isisfish.vcs.init.wrongprotocol=Votre base de donn\u00E9es locale \: %s n'utilise pas un protocole correct.\nVoulez-vous faire une sauvegarde de cette base et r\u00E9cup\u00E9rer une meilleure version ?
+isisfish.vcs.switchprotocol.confirm=Le protocole d'acc\u00E8s au d\u00E9p\u00F4t des scripts a chang\u00E9.\nVoulez-vous changer vers le nouveau d\u00E9p\u00F4t ?
+isisfish.vcs.switchtag.warningconflict=Votre base de donn\u00E9es a \u00E9t\u00E9 mise \u00E0 jour\nmais les fichiers suivants sont en conflit, merci de les v\u00E9rifier \:\n%s
+isisfish.vcs.switchversion.confirm=Vous n'utilisez pas le d\u00E9p\u00F4t correct pour votre version d'Isis-Fish \: %s.\nVoulez-vous changer de d\u00E9p\u00F4t ?
+isisfish.vcs.update=R\u00E9sultats de la synchronisation avec le serveur
isisfish.vcs.update.cancel=annuler
isisfish.vcs.update.checkAll=(de)-select tout
isisfish.vcs.update.local=Systeme local
-isisfish.vcs.update.local.modified=Fichiers modifi\u00e9s
-isisfish.vcs.update.local.outofdateAndModified=Fichiers localement modifi\u00e9s en conflit avec le serveur
-isisfish.vcs.update.local.tooltip.modified=Fichiers localement modifi\u00e9s \n(confirmer pour revenir \u00e0 la version avant modification ou soum\u00eatre au serveur)
-isisfish.vcs.update.local.tooltip.outofdateAndModified=Fichiers localement modifi\u00e9s mais ayant une version plus r\u00e9cente sur le serveur\n (confirmer pour revenir \u00e0 la version avant modification ou r\u00e9cup\u00e9rer la nouvelle version du serveur)
-isisfish.vcs.update.local.tooltip.unversionned=Fichiers uniquement pr\u00e9sents sur votre systeme \n(confirmer pour les enregister sur le serveur)
+isisfish.vcs.update.local.modified=Fichiers modifi\u00E9s
+isisfish.vcs.update.local.outofdateAndModified=Fichiers localement modifi\u00E9s en conflit avec le serveur
+isisfish.vcs.update.local.tooltip.modified=Fichiers localement modifi\u00E9s \n(confirmer pour revenir \u00E0 la version avant modification ou soum\u00EAtre au serveur)
+isisfish.vcs.update.local.tooltip.outofdateAndModified=Fichiers localement modifi\u00E9s mais ayant une version plus r\u00E9cente sur le serveur\n (confirmer pour revenir \u00E0 la version avant modification ou r\u00E9cup\u00E9rer la nouvelle version du serveur)
+isisfish.vcs.update.local.tooltip.unversionned=Fichiers uniquement pr\u00E9sents sur votre systeme \n(confirmer pour les enregister sur le serveur)
isisfish.vcs.update.local.unversionned=Nouveaux fichiers
isisfish.vcs.update.ok=continuer
isisfish.vcs.update.remote=Serveur distant
isisfish.vcs.update.remote.missing=Nouveaux fichiers
-isisfish.vcs.update.remote.outofdate=Fichiers plus r\u00e9cents sur le serveur
-isisfish.vcs.update.remote.tooltip.missing=Nouveaux fichiers uniquement pr\u00e9sents sur le serveur \n(confirmer pour les r\u00e9cup\u00e9rer)
-isisfish.vcs.update.remote.tooltip.outofdate=Fichiers dont il existe une version plus r\u00e9cente sur le serveur \n(confirmer pour les r\u00e9cup\u00e9rer)
-isisfish.vcs.update.tooltip.checkAll=(D\u00e9-)S\u00e9lectionner tous les fichiers (\u00e0 action unique) que vous voulez traiter
+isisfish.vcs.update.remote.outofdate=Fichiers plus r\u00E9cents sur le serveur
+isisfish.vcs.update.remote.tooltip.missing=Nouveaux fichiers uniquement pr\u00E9sents sur le serveur \n(confirmer pour les r\u00E9cup\u00E9rer)
+isisfish.vcs.update.remote.tooltip.outofdate=Fichiers dont il existe une version plus r\u00E9cente sur le serveur \n(confirmer pour les r\u00E9cup\u00E9rer)
+isisfish.vcs.update.tooltip.checkAll=(D\u00E9-)S\u00E9lectionner tous les fichiers (\u00E0 action unique) que vous voulez traiter
isisfish.vcs.update.tooltip.local=vcs.update.tooltip.local
isisfish.vcs.update.tooltip.remote=vcs.update.tooltip.remote
-isisfish.vcs.updateconfirm=Confirmation des ope\u00e9rations de synchronisation avec le serveur
+isisfish.vcs.updateconfirm=Confirmation des ope\u00E9rations de synchronisation avec le serveur
isisfish.vcs.updateconfirm.cancel=annuler
isisfish.vcs.updateconfirm.checkAll=(de)-select tout
-isisfish.vcs.updateconfirm.label=Confirmer les op\u00e9rations qui pourraient \u00e9craser vos fichiers
-isisfish.vcs.updateconfirm.label2='Etes vous sur de vouloir effectuer ces op\u00e9rations ?'
+isisfish.vcs.updateconfirm.label=Confirmer les op\u00E9rations qui pourraient \u00E9craser vos fichiers
+isisfish.vcs.updateconfirm.label2='Etes vous sur de vouloir effectuer ces op\u00E9rations ?'
isisfish.vcs.updateconfirm.ok=confirmer
-isisfish.vcs.updateconfirm.tooltip.checkAll=(D\u00e9-)S\u00e9lectionner tous les scripts que vous voulez traiter
-isisfish.vcs.updaterepository.confirm=Votre d\u00e9p\u00f4t des scripts n'est pas \u00e0 jour.\nVoulez-vous mettre \u00e0 jour votre d\u00e9p\u00f4t ?\n\nLes fichiers modifi\u00e9s sont \:\n%s
+isisfish.vcs.updateconfirm.tooltip.checkAll=(D\u00E9-)S\u00E9lectionner tous les scripts que vous voulez traiter
+isisfish.vcs.updaterepository.confirm=Votre d\u00E9p\u00F4t des scripts n'est pas \u00E0 jour.\nVoulez-vous mettre \u00E0 jour votre d\u00E9p\u00F4t ?\n\nLes fichiers modifi\u00E9s sont \:\n%s
isisfish.vcs.vcssvn.add.error=Impossible d'ajouter un fichier
-isisfish.vcs.vcssvn.add.errorreadonly=Vous ne pouver pas ajouter de fichier, ce d\u00e9p\u00f4t est en lecture seule \!
-isisfish.vcs.vcssvn.checkProtocol.error=Impossible d'obtenir l'adresse correspondant au d\u00e9p\u00f4t local
-isisfish.vcs.vcssvn.checkProtocol.relocate=Transfert du d\u00e9p\u00f4t %s de %s vers %s
-isisfish.vcs.vcssvn.checkout.error=Impossible de mettre \u00e0 jour
+isisfish.vcs.vcssvn.add.errorreadonly=Vous ne pouver pas ajouter de fichier, ce d\u00E9p\u00F4t est en lecture seule \!
+isisfish.vcs.vcssvn.checkProtocol.error=Impossible d'obtenir l'adresse correspondant au d\u00E9p\u00F4t local
+isisfish.vcs.vcssvn.checkProtocol.relocate=Transfert du d\u00E9p\u00F4t %s de %s vers %s
+isisfish.vcs.vcssvn.checkout.error=Impossible de mettre \u00E0 jour
isisfish.vcs.vcssvn.commit.error=Impossible de commiter
-isisfish.vcs.vcssvn.commit.errorreadonly=Vous ne pouvez pas commiter, le d\u00e9p\u00f4t est en lecture seule
+isisfish.vcs.vcssvn.commit.errorreadonly=Vous ne pouvez pas commiter, le d\u00E9p\u00F4t est en lecture seule
isisfish.vcs.vcssvn.delete.error=Impossible de supprimer des fichiers
-isisfish.vcs.vcssvn.delete.errorreadonly=Vous ne pouvez pas supprimer ce fichier, le d\u00e9p\u00f4t est en lecture seule
+isisfish.vcs.vcssvn.delete.errorreadonly=Vous ne pouvez pas supprimer ce fichier, le d\u00E9p\u00F4t est en lecture seule
isisfish.vcs.vcssvn.diff.error=Impossible d'obtenir le diff
-isisfish.vcs.vcssvn.gettag.error=Erreur lors de la r\u00e9cup\u00e9ration de l'adresse du d\u00e9p\u00f4t local
+isisfish.vcs.vcssvn.gettag.error=Erreur lors de la r\u00E9cup\u00E9ration de l'adresse du d\u00E9p\u00F4t local
isisfish.vcs.vcssvn.getupdate.error=Impossible d'obtenir le statut des fichiers
isisfish.vcs.vcssvn.global.filelocalandremotestatus=Le statut du fichier %s est (l\:%s/d\:%s)
isisfish.vcs.vcssvn.global.filestatus=Le statut de %s est %s
-isisfish.vcs.vcssvn.global.foundUpdatedFile=Ajout de %s comme fichier mis \u00e0 jour
-isisfish.vcs.vcssvn.global.torevision=\u00c0 la r\u00e9vision \: %d
-isisfish.vcs.vcssvn.isconnected.switchoff=Impossible de se connecter au serveur, passage en mode d\u00e9connect\u00e9 \: %s
-isisfish.vcs.vcssvn.isconnected.switchto=Connexion au serveur disponible, passage en mode connect\u00e9 \: %s
+isisfish.vcs.vcssvn.global.foundUpdatedFile=Ajout de %s comme fichier mis \u00E0 jour
+isisfish.vcs.vcssvn.global.torevision=\u00C0 la r\u00E9vision \: %d
+isisfish.vcs.vcssvn.isconnected.switchoff=Impossible de se connecter au serveur, passage en mode d\u00E9connect\u00E9 \: %s
+isisfish.vcs.vcssvn.isconnected.switchto=Connexion au serveur disponible, passage en mode connect\u00E9 \: %s
isisfish.vcs.vcssvn.isonremote.error=Le fichier %s n'est pas sur le serveur
isisfish.vcs.vcssvn.istag.notexist=Le tag %s n'existe pas
isisfish.vcs.vcssvn.isuptodate.error=Impossible d'obtenir le statut de fichier
isisfish.vcs.vcssvn.list.error=Impossible de lister
isisfish.vcs.vcssvn.localstatus.error=Impossible d'obtenir le statut local de fichier
isisfish.vcs.vcssvn.remotestatus.error=Impossible d'obtenir le statut distant de fichier
-isisfish.vcs.vcssvn.setTag.error=Erreur lors de la r\u00e9cup\u00e9ration de l'adresse du d\u00e9p\u00f4t local
-isisfish.vcs.vcssvn.settag.switchfromto=Switch du tag du d\u00e9p\u00f4t de %s \u00e0 %s
-isisfish.vcs.vcssvn.update.error=Impossible de mettre \u00e0 jour
-isisfish.vcs.vcssvn.update.notinlocal=Impossible de mettre \u00e0 jour des fichiers qui ne sont pas pas dans le d\u00e9p\u00f4t
-isisfish.versionStorage.removed=Supprim\u00e9
-isisfish.vesselType.activityRange=Intervalle d'activit\u00e9
+isisfish.vcs.vcssvn.setTag.error=Erreur lors de la r\u00E9cup\u00E9ration de l'adresse du d\u00E9p\u00F4t local
+isisfish.vcs.vcssvn.settag.switchfromto=Switch du tag du d\u00E9p\u00F4t de %s \u00E0 %s
+isisfish.vcs.vcssvn.update.error=Impossible de mettre \u00E0 jour
+isisfish.vcs.vcssvn.update.notinlocal=Impossible de mettre \u00E0 jour des fichiers qui ne sont pas pas dans le d\u00E9p\u00F4t
+isisfish.versionStorage.removed=Supprim\u00E9
+isisfish.vesselType.activityRange=Intervalle d'activit\u00E9
isisfish.vesselType.comments=Commentaires
-isisfish.vesselType.fuelCost=Co\u00fbt d'un trajet en fuel
+isisfish.vesselType.fuelCost=Co\u00FBt d'un trajet en fuel
isisfish.vesselType.length=Longueur
-isisfish.vesselType.maxDuration=Dur\u00e9e maximale du trajet
-isisfish.vesselType.miniCrew=Taille minimale d'\u00e9quipage
+isisfish.vesselType.maxDuration=Dur\u00E9e maximale du trajet
+isisfish.vesselType.miniCrew=Taille minimale d'\u00E9quipage
isisfish.vesselType.name=Nom
isisfish.vesselType.speed=Vitesse
-isisfish.welcome.menu.about=\u00c0 propos
+isisfish.welcome.menu.about=\u00C0 propos
isisfish.welcome.menu.close=Fermer
isisfish.welcome.menu.configuration=Configuration
isisfish.welcome.menu.file=Fichier
-isisfish.welcome.menu.frame=Fen\u00eatre
+isisfish.welcome.menu.frame=Fen\u00EAtre
isisfish.welcome.menu.help=Aide
isisfish.welcome.menu.input=Saisie
-isisfish.welcome.menu.monitor=Fen\u00eatre de logs
+isisfish.welcome.menu.monitor=Fen\u00EAtre de logs
isisfish.welcome.menu.queue=Liste des simulations
-isisfish.welcome.menu.result=R\u00e9sultat
+isisfish.welcome.menu.result=R\u00E9sultat
isisfish.welcome.menu.script=Script
isisfish.welcome.menu.simulation=Lanceur de simulations
isisfish.welcome.menu.synchro=Synchronisation Serveur
isisfish.welcome.menu.vcs.configuration=Configuration vcs
isisfish.welcome.title=Simulation Ifremer
-isisfish.wizardGroupCreation.allGroupsSameSize=Tous les groupes ont la m\u00eame taille
+isisfish.wizardGroupCreation.allGroupsSameSize=Tous les groupes ont la m\u00EAme taille
isisfish.wizardGroupCreation.allValues=Input all the values
-isisfish.wizardGroupCreation.computedGrowthCurve=Calcul\u00e9 par une courbe de croissance
+isisfish.wizardGroupCreation.computedGrowthCurve=Calcul\u00E9 par une courbe de croissance
isisfish.wizardGroupCreation.firstAge=Premier age
isisfish.wizardGroupCreation.firstAgeHelp=First age \= minimal age
isisfish.wizardGroupCreation.firstGroup=Premier groupe
-isisfish.wizardGroupCreation.firstLength=Premi\u00e8re taille
+isisfish.wizardGroupCreation.firstLength=Premi\u00E8re taille
isisfish.wizardGroupCreation.firstLengthHelp=First length \= minimal length of first group
isisfish.wizardGroupCreation.gapBetweenGroupsHelp=gap between to group is 1 year.
isisfish.wizardGroupCreation.groupNumberHelp=number of Group \= number of group wanted
@@ -991,7 +991,7 @@
isisfish.wizardGroupCreation.populationCharacteristics=Input the population characteristics
isisfish.wizardGroupCreation.selectGroupLengthType=Choisir la longueur du groupe
isisfish.wizardGroupCreation.timeStep=Pas de temps (en mois)
-isisfish.wizardGroupCreation.title=Cr\u00e9ation du groupe
+isisfish.wizardGroupCreation.title=Cr\u00E9ation du groupe
isisfish.zone.cells=cellules de la Zone
isisfish.zone.comments=Commentaires
isisfish.zone.name=Nom
1
0
r1747 - isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator
by sletellier@users.labs.libre-entreprise.org Jan. 20, 2009
by sletellier@users.labs.libre-entreprise.org Jan. 20, 2009
Jan. 20, 2009
Author: sletellier
Date: 2009-01-20 10:18:43 +0000 (Tue, 20 Jan 2009)
New Revision: 1747
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/ParamsUI.jaxx
Log:
Use analyse plan enabled
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/ParamsUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/ParamsUI.jaxx 2009-01-20 00:50:22 UTC (rev 1746)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/ParamsUI.jaxx 2009-01-20 10:18:43 UTC (rev 1747)
@@ -154,9 +154,13 @@
}
protected void enableAnalysePlan(){
if (fieldSimulUseAnalysePlan.isSelected()){
+ getContextValue(SimulAction.class).getSimulationParameter().setUseAnalysePlan(true);
SimulUI simul = getParentContainer(SimulUI.class);
simul.enableAnalysePlan();
}
+ else{
+ getContextValue(SimulAction.class).getSimulationParameter().setUseAnalysePlan(false);
+ }
}
protected void setNbAnnees(){
getContextValue(SimulAction.class).setNbAnnees(fieldSimulParamsNbAnnees.getText());
1
0
r1746 - in isis-fish/trunk/src/main: java/fr/ifremer/isisfish/ui/input resources resources/i18n
by tchemit@users.labs.libre-entreprise.org Jan. 20, 2009
by tchemit@users.labs.libre-entreprise.org Jan. 20, 2009
Jan. 20, 2009
Author: tchemit
Date: 2009-01-20 00:50:22 +0000 (Tue, 20 Jan 2009)
New Revision: 1746
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/CellUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx
isis-fish/trunk/src/main/resources/i18n/isis-fish-en_GB.properties
isis-fish/trunk/src/main/resources/i18n/isis-fish-fr_FR.properties
isis-fish/trunk/src/main/resources/log4j.properties
Log:
generics + i18n
mise en debug pour finir les Input
debug de ZoneUI, ?\195?\167a marche pr?\195?\168sque (reste un pb de remplissage de la liste des cellules alors que le bean est bien renseign?\195?\169...) ?\195?\160 toi sylvain :)
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/CellUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/CellUI.jaxx 2009-01-19 23:28:01 UTC (rev 1745)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/CellUI.jaxx 2009-01-20 00:50:22 UTC (rev 1746)
@@ -50,7 +50,7 @@
protected OMToolSet toolSet = new OMToolSet();
protected OpenMapEvents mapListener = null;
-setButtonTitle("isisfish.input.continueZones");
+setButtonTitle(_("isisfish.input.continueZones"));
setNextPath("$root/$zones");
addPropertyChangeListener("bean", new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
@@ -72,7 +72,7 @@
public void refresh() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- Cell cell = (Cell)getVerifier().getEntity(Cell.class);
+ Cell cell = getVerifier().getEntity(Cell.class);
setBean((CellImpl) cell);
jaxx.runtime.swing.Utils.fillComboBox(fieldCell,getRegion().getCell(), getBean());
cellMap.setFisheryRegion(getRegion());
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx 2009-01-19 23:28:01 UTC (rev 1745)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx 2009-01-20 00:50:22 UTC (rev 1746)
@@ -52,16 +52,19 @@
protected OMToolSet toolSet = new OMToolSet();
protected MapMouseListener mapListener = null;
-setButtonTitle("isisfish.input.continuePorts");
+setButtonTitle(_("isisfish.input.continuePorts"));
setNextPath("$root/$ports");
addPropertyChangeListener("bean", new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
+ if (log.isDebugEnabled()) {
+ log.debug("bean changed " + evt.getOldValue() + " : " + evt.getNewValue());
+ }
if (evt.getOldValue() != null || evt.getNewValue() == null) {
// remove previous binding on getBean()
- //jaxx.runtime.Util.removeDataBinding(get$Table0(), "fieldCellName.text", "fieldCellLongitude.text", "fieldCellLatitude.text", "fieldCellLand.selected", "fieldCellComment.text");
+// jaxx.runtime.Util.removeDataBinding($InputContentUI0, "fieldZoneName.text", "fieldZoneComment.text");
fieldZoneName.setText("");
fieldZoneComment.setText("");
- jaxx.runtime.swing.Utils.fillList(zoneCells, getRegion().getCell(), null);
+ //jaxx.runtime.swing.Utils.fillList(zoneCells, getRegion().getCell(), java.util.Collections.EMPTY_LIST);
}
if (evt.getNewValue() != null) {
// add binding on getBean()
@@ -75,9 +78,12 @@
getVerifier().setCancelButton(cancel);
getVerifier().setNewButton(create, "Zone");
getVerifier().setDeleteButton(remove);
- Zone zone = (Zone)getVerifier().getEntity(Zone.class);
+ Zone zone = getVerifier().getEntity(Zone.class);
setBean((ZoneImpl) zone);
- jaxx.runtime.swing.Utils.fillList(zoneCells, getRegion().getCell(), getBean().getCell());
+ if (log.isDebugEnabled()) {
+ log.debug("zone nb cells : "+ ( zone==null ? 0 : zone.getCell().size() ) );
+ }
+ jaxx.runtime.swing.Utils.fillList(zoneCells, getRegion().getCell(), getBean() == null ? java.util.Collections.EMPTY_LIST : getBean().getCell());
zoneMap.setFisheryRegion(getRegion());
if (mapListener == null){
zoneMap.setActiveMouseMode(new SelectMouseMode(false));
@@ -93,6 +99,10 @@
mapListener = new OpenMapEvents(zoneMap, new SelectMouseMode(false), CellSelectionLayer.MULT_SELECTION) {
@Override
public boolean onMouseClicked() {
+ if (!isActif()) {
+ //TODO don't known what does mean that return...
+ return false;
+ }
java.util.List<Cell> selectedCell = zoneMap.getSelectedCells();
getBean().setCell(selectedCell);
return true;
@@ -102,9 +112,9 @@
}
}
protected void refreshMap(){
- zoneMap.setSelectedCells(getBean().getCell());
+ zoneMap.setSelectedCells(getBean() == null ? java.util.Collections.EMPTY_LIST : getBean().getCell());
}
-protected void zoneCellsChange(){
+protected void zoneCellsChange() {
java.util.List<Cell> cells = new ArrayList<Cell>();
for (Object o : zoneCells.getSelectedValues()){
cells.add((Cell) o);
@@ -141,7 +151,7 @@
<row>
<cell columns='2' fill='both' weighty='0.7' weightx='1.0'>
<JScrollPane>
- <JList id="zoneCells" enabled='{isActif()}' onMouseClicked='zoneCellsChange()'/>
+ <JList id="zoneCells" enabled='{isActif()}' onMouseClicked='if ( isActif() ) { zoneCellsChange(); }'/>
</JScrollPane>
</cell>
</row>
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-01-19 23:28:01 UTC (rev 1745)
+++ isis-fish/trunk/src/main/resources/i18n/isis-fish-en_GB.properties 2009-01-20 00:50:22 UTC (rev 1746)
@@ -210,7 +210,7 @@
isisfish.error.check.region=
isisfish.error.compile.script=Can't compile script\: %1$s
isisfish.error.compiled.parameter=Can't get rule parameter from compiled class
-isisfish.error.conversion.data=Erreur lors de la conversion du fichier de donn\u00E9es
+isisfish.error.conversion.data=Erreur lors de la conversion du fichier de donn\u00e9es
isisfish.error.create.equation=Can't create equation
isisfish.error.delete.database=Can't delete database
isisfish.error.delete.file=could not delete file %1$s
@@ -244,12 +244,12 @@
isisfish.error.immigration.negative=immigration negative
isisfish.error.import.convertible=Erreur lors de l'import, la version du fichier que vous souhaitez importer n'est pas transformable en une version importable.
isisfish.error.import.file=Can't import file %1$s
-isisfish.error.import.recent.files=Erreur lors de l'import, la version du fichier que vous souhaitez importer est plus r\u00E9cente que la version souhait\u00E9e.
+isisfish.error.import.recent.files=Erreur lors de l'import, la version du fichier que vous souhaitez importer est plus r\u00e9cente que la version souhait\u00e9e.
isisfish.error.init.map=Can't init map.
isisfish.error.init.remove.button=could not init remove button (button or list is null) button \: %1$s, list \: %2$s
isisfish.error.instanciate=Can't instanciate %1$s
isisfish.error.instanciate.export=Can't instanciate export %1$s
-isisfish.error.invalid.costs.fix=les co\u00FBts fixes sont invalides
+isisfish.error.invalid.costs.fix=les co\u00fbts fixes sont invalides
isisfish.error.invalid.distribution.recruitment=distribution de recrutement invalide
isisfish.error.invalid.equation=Equation invalid
isisfish.error.invalid.equation.name=Invalid equation name
@@ -270,7 +270,7 @@
isisfish.error.log.console.dispose=Une erreur est survenue pendant la fermeture de la console %1$s de log, raison %2$s
isisfish.error.log.createAppender=could not create appender [%1$s] \: %2$s for reason %3$s
isisfish.error.log.foundAppender=\=could not found log appender %1$s for category %2$s
-isisfish.error.matrix.more.2d=Matrice de plus de 2 dimensions\!\!\nS\u00E9lectionnez moins d'\u00E9l\u00E9ments ou utilisez l'op\u00E9rateur somme.
+isisfish.error.matrix.more.2d=Matrice de plus de 2 dimensions\!\!\nS\u00e9lectionnez moins d'\u00e9l\u00e9ments ou utilisez l'op\u00e9rateur somme.
isisfish.error.migration.negative=Migration negative
isisfish.error.no.matrix=No matrix for\:
isisfish.error.no.null.time.step=Error, the time step should not be null
@@ -285,7 +285,7 @@
isisfish.error.not.null.class.grown=classe mature vaut nul
isisfish.error.not.null.mean.weight=poids moyen nul
isisfish.error.not.null.natiral.death=natural mortality null
-isisfish.error.not.possible.metier=Pas de m\u00E9tier possible
+isisfish.error.not.possible.metier=Pas de m\u00e9tier possible
isisfish.error.not.support.class=this class does not support
isisfish.error.number.classes.upper.zero=Error, the number of classes must be upper than 0
isisfish.error.obtain.analyseplan=Can't obtain description of AnalysePlan
@@ -439,6 +439,8 @@
isisfish.infoItem.sum=defaultToolTip-fr.ifremer.resultat.InfoItemDate.sumButton
isisfish.infoItem.sum.year=Sum elements per year
isisfish.infoItem.table=defaultToolTip-fr.ifremer.resultat.InfoItem.table30
+isisfish.input.continuePorts=Continue to Ports
+isisfish.input.continueZones=Continue to Zones
isisfish.input.menu.addRegion=Add region
isisfish.input.menu.commit=Commit change
isisfish.input.menu.copyRegion=Copy Region
@@ -549,7 +551,7 @@
isisfish.message.remove.finished=Remove finished
isisfish.message.remove.unnecessary.cells=
isisfish.message.removing.region=Removing region %1$s ...
-isisfish.message.result.verif.region=R\u00E9sultat de la v\u00E9rification de la r\u00E9gion
+isisfish.message.result.verif.region=R\u00e9sultat de la v\u00e9rification de la r\u00e9gion
isisfish.message.save.finished=Save finished
isisfish.message.saveModel.finished=Save model finished
isisfish.message.setting.cache.aspects=Setting Cache aspects
@@ -600,7 +602,7 @@
isisfish.params.ruleParameters=Rule's parameters
isisfish.params.simulationName=Simulation name
isisfish.params.title=Parameters
-isisfish.params.toString.fishery=P\u00EAcherie\: %1$s\n\n
+isisfish.params.toString.fishery=P\u00eacherie\: %1$s\n\n
isisfish.params.toString.lib.logger.level=Level of libraries' logger %1$s
isisfish.params.toString.number.years=Number of years\: %1$s\n\n
isisfish.params.toString.plan=Plan\: %1$s
@@ -611,7 +613,7 @@
isisfish.params.toString.script.presimulation=Script de presimulation
isisfish.params.toString.simul.logger.level=Level of simulator's logger %1$s
isisfish.params.toString.simulation.done=Simulation done with %1$s\:
-isisfish.params.toString.strategies=Strat\u00E9gies d'exploitation\:
+isisfish.params.toString.strategies=Strat\u00e9gies d'exploitation\:
isisfish.params.useAnalysePlan=Use analyse plan
isisfish.params.usePreSimulationScript=Use pre simulation script
isisfish.population.capturability=Capturability
@@ -735,7 +737,7 @@
isisfish.result.statusBar=defaultToolTip-fr.ifremer.resultat.ResultatEdit.statusbar1
isisfish.result.statusImage=defaultToolTip-fr.ifremer.resultat.ResultatEdit.statusImage
isisfish.result.stress.metier=Effort par metier
-isisfish.result.summary=R\u00E9sum\u00E9
+isisfish.result.summary=R\u00e9sum\u00e9
isisfish.result.summaryRadioButton=defaultToolTip-fr.ifremer.resultat.ResultatEdit.resumeRadioButton
isisfish.result.table=defaultToolTip-fr.ifremer.resultat.ResultatView.table33
isisfish.result.title=Resultat
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-01-19 23:28:01 UTC (rev 1745)
+++ isis-fish/trunk/src/main/resources/i18n/isis-fish-fr_FR.properties 2009-01-20 00:50:22 UTC (rev 1746)
@@ -41,7 +41,7 @@
Normal\ stop\ thread,\ this\ is\ not\ an\ error=
Not\ start\ simulation\ %s\ because\ user\ ask\ stop=
Region\ %s\ allready\ exist\ in\ repository.\ Can't\ import=
-Region\ %s\ already\ inited=La r\u00E9gion %s a d\u00E9j\u00E0 \u00E9t\u00E9 initialis\u00E9e
+Region\ %s\ already\ inited=La r\u00e9gion %s a d\u00e9j\u00e0 \u00e9t\u00e9 initialis\u00e9e
Rename\ data\ directory\ to\ %s=
Show\ help=
SimulationExecutor\ started\ with\ %s\ thread\ for\ %s=
@@ -68,22 +68,22 @@
directory\ %s\ must\ be\ a\ directory=
filter\ loaded\ in\ %1$s\ ms\ \:\ found\ %2$s\ lines.=filter loaded in %1$s ms \: found %2$s lines.
isisfish.about.abouthtmltext=<html><b>Isis-Fish (%s)</b><br /><br />Copyright IFREMER-MAERHA 2000-2008.<br /><br /><a href\="http\://isis-fish.labs.libre-entreprise.org">http\://isis-fish.labs.libre-entreprise.org</a><br /><br />Merci de rapporter les bugs.<html>
-isisfish.about.licensetext=Vous pouvez modifier et redistribuer ce programme sous les conditions \u00E9nonc\u00E9es par la licence GNU GPL (version 2 ou ult\u00E9rieure). Une copie de la licence GPL est dans le fichier \u00AB\u00A0LICENSE.txt\u00A0\u00BB fourni avec Isis-Fish. Tous droits r\u00E9serv\u00E9s. Aucune garantie n'est fournie pour l'utilisation de ce programme.
-isisfish.about.title=\u00C0 propos de Isis-Fish...
-isisfish.advancedParameters.title=Param\u00E8tres avanc\u00E9s
-isisfish.advancedParams.freeParameters=Param\u00E8tres libres
+isisfish.about.licensetext=Vous pouvez modifier et redistribuer ce programme sous les conditions \u00e9nonc\u00e9es par la licence GNU GPL (version 2 ou ult\u00e9rieure). Une copie de la licence GPL est dans le fichier \u00ab\u00a0LICENSE.txt\u00a0\u00bb fourni avec Isis-Fish. Tous droits r\u00e9serv\u00e9s. Aucune garantie n'est fournie pour l'utilisation de ce programme.
+isisfish.about.title=\u00c0 propos de Isis-Fish...
+isisfish.advancedParameters.title=Param\u00e8tres avanc\u00e9s
+isisfish.advancedParams.freeParameters=Param\u00e8tres libres
isisfish.advancedParams.libLevelLogger=Niveau de tracage des librairies
isisfish.advancedParams.scriptLevelLogger=Niveau de tracage des scripts
isisfish.advancedParams.simulLevelLogger=Niveau de tracage du simulateur
isisfish.advancedParams.simulationCache=Simulation cache
isisfish.advancedParams.simulationStatistique=Simulation statistique
-isisfish.advancedParams.simulatorUse=Simulateur \u00E0 utiliser
+isisfish.advancedParams.simulatorUse=Simulateur \u00e0 utiliser
isisfish.cell.comments=Commentaires
isisfish.cell.land=Land
isisfish.cell.latitude=Latitude
isisfish.cell.longitude=Longitude
isisfish.cell.name=Nom
-isisfish.change.equation=Ne peut pas changer l'\u00E9quation
+isisfish.change.equation=Ne peut pas changer l'\u00e9quation
isisfish.commit.message=Entrer un message de commit
isisfish.common.add=Ajouter
isisfish.common.add.short=Aj.
@@ -91,12 +91,12 @@
isisfish.common.apply=Appliquer
isisfish.common.blank=\
isisfish.common.cancel=Annuler
-isisfish.common.check=V\u00E9rifier
+isisfish.common.check=V\u00e9rifier
isisfish.common.clear=Effacer
isisfish.common.date=Date
isisfish.common.debug=Debug
isisfish.common.ellipsis=...
-isisfish.common.emigration=\u00E9migration
+isisfish.common.emigration=\u00e9migration
isisfish.common.empty=vide
isisfish.common.error=Erreur
isisfish.common.finish=Terminer
@@ -109,49 +109,49 @@
isisfish.common.newMatrix=Nouvelle matrice
isisfish.common.next=Suivant
isisfish.common.ok=Ok
-isisfish.common.openEditor=Ouvrir l'\u00E9diteur
+isisfish.common.openEditor=Ouvrir l'\u00e9diteur
isisfish.common.populationGroup=Groupe de population
isisfish.common.populations=Populations
isisfish.common.port=port
-isisfish.common.prev=Pr\u00E9c\u00E9dent
-isisfish.common.previous=Pr\u00E9c\u00E9dent
-isisfish.common.region=R\u00E9gion
+isisfish.common.prev=Pr\u00e9c\u00e9dent
+isisfish.common.previous=Pr\u00e9c\u00e9dent
+isisfish.common.region=R\u00e9gion
isisfish.common.remove=Supprimer
isisfish.common.reset=reset
-isisfish.common.rules=R\u00E8gles
+isisfish.common.rules=R\u00e8gles
isisfish.common.save=Sauver
-isisfish.common.saveModel=Sauver comme mod\u00E8le
+isisfish.common.saveModel=Sauver comme mod\u00e8le
isisfish.common.saveNextSimulation=Sauver pour la prochaine simulation
isisfish.common.season=Saison
isisfish.common.setOfVessels=Ensemble de navires
isisfish.common.simulate=Simuler
-isisfish.common.stop=Arr\u00EAter
-isisfish.common.strategies=Strat\u00E9gies
+isisfish.common.stop=Arr\u00eater
+isisfish.common.strategies=Strat\u00e9gies
isisfish.common.sum=somme
isisfish.common.tag=Tag
isisfish.common.tripType=Type de trajet
isisfish.common.value=Valeur
isisfish.common.warn=Warn
-isisfish.common.year=ann\u00E9e
+isisfish.common.year=ann\u00e9e
isisfish.common.zone=Zone
-isisfish.config.main.compileDirectory.description=le r\u00E9pertoire o\u00F9 sont compil\u00E9s les scripts
-isisfish.config.main.configFileName.description=le fichier de configuration \u00E0 utiliser
-isisfish.config.main.defaultBackupDirectory.description=le r\u00E9pertoire o\u00F9 stocker les backups des donn\u00E9es
-isisfish.config.main.defaultExportDirectory.description=le r\u00E9pertoire o\u00F9 exporter les r\u00E9sultats des simulations
-isisfish.config.main.defaultExportNames.description=les noms des exports \u00E0 effectuer apr\u00E8s une simulation
+isisfish.config.main.compileDirectory.description=le r\u00e9pertoire o\u00f9 sont compil\u00e9s les scripts
+isisfish.config.main.configFileName.description=le fichier de configuration \u00e0 utiliser
+isisfish.config.main.defaultBackupDirectory.description=le r\u00e9pertoire o\u00f9 stocker les backups des donn\u00e9es
+isisfish.config.main.defaultExportDirectory.description=le r\u00e9pertoire o\u00f9 exporter les r\u00e9sultats des simulations
+isisfish.config.main.defaultExportNames.description=les noms des exports \u00e0 effectuer apr\u00e8s une simulation
isisfish.config.main.defaultMapFile.description=TODO
-isisfish.config.main.defaultResultNames.description=les noms des r\u00E9sultats \u00E0 traiter apr\u00E8s une simulation
-isisfish.config.main.defaultSimulator.description=le nom du simulateur par d\u00E9faut \u00E0 utiliser lors d'une simulation
+isisfish.config.main.defaultResultNames.description=les noms des r\u00e9sultats \u00e0 traiter apr\u00e8s une simulation
+isisfish.config.main.defaultSimulator.description=le nom du simulateur par d\u00e9faut \u00e0 utiliser lors d'une simulation
isisfish.config.main.defaultTagValue.description=TODO
-isisfish.config.main.encoding.description=l'encoding du syst\u00E8me
+isisfish.config.main.encoding.description=l'encoding du syst\u00e8me
isisfish.config.main.javadocURL.description=l'url de la javadoc des scripts
isisfish.config.main.launchUI.description=
-isisfish.config.main.localSimulator.description=pour indiquer si les simulations sont \u00E0 effectuer localement
+isisfish.config.main.localSimulator.description=pour indiquer si les simulations sont \u00e0 effectuer localement
isisfish.config.main.locale.description=la locale utilisateur
isisfish.config.main.login.description=le login pour se connecter au serveur de simulations distant
isisfish.config.main.password.description=le mot de passe pour se connecter au serveur de simulations distant
isisfish.config.main.projectName.description=le nom du projet
-isisfish.config.main.regionMap.description=le nom du r\u00E9pertoire contenant les maps d'une r\u00E9gion
+isisfish.config.main.regionMap.description=le nom du r\u00e9pertoire contenant les maps d'une r\u00e9gion
isisfish.config.main.remoteCaparmor.description=lance les simulations sur un serveur distant
isisfish.config.main.resultExport.description=TODO
isisfish.config.main.simulation.ssh.datapath.description=
@@ -159,22 +159,22 @@
isisfish.config.main.simulation.ssh.login.description=
isisfish.config.main.simulation.ssh.server.description=
isisfish.config.main.simulationServer.description=l'url du serveur de simulations distant
-isisfish.config.main.simulationShowOnlyError.description=pour indiquer si l'on doit conserver dans l'UI des simulations termin\u00E9es uniquement celles avec erreur
-isisfish.config.main.simulationShowOnlyQueue.description=pour indiquer si l'on doit conserver dans l'UI des simulations termin\u00E9es uniquement celles effectu\u00E9es localement
-isisfish.config.main.smtpServer.description=le nom du serveur smpt \u00E0 utiliser pour envoyer les courriels
-isisfish.config.main.subSimulator.description=pour indiquer si les simulations sont \u00E0 effectuer localement dans un sous process
+isisfish.config.main.simulationShowOnlyError.description=pour indiquer si l'on doit conserver dans l'UI des simulations termin\u00e9es uniquement celles avec erreur
+isisfish.config.main.simulationShowOnlyQueue.description=pour indiquer si l'on doit conserver dans l'UI des simulations termin\u00e9es uniquement celles effectu\u00e9es localement
+isisfish.config.main.smtpServer.description=le nom du serveur smpt \u00e0 utiliser pour envoyer les courriels
+isisfish.config.main.subSimulator.description=pour indiquer si les simulations sont \u00e0 effectuer localement dans un sous process
isisfish.config.main.userMail.description=le courriel de l'utilisateur
-isisfish.config.main.userName.description=le nom - pr\u00E9nom de l'utilisateur
-isisfish.config.vcs.hostName.description=le nom du serveur vcs \u00E0 utiliser
-isisfish.config.vcs.keyFile.description=le chemin complet du fichier de clef priv\u00E9e ssh2 \u00E0 utiliser lors d'une connexion s\u00E9curis\u00E9e
+isisfish.config.main.userName.description=le nom - pr\u00e9nom de l'utilisateur
+isisfish.config.vcs.hostName.description=le nom du serveur vcs \u00e0 utiliser
+isisfish.config.vcs.keyFile.description=le chemin complet du fichier de clef priv\u00e9e ssh2 \u00e0 utiliser lors d'une connexion s\u00e9curis\u00e9e
isisfish.config.vcs.localDatabasePath.description=
-isisfish.config.vcs.noPassPhrase.description=pour indiquer si la clef priv\u00E9e ssh2 utilis\u00E9e pour communiquer avec le serveur vcs contient est prot\u00E9g\u00E9 par une passe-phrase
-isisfish.config.vcs.passphrase.description=la passe-phrase utilis\u00E9e pour prot\u00E9ger la clef priv\u00E9e ssh
-isisfish.config.vcs.remoteDatabase.description=le nom du module de donn\u00E9es sur le serveur vcs
-isisfish.config.vcs.remotePath.description=le chemin jusqu'au parent du module de donn\u00E9es sur le serveur vcs
-isisfish.config.vcs.type.description=le type de communication vcs utilis\u00E9
-isisfish.config.vcs.typeRepo.description=le type de r\u00E9pository vcs utilis\u00E9
-isisfish.config.vcs.useSshConnexion.description=pour indiquer si l'on utilise une connexion s\u00E9curis\u00E9e pour communiquer avec le serveur vcs (ssh2)
+isisfish.config.vcs.noPassPhrase.description=pour indiquer si la clef priv\u00e9e ssh2 utilis\u00e9e pour communiquer avec le serveur vcs contient est prot\u00e9g\u00e9 par une passe-phrase
+isisfish.config.vcs.passphrase.description=la passe-phrase utilis\u00e9e pour prot\u00e9ger la clef priv\u00e9e ssh
+isisfish.config.vcs.remoteDatabase.description=le nom du module de donn\u00e9es sur le serveur vcs
+isisfish.config.vcs.remotePath.description=le chemin jusqu'au parent du module de donn\u00e9es sur le serveur vcs
+isisfish.config.vcs.type.description=le type de communication vcs utilis\u00e9
+isisfish.config.vcs.typeRepo.description=le type de r\u00e9pository vcs utilis\u00e9
+isisfish.config.vcs.useSshConnexion.description=pour indiquer si l'on utilise une connexion s\u00e9curis\u00e9e pour communiquer avec le serveur vcs (ssh2)
isisfish.config.vcs.userName.description=le login de l'utilisateur sur le serveur vcs
isisfish.config.vcs.userPassword.description=
isisfish.dataResult.descriptionLabel=defaultToolTip-fr.ifremer.resultat.DataResult.descriptionLabel
@@ -185,54 +185,54 @@
isisfish.dataResult.scrolledwindow2=defaultToolTip-fr.ifremer.resultat.DataResult.scrolledwindow2
isisfish.dataResult.table2=defaultToolTip-fr.ifremer.resultat.DataResult.table2
isisfish.date.toString=%1$s %2$s
-isisfish.effortDescription.crewFoodCost=Co\u00FBt de l'alimentation pour l'\u00E9quipage
-isisfish.effortDescription.crewShareRate=Taux de partage de l'\u00E9quipage
-isisfish.effortDescription.crewSize=Taille de l'\u00E9quipage
-isisfish.effortDescription.fishingOperation=Op\u00E9ration de p\u00EAche
-isisfish.effortDescription.fishingOperationDuration=Dur\u00E9e de la p\u00EAche
-isisfish.effortDescription.fixedCrewSalary=Salaire d'\u00E9quipage fixe
-isisfish.effortDescription.gearsNumberPerOperation=Nombre d'engins par op\u00E9ration
+isisfish.effortDescription.crewFoodCost=Co\u00fbt de l'alimentation pour l'\u00e9quipage
+isisfish.effortDescription.crewShareRate=Taux de partage de l'\u00e9quipage
+isisfish.effortDescription.crewSize=Taille de l'\u00e9quipage
+isisfish.effortDescription.fishingOperation=Op\u00e9ration de p\u00eache
+isisfish.effortDescription.fishingOperationDuration=Dur\u00e9e de la p\u00eache
+isisfish.effortDescription.fixedCrewSalary=Salaire d'\u00e9quipage fixe
+isisfish.effortDescription.gearsNumberPerOperation=Nombre d'engins par op\u00e9ration
isisfish.effortDescription.landingCosts=landingCosts
-isisfish.effortDescription.otherRunningCost=Autres co\u00FBts
+isisfish.effortDescription.otherRunningCost=Autres co\u00fbts
isisfish.effortDescription.repairAndMaintenanceGearCost=repairAndMaintenanceGearCost
isisfish.effortDescription.title=inputEffortDescription
isisfish.effortDescription.toString=EffortDescription for %1$s with %2$s
-isisfish.effortDescription.unitCostOfFishing=Co\u00FBt unitaire de la p\u00EAche
-isisfish.equation.editor.title=Editeur d'\u00E9quation
+isisfish.effortDescription.unitCostOfFishing=Co\u00fbt unitaire de la p\u00eache
+isisfish.equation.editor.title=Editeur d'\u00e9quation
isisfish.error.acceptable.population=New value isn't acceptable value for this population
-isisfish.error.add.card=Erreur lors de l'ajout du r\u00E9sultat \u00E0 la carte.
+isisfish.error.add.card=Erreur lors de l'ajout du r\u00e9sultat \u00e0 la carte.
isisfish.error.add.logger.simulation\ =isisfish.error.add.logger.simulation
-isisfish.error.add.result.data=Erreur lors de l'ajout du r\u00E9sultat au data.
-isisfish.error.add.result.graph=Erreur lors de l'ajout du r\u00E9sultat au graph.
+isisfish.error.add.result.data=Erreur lors de l'ajout du r\u00e9sultat au data.
+isisfish.error.add.result.graph=Erreur lors de l'ajout du r\u00e9sultat au graph.
isisfish.error.add.tray=Impossible d'ajouter une icone de notification
isisfish.error.change.classloader=Can't change classloader because can't create URL from file %1$s
isisfish.error.change.equation=Can't change equation
isisfish.error.check.region=
isisfish.error.compile.script=Can't compile script\: %1$s
isisfish.error.compiled.parameter=Can't get rule parameter from compiled class
-isisfish.error.conversion.data=Erreur lors de la conversion du fichier de donn\u00E9es
+isisfish.error.conversion.data=Erreur lors de la conversion du fichier de donn\u00e9es
isisfish.error.create.equation=Can't create equation
isisfish.error.delete.database=Can't delete database
isisfish.error.delete.file=could not delete file %1$s
isisfish.error.delete.vcs.files=Can't delete vcs files
-isisfish.error.dialog.message=Une erreur a \u00E9t\u00E9 d\u00E9tect\u00E9e
+isisfish.error.dialog.message=Une erreur a \u00e9t\u00e9 d\u00e9tect\u00e9e
isisfish.error.dialog.title=Erreur
isisfish.error.during.simulation=Error during simulation
isisfish.error.emigration.negative=emigration negative
isisfish.error.empty.code.rubbin=le code rubbin est vide
isisfish.error.empty.emigration=emigration vide
-isisfish.error.empty.id.geographic=l'identifiant g\u00E9ographique est vide
+isisfish.error.empty.id.geographic=l'identifiant g\u00e9ographique est vide
isisfish.error.empty.immigration=immigration vide
isisfish.error.empty.migration=Migration vide
isisfish.error.empty.name=le nom est vide
-isisfish.error.empty.params.name=le nom du param\u00E8tre est vide
+isisfish.error.empty.params.name=le nom du param\u00e8tre est vide
isisfish.error.empty.population=Population est vide
isisfish.error.empty.scientific.name=le nom scientifique est vide
isisfish.error.empty.season=info saison vide
-isisfish.error.empty.selectivity=s\u00E9lectivit\u00E9 est vide
+isisfish.error.empty.selectivity=s\u00e9lectivit\u00e9 est vide
isisfish.error.empty.species=espece capturable vide
isisfish.error.empty.species.name=le nom d'espece est vide
-isisfish.error.empty.unit=l'unit\u00E9 de mesure est vide
+isisfish.error.empty.unit=l'unit\u00e9 de mesure est vide
isisfish.error.emty.emigration=emigration vide
isisfish.error.emty.migration=Migration vide
isisfish.error.equation.retun.number=EquationImpl must retun a number\: %1$s
@@ -244,22 +244,22 @@
isisfish.error.immigration.negative=immigration negative
isisfish.error.import.convertible=Erreur lors de l'import, la version du fichier que vous souhaitez importer n'est pas transformable en une version importable.
isisfish.error.import.file=Can't import file %1$s
-isisfish.error.import.recent.files=Erreur lors de l'import, la version du fichier que vous souhaitez importer est plus r\u00E9cente que la version souhait\u00E9e.
+isisfish.error.import.recent.files=Erreur lors de l'import, la version du fichier que vous souhaitez importer est plus r\u00e9cente que la version souhait\u00e9e.
isisfish.error.init.map=Can't init map.
isisfish.error.init.remove.button=could not init remove button (button or list is null) button \: %1$s, list \: %2$s
isisfish.error.instanciate=Can't instanciate %1$s
isisfish.error.instanciate.export=Can't instanciate export %1$s
-isisfish.error.invalid.costs.fix=les co\u00FBts fixes sont invalides
+isisfish.error.invalid.costs.fix=les co\u00fbts fixes sont invalides
isisfish.error.invalid.distribution.recruitment=distribution de recrutement invalide
isisfish.error.invalid.equation=Equation invalide
-isisfish.error.invalid.equation.name=Nom d'\u00E9quation invalide
+isisfish.error.invalid.equation.name=Nom d'\u00e9quation invalide
isisfish.error.invalid.file.name=Le nom du script %1$s n'est pas valide.
isisfish.error.invalid.interval.reproduction.recruitment=interval entre la reproduction et le recrutement invalide
isisfish.error.invalid.mean.weight=poids moyen invalide
-isisfish.error.invalid.natural.death=mortalit\u00E9 naturelle sur les classes naissantes invalide
+isisfish.error.invalid.natural.death=mortalit\u00e9 naturelle sur les classes naissantes invalide
isisfish.error.invalid.number=le nombre est invalide
isisfish.error.invalid.range=La gamme possible n'a pas de valeur acceptable
-isisfish.error.invalid.values.params=Param\u00E8tre controlable hors valeurs possibles
+isisfish.error.invalid.values.params=Param\u00e8tre controlable hors valeurs possibles
isisfish.error.invalidate.natural.death=mortalite naturelle invalide
isisfish.error.invoke.method=Can't invoke method '%1$s' for class %2$s
isisfish.error.load.class=Can't load class\: %1$s
@@ -270,11 +270,11 @@
isisfish.error.log.console.dispose=Une erreur est survenue pendant la fermeture de la console %1$s de log, raison %2$s
isisfish.error.log.createAppender=n'a pas pu creer l'appender [%1$s] \: %2$s pour la raison %3$s
isisfish.error.log.foundAppender=n'a pas trouve l'appender %1$s pour la categorie %2$s
-isisfish.error.matrix.more.2d=Matrice de plus de 2 dimensions\!\!\nS\u00E9lectionnez moins d'\u00E9l\u00E9ments ou utilisez l'op\u00E9rateur somme.
+isisfish.error.matrix.more.2d=Matrice de plus de 2 dimensions\!\!\nS\u00e9lectionnez moins d'\u00e9l\u00e9ments ou utilisez l'op\u00e9rateur somme.
isisfish.error.migration.negative=Migration negative
isisfish.error.no.matrix=No matrix for\:
isisfish.error.no.null.time.step=Error, the time step should not be null
-isisfish.error.no.sector=il n'y a pas de secteur de d\u00E9finit
+isisfish.error.no.sector=il n'y a pas de secteur de d\u00e9finit
isisfish.error.no.select.simulation=could not select simulation
isisfish.error.no.target.species=no target species in %1$s for %2$s
isisfish.error.not.found.class=this class does not
@@ -285,7 +285,7 @@
isisfish.error.not.null.class.grown=classe mature vaut nul
isisfish.error.not.null.mean.weight=poids moyen nul
isisfish.error.not.null.natiral.death=mortalite naturelle nulle
-isisfish.error.not.possible.metier=Pas de m\u00E9tier possible
+isisfish.error.not.possible.metier=Pas de m\u00e9tier possible
isisfish.error.not.support.class=La classe %s ne supporte pas les descritions
isisfish.error.number.classes.upper.zero=Error, the number of classes must be upper than 0
isisfish.error.obtain.analyseplan=Can't obtain description of AnalysePlan
@@ -302,9 +302,9 @@
isisfish.error.prepare.data=Can't prepare data
isisfish.error.prepare.information.simulation=Can't prepare information for simulation
isisfish.error.read.simulation=Can't read simulation information %1$s
-isisfish.error.read.simulation.parameters=Impossible de lire les param\u00EAtres du fichier \: %1$s
-isisfish.error.region.already.exists=Cette r\u00E9gion existe d\u00E9j\u00E0
-isisfish.error.region.name.empty=Le nom de la R\u00E9gion est vide
+isisfish.error.read.simulation.parameters=Impossible de lire les param\u00eatres du fichier \: %1$s
+isisfish.error.region.already.exists=Cette r\u00e9gion existe d\u00e9j\u00e0
+isisfish.error.region.name.empty=Le nom de la R\u00e9gion est vide
isisfish.error.remove.directory=Can't remove directory %1$s
isisfish.error.rename.region=Can't rename region to %1$s
isisfish.error.save.checkSum.compilation=Can't save checkSum to compilation\: %1$s
@@ -324,28 +324,28 @@
isisfish.error.simulation.resultXml.write=Can't write simulation result XML for reason %1$s
isisfish.error.source.parameter=Can't get parameter from source
isisfish.error.strategy.order=Strategy %1$s don't have 12 StrategyMonthInfo but %2$s. Recreate them
-isisfish.error.undefined.classes=pas de classes d\u00E9finies
+isisfish.error.undefined.classes=pas de classes d\u00e9finies
isisfish.error.undefined.correspondence.zones.reproduction.recruitment=pas de correspondance entre les zones de reproduction et les zones de recrutement
-isisfish.error.undefined.gear=l'engin n'est pas d\u00E9fini
-isisfish.error.undefined.mesh=aucune maille de d\u00E9fini
+isisfish.error.undefined.gear=l'engin n'est pas d\u00e9fini
+isisfish.error.undefined.mesh=aucune maille de d\u00e9fini
isisfish.error.undefined.mesh.sector=aucune maille dans le secteur
-isisfish.error.undefined.meta.population=aucune meta population de d\u00E9fini
-isisfish.error.undefined.natural.death=pas de mortalit\u00E9 naturelle sur les classes naissantes
-isisfish.error.undefined.sector=aucun secteur de d\u00E9fini
-isisfish.error.undefined.stategy=aucune strat\u00E9gie de d\u00E9fini
-isisfish.error.undefined.stategy.months=La strat\u00E9gie n'est pas d\u00E9finie pour certain mois
-isisfish.error.undefined.zone.population=il n'y a pas de zone de population de d\u00E9finit
-isisfish.error.undefined.zone.recruitment=il n'y a pas de zone de recrutement de d\u00E9finit
-isisfish.error.undefined.zone.reproduction=il n'y a pas de zone de reproduction de d\u00E9finit
+isisfish.error.undefined.meta.population=aucune meta population de d\u00e9fini
+isisfish.error.undefined.natural.death=pas de mortalit\u00e9 naturelle sur les classes naissantes
+isisfish.error.undefined.sector=aucun secteur de d\u00e9fini
+isisfish.error.undefined.stategy=aucune strat\u00e9gie de d\u00e9fini
+isisfish.error.undefined.stategy.months=La strat\u00e9gie n'est pas d\u00e9finie pour certain mois
+isisfish.error.undefined.zone.population=il n'y a pas de zone de population de d\u00e9finit
+isisfish.error.undefined.zone.recruitment=il n'y a pas de zone de recrutement de d\u00e9finit
+isisfish.error.undefined.zone.reproduction=il n'y a pas de zone de reproduction de d\u00e9finit
isisfish.error.unsupported.equation.langage=unsupported langage '%1$s' for equation\: %2$s
isisfish.error.wait.simThread=Can't wait SimThread
isisfish.error.warning.title=Attention
isisfish.error.write.simulation=Can't write information %1$s
-isisfish.exit.text=Quelque chose a chang\u00E9, merci de saisir un commentaire
+isisfish.exit.text=Quelque chose a chang\u00e9, merci de saisir un commentaire
isisfish.exit.title=Exit
isisfish.export.directory=Dossier d'export
-isisfish.export.saved=Exports des r\u00E9sultats sauvegard\u00E9s
-isisfish.export.title=Export des r\u00E9sultats
+isisfish.export.saved=Exports des r\u00e9sultats sauvegard\u00e9s
+isisfish.export.title=Export des r\u00e9sultats
isisfish.filter=Filtrer
isisfish.filter.apply=Appliquer le filtre
isisfish.filter.cancel=Annuler
@@ -355,37 +355,37 @@
isisfish.filter.log.levelInfo=info
isisfish.filter.log.levelTrace=trace
isisfish.filter.log.levelWarn=warning
-isisfish.filter.log.tooltip.levelDebug=s\u00E9lectionner pour filtrer ce niveau
-isisfish.filter.log.tooltip.levelError=s\u00E9lectionner pour filtrer ce niveau
-isisfish.filter.log.tooltip.levelFatal=s\u00E9lectionner pour filtrer ce niveau
-isisfish.filter.log.tooltip.levelInfo=s\u00E9lectionner pour filtrer ce niveau
-isisfish.filter.log.tooltip.levelTrace=s\u00E9lectionner pour filtrer ce niveau
-isisfish.filter.log.tooltip.levelWarn=s\u00E9lectionner pour filtrer ce niveau
-isisfish.filter.log.tooltip.message=Entrer un terme \u00E0 rechercher et appuyer sur Entr\u00E9e
-isisfish.filter.reset=R\u00E9initialiser
-isisfish.filter.result=R\u00E9sultats
-isisfish.filter.result.found=R\u00E9sultats (%d/%d)
-isisfish.filter.select=S\u00E9lectionner
-isisfish.filter.select.simulation=S\u00E9lectionner une simulation
+isisfish.filter.log.tooltip.levelDebug=s\u00e9lectionner pour filtrer ce niveau
+isisfish.filter.log.tooltip.levelError=s\u00e9lectionner pour filtrer ce niveau
+isisfish.filter.log.tooltip.levelFatal=s\u00e9lectionner pour filtrer ce niveau
+isisfish.filter.log.tooltip.levelInfo=s\u00e9lectionner pour filtrer ce niveau
+isisfish.filter.log.tooltip.levelTrace=s\u00e9lectionner pour filtrer ce niveau
+isisfish.filter.log.tooltip.levelWarn=s\u00e9lectionner pour filtrer ce niveau
+isisfish.filter.log.tooltip.message=Entrer un terme \u00e0 rechercher et appuyer sur Entr\u00e9e
+isisfish.filter.reset=R\u00e9initialiser
+isisfish.filter.result=R\u00e9sultats
+isisfish.filter.result.found=R\u00e9sultats (%d/%d)
+isisfish.filter.select=S\u00e9lectionner
+isisfish.filter.select.simulation=S\u00e9lectionner une simulation
isisfish.filter.simulation=Filtrer les simulations
-isisfish.filter.simulation.analysePlanNumber=num\u00E9ro d'analyse
+isisfish.filter.simulation.analysePlanNumber=num\u00e9ro d'analyse
isisfish.filter.simulation.description=description
isisfish.filter.simulation.local=locale
-isisfish.filter.simulation.numberOfYear=nombre d'ann\u00E9e(s)
-isisfish.filter.simulation.regionName=nom de r\u00E9gion
+isisfish.filter.simulation.numberOfYear=nombre d'ann\u00e9e(s)
+isisfish.filter.simulation.regionName=nom de r\u00e9gion
isisfish.filter.simulation.simulationEnd=date de fin (dd/MM/yyyy)
isisfish.filter.simulation.simulationName=nom de simulation
-isisfish.filter.simulation.simulationStart=date de d\u00E9but (dd/MM/yyyy)
+isisfish.filter.simulation.simulationStart=date de d\u00e9but (dd/MM/yyyy)
isisfish.filter.simulation.simulatorName=nom du simulateur
-isisfish.filter.simulation.tooltip.analysePlanNumber=filter sur le num\u00E9ro d'analyse (uniquement pour les simulations avec plan d'analyse)
+isisfish.filter.simulation.tooltip.analysePlanNumber=filter sur le num\u00e9ro d'analyse (uniquement pour les simulations avec plan d'analyse)
isisfish.filter.simulation.tooltip.description=filtrer sur la description (format regex)
isisfish.filter.simulation.tooltip.local=filter uniquement les simulations locales
-isisfish.filter.simulation.tooltip.numberOfYear=filter sur le nombre d'ann\u00E9e(s) (recherche extacte)
-isisfish.filter.simulation.tooltip.regionName=filtrer sur le nom de la r\u00E9gion (format regex)
+isisfish.filter.simulation.tooltip.numberOfYear=filter sur le nombre d'ann\u00e9e(s) (recherche extacte)
+isisfish.filter.simulation.tooltip.regionName=filtrer sur le nom de la r\u00e9gion (format regex)
isisfish.filter.simulation.tooltip.simulationEnd=filtrer sur la date de fin de simulation (format dd/MM/yyyy)
isisfish.filter.simulation.tooltip.simulationName=filtrer sur le nom de simulation (format regex)
-isisfish.filter.simulation.tooltip.simulationStart=filtrer sur la date de d\u00E9but de simulation (format dd/MM/yyyy)
-isisfish.filter.simulation.tooltip.simulatorName=filter sur le nom du simulateur utilis\u00E9 (format regex)
+isisfish.filter.simulation.tooltip.simulationStart=filtrer sur la date de d\u00e9but de simulation (format dd/MM/yyyy)
+isisfish.filter.simulation.tooltip.simulatorName=filter sur le nom du simulateur utilis\u00e9 (format regex)
isisfish.filter.simulation.tooltip.useAnalysePlan=filter uniquement les simulations avec plan d'analyse
isisfish.filter.simulation.tooltip.useOptimization=filter uniquement les simulations avec optimisation
isisfish.filter.simulation.tooltip.usePreScript=filter uniquement les simulations avec Prescript
@@ -395,7 +395,7 @@
isisfish.filter.simulation.usePreScript=prescript
isisfish.filter.simulation.useStatistic=statistiques
isisfish.fisheryRegion.addMap=Ajouter une carte
-isisfish.fisheryRegion.area=Extr\u00E9mit\u00E9s de la zone de p\u00EAche
+isisfish.fisheryRegion.area=Extr\u00e9mit\u00e9s de la zone de p\u00eache
isisfish.fisheryRegion.comments=Commentaires
isisfish.fisheryRegion.delMap=Supprimer la carte
isisfish.fisheryRegion.latitude=Lat.
@@ -404,12 +404,12 @@
isisfish.fisheryRegion.longitude=Long.
isisfish.fisheryRegion.longitude.max=Long. max.
isisfish.fisheryRegion.longitude.min=Long. min.
-isisfish.fisheryRegion.name=Nom de la r\u00E9gion
+isisfish.fisheryRegion.name=Nom de la r\u00e9gion
isisfish.fisheryRegion.ofCells=de mailles (option)
-isisfish.fisheryRegion.selectFile=S\u00E9lectionnez un fichier
-isisfish.fisheryRegion.spatial=R\u00E9solution spatiale
+isisfish.fisheryRegion.selectFile=S\u00e9lectionnez un fichier
+isisfish.fisheryRegion.spatial=R\u00e9solution spatiale
isisfish.gear.comments=Commentaires
-isisfish.gear.effortUnit=Unit\u00E9 d'effort
+isisfish.gear.effortUnit=Unit\u00e9 d'effort
isisfish.gear.name=Nom
isisfish.gear.rangeValues=Range of values
isisfish.gear.standardisationFactor=Facteur de standardisation
@@ -437,46 +437,48 @@
isisfish.infoItem.list=defaultToolTip-fr.ifremer.resultat.InfoItem.list
isisfish.infoItem.scrolledwindow=defaultToolTip-fr.ifremer.resultat.InfoItem.scrolledwindow1
isisfish.infoItem.sum=defaultToolTip-fr.ifremer.resultat.InfoItemDate.sumButton
-isisfish.infoItem.sum.year=Somme de \u00E9l\u00E9ment par ann\u00E9e
+isisfish.infoItem.sum.year=Somme de \u00e9l\u00e9ment par ann\u00e9e
isisfish.infoItem.table=defaultToolTip-fr.ifremer.resultat.InfoItem.table30
-isisfish.input.menu.addRegion=Ajouter une r\u00E9gion
+isisfish.input.continuePorts=Continuer vers les ports
+isisfish.input.continueZones=Continuer vers les zones
+isisfish.input.menu.addRegion=Ajouter une r\u00e9gion
isisfish.input.menu.commit=Sauvegarder les changements
-isisfish.input.menu.copyRegion=Copier r\u00E9gion
-isisfish.input.menu.exportRegion=Exporter la r\u00E9gion
-isisfish.input.menu.importRegion=Importer une r\u00E9gion
-isisfish.input.menu.importRegionSimulation=Importer la r\u00E9gion d'une simulation
-isisfish.input.menu.importRegionV2=Importer une r\u00E9gion de la v2 d'IsisFish
-isisfish.input.menu.importRenameRegion=Importer une r\u00E9gion et la renommer
+isisfish.input.menu.copyRegion=Copier r\u00e9gion
+isisfish.input.menu.exportRegion=Exporter la r\u00e9gion
+isisfish.input.menu.importRegion=Importer une r\u00e9gion
+isisfish.input.menu.importRegionSimulation=Importer la r\u00e9gion d'une simulation
+isisfish.input.menu.importRegionV2=Importer une r\u00e9gion de la v2 d'IsisFish
+isisfish.input.menu.importRenameRegion=Importer une r\u00e9gion et la renommer
isisfish.input.menu.removeLocaly=Supprimer localement
-isisfish.input.menu.removeLocalyRemotely=Supprimer localement et \u00E0 distance
+isisfish.input.menu.removeLocalyRemotely=Supprimer localement et \u00e0 distance
isisfish.input.menu.server=Serveur
-isisfish.input.newRegion=Nouvelle r\u00E9gion
-isisfish.input.selectNodeTree=S\u00E9lectionnez un noeud de l'arbre
-isisfish.input.title=Saisie de la p\u00EAcherie
+isisfish.input.newRegion=Nouvelle r\u00e9gion
+isisfish.input.selectNodeTree=S\u00e9lectionnez un noeud de l'arbre
+isisfish.input.title=Saisie de la p\u00eacherie
isisfish.launch.anonymous=lecture seule
isisfish.launch.debugMode=debug mode
isisfish.launch.email=courriel
isisfish.launch.firstname=nom
isisfish.launch.init.done=init done in %1$s.
-isisfish.launch.lasstname=pr\u00E9nom
-isisfish.launch.server.authenticationMethod=droit d'acc\u00E8s au serveur
+isisfish.launch.lasstname=pr\u00e9nom
+isisfish.launch.server.authenticationMethod=droit d'acc\u00e8s au serveur
isisfish.launch.server.login=nom utilisateur
isisfish.launch.server.ssh.confirm.passphrase=confirmer la passphrase
isisfish.launch.server.ssh.key.change=Changer la clef ssh
-isisfish.launch.server.ssh.key.generate=G\u00E9n\u00E9rer la clef ssh
+isisfish.launch.server.ssh.key.generate=G\u00e9n\u00e9rer la clef ssh
isisfish.launch.server.ssh.no.passphrase=pas de passphrase
isisfish.launch.server.ssh.passphrase=passphrase
-isisfish.launch.server.ssh.privateKeyFile=clef priv\u00E9e ssh
+isisfish.launch.server.ssh.privateKeyFile=clef priv\u00e9e ssh
isisfish.launch.server.ssh.publicKeyFile=clef publique ssh
-isisfish.launch.ssh=lecture-\u00E9criture (ssh)
+isisfish.launch.ssh=lecture-\u00e9criture (ssh)
isisfish.launch.start=Lancement Isis-fish... %1$s
isisfish.launch.stop=Stopping simulation...
isisfish.launching=after init done in %1$s.
isisfish.log.addAppender=ajoute un appender [%1$s]
-isisfish.log.body=Message \u00E0 joindre
+isisfish.log.body=Message \u00e0 joindre
isisfish.log.closeAppender=ferme l'appender [%1$s] pour la categorie %2$s
isisfish.log.mail.failed=Impossible d'envoyer le rapport par courriel. Le serveur smtp fonctionne ? (J'essaye de contacter < %1$s > smtp server)
-isisfish.log.mail.send=Un rapport a \u00E9t\u00E9 envoy\u00E9 \u00E0 %1$s
+isisfish.log.mail.send=Un rapport a \u00e9t\u00e9 envoy\u00e9 \u00e0 %1$s
isisfish.log.mail.send.title=Send simulation %1$s by email
isisfish.log.mailTo=Adresse du destinataire
isisfish.log.removeAppender=supprime l'appender [%1$s]
@@ -485,101 +487,101 @@
isisfish.log.sendMail=Envoyer par email
isisfish.log.simulation.name=IsisFish simulation %1$s
isisfish.log.swapLogLevel=permute le niveau du logger %1$s du niveau %2$s au niveau %3$s
-isisfish.log.tooltip.body=Le message saisi sera joint au courriel envoy\u00E9
+isisfish.log.tooltip.body=Le message saisi sera joint au courriel envoy\u00e9
isisfish.log.tooltip.mailTo=Entrer l'adresse du destinataire du courriel
isisfish.log.tooltip.sendAll=Envoyer toute la simulation, ou uniquement le fichier de log
isisfish.log.tooltip.sendMail=Cliquer pour envoyer le courriel contentant les fichiers
-isisfish.message.add.objets.simulation=Ajout des nouveaux objets cr\u00E9\u00E9s durant la simulation
+isisfish.message.add.objets.simulation=Ajout des nouveaux objets cr\u00e9\u00e9s durant la simulation
isisfish.message.backup.database.finished=backup database finished
isisfish.message.backup.database.progress=backup database in progress
isisfish.message.cancel.finished=Cancel finished
-isisfish.message.check.finished=v\u00E9rification termin\u00E9e
+isisfish.message.check.finished=v\u00e9rification termin\u00e9e
isisfish.message.check.region=
isisfish.message.checking.cell=
isisfish.message.choose.archive=choose archive file or directory
isisfish.message.commit=
-isisfish.message.commit.cancelled=commit annul\u00E9
-isisfish.message.commit.finished=commit termin\u00E9
-isisfish.message.commit.region.canceled=Commit de la r\u00E9gion annul\u00E9
-isisfish.message.commiting.region=En train de commiter la r\u00E9gion %1$s ...
+isisfish.message.commit.cancelled=commit annul\u00e9
+isisfish.message.commit.finished=commit termin\u00e9
+isisfish.message.commit.region.canceled=Commit de la r\u00e9gion annul\u00e9
+isisfish.message.commiting.region=En train de commiter la r\u00e9gion %1$s ...
isisfish.message.compilation.time=Temps de compilation %1$ss
isisfish.message.confirm.delete.object=Voulez-vous vraiment supprimer l'objet %1$s
-isisfish.message.confirm.remove.region=Voulez-vous vraiement supprimer la r\u00E9gion %1$s ?
+isisfish.message.confirm.remove.region=Voulez-vous vraiement supprimer la r\u00e9gion %1$s ?
isisfish.message.confirm.remove.script=Voulez-vous vraiment supprimer le script '%1$s' ?
-isisfish.message.copy.finished=Copie termin\u00E9e
-isisfish.message.copy.region=Copier la r\u00E9gion vers %1$s
-isisfish.message.creating.region=En train de cr\u00E9er la r\u00E9gion %1$s
-isisfish.message.creation.done=cr\u00E9ation termin\u00E9e %1$s
-isisfish.message.creation.finished=Cr\u00E9ation termin\u00E9e
-isisfish.message.delete.canceled=supression annul\u00E9e
-isisfish.message.delete.entities=Supprimer les entit\u00E9s
-isisfish.message.delete.entity=Supprimer l'entit\u00E9
-isisfish.message.delete.finished=Suppression termin\u00E9e
-isisfish.message.delete.object=Pour supprimer l'objet %1$s, tous les objets suivants seront aussi supprim\u00E9s \n\n
-isisfish.message.evaluation.finished=\u00E9valuation termin\u00E9e
-isisfish.message.export.done=Export termin\u00E9
+isisfish.message.copy.finished=Copie termin\u00e9e
+isisfish.message.copy.region=Copier la r\u00e9gion vers %1$s
+isisfish.message.creating.region=En train de cr\u00e9er la r\u00e9gion %1$s
+isisfish.message.creation.done=cr\u00e9ation termin\u00e9e %1$s
+isisfish.message.creation.finished=Cr\u00e9ation termin\u00e9e
+isisfish.message.delete.canceled=supression annul\u00e9e
+isisfish.message.delete.entities=Supprimer les entit\u00e9s
+isisfish.message.delete.entity=Supprimer l'entit\u00e9
+isisfish.message.delete.finished=Suppression termin\u00e9e
+isisfish.message.delete.object=Pour supprimer l'objet %1$s, tous les objets suivants seront aussi supprim\u00e9s \n\n
+isisfish.message.evaluation.finished=\u00e9valuation termin\u00e9e
+isisfish.message.export.done=Export termin\u00e9
isisfish.message.export.zip=Exporter dans le fichier zip %1$s
-isisfish.message.file.overwrite=Le fichier existe, Voulez-vous l'\u00E9craser ?
+isisfish.message.file.overwrite=Le fichier existe, Voulez-vous l'\u00e9craser ?
isisfish.message.import=Importer %1$s
-isisfish.message.import.equation.convert=Conversion manuelle de l'\u00E9quation
-isisfish.message.import.finished=Import termin\u00E9
-isisfish.message.import.region.name=Entre le nom de la r\u00E9egion \u00E0 importer
-isisfish.message.import.region.xml=R\u00E9gion XML (Isis-Fish V2.x)
+isisfish.message.import.equation.convert=Conversion manuelle de l'\u00e9quation
+isisfish.message.import.finished=Import termin\u00e9
+isisfish.message.import.region.name=Entre le nom de la r\u00e9egion \u00e0 importer
+isisfish.message.import.region.xml=R\u00e9gion XML (Isis-Fish V2.x)
isisfish.message.import.region.zipped=Zipped Region
-isisfish.message.import.scripts.file.cancelled=Importation des scripts annul\u00E9
+isisfish.message.import.scripts.file.cancelled=Importation des scripts annul\u00e9
isisfish.message.import.xml.v2.file=Import xml v2 file
isisfish.message.import.zip=Import zip file
isisfish.message.launchui.notlaunch=
-isisfish.message.load.finished=Chargement termin\u00E9
+isisfish.message.load.finished=Chargement termin\u00e9
isisfish.message.load.map=Chargement de la carte \: %1$s (%2$s, %3$s)
isisfish.message.loading.old.simulation=Chargement d'une ancienne simulation ...
-isisfish.message.loading.region=Chargement de la r\u00E9gion
-isisfish.message.name.imported.region=Entrez le nom de la r\u00E9gion \u00E0 importer
-isisfish.message.new.filename=Entrer le nom du nouveau du fichier.\n\t (utiliser uniquemment des caract\u00E8res et _ en commencant avec une majuscule)
-isisfish.message.new.region.name=Entrer le nom de la nouvell r\u00E9gion
-isisfish.message.old.simulation.loaded=Ancienne simulation charg\u00E9e
-isisfish.message.page.modified=Cette page a \u00E9t\u00E9 modifi\u00E9, voulez-vous la sauvegarder ?
-isisfish.message.presimulation.script.execution=Ex\u00E9cution des scripts de Presimulation
+isisfish.message.loading.region=Chargement de la r\u00e9gion
+isisfish.message.name.imported.region=Entrez le nom de la r\u00e9gion \u00e0 importer
+isisfish.message.new.filename=Entrer le nom du nouveau du fichier.\n\t (utiliser uniquemment des caract\u00e8res et _ en commencant avec une majuscule)
+isisfish.message.new.region.name=Entrer le nom de la nouvell r\u00e9gion
+isisfish.message.old.simulation.loaded=Ancienne simulation charg\u00e9e
+isisfish.message.page.modified=Cette page a \u00e9t\u00e9 modifi\u00e9, voulez-vous la sauvegarder ?
+isisfish.message.presimulation.script.execution=Ex\u00e9cution des scripts de Presimulation
isisfish.message.recruitment.number.month=Input the number of month of recruitment
-isisfish.message.region.commited=R\u00E9gion commit\u00E9e
-isisfish.message.region.loaded=R\u00E9gion charg\u00E9e
-isisfish.message.region.remove.canceled=Suppression de r\u00E9gion annul\u00E9
-isisfish.message.region.removed=R\u00E9gion supprim\u00E9e
-isisfish.message.remove.canceled=Suppression annul\u00E9e
-isisfish.message.remove.finished=Suppresison termin\u00E9
+isisfish.message.region.commited=R\u00e9gion commit\u00e9e
+isisfish.message.region.loaded=R\u00e9gion charg\u00e9e
+isisfish.message.region.remove.canceled=Suppression de r\u00e9gion annul\u00e9
+isisfish.message.region.removed=R\u00e9gion supprim\u00e9e
+isisfish.message.remove.canceled=Suppression annul\u00e9e
+isisfish.message.remove.finished=Suppresison termin\u00e9
isisfish.message.remove.unnecessary.cells=
-isisfish.message.removing.region=Suppression de lar\u00E9gion %1$s ...
-isisfish.message.result.verif.region=R\u00E9sultat de la v\u00E9rification de la r\u00E9gion
-isisfish.message.save.finished=Sauvegarde termin\u00E9e
-isisfish.message.saveModel.finished=Sauvegarde du mod\u00E8le termin\u00E9e
+isisfish.message.removing.region=Suppression de lar\u00e9gion %1$s ...
+isisfish.message.result.verif.region=R\u00e9sultat de la v\u00e9rification de la r\u00e9gion
+isisfish.message.save.finished=Sauvegarde termin\u00e9e
+isisfish.message.saveModel.finished=Sauvegarde du mod\u00e8le termin\u00e9e
isisfish.message.setting.cache.aspects=Mise en place des aspects Cache
isisfish.message.setting.trace.aspects=Mise en place des aspects Trace
-isisfish.message.simulation.ended=Simulation termin\u00E9e
+isisfish.message.simulation.ended=Simulation termin\u00e9e
isisfish.message.simulation.execution=Simulation execution
-isisfish.message.simulation.prepare=Pr\u00E9paration de la simulation
-isisfish.message.tray.disabled=Icone de notification d\u00E9sactiv\u00E9e
-isisfish.message.update.finished=Mise \u00E0 jour termin\u00E9e
+isisfish.message.simulation.prepare=Pr\u00e9paration de la simulation
+isisfish.message.tray.disabled=Icone de notification d\u00e9sactiv\u00e9e
+isisfish.message.update.finished=Mise \u00e0 jour termin\u00e9e
isisfish.metier.comments=Commentaires
isisfish.metier.name=Nom
isisfish.metier.rangeValues=Range of values
-isisfish.metier.title=M\u00E9tier
-isisfish.metierMonitor.metiers=M\u00E9tiers
-isisfish.metierMonitor.strategies=Strat\u00E9gies
+isisfish.metier.title=M\u00e9tier
+isisfish.metierMonitor.metiers=M\u00e9tiers
+isisfish.metierMonitor.strategies=Strat\u00e9gies
isisfish.metierSeasonInfo.toString=%1$s saison %2$s-%3$s
-isisfish.metierSeasonInfoSpecies.mainSpecies=Esp\u00E8ces principales pour le m\u00E9tier
-isisfish.metierSeasonInfoSpecies.selectSeason=S\u00E9lectionnez une saison
-isisfish.metierSeasonInfoSpecies.selectSpecies=Choix de l'esp\u00E8ce
+isisfish.metierSeasonInfoSpecies.mainSpecies=Esp\u00e8ces principales pour le m\u00e9tier
+isisfish.metierSeasonInfoSpecies.selectSeason=S\u00e9lectionnez une saison
+isisfish.metierSeasonInfoSpecies.selectSpecies=Choix de l'esp\u00e8ce
isisfish.metierSeasonInfoSpecies.targetFactor=Facteur cible
-isisfish.metierSeasonInfoSpecies.title=Esp\u00E8ces capturables
+isisfish.metierSeasonInfoSpecies.title=Esp\u00e8ces capturables
isisfish.metierSeasonInfoZone.comments=Commentaires
isisfish.metierSeasonInfoZone.season=Saison
-isisfish.metierSeasonInfoZone.selectSeason=S\u00E9lectionnez une saison
+isisfish.metierSeasonInfoZone.selectSeason=S\u00e9lectionnez une saison
isisfish.metierSeasonInfoZone.title=Saison / Zones
isisfish.monitor.title=Application Monitor
isisfish.month.april=avril
-isisfish.month.august=ao\u00FBt
-isisfish.month.december=d\u00E9cembre
-isisfish.month.february=f\u00E9vrier
+isisfish.month.august=ao\u00fbt
+isisfish.month.december=d\u00e9cembre
+isisfish.month.february=f\u00e9vrier
isisfish.month.january=janvier
isisfish.month.july=juillet
isisfish.month.june=juin
@@ -594,15 +596,15 @@
isisfish.params.filter=Filtrer
isisfish.params.lblLauncher=Lanceur de simulation
isisfish.params.loadOldSimulation=Charger une ancienne simulation
-isisfish.params.numberYear=Nombre d'ann\u00E9es
+isisfish.params.numberYear=Nombre d'ann\u00e9es
isisfish.params.onlyExportSimulation=Exporter uniquement des simulations
-isisfish.params.populationNumbers=Donn\u00E9es de population
-isisfish.params.ruleParameters=Param\u00E8tres des r\u00E8gles
+isisfish.params.populationNumbers=Donn\u00e9es de population
+isisfish.params.ruleParameters=Param\u00e8tres des r\u00e8gles
isisfish.params.simulationName=Nom de la simulation
-isisfish.params.title=Param\u00E8tres
-isisfish.params.toString.fishery=P\u00EAcherie\: %1$s\n\n
+isisfish.params.title=Param\u00e8tres
+isisfish.params.toString.fishery=P\u00eacherie\: %1$s\n\n
isisfish.params.toString.lib.logger.level=niveau du logger de librairies %1$s
-isisfish.params.toString.number.years=Nombre d'ann\u00E9\u00E9s \: %1$s\n\n
+isisfish.params.toString.number.years=Nombre d'ann\u00e9\u00e9s \: %1$s\n\n
isisfish.params.toString.plan=Plan\: %1$s
isisfish.params.toString.plan.number=Analyse plan sequence number\: %1$s\n\n
isisfish.params.toString.populations=Populations\:
@@ -610,11 +612,11 @@
isisfish.params.toString.script.logger.level=niveau du logger de scripts %1$s
isisfish.params.toString.script.presimulation=Script de presimulation
isisfish.params.toString.simul.logger.level=niveau du logger de simulateur %1$s
-isisfish.params.toString.simulation.done=Simulation r\u00E9alis\u00E9e avec %1$s\:
-isisfish.params.toString.strategies=Strat\u00E9gies d'exploitation\:
+isisfish.params.toString.simulation.done=Simulation r\u00e9alis\u00e9e avec %1$s\:
+isisfish.params.toString.strategies=Strat\u00e9gies d'exploitation\:
isisfish.params.useAnalysePlan=Utiliser le plan d'analyse
-isisfish.params.usePreSimulationScript=Utiliser un script de pr\u00E9-simulation
-isisfish.population.capturability=Capturabilit\u0E009e
+isisfish.params.usePreSimulationScript=Utiliser un script de pr\u00e9-simulation
+isisfish.population.capturability=Capturabilit\u0e009e
isisfish.population.comments=Commentaires
isisfish.population.group=Groupe
isisfish.population.groups=Groupes
@@ -625,48 +627,48 @@
isisfish.population.reproduction=Reproduction
isisfish.population.season=Saison
isisfish.population.zones=Zones
-isisfish.populationBasics.geographicID=Identifiant g\u00E9ographique
+isisfish.populationBasics.geographicID=Identifiant g\u00e9ographique
isisfish.populationBasics.growth=Croissance
isisfish.populationBasics.growthReverse=Croissance inverse
-isisfish.populationBasics.maturityGroup=Groupe de maturit\u00E9
+isisfish.populationBasics.maturityGroup=Groupe de maturit\u00e9
isisfish.populationBasics.name=nom
isisfish.populationBasics.numberGroup=Nombre de groupes
isisfish.populationBasics.plusGroup=plusGroup
isisfish.populationBasics.recreateClasses=Recruter les classes
isisfish.populationBasics.title=Saisie des Populations
isisfish.populationCapturability.comments=Commentaires
-isisfish.populationCapturability.selectCoefficient=S\u00E9lectionnez un coefficient par saison et par classe
-isisfish.populationCapturability.title=Saisie de la capturabilit\u00E9
+isisfish.populationCapturability.selectCoefficient=S\u00e9lectionnez un coefficient par saison et par classe
+isisfish.populationCapturability.title=Saisie de la capturabilit\u00e9
isisfish.populationEquation.meanWeight=Poids principal
-isisfish.populationEquation.naturalDeathRate=Taux de mortalit\u00E9 naturelle
+isisfish.populationEquation.naturalDeathRate=Taux de mortalit\u00e9 naturelle
isisfish.populationEquation.price=Prix
isisfish.populationEquation.title=inputPopulationEquation
isisfish.populationGroup.age=age
isisfish.populationGroup.comments=Commentaires
isisfish.populationGroup.length=longueur
isisfish.populationGroup.meanWeigth=Poids principal
-isisfish.populationGroup.naturalDeathRate=Taux de mortalit\u00E9 naturelle
+isisfish.populationGroup.naturalDeathRate=Taux de mortalit\u00e9 naturelle
isisfish.populationGroup.price=prix
isisfish.populationGroup.reproductionRate=Taux de reproduction
isisfish.populationGroup.title=Saisie des groupes de population
isisfish.populationGroup.toString=%1$s Groupe %2$s
isisfish.populationMigration.comments=Commentaires
-isisfish.populationMigration.selectSeason=S\u00E9lectionnez une saison
+isisfish.populationMigration.selectSeason=S\u00e9lectionnez une saison
isisfish.populationMigration.title=Migration
-isisfish.populationMigration.useEquation=Utiliser l'\u00E9quation
+isisfish.populationMigration.useEquation=Utiliser l'\u00e9quation
isisfish.populationMigrationEmigration.coefficient=Coefficient
-isisfish.populationMigrationEmigration.departureZone=Zone de d\u00E9part
-isisfish.populationMigrationImmigration.arrivalZone=Zone d'arriv\u00E9e
+isisfish.populationMigrationEmigration.departureZone=Zone de d\u00e9part
+isisfish.populationMigrationImmigration.arrivalZone=Zone d'arriv\u00e9e
isisfish.populationMigrationImmigration.coefficient=Coefficient
-isisfish.populationMigrationMigration.arrivalZone=Zone d'arriv\u00E9e
+isisfish.populationMigrationMigration.arrivalZone=Zone d'arriv\u00e9e
isisfish.populationMigrationMigration.coefficient=Coefficient
-isisfish.populationMigrationMigration.departureZone=Zone de d\u00E9part
+isisfish.populationMigrationMigration.departureZone=Zone de d\u00e9part
isisfish.populationRecruitment.comments=Commentaires
isisfish.populationRecruitment.recruitmentDistribution=Distribution du recrutement
isisfish.populationRecruitment.reproductionEquation=Equation de reproduction
isisfish.populationRecruitment.title=Saisie des recrutements
-isisfish.populationSeasonInfo.arrival=Arriv\u00E9e
-isisfish.populationSeasonInfo.departure=D\u00E9part
+isisfish.populationSeasonInfo.arrival=Arriv\u00e9e
+isisfish.populationSeasonInfo.departure=D\u00e9part
isisfish.populationSeasonInfo.distributionSpawing=Distribution of spawing
isisfish.populationSeasonInfo.emigration=Emigration
isisfish.populationSeasonInfo.group=Groupe
@@ -676,35 +678,35 @@
isisfish.populationSeasonInfo.toString=%1$s saison %2$s-%3$s
isisfish.populationSeasons.changeGroup=Changement de groupe
isisfish.populationSeasons.comments=Commentaires
-isisfish.populationSeasons.distributionSpawning=R\u00E9partition des apparitions
-isisfish.populationSeasons.selectSeason=S\u00E9lectionnez une saison
+isisfish.populationSeasons.distributionSpawning=R\u00e9partition des apparitions
+isisfish.populationSeasons.selectSeason=S\u00e9lectionnez une saison
isisfish.populationSeasons.title=Saisons
isisfish.populationZones.betweenSpawningRecruitmentAreas=Correspondance entre les zones d'apparitions et de recrutement
-isisfish.populationZones.selectPopulationAreas=S\u00E9lectionnez les zones des populations
-isisfish.populationZones.selectRecruitmentAreas=S\u00E9lectionnez les zones de recrutement
-isisfish.populationZones.selectSpawningAreas=S\u00E9lectionnez les zones d'apparition
+isisfish.populationZones.selectPopulationAreas=S\u00e9lectionnez les zones des populations
+isisfish.populationZones.selectRecruitmentAreas=S\u00e9lectionnez les zones de recrutement
+isisfish.populationZones.selectSpawningAreas=S\u00e9lectionnez les zones d'apparition
isisfish.populationZones.title=Zones
isisfish.port.cell=Maille du port
isisfish.port.comments=Commentaires
isisfish.port.name=Nom
-isisfish.preScript.backParameter=Retour aux param\u00E8tres
-isisfish.preScript.title=Script de pr\u00E9-simulation
+isisfish.preScript.backParameter=Retour aux param\u00e8tres
+isisfish.preScript.title=Script de pr\u00e9-simulation
isisfish.queue.id=Identifiant
isisfish.queue.launcher=Lanceur de simulation
isisfish.queue.plan=Plan
isisfish.queue.progression=Progression
isisfish.queue.showLog=Voir les logs de la simulation
isisfish.queue.simulationLaunch=Lanceur de la queue des simulations
-isisfish.queue.status=\u00C9tat
-isisfish.queue.stopSimulation=Arr\u00EAter la simulation
+isisfish.queue.status=\u00c9tat
+isisfish.queue.stopSimulation=Arr\u00eater la simulation
isisfish.queue.title=Queue
isisfish.result.abundance=Abondance
-isisfish.result.add=Ajouter un r\u00E9sultat
-isisfish.result.begin.simulation=En d\u00E9but de simulation\:
+isisfish.result.add=Ajouter un r\u00e9sultat
+isisfish.result.begin.simulation=En d\u00e9but de simulation\:
isisfish.result.capture=Capturer
-isisfish.result.capture.metier=Capturer par m\u00E9tier
+isisfish.result.capture.metier=Capturer par m\u00e9tier
isisfish.result.choose.simulation=Choisir une simulation
-isisfish.result.datas=Donn\u00E9es
+isisfish.result.datas=Donn\u00e9es
isisfish.result.datasRadioButton=defaultToolTip-fr.ifremer.resultat.ResultatEdit.donneeRadioButton
isisfish.result.desktopPane=defaultToolTip-fr.ifremer.resultat.ResultatView.desktopPane
isisfish.result.dimension=Dimension
@@ -722,7 +724,7 @@
isisfish.result.menuExport=defaultToolTip-fr.ifremer.resultat.ResultatEdit.menuExport
isisfish.result.menubar=defaultToolTip-fr.ifremer.resultat.ResultatView.menubar1
isisfish.result.menuitem=defaultToolTip-fr.ifremer.resultat.ResultatView.menuitem2
-isisfish.result.new.window=Ouvrir une nouvelle fen\u00EAtre
+isisfish.result.new.window=Ouvrir une nouvelle fen\u00eatre
isisfish.result.openWindowButton=defaultToolTip-fr.ifremer.resultat.ResultatView.openWindowButton
isisfish.result.quit=Quitter
isisfish.result.reject.metier=Rejet par metier
@@ -735,49 +737,49 @@
isisfish.result.statusBar=defaultToolTip-fr.ifremer.resultat.ResultatEdit.statusbar1
isisfish.result.statusImage=defaultToolTip-fr.ifremer.resultat.ResultatEdit.statusImage
isisfish.result.stress.metier=Effort par metier
-isisfish.result.summary=R\u00E9sum\u00E9
+isisfish.result.summary=R\u00e9sum\u00e9
isisfish.result.summaryRadioButton=defaultToolTip-fr.ifremer.resultat.ResultatEdit.resumeRadioButton
isisfish.result.table=defaultToolTip-fr.ifremer.resultat.ResultatView.table33
-isisfish.result.title=R\u00E9sultat
+isisfish.result.title=R\u00e9sultat
isisfish.result.tooltip.show.simulation.log=Cliquer pour afficher la console des logs de la simulation
isisfish.result.unload.metier=Debarquement par metier
isisfish.result.vbox=defaultToolTip-fr.ifremer.resultat.ResultatView.vbox1
isisfish.result.viewPanel=defaultToolTip-fr.ifremer.resultat.ResultatEdit.viewPanel
-isisfish.resultChoice.save=R\u00E9sultats \u00E0 sauvegarder
-isisfish.resultChoice.saved=R\u00E9sultats sauvegard\u00E9
-isisfish.resultChoice.title=Choix de r\u00E9sultats
+isisfish.resultChoice.save=R\u00e9sultats \u00e0 sauvegarder
+isisfish.resultChoice.saved=R\u00e9sultats sauvegard\u00e9
+isisfish.resultChoice.title=Choix de r\u00e9sultats
isisfish.resume.matrixInfoGrid=defaultToolTip-fr.ifremer.resultat.ResumePanel.matriceInfoGrid
isisfish.resume.resumeTextArea=defaultToolTip-fr.ifremer.resultat.ResumePanel.resumeTextArea
isisfish.resume.scrolledwindow=defaultToolTip-fr.ifremer.resultat.ResumePanel.scrolledwindow2
isisfish.resume.table=defaultToolTip-fr.ifremer.resultat.ResumePanel.table1
-isisfish.script.check=V\u00E9rifier
+isisfish.script.check=V\u00e9rifier
isisfish.script.commit=Commit
isisfish.script.copy=Copier
isisfish.script.cut=Couper
-isisfish.script.evaluate=\u00C9valuer
+isisfish.script.evaluate=\u00c9valuer
isisfish.script.export=Exporter des scripts dans une archive zip
isisfish.script.export.cancel=annuler
isisfish.script.export.checkAll=(de)-select tout
isisfish.script.export.chooseDir=...
isisfish.script.export.ok=exporter
-isisfish.script.export.tooltip.checkAll=(D\u00E9-)S\u00E9lectionner tous les scripts \u00E0 exporter
-isisfish.script.export.tooltip.chooseDir=Choisir le r\u00E9pertoire o\u00F9 exporter les scripts
+isisfish.script.export.tooltip.checkAll=(D\u00e9-)S\u00e9lectionner tous les scripts \u00e0 exporter
+isisfish.script.export.tooltip.chooseDir=Choisir le r\u00e9pertoire o\u00f9 exporter les scripts
isisfish.script.import=Importer des scripts depuis une archive zip
isisfish.script.import.cancel=annuler
isisfish.script.import.checkAll=(de)-select tout
-isisfish.script.import.labelAdd=Le(s) fichier(s) suivant(s) sera(ont) ajout\u00E9(s), Confirmer l'ajout
-isisfish.script.import.labelOverwrite=Le(s) fichier(s) suivant(s) existe(nt) d\u00E9j\u00E0, Confirmer pour l'\u00E9crasement
+isisfish.script.import.labelAdd=Le(s) fichier(s) suivant(s) sera(ont) ajout\u00e9(s), Confirmer l'ajout
+isisfish.script.import.labelOverwrite=Le(s) fichier(s) suivant(s) existe(nt) d\u00e9j\u00e0, Confirmer pour l'\u00e9crasement
isisfish.script.import.ok=importer
-isisfish.script.import.tooltip.checkAll=(D\u00E9-)S\u00E9lectionner tous les scripts \u00E0 importer
-isisfish.script.menu.checkSyntax=V\u00E9rifier la syntaxe
+isisfish.script.import.tooltip.checkAll=(D\u00e9-)S\u00e9lectionner tous les scripts \u00e0 importer
+isisfish.script.menu.checkSyntax=V\u00e9rifier la syntaxe
isisfish.script.menu.code=Code
isisfish.script.menu.commit=Commiter des scripts sur le serveur
isisfish.script.menu.copy=Copier
isisfish.script.menu.cut=Couper
isisfish.script.menu.deleteLocaly=Supprimer localement
isisfish.script.menu.deleteLocalyServer=Supprimer localement et sur le serveur
-isisfish.script.menu.diff=Voir les diff\u00E9rences avec la version du serveur
-isisfish.script.menu.edit=\u00C9dition
+isisfish.script.menu.diff=Voir les diff\u00e9rences avec la version du serveur
+isisfish.script.menu.edit=\u00c9dition
isisfish.script.menu.evaluate=Evaluer
isisfish.script.menu.file=Fichier
isisfish.script.menu.new=Nouveau
@@ -791,7 +793,7 @@
isisfish.script.menu.txtNewAnalysePlan=Nouveau plan d'analyse
isisfish.script.menu.txtNewEquationModel=Nouvelle formule
isisfish.script.menu.txtNewExport=Nouveau script d'export
-isisfish.script.menu.txtNewRule=Nouvelle r\u00E8gle
+isisfish.script.menu.txtNewRule=Nouvelle r\u00e8gle
isisfish.script.menu.txtNewScript=Nouveau Script
isisfish.script.menu.txtNewSimulator=Nouveau Simulateur
isisfish.script.menu.txtVCS=Serveur
@@ -803,10 +805,10 @@
isisfish.script.txtExport=Exporter
isisfish.season.toString=saison %1$s-%2$s
isisfish.selectivity.equation=Equation
-isisfish.selectivity.selectPopulation=S\u00E9lectionnez une population
-isisfish.selectivity.title=S\u00E9lectivit\u00E9
-isisfish.sens.backParameter=Retour aux param\u00E8tres
-isisfish.sens.title=Analyse de sensibilit\u00E9
+isisfish.selectivity.selectPopulation=S\u00e9lectionnez une population
+isisfish.selectivity.title=S\u00e9lectivit\u00e9
+isisfish.sens.backParameter=Retour aux param\u00e8tres
+isisfish.sens.title=Analyse de sensibilit\u00e9
isisfish.sensWizardPanels.add=Ajouter
isisfish.sensWizardPanels.clear=Effacer
isisfish.sensWizardPanels.down=Bas
@@ -816,19 +818,19 @@
isisfish.sensWizardPanels.object=Objet
isisfish.sensWizardPanels.remove=Supprimer
isisfish.sensWizardPanels.scripts=Liste des scripts
-isisfish.sensWizardPanels.selectType=Selectionner le type \u00E0 ajouter
+isisfish.sensWizardPanels.selectType=Selectionner le type \u00e0 ajouter
isisfish.sensWizardPanels.type=Type
isisfish.sensWizardPanels.up=Haut
isisfish.sensWizardPanels.validate=Valider
isisfish.sensWizardPanels.values=Valeurs
isisfish.sensibilityWizard.title=Sensibility Wizard
-isisfish.server.ssh.generateKey.title=G\u00E9n\u00E9rer une cl\u00E9 SSH
+isisfish.server.ssh.generateKey.title=G\u00e9n\u00e9rer une cl\u00e9 SSH
isisfish.setOfVessels.comments=Commentaires
-isisfish.setOfVessels.fixedCosts=Co\u00FBts fixes
+isisfish.setOfVessels.fixedCosts=Co\u00fbts fixes
isisfish.setOfVessels.name=Nom
isisfish.setOfVessels.numberOfVessels=Nombre de navires
isisfish.setOfVessels.technicalEfficiency=
-isisfish.setOfVessels.title=Caract\u00E9ristiques
+isisfish.setOfVessels.title=Caract\u00e9ristiques
isisfish.setOfVessels.vesselType=Type de navire
isisfish.simpleResult.legendPanel=defaultToolTip-fr.ifremer.isisfish.map.SimpleIsisMapBeanBean.legendPanel
isisfish.simpleResult.more.information=Cliquer sur une cellule pour plus d'informations...
@@ -837,35 +839,35 @@
isisfish.simpleResult.table=defaultToolTip-fr.ifremer.isisfish.map.SimpleResultatMapBean.table12
isisfish.simulation.log.console.title=Console de log simulation '%1$s'
isisfish.simulation.log.showConsole=affichage de la console de log pour la simulation %1$s
-isisfish.simulation.menu.import=Restaurer les param\u00E9tres d'une simulation
-isisfish.simulation.menu.save=Sauver les param\u00E8tres de la simulation
+isisfish.simulation.menu.import=Restaurer les param\u00e9tres d'une simulation
+isisfish.simulation.menu.save=Sauver les param\u00e8tres de la simulation
isisfish.simulation.menu.simulation=Simulation
isisfish.simulation.name=Nom de la simulation
-isisfish.simulation.remote.message.connection=Connexion \u00E0 Caparmor
-isisfish.simulation.remote.message.downloadresults=T\u00E9l\u00E9chargement des r\u00E9sultats
+isisfish.simulation.remote.message.connection=Connexion \u00e0 Caparmor
+isisfish.simulation.remote.message.downloadresults=T\u00e9l\u00e9chargement des r\u00e9sultats
isisfish.simulation.remote.message.launch=Lancement de la simulation
isisfish.simulation.remote.message.upload=Upload de la simulation
isisfish.simulation.title=Lanceur de simulation
-isisfish.simulator.launcher.inprocess=dans le m\u00EAme processus
+isisfish.simulator.launcher.inprocess=dans le m\u00eame processus
isisfish.simulator.launcher.remote=sur le serveur Caparmor
isisfish.simulator.launcher.subprocess=dans un sous processus
-isisfish.simulator.simulaction.badid=Impossible de lancer la simulation '%s' \: l'identifiant existe d\u00E9j\u00E0 \!
+isisfish.simulator.simulaction.badid=Impossible de lancer la simulation '%s' \: l'identifiant existe d\u00e9j\u00e0 \!
isisfish.simulator.subprocess.readoutput.error=
isisfish.species.age=Age
isisfish.species.cee=CEE
isisfish.species.comments=Commentaires
isisfish.species.length=Longueur
-isisfish.species.name=Nom des esp\u00E8ces
+isisfish.species.name=Nom des esp\u00e8ces
isisfish.species.rubbinCode=Code Rubbin
isisfish.species.scientificName=Scientific name
-isisfish.species.structured=Structur\u00E9
+isisfish.species.structured=Structur\u00e9
isisfish.strategy.comments=Commentaires
-isisfish.strategy.inactivityEquationUsed=Utiliser une \u00E9quation d'inactivit\u00E9
+isisfish.strategy.inactivityEquationUsed=Utiliser une \u00e9quation d'inactivit\u00e9
isisfish.strategy.name=Nom
isisfish.strategy.proportionSetOfVessels=Proportion des ensembles de navires
-isisfish.strategy.title=Caract\u00E9ristiques
-isisfish.strategyMonthInfo.metier=M\u00E9tier
-isisfish.strategyMonthInfo.minInactivityDays=Jour minimums d'inactivit\u00E9
+isisfish.strategy.title=Caract\u00e9ristiques
+isisfish.strategyMonthInfo.metier=M\u00e9tier
+isisfish.strategyMonthInfo.minInactivityDays=Jour minimums d'inactivit\u00e9
isisfish.strategyMonthInfo.numberOfTrips=Nombre de trajets
isisfish.strategyMonthInfo.proportion=Proportion
isisfish.strategyMonthInfo.title=StrategyMonthInfo
@@ -875,7 +877,7 @@
isisfish.tray.simulation=Isis-fish - %1$s \: %2$s/%3$s
isisfish.tray.simulation.no=Isis-fish - Pas de simulation
isisfish.tripType.comments=Commentaires
-isisfish.tripType.duration=Dur\u00E9e
+isisfish.tripType.duration=Dur\u00e9e
isisfish.tripType.minTime=Temps minimal entre deux voyages
isisfish.tripType.name=Nom
isisfish.vcs.ask.passphrase=Entrez votre passe phrase (si votre clef ssh en contient une).
@@ -884,97 +886,97 @@
isisfish.vcs.commit.cancel=annuler
isisfish.vcs.commit.label=Entrer quelques mots concernant la modification des scripts
isisfish.vcs.commit.ok=confirmer
-isisfish.vcs.init.notfoundcantdownload=La base de donn\u00E9es pour la version %s n'a ni pu \u00EAtre trouv\u00E9e, ni t\u00E9l\u00E9charg\u00E9e.\nVous devez la t\u00E9l\u00E9charger manullement \u00E0 partir du site d'Isis-Fish.
-isisfish.vcs.init.wrongprotocol=Votre base de donn\u00E9es locale \: %s n'utilise pas un protocole correct.\nVoulez-vous faire une sauvegarde de cette base et r\u00E9cup\u00E9rer une meilleure version ?
-isisfish.vcs.switchprotocol.confirm=Le protocole d'acc\u00E8s au d\u00E9p\u00F4t des scripts a chang\u00E9.\nVoulez-vous changer vers le nouveau d\u00E9p\u00F4t ?
-isisfish.vcs.switchtag.warningconflict=Votre base de donn\u00E9es a \u00E9t\u00E9 mise \u00E0 jour\nmais les fichiers suivants sont en conflit, merci de les v\u00E9rifier \:\n%s
-isisfish.vcs.switchversion.confirm=Vous n'utilisez pas le d\u00E9p\u00F4t correct pour votre version d'Isis-Fish \: %s.\nVoulez-vous changer de d\u00E9p\u00F4t ?
-isisfish.vcs.update=R\u00E9sultats de la synchronisation avec le serveur
+isisfish.vcs.init.notfoundcantdownload=La base de donn\u00e9es pour la version %s n'a ni pu \u00eatre trouv\u00e9e, ni t\u00e9l\u00e9charg\u00e9e.\nVous devez la t\u00e9l\u00e9charger manullement \u00e0 partir du site d'Isis-Fish.
+isisfish.vcs.init.wrongprotocol=Votre base de donn\u00e9es locale \: %s n'utilise pas un protocole correct.\nVoulez-vous faire une sauvegarde de cette base et r\u00e9cup\u00e9rer une meilleure version ?
+isisfish.vcs.switchprotocol.confirm=Le protocole d'acc\u00e8s au d\u00e9p\u00f4t des scripts a chang\u00e9.\nVoulez-vous changer vers le nouveau d\u00e9p\u00f4t ?
+isisfish.vcs.switchtag.warningconflict=Votre base de donn\u00e9es a \u00e9t\u00e9 mise \u00e0 jour\nmais les fichiers suivants sont en conflit, merci de les v\u00e9rifier \:\n%s
+isisfish.vcs.switchversion.confirm=Vous n'utilisez pas le d\u00e9p\u00f4t correct pour votre version d'Isis-Fish \: %s.\nVoulez-vous changer de d\u00e9p\u00f4t ?
+isisfish.vcs.update=R\u00e9sultats de la synchronisation avec le serveur
isisfish.vcs.update.cancel=annuler
isisfish.vcs.update.checkAll=(de)-select tout
isisfish.vcs.update.local=Systeme local
-isisfish.vcs.update.local.modified=Fichiers modifi\u00E9s
-isisfish.vcs.update.local.outofdateAndModified=Fichiers localement modifi\u00E9s en conflit avec le serveur
-isisfish.vcs.update.local.tooltip.modified=Fichiers localement modifi\u00E9s \n(confirmer pour revenir \u00E0 la version avant modification ou soum\u00EAtre au serveur)
-isisfish.vcs.update.local.tooltip.outofdateAndModified=Fichiers localement modifi\u00E9s mais ayant une version plus r\u00E9cente sur le serveur\n (confirmer pour revenir \u00E0 la version avant modification ou r\u00E9cup\u00E9rer la nouvelle version du serveur)
-isisfish.vcs.update.local.tooltip.unversionned=Fichiers uniquement pr\u00E9sents sur votre systeme \n(confirmer pour les enregister sur le serveur)
+isisfish.vcs.update.local.modified=Fichiers modifi\u00e9s
+isisfish.vcs.update.local.outofdateAndModified=Fichiers localement modifi\u00e9s en conflit avec le serveur
+isisfish.vcs.update.local.tooltip.modified=Fichiers localement modifi\u00e9s \n(confirmer pour revenir \u00e0 la version avant modification ou soum\u00eatre au serveur)
+isisfish.vcs.update.local.tooltip.outofdateAndModified=Fichiers localement modifi\u00e9s mais ayant une version plus r\u00e9cente sur le serveur\n (confirmer pour revenir \u00e0 la version avant modification ou r\u00e9cup\u00e9rer la nouvelle version du serveur)
+isisfish.vcs.update.local.tooltip.unversionned=Fichiers uniquement pr\u00e9sents sur votre systeme \n(confirmer pour les enregister sur le serveur)
isisfish.vcs.update.local.unversionned=Nouveaux fichiers
isisfish.vcs.update.ok=continuer
isisfish.vcs.update.remote=Serveur distant
isisfish.vcs.update.remote.missing=Nouveaux fichiers
-isisfish.vcs.update.remote.outofdate=Fichiers plus r\u00E9cents sur le serveur
-isisfish.vcs.update.remote.tooltip.missing=Nouveaux fichiers uniquement pr\u00E9sents sur le serveur \n(confirmer pour les r\u00E9cup\u00E9rer)
-isisfish.vcs.update.remote.tooltip.outofdate=Fichiers dont il existe une version plus r\u00E9cente sur le serveur \n(confirmer pour les r\u00E9cup\u00E9rer)
-isisfish.vcs.update.tooltip.checkAll=(D\u00E9-)S\u00E9lectionner tous les fichiers (\u00E0 action unique) que vous voulez traiter
+isisfish.vcs.update.remote.outofdate=Fichiers plus r\u00e9cents sur le serveur
+isisfish.vcs.update.remote.tooltip.missing=Nouveaux fichiers uniquement pr\u00e9sents sur le serveur \n(confirmer pour les r\u00e9cup\u00e9rer)
+isisfish.vcs.update.remote.tooltip.outofdate=Fichiers dont il existe une version plus r\u00e9cente sur le serveur \n(confirmer pour les r\u00e9cup\u00e9rer)
+isisfish.vcs.update.tooltip.checkAll=(D\u00e9-)S\u00e9lectionner tous les fichiers (\u00e0 action unique) que vous voulez traiter
isisfish.vcs.update.tooltip.local=vcs.update.tooltip.local
isisfish.vcs.update.tooltip.remote=vcs.update.tooltip.remote
-isisfish.vcs.updateconfirm=Confirmation des ope\u00E9rations de synchronisation avec le serveur
+isisfish.vcs.updateconfirm=Confirmation des ope\u00e9rations de synchronisation avec le serveur
isisfish.vcs.updateconfirm.cancel=annuler
isisfish.vcs.updateconfirm.checkAll=(de)-select tout
-isisfish.vcs.updateconfirm.label=Confirmer les op\u00E9rations qui pourraient \u00E9craser vos fichiers
-isisfish.vcs.updateconfirm.label2='Etes vous sur de vouloir effectuer ces op\u00E9rations ?'
+isisfish.vcs.updateconfirm.label=Confirmer les op\u00e9rations qui pourraient \u00e9craser vos fichiers
+isisfish.vcs.updateconfirm.label2='Etes vous sur de vouloir effectuer ces op\u00e9rations ?'
isisfish.vcs.updateconfirm.ok=confirmer
-isisfish.vcs.updateconfirm.tooltip.checkAll=(D\u00E9-)S\u00E9lectionner tous les scripts que vous voulez traiter
-isisfish.vcs.updaterepository.confirm=Votre d\u00E9p\u00F4t des scripts n'est pas \u00E0 jour.\nVoulez-vous mettre \u00E0 jour votre d\u00E9p\u00F4t ?\n\nLes fichiers modifi\u00E9s sont \:\n%s
+isisfish.vcs.updateconfirm.tooltip.checkAll=(D\u00e9-)S\u00e9lectionner tous les scripts que vous voulez traiter
+isisfish.vcs.updaterepository.confirm=Votre d\u00e9p\u00f4t des scripts n'est pas \u00e0 jour.\nVoulez-vous mettre \u00e0 jour votre d\u00e9p\u00f4t ?\n\nLes fichiers modifi\u00e9s sont \:\n%s
isisfish.vcs.vcssvn.add.error=Impossible d'ajouter un fichier
-isisfish.vcs.vcssvn.add.errorreadonly=Vous ne pouver pas ajouter de fichier, ce d\u00E9p\u00F4t est en lecture seule \!
-isisfish.vcs.vcssvn.checkProtocol.error=Impossible d'obtenir l'adresse correspondant au d\u00E9p\u00F4t local
-isisfish.vcs.vcssvn.checkProtocol.relocate=Transfert du d\u00E9p\u00F4t %s de %s vers %s
-isisfish.vcs.vcssvn.checkout.error=Impossible de mettre \u00E0 jour
+isisfish.vcs.vcssvn.add.errorreadonly=Vous ne pouver pas ajouter de fichier, ce d\u00e9p\u00f4t est en lecture seule \!
+isisfish.vcs.vcssvn.checkProtocol.error=Impossible d'obtenir l'adresse correspondant au d\u00e9p\u00f4t local
+isisfish.vcs.vcssvn.checkProtocol.relocate=Transfert du d\u00e9p\u00f4t %s de %s vers %s
+isisfish.vcs.vcssvn.checkout.error=Impossible de mettre \u00e0 jour
isisfish.vcs.vcssvn.commit.error=Impossible de commiter
-isisfish.vcs.vcssvn.commit.errorreadonly=Vous ne pouvez pas commiter, le d\u00E9p\u00F4t est en lecture seule
+isisfish.vcs.vcssvn.commit.errorreadonly=Vous ne pouvez pas commiter, le d\u00e9p\u00f4t est en lecture seule
isisfish.vcs.vcssvn.delete.error=Impossible de supprimer des fichiers
-isisfish.vcs.vcssvn.delete.errorreadonly=Vous ne pouvez pas supprimer ce fichier, le d\u00E9p\u00F4t est en lecture seule
+isisfish.vcs.vcssvn.delete.errorreadonly=Vous ne pouvez pas supprimer ce fichier, le d\u00e9p\u00f4t est en lecture seule
isisfish.vcs.vcssvn.diff.error=Impossible d'obtenir le diff
-isisfish.vcs.vcssvn.gettag.error=Erreur lors de la r\u00E9cup\u00E9ration de l'adresse du d\u00E9p\u00F4t local
+isisfish.vcs.vcssvn.gettag.error=Erreur lors de la r\u00e9cup\u00e9ration de l'adresse du d\u00e9p\u00f4t local
isisfish.vcs.vcssvn.getupdate.error=Impossible d'obtenir le statut des fichiers
isisfish.vcs.vcssvn.global.filelocalandremotestatus=Le statut du fichier %s est (l\:%s/d\:%s)
isisfish.vcs.vcssvn.global.filestatus=Le statut de %s est %s
-isisfish.vcs.vcssvn.global.foundUpdatedFile=Ajout de %s comme fichier mis \u00E0 jour
-isisfish.vcs.vcssvn.global.torevision=\u00C0 la r\u00E9vision \: %d
-isisfish.vcs.vcssvn.isconnected.switchoff=Impossible de se connecter au serveur, passage en mode d\u00E9connect\u00E9 \: %s
-isisfish.vcs.vcssvn.isconnected.switchto=Connexion au serveur disponible, passage en mode connect\u00E9 \: %s
+isisfish.vcs.vcssvn.global.foundUpdatedFile=Ajout de %s comme fichier mis \u00e0 jour
+isisfish.vcs.vcssvn.global.torevision=\u00c0 la r\u00e9vision \: %d
+isisfish.vcs.vcssvn.isconnected.switchoff=Impossible de se connecter au serveur, passage en mode d\u00e9connect\u00e9 \: %s
+isisfish.vcs.vcssvn.isconnected.switchto=Connexion au serveur disponible, passage en mode connect\u00e9 \: %s
isisfish.vcs.vcssvn.isonremote.error=Le fichier %s n'est pas sur le serveur
isisfish.vcs.vcssvn.istag.notexist=Le tag %s n'existe pas
isisfish.vcs.vcssvn.isuptodate.error=Impossible d'obtenir le statut de fichier
isisfish.vcs.vcssvn.list.error=Impossible de lister
isisfish.vcs.vcssvn.localstatus.error=Impossible d'obtenir le statut local de fichier
isisfish.vcs.vcssvn.remotestatus.error=Impossible d'obtenir le statut distant de fichier
-isisfish.vcs.vcssvn.setTag.error=Erreur lors de la r\u00E9cup\u00E9ration de l'adresse du d\u00E9p\u00F4t local
-isisfish.vcs.vcssvn.settag.switchfromto=Switch du tag du d\u00E9p\u00F4t de %s \u00E0 %s
-isisfish.vcs.vcssvn.update.error=Impossible de mettre \u00E0 jour
-isisfish.vcs.vcssvn.update.notinlocal=Impossible de mettre \u00E0 jour des fichiers qui ne sont pas pas dans le d\u00E9p\u00F4t
-isisfish.versionStorage.removed=Supprim\u00E9
-isisfish.vesselType.activityRange=Intervalle d'activit\u00E9
+isisfish.vcs.vcssvn.setTag.error=Erreur lors de la r\u00e9cup\u00e9ration de l'adresse du d\u00e9p\u00f4t local
+isisfish.vcs.vcssvn.settag.switchfromto=Switch du tag du d\u00e9p\u00f4t de %s \u00e0 %s
+isisfish.vcs.vcssvn.update.error=Impossible de mettre \u00e0 jour
+isisfish.vcs.vcssvn.update.notinlocal=Impossible de mettre \u00e0 jour des fichiers qui ne sont pas pas dans le d\u00e9p\u00f4t
+isisfish.versionStorage.removed=Supprim\u00e9
+isisfish.vesselType.activityRange=Intervalle d'activit\u00e9
isisfish.vesselType.comments=Commentaires
-isisfish.vesselType.fuelCost=Co\u00FBt d'un trajet en fuel
+isisfish.vesselType.fuelCost=Co\u00fbt d'un trajet en fuel
isisfish.vesselType.length=Longueur
-isisfish.vesselType.maxDuration=Dur\u00E9e maximale du trajet
-isisfish.vesselType.miniCrew=Taille minimale d'\u00E9quipage
+isisfish.vesselType.maxDuration=Dur\u00e9e maximale du trajet
+isisfish.vesselType.miniCrew=Taille minimale d'\u00e9quipage
isisfish.vesselType.name=Nom
isisfish.vesselType.speed=Vitesse
-isisfish.welcome.menu.about=\u00C0 propos
+isisfish.welcome.menu.about=\u00c0 propos
isisfish.welcome.menu.close=Fermer
isisfish.welcome.menu.configuration=Configuration
isisfish.welcome.menu.file=Fichier
-isisfish.welcome.menu.frame=Fen\u00EAtre
+isisfish.welcome.menu.frame=Fen\u00eatre
isisfish.welcome.menu.help=Aide
isisfish.welcome.menu.input=Saisie
-isisfish.welcome.menu.monitor=Fen\u00EAtre de logs
+isisfish.welcome.menu.monitor=Fen\u00eatre de logs
isisfish.welcome.menu.queue=Liste des simulations
-isisfish.welcome.menu.result=R\u00E9sultat
+isisfish.welcome.menu.result=R\u00e9sultat
isisfish.welcome.menu.script=Script
isisfish.welcome.menu.simulation=Lanceur de simulations
isisfish.welcome.menu.synchro=Synchronisation Serveur
isisfish.welcome.menu.vcs.configuration=Configuration vcs
isisfish.welcome.title=Simulation Ifremer
-isisfish.wizardGroupCreation.allGroupsSameSize=Tous les groupes ont la m\u00EAme taille
+isisfish.wizardGroupCreation.allGroupsSameSize=Tous les groupes ont la m\u00eame taille
isisfish.wizardGroupCreation.allValues=Input all the values
-isisfish.wizardGroupCreation.computedGrowthCurve=Calcul\u00E9 par une courbe de croissance
+isisfish.wizardGroupCreation.computedGrowthCurve=Calcul\u00e9 par une courbe de croissance
isisfish.wizardGroupCreation.firstAge=Premier age
isisfish.wizardGroupCreation.firstAgeHelp=First age \= minimal age
isisfish.wizardGroupCreation.firstGroup=Premier groupe
-isisfish.wizardGroupCreation.firstLength=Premi\u00E8re taille
+isisfish.wizardGroupCreation.firstLength=Premi\u00e8re taille
isisfish.wizardGroupCreation.firstLengthHelp=First length \= minimal length of first group
isisfish.wizardGroupCreation.gapBetweenGroupsHelp=gap between to group is 1 year.
isisfish.wizardGroupCreation.groupNumberHelp=number of Group \= number of group wanted
@@ -989,7 +991,7 @@
isisfish.wizardGroupCreation.populationCharacteristics=Input the population characteristics
isisfish.wizardGroupCreation.selectGroupLengthType=Choisir la longueur du groupe
isisfish.wizardGroupCreation.timeStep=Pas de temps (en mois)
-isisfish.wizardGroupCreation.title=Cr\u00E9ation du groupe
+isisfish.wizardGroupCreation.title=Cr\u00e9ation du groupe
isisfish.zone.cells=cellules de la Zone
isisfish.zone.comments=Commentaires
isisfish.zone.name=Nom
Modified: isis-fish/trunk/src/main/resources/log4j.properties
===================================================================
--- isis-fish/trunk/src/main/resources/log4j.properties 2009-01-19 23:28:01 UTC (rev 1745)
+++ isis-fish/trunk/src/main/resources/log4j.properties 2009-01-20 00:50:22 UTC (rev 1746)
@@ -14,3 +14,5 @@
log4j.logger.rules=INFO
log4j.logger.scripts=INFO
log4j.logger.simulators=INFO
+log4j.logger.fr.ifremer.isisfish.ui.input.InputNavigationTreeSelectionAdapter=DEBUG
+log4j.logger.fr.ifremer.isisfish.ui.input.ZoneUI=DEBUG
\ No newline at end of file
1
0
r1745 - in isis-fish/trunk/src/main: java/fr/ifremer/isisfish/ui/input resources
by tchemit@users.labs.libre-entreprise.org Jan. 19, 2009
by tchemit@users.labs.libre-entreprise.org Jan. 19, 2009
Jan. 19, 2009
Author: tchemit
Date: 2009-01-19 23:28:01 +0000 (Mon, 19 Jan 2009)
New Revision: 1745
Removed:
isis-fish/trunk/src/main/resources/.cvsignore
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
Log:
utilisation d'une methode typ?\195?\169e pour ?\195?\169viter tous les casts :)
suppression de .cvsignore (puisqu'on utilise maintenant svn)
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2009-01-19 17:24:26 UTC (rev 1744)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2009-01-19 23:28:01 UTC (rev 1745)
@@ -382,10 +382,10 @@
return currentEntities;
}
- public TopiaEntity getEntity(Class clazz){
+ public <E extends TopiaEntity> E getEntity(Class<E> clazz){
for (TopiaEntity te : currentEntities){
if (clazz.isInstance(te)){
- return te;
+ return (E) te;
}
}
return null;
Deleted: isis-fish/trunk/src/main/resources/.cvsignore
===================================================================
--- isis-fish/trunk/src/main/resources/.cvsignore 2009-01-19 17:24:26 UTC (rev 1744)
+++ isis-fish/trunk/src/main/resources/.cvsignore 2009-01-19 23:28:01 UTC (rev 1745)
@@ -1 +0,0 @@
-oldmappings
1
0
r1744 - isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator
by sletellier@users.labs.libre-entreprise.org Jan. 19, 2009
by sletellier@users.labs.libre-entreprise.org Jan. 19, 2009
Jan. 19, 2009
Author: sletellier
Date: 2009-01-19 17:24:26 +0000 (Mon, 19 Jan 2009)
New Revision: 1744
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/SensUI.jaxx
Log:
Debug table selection
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/SensUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/SensUI.jaxx 2009-01-19 12:21:11 UTC (rev 1743)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator/SensUI.jaxx 2009-01-19 17:24:26 UTC (rev 1744)
@@ -78,7 +78,7 @@
Map<String, Class> values = getContextValue(SimulAction.class).getAnalysePlanParameterName(listSimulParamsAnalysePlansList.getSelectedValue().toString());
int row = 0;
if (values != null){
- DefaultTableModel model = new DefaultTableModel(values.size(), 2){
+ DefaultTableModel model = new DefaultTableModel(){
@Override
public boolean isCellEditable(int row, int column) {
boolean result = false;
@@ -96,15 +96,12 @@
GenericCell value = new GenericCell(name, values.get(name), null);
valuesList.add(value);
propertyList.add(properties);
-// model.setValueAt(value, row, 0);
-// model.setValueAt(properties, row, 1);
row++;
}
model.addColumn("Name", valuesList.toArray());
model.addColumn("Value", propertyList.toArray());
simulParamsAnalysePlans.setModel(model);
ParameterColumnEditor cellEditor = new ParameterColumnEditor();
- cellEditor.setName("Name");
cellEditor.setRegion(getContextValue(SimulAction.class).getRegionStorage());
simulParamsAnalysePlans.getColumnModel().getColumn(1).setCellEditor(cellEditor);
simulParamsAnalysePlans.getModel().addTableModelListener(new TableModelListener() {
1
0
r1743 - isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input
by sletellier@users.labs.libre-entreprise.org Jan. 19, 2009
by sletellier@users.labs.libre-entreprise.org Jan. 19, 2009
Jan. 19, 2009
Author: sletellier
Date: 2009-01-19 12:21:11 +0000 (Mon, 19 Jan 2009)
New Revision: 1743
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputNavigationTreeSelectionAdapter.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx
Log:
Debug
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputNavigationTreeSelectionAdapter.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputNavigationTreeSelectionAdapter.java 2009-01-16 17:52:40 UTC (rev 1742)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputNavigationTreeSelectionAdapter.java 2009-01-19 12:21:11 UTC (rev 1743)
@@ -136,6 +136,9 @@
if (TopiaEntity.class.isInstance(data)){
verif.addCurrentEntity((TopiaEntity) data);
}
+ else{
+ verif.addCurrentEntity(null);
+ }
verif.refreshAll();
verif.setCurrentNode(node);
}
@@ -148,6 +151,27 @@
return null;
}
+ ChildBuilder<TopiaEntity> childParentBuilder = new ChildBuilder<TopiaEntity>(builder) {
+
+ Decorator<? extends TopiaEntity> decorator;
+
+ public void init(Class<? extends TopiaEntity> klass) {
+ decorator = jaxx.runtime.PropertyDecorator.newDecorator(klass, "name");
+ }
+
+ public Decorator<? extends TopiaEntity> getDecorator(TopiaEntity child) {
+ return decorator;
+ }
+
+ public String getJXPath(TopiaEntity child) {
+ return "..[@topiaId=\"" + child.getTopiaId() + "\"]";
+ }
+
+ public String getNavigationPath(TopiaEntity child) {
+ return child.getTopiaId();
+ }
+ };
+
ChildBuilder<TopiaEntity> childBuilder = new ChildBuilder<TopiaEntity>(builder) {
Decorator<? extends TopiaEntity> decorator;
@@ -180,8 +204,7 @@
true, Zone.class, fisheryRegion.getZone(), ZoneUI.class, null);
childBuilder.build(builder.build(root, "Ports", "../port", "$ports", PortUI.class, null),
- true, Port.class, fisheryRegion.getPort(), PortUI.class, null
- );
+ true, Port.class, fisheryRegion.getPort(), PortUI.class, null);
NavigationTreeNode species = builder.build(root, "Species", "../species", "$species", SpeciesUI.class, null);
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2009-01-16 17:52:40 UTC (rev 1742)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2009-01-19 12:21:11 UTC (rev 1743)
@@ -303,6 +303,10 @@
this.currentEntities.add(currentEntity);
setPanelsActifs();
}
+ else{
+ editable = false;
+ setPanelsActifs();
+ }
}
public void removeAllEntity(){
currentEntities.clear();
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx 2009-01-19 12:21:11 UTC (rev 1743)
@@ -61,6 +61,7 @@
//jaxx.runtime.Util.removeDataBinding(get$Table0(), "fieldCellName.text", "fieldCellLongitude.text", "fieldCellLatitude.text", "fieldCellLand.selected", "fieldCellComment.text");
fieldZoneName.setText("");
fieldZoneComment.setText("");
+ jaxx.runtime.swing.Utils.fillList(zoneCells, getRegion().getCell(), null);
}
if (evt.getNewValue() != null) {
// add binding on getBean()
@@ -74,7 +75,6 @@
getVerifier().setCancelButton(cancel);
getVerifier().setNewButton(create, "Zone");
getVerifier().setDeleteButton(remove);
- setBean(null);
Zone zone = (Zone)getVerifier().getEntity(Zone.class);
setBean((ZoneImpl) zone);
jaxx.runtime.swing.Utils.fillList(zoneCells, getRegion().getCell(), getBean().getCell());
@@ -85,8 +85,8 @@
toolSet.setupListeners(zoneMap);
toolMap.add((Component)toolSet);
setMapListener();
- refreshMap();
}
+ refreshMap();
}
protected void setMapListener(){
if (mapListener == null){
1
0