Isis-fish-commits
Threads by month
- ----- 2026 -----
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
January 2009
- 3 participants
- 45 discussions
r1747 - isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/simulator
by sletellier@users.labs.libre-entreprise.org 20 Jan '09
by sletellier@users.labs.libre-entreprise.org 20 Jan '09
20 Jan '09
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 20 Jan '09
by tchemit@users.labs.libre-entreprise.org 20 Jan '09
20 Jan '09
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 19 Jan '09
by tchemit@users.labs.libre-entreprise.org 19 Jan '09
19 Jan '09
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 19 Jan '09
by sletellier@users.labs.libre-entreprise.org 19 Jan '09
19 Jan '09
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 19 Jan '09
by sletellier@users.labs.libre-entreprise.org 19 Jan '09
19 Jan '09
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
r1742 - isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input
by sletellier@users.labs.libre-entreprise.org 16 Jan '09
by sletellier@users.labs.libre-entreprise.org 16 Jan '09
16 Jan '09
Author: sletellier
Date: 2009-01-16 17:52:40 +0000 (Fri, 16 Jan 2009)
New Revision: 1742
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/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/GearUI.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/InputContentUI.jaxx
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputNavigationTreeSelectionAdapter.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/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/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/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/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/PopulationUI.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/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/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/StrategyMonthInfoUI.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/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/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx
Log:
Save on Tab changed
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/CellUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -69,11 +69,9 @@
}
}
});
-public void setInputSaveVerifierBinding(){
+public void refresh() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
-}
-public void refresh() {
Cell cell = (Cell)getVerifier().getEntity(Cell.class);
setBean((CellImpl) cell);
jaxx.runtime.swing.Utils.fillComboBox(fieldCell,getRegion().getCell(), getBean());
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -69,11 +69,9 @@
}
});
-public void setInputSaveVerifierBinding(){
+public void refresh(){
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
-}
-public void refresh(){
SetOfVessels setOfVessels = (SetOfVessels)getVerifier().getEntity(SetOfVessels.class);
setBean((SetOfVesselsImpl) setOfVessels);
if (getBean() != null){
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/FisheryRegionUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -49,11 +49,9 @@
setButtonTitle("isisfish.input.continueCells");
setNextPath("$root/$cells");
-public void setInputSaveVerifierBinding(){
+public void refresh(){
getVerifier().setSaveButton(save, false);
getVerifier().setCancelButton(cancel);
-}
-public void refresh(){
setBean(null);
FisheryRegion region = (FisheryRegion) getVerifier().getEntity(FisheryRegion.class);
setBean((FisheryRegionImpl)region);
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/GearTabUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -63,13 +63,11 @@
}
}
});
-public void setInputSaveVerifierBinding(){
+public void refresh() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
getVerifier().setNewButton(create, "Gear");
getVerifier().setDeleteButton(remove);
-}
-public void refresh() {
Gear gear = (Gear)getVerifier().getEntity(Gear.class);
setBean((GearImpl) gear);
}
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/GearUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -44,8 +44,6 @@
gearTab.addChangeListener(new InputTabbedPaneListener());
public void refresh() {
getVerifier().addCurrentPanel(gearTabUI, selectivityUI);
- gearTabUI.refresh();
- selectivityUI.refresh();
}
]]></script>
<JPanel id='body' layout='{new BorderLayout()}'>
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputAction.java 2009-01-16 17:52:40 UTC (rev 1742)
@@ -51,6 +51,7 @@
import java.beans.PropertyChangeListener;
import java.beans.VetoableChangeListener;
import java.util.Date;
+import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.apache.commons.beanutils.MethodUtils;
Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputContentUI.jaxx
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputContentUI.jaxx 2009-01-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputContentUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -29,7 +29,6 @@
protected void goTo(){
getParentContainer(InputUI.class).setTreeSelection(getNextPath());
}
-public void setInputSaveVerifierBinding(){}
public void setBean(TopiaEntity t){};
]]>
</script>
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputNavigationTreeSelectionAdapter.java 2009-01-16 17:52:40 UTC (rev 1742)
@@ -95,10 +95,7 @@
// apply refresh method (should a contract for all this ui with a method refresh...)
try {
currentUI = (InputContentUI) newUI;
- InputSaveVerifier verif = context.getContextValue(InputSaveVerifier.class);
- verif.addCurrentPanel(currentUI);
- currentUI.setInputSaveVerifierBinding();
- currentUI.refresh();
+ context.getContextValue(InputSaveVerifier.class).addCurrentPanel(currentUI);
currentNode = node;
} catch (Exception e) {
log.debug(e.getMessage(), e);
@@ -139,7 +136,7 @@
if (TopiaEntity.class.isInstance(data)){
verif.addCurrentEntity((TopiaEntity) data);
}
- verif.setPanelsActifs();
+ verif.refreshAll();
verif.setCurrentNode(node);
}
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -33,102 +33,117 @@
<fr.ifremer.isisfish.ui.input.InputContentUI>
+ <!-- bean property -->
+ <fr.ifremer.isisfish.entities.Formule id='formule' javaBean='null'/>
+
+ <String id='lblText' javaBean='null'/>
+
<script><![CDATA[
import fr.ifremer.isisfish.ui.widget.editor.GenericCell;
import fr.ifremer.isisfish.entities.Formule;
+import fr.ifremer.isisfish.entities.Equation;
+import fr.ifremer.isisfish.entities.EquationImpl;
import java.util.logging.Level;
import java.util.logging.Logger;
+import java.lang.reflect.Method;
+import org.apache.commons.beanutils.MethodUtils;
+import org.codelutin.topia.persistence.TopiaEntity;
+import fr.ifremer.isisfish.entities.EquationDAO;
+import fr.ifremer.isisfish.IsisFishDAOHelper;
-protected Class clazz = null;
-protected String nameEquation = null;
-protected String lblText;
-protected Formule f;
+protected Class clazz;
+protected TopiaEntity bean;
+protected String method;
protected String name;
-protected Class c;
+protected Equation selectedEquation;
-public void init(String lblText, Formule f, String name, Class c){
- this.lblText = lblText;
- this.f = f;
+
+public void init(String lblText, TopiaEntity bean, String method, String name, Class c){
+ setLblText(lblText);
+ this.bean = bean;
+ this.method = method;
this.name = name;
- this.c = c;
+ this.clazz = c;
+ selectedEquation = getEquation();
}
-public void refresh(){
- lbl.setText(lblText);
- clazz = c;
+protected Equation getEquation(){
+ Equation result = null;
try {
- editor.open(org.codelutin.util.FileUtil.getTempFile("", ".java"));
- } catch (IOException ex) {
+ if (bean != null){
+ Method m = bean.getClass().getMethod("get" + method, null);
+ result = (Equation) m.invoke(bean, (Object[])null);
+ }
+ } catch (Exception ex) {
Logger.getLogger(InputOneEquationUI.class.getName()).log(Level.SEVERE, null, ex);
}
- setComboModel(f, name);
+ return result;
}
-protected void setComboModel(Formule f, String name){
- DefaultComboBoxModel model = new DefaultComboBoxModel();
- GenericCell cellSelected = null;
- for (Formule formule : getAction().getFormules(getVerifier().getIsisContext(),name)){
- GenericCell cell = new GenericCell(formule.getName(), formule, Formule.class);
- model.addElement(cell);
- if (formule.equals(f)){
- cellSelected = cell;
+protected void setEquation(Formule f){
+ 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);
}
+ } catch (Exception ex) {
+ Logger.getLogger(InputOneEquationUI.class.getName()).log(Level.SEVERE, null, ex);
}
- combo.setModel(model);
- if (cellSelected != null){
- combo.setSelectedItem(cellSelected);
- Formule selected = getFormule();
- if (selected != null){
- editor.setText(selected.getContent());
- }
- }
}
-protected void comboChanged(){
- Formule selected = getFormule();
- if (selected != null){
- editor.setText(selected.getContent());
+public void refresh(){
+ try {
+ editor.open(org.codelutin.util.FileUtil.getTempFile("", ".java"));
+ } catch (IOException ex) {
+ Logger.getLogger(InputOneEquationUI.class.getName()).log(Level.SEVERE, null, ex);
}
- f = selected;
+ setComboModel();
+ setFormule((Formule)combo.getSelectedItem());
+ setEditorText();
}
-protected Formule getFormule(){
- Formule result = null;
- Object selected = combo.getSelectedItem();
- if (selected != null){
- GenericCell cell = (GenericCell) selected;
- if (cell.getValue() != null){
- result = (Formule)cell.getValue();
- }
+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");
}
- return result;
}
protected void saveModel(){
- Formule e = getFormule();
+ 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(f, name);
+ setComboModel();
}
- refresh();
setInfoText(_("isisfish.message.saveModel.finished"));
}
protected void openEditor(){
- Formule e = getFormule();
+ Formule e = (Formule)combo.getSelectedItem();
if (e != null){
getContextValue(InputAction.class).openEditor(e.getCategory(), e.getName(), clazz, e.getContent(), editor);
}
else{
- getContextValue(InputAction.class).openEditor(name,"new",c, editor.getText(), editor);
+ getContextValue(InputAction.class).openEditor(name, "new", clazz, editor.getText(), editor);
}
}
+protected void setEditorText(){
+ editor.setText(getFormule().getContent());
+}
]]>
</script>
<Table id='body'>
<row>
<cell fill='horizontal' anchor='east'>
- <JLabel id='lbl'/>
+ <JLabel id='lbl' text='{getLblText()}'/>
</cell>
<cell fill='horizontal' weightx='1.0'>
- <JComboBox id="combo" onActionPerformed='comboChanged()' enabled='{isActif()}'/>
+ <JComboBox id="combo" onActionPerformed='setFormule((Formule)combo.getSelectedItem());setEquation(getFormule());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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2009-01-16 17:52:40 UTC (rev 1742)
@@ -288,6 +288,7 @@
for (InputContentUI panel : currentPanels){
panel.refresh();
}
+ setPanelsActifs();
}
public void addCurrentEntity(TopiaEntity currentEntity) {
if (currentEntity != null){
@@ -312,6 +313,7 @@
public void addCurrentPanel(InputContentUI... panels) {
for (InputContentUI ui : panels){
this.currentPanels.add(ui);
+ ui.refresh();
}
setPanelsActifs();
}
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputTabbedPaneListener.java 2009-01-16 17:52:40 UTC (rev 1742)
@@ -33,8 +33,6 @@
pane.setSelectedIndex(selectedIndex);
}
ui = (InputContentUI) pane.getSelectedComponent();
- ui.setInputSaveVerifierBinding();
- ui.refresh();
cacheSelectedIndex = pane.getSelectedIndex();
pane.addChangeListener(this);
} catch (Exception ex) {
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -56,13 +56,9 @@
import org.codelutin.topia.TopiaContext;
import javax.swing.table.TableCellEditor;
-
-public void setInputSaveVerifierBinding(){
+ public void refresh() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
-}
- public void refresh() {
- getVerifier().addCurrentPanel(targetFactor);
Metier metier = (Metier)getVerifier().getEntity(Metier.class);
setBean((MetierImpl) metier);
if (getBean() != null){
@@ -77,8 +73,8 @@
}
// TODO : Equation selectionne
- targetFactor.init(_("isisfish.metierSeasonInfoSpecies.targetFactor"), null, "TargetSpeciesTargetFactorEquation", fr.ifremer.isisfish.equation.TargetSpeciesTargetFactorEquation.class);
- targetFactor.refresh();
+ targetFactor.init(_("isisfish.metierSeasonInfoSpecies.targetFactor"), null, "", "TargetSpeciesTargetFactorEquation", fr.ifremer.isisfish.equation.TargetSpeciesTargetFactorEquation.class);
+ getVerifier().addCurrentPanel(targetFactor);
}
else{
DefaultComboBoxModel seasonModel = new DefaultComboBoxModel();
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -84,13 +84,11 @@
}
});
-public void setInputSaveVerifierBinding(){
- getVerifier().setSaveButton(save);
- getVerifier().setCancelButton(cancel);
- getVerifier().setNewButton(create, "MetierSeasonInfo");
- getVerifier().setDeleteButton(remove);
-}
public void refresh() {
+ getVerifier().setSaveButton(save);
+ getVerifier().setCancelButton(cancel);
+ getVerifier().setNewButton(create, "MetierSeasonInfo");
+ getVerifier().setDeleteButton(remove);
Metier metier = (Metier)getVerifier().getEntity(Metier.class);
setBean((MetierImpl) metier);
if (metier != null){
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierTabUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -48,13 +48,11 @@
import java.util.logging.Level;
import java.util.logging.Logger;
-public void setInputSaveVerifierBinding(){
- getVerifier().setSaveButton(save);
- getVerifier().setCancelButton(cancel);
- getVerifier().setNewButton(create, "Metier");
- getVerifier().setDeleteButton(remove);
-}
public void refresh() {
+ getVerifier().setSaveButton(save);
+ getVerifier().setCancelButton(cancel);
+ getVerifier().setNewButton(create, "Metier");
+ getVerifier().setDeleteButton(remove);
try {
Metier metier = (Metier)getVerifier().getEntity(Metier.class);
setBean((MetierImpl) metier);
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -46,10 +46,7 @@
metierTab.addChangeListener(new InputTabbedPaneListener());
public void refresh() {
getVerifier().addCurrentPanel(metierTabUI, metierSeasonInfoUI, metierSeasonSpeciesUI);
- metierTabUI.refresh();
- metierSeasonSpeciesUI.refresh();
metierSeasonInfoUI.setSeasonInit(true);
- metierSeasonInfoUI.refresh();
}
]]></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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -67,24 +67,20 @@
}
});
-public void setInputSaveVerifierBinding(){
+public void refresh(){
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
getVerifier().setNewButton(create, "Population", false);
getVerifier().setDeleteButton(remove);
-}
-public void refresh(){
- getVerifier().addCurrentPanel(growthEquation, growthReverseEquation);
Population population = (Population)getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
if (getBean() != null){
// TODO : Selection equation
- growthEquation.init(_("isisfish.populationBasics.growth"), getBean().getGrowth(), "PopulationGrowth", fr.ifremer.isisfish.equation.PopulationGrowth.class);
- growthReverseEquation.init(_("isisfish.populationBasics.growthReverse"), getBean().getGrowthReverse(), "PopulationGrowthReverse", fr.ifremer.isisfish.equation.PopulationGrowthReverse.class);
- growthEquation.refresh();
- growthReverseEquation.refresh();
+ 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);
if (getBean() != null){
- jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationBasicsMatureClass,getBean().getPopulationGroup(), getBean().getMaturityGroup());
+ 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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -58,11 +58,9 @@
}
});
-public void setInputSaveVerifierBinding(){
+public void refresh(){
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
-}
-public void refresh(){
Population population = (Population)getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
fieldPopulationCapturability.addMatrixListener(new MatrixPanelListener() {
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationEquationUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -43,20 +43,15 @@
import fr.ifremer.isisfish.entities.Population;
import fr.ifremer.isisfish.entities.PopulationImpl;
-public void setInputSaveVerifierBinding(){
+public void refresh(){
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
-}
-public void refresh(){
Population 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);
getVerifier().addCurrentPanel(naturalDeathRate, meanWeight, price);
- naturalDeathRate.init(_("isisfish.populationEquation.naturalDeathRate"), (Formule)getBean().getNaturalDeathRate(), "PopulationNaturalDeathRate", fr.ifremer.isisfish.equation.PopulationNaturalDeathRate.class);
- meanWeight.init(_("isisfish.populationEquation.meanWeight"), (Formule)getBean().getMeanWeight(), "PopulationMeanWeight", fr.ifremer.isisfish.equation.PopulationMeanWeight.class);
- price.init(_("isisfish.populationEquation.price"), (Formule)getBean().getPrice(), "PopulationPrice", fr.ifremer.isisfish.equation.PopulationPrice.class);
- naturalDeathRate.refresh();
- meanWeight.refresh();
- price.refresh();
}
]]>
</script>
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -68,11 +68,9 @@
}
});
-public void setInputSaveVerifierBinding(){
+public void refresh(){
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
-}
-public void refresh(){
Population population = (Population)getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEquationUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -52,13 +52,10 @@
public void refresh(){
Population 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);
getVerifier().addCurrentPanel(migrationEquation, emigrationEquation, immigrationEquation);
- migrationEquation.init(_("isisfish.common.migration"), (Formule)getPopInfo().getMigrationEquation(), "Migration", fr.ifremer.isisfish.equation.MigrationEquation.class);
- emigrationEquation.init(_("isisfish.common.emigration"), (Formule)getPopInfo().getEmigrationEquation(), "Emigration", fr.ifremer.isisfish.equation.EmigrationEquation.class);
- immigrationEquation.init(_("isisfish.common.immigration"), (Formule)getPopInfo().getImmigrationEquation(), "Immigration", fr.ifremer.isisfish.equation.ImmigrationEquation.class);
- migrationEquation.refresh();
- emigrationEquation.refresh();
- immigrationEquation.refresh();
}
]]>
</script>
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -59,11 +59,9 @@
}
});
-public void setInputSaveVerifierBinding(){
+public void refresh(){
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
-}
-public void refresh(){
getVerifier().addCurrentPanel(populationMigrationEquationUI, populationMigrationMigrationUI, populationMigrationImmigrationUI, populationMigrationEmigrationUI);
Population population = (Population)getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
@@ -76,10 +74,6 @@
populationMigrationMigrationUI.init(selected);
populationMigrationImmigrationUI.init(selected);
populationMigrationEmigrationUI.init(selected);
- populationMigrationEquationUI.refresh();
- populationMigrationMigrationUI.refresh();
- populationMigrationImmigrationUI.refresh();
- populationMigrationEmigrationUI.refresh();
}
}
protected void 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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationRecruitmentUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -59,17 +59,14 @@
}
});
-public void setInputSaveVerifierBinding(){
+public void refresh() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
-}
-public void refresh() {
Population population = (Population)getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
+ reproductionEquation.init(_("isisfish.populationRecruitment.reproductionEquation"), getBean(), "ReproductionEquation", "PopulationReproductionEquation", fr.ifremer.isisfish.equation.PopulationGrowth.class);
getVerifier().addCurrentPanel(reproductionEquation);
- reproductionEquation.init(_("isisfish.populationRecruitment.reproductionEquation"), (Formule)getBean().getReproductionEquation(), "PopulationReproductionEquation", fr.ifremer.isisfish.equation.PopulationGrowth.class);
- reproductionEquation.refresh();
}
]]>
</script>
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -83,13 +83,11 @@
}
});
-public void setInputSaveVerifierBinding(){
+public void refresh(){
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
getVerifier().setNewButton(create, "PopulationSeasonInfo");
getVerifier().setDeleteButton(remove);
-}
-public void refresh(){
Population population = (Population)getVerifier().getEntity(Population.class);
setBean((PopulationImpl) population);
jaxx.runtime.swing.Utils.fillComboBox(fieldPopulationSeasonInfoChooser,getBean().getPopulationSeasonInfo(), null);
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -51,14 +51,6 @@
populationTab.addChangeListener(new InputTabbedPaneListener());
public void refresh(){
getVerifier().addCurrentPanel(populationBasicsUI, populationGroupUI, populationEquationUI, populationZoneUI, populationSeasonsUI, populationCapturabilityUI, populationRecruitementUI, populationMigrationUI);
- populationBasicsUI.refresh();
- populationGroupUI.refresh();
- populationEquationUI.refresh();
- populationZoneUI.refresh();
- populationSeasonsUI.refresh();
- populationCapturabilityUI.refresh();
- populationRecruitementUI.refresh();
- populationMigrationUI.refresh();
}
]]>
</script>
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -61,94 +61,92 @@
}
});
-public void setInputSaveVerifierBinding(){
+public void refresh(){
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
-}
- public void refresh(){
- Population population = (Population)getVerifier().getEntity(Population.class);
- setBean((PopulationImpl) population);
- setPopulationZonesPresenceModel();
- setFieldPopulationZonesReproductionModel();
- setFieldPopulationZonesRecruitmentModel();
- setFieldPopulationMappingZoneReproZoneRecru();
- fieldPopulationMappingZoneReproZoneRecru.addMatrixListener(new MatrixPanelListener() {
+ Population population = (Population)getVerifier().getEntity(Population.class);
+ setBean((PopulationImpl) population);
+ setPopulationZonesPresenceModel();
+ setFieldPopulationZonesReproductionModel();
+ setFieldPopulationZonesRecruitmentModel();
+ setFieldPopulationMappingZoneReproZoneRecru();
+ fieldPopulationMappingZoneReproZoneRecru.addMatrixListener(new MatrixPanelListener() {
- @Override
- public void matrixChanged(MatrixPanelEvent arg0) {
- fieldPopulationMappingZoneReproZoneRecruChanged();
- }
- });
- }
- protected void fieldPopulationMappingZoneReproZoneRecruChanged(){
- getBean().setMappingZoneReproZoneRecru(fieldPopulationMappingZoneReproZoneRecru.getMatrix());
- }
- protected void setFieldPopulationMappingZoneReproZoneRecru(){
- if (getBean().getMappingZoneReproZoneRecru() != null){
- fieldPopulationMappingZoneReproZoneRecru.setMatrix(getBean().getMappingZoneReproZoneRecru().copy());
+ @Override
+ public void matrixChanged(MatrixPanelEvent arg0) {
+ fieldPopulationMappingZoneReproZoneRecruChanged();
}
+ });
+}
+protected void fieldPopulationMappingZoneReproZoneRecruChanged(){
+ getBean().setMappingZoneReproZoneRecru(fieldPopulationMappingZoneReproZoneRecru.getMatrix());
+}
+protected void setFieldPopulationMappingZoneReproZoneRecru(){
+ if (getBean().getMappingZoneReproZoneRecru() != null){
+ fieldPopulationMappingZoneReproZoneRecru.setMatrix(getBean().getMappingZoneReproZoneRecru().copy());
}
- protected void setPopulationZonesPresenceModel(){
- setModel(getBean().getPopulationZone(), populationZonesPresence);
- }
- protected void setFieldPopulationZonesReproductionModel(){
- setModel(getBean().getReproductionZone(), fieldPopulationZonesReproduction);
- }
- protected void setFieldPopulationZonesRecruitmentModel(){
- setModel(getBean().getRecruitmentZone(), fieldPopulationZonesRecruitment);
- }
- protected void setModel(java.util.List<Zone> selected, JAXXList componant){
- DefaultListModel model = new DefaultListModel();
- java.util.List<Zone> zones = getRegion().getZone();
- java.util.List<GenericCell> selectedZones = new ArrayList<GenericCell>();
- if (zones != null){
- for (Zone z : zones){
- GenericCell cell = new GenericCell(z.getName(), z, Zone.class);
- model.addElement(cell);
- if (selected != null){
- if (selected.contains(z)){
- selectedZones.add(cell);
- }
+}
+protected void setPopulationZonesPresenceModel(){
+ setModel(getBean().getPopulationZone(), populationZonesPresence);
+}
+protected void setFieldPopulationZonesReproductionModel(){
+ setModel(getBean().getReproductionZone(), fieldPopulationZonesReproduction);
+}
+protected void setFieldPopulationZonesRecruitmentModel(){
+ setModel(getBean().getRecruitmentZone(), fieldPopulationZonesRecruitment);
+}
+protected void setModel(java.util.List<Zone> selected, JAXXList componant){
+ DefaultListModel model = new DefaultListModel();
+ java.util.List<Zone> zones = getRegion().getZone();
+ java.util.List<GenericCell> selectedZones = new ArrayList<GenericCell>();
+ if (zones != null){
+ for (Zone z : zones){
+ GenericCell cell = new GenericCell(z.getName(), z, Zone.class);
+ model.addElement(cell);
+ if (selected != null){
+ if (selected.contains(z)){
+ selectedZones.add(cell);
}
}
}
- componant.setModel(model);
- if (selectedZones.size() > 0){
- java.util.List <Integer> indicesList = new ArrayList<Integer>();
- for (GenericCell c : selectedZones){
- indicesList.add(model.indexOf(c));
- }
- int[] indices = new int[indicesList.size()];
- int cnt = 0;
- for (Integer i : indicesList){
- indices[cnt]=i;
- cnt ++;
- }
- componant.setSelectedIndices(indices);
+ }
+ componant.setModel(model);
+ if (selectedZones.size() > 0){
+ java.util.List <Integer> indicesList = new ArrayList<Integer>();
+ for (GenericCell c : selectedZones){
+ indicesList.add(model.indexOf(c));
}
+ int[] indices = new int[indicesList.size()];
+ int cnt = 0;
+ for (Integer i : indicesList){
+ indices[cnt]=i;
+ cnt ++;
+ }
+ componant.setSelectedIndices(indices);
}
- protected void presenceChanged(){
- getBean().setPopulationZone(getSelectedValue(populationZonesPresence));
- }
- protected void reproductionChanged(){
- getBean().setReproductionZone(getSelectedValue(fieldPopulationZonesReproduction));
- }
- protected void recruitementChanged(){
- getBean().setRecruitmentZone(getSelectedValue(fieldPopulationZonesRecruitment));
- }
- protected java.util.List<Zone> getSelectedValue(JAXXList componant){
- Object[] selected = componant.getSelectedValues();
- java.util.List<Zone> selectedZone = new ArrayList<Zone>();
- if (selected != null){
- for (Object i : selected){
- GenericCell cell = (GenericCell)i;
- if (cell.getValue() != null){
- selectedZone.add((Zone)cell.getValue());
- }
+}
+protected void presenceChanged(){
+ getBean().setPopulationZone(getSelectedValue(populationZonesPresence));
+}
+protected void reproductionChanged(){
+ getBean().setReproductionZone(getSelectedValue(fieldPopulationZonesReproduction));
+}
+protected void recruitementChanged(){
+ getBean().setRecruitmentZone(getSelectedValue(fieldPopulationZonesRecruitment));
+}
+protected java.util.List<Zone> getSelectedValue(JAXXList componant){
+ Object[] selected = componant.getSelectedValues();
+ java.util.List<Zone> selectedZone = new ArrayList<Zone>();
+ if (selected != null){
+ for (Object i : selected){
+ GenericCell cell = (GenericCell)i;
+ if (cell.getValue() != null){
+ selectedZone.add((Zone)cell.getValue());
}
}
- return selectedZone;
}
+ return selectedZone;
+}
]]>
</script>
<Table id='body'>
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -74,48 +74,46 @@
}
}
});
-public void setInputSaveVerifierBinding(){
+public void refresh() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
getVerifier().setNewButton(create, "Port");
getVerifier().setDeleteButton(remove);
-}
- public void refresh() {
- 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);
- portMap.setActiveMouseMode(new SelectMouseMode());
- toolSet.setupListeners(portMap);
- toolMap.add((Component)toolSet);
- setMapListener();
- }
- refreshMap();
+ 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);
+ portMap.setActiveMouseMode(new SelectMouseMode());
+ toolSet.setupListeners(portMap);
+ toolMap.add((Component)toolSet);
+ setMapListener();
}
- protected void refreshMap(){
- java.util.List<Cell> cells = new ArrayList<Cell>();
- cells.add((Cell)portCell.getSelectedValue());
- portMap.setSelectedCells(cells);
- }
- protected void setMapListener(){
- if (mapListener == null){
- mapListener = new OpenMapEvents(portMap, new SelectMouseMode(false), CellSelectionLayer.SINGLE_SELECTION) {
+ refreshMap();
+}
+protected void refreshMap(){
+ java.util.List<Cell> cells = new ArrayList<Cell>();
+ cells.add((Cell)portCell.getSelectedValue());
+ portMap.setSelectedCells(cells);
+}
+protected void setMapListener(){
+ if (mapListener == null){
+ mapListener = new OpenMapEvents(portMap, new SelectMouseMode(false), CellSelectionLayer.SINGLE_SELECTION) {
- @Override
- public boolean onMouseClicked() {
- for (Cell c : portMap.getSelectedCells()){
- if (getBean() != null){
- getBean().setCell(c);
- }
+ @Override
+ public boolean onMouseClicked() {
+ for (Cell c : portMap.getSelectedCells()){
+ if (getBean() != null){
+ getBean().setCell(c);
}
- refresh();
- return true;
}
- };
- }
+ refresh();
+ return true;
+ }
+ };
}
+}
]]>
</script>
<Table id='body'>
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -56,12 +56,9 @@
import fr.ifremer.isisfish.entities.Metier;
import fr.ifremer.isisfish.entities.MetierImpl;
-public void setInputSaveVerifierBinding(){
+public void refresh(){
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
-}
-public void refresh(){
- getVerifier().addCurrentPanel(selectivityEquation);
InputAction action = getAction();
setBean(null);
Gear gear = (Gear)getVerifier().getEntity(Gear.class);
@@ -72,8 +69,8 @@
}
// TODO : Equation selection
- selectivityEquation.init(_("isisfish.selectivity.equation"), null, "SelectivityEquation", fr.ifremer.isisfish.equation.SelectivityEquation.class);
- selectivityEquation.refresh();
+ selectivityEquation.init(_("isisfish.selectivity.equation"), null, "", "SelectivityEquation", fr.ifremer.isisfish.equation.SelectivityEquation.class);
+ getVerifier().addCurrentPanel(selectivityEquation);
}
protected void setSelectivityTableModel(){
DefaultTableModel model = new DefaultTableModel(){
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsTabsUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -65,22 +65,19 @@
}
});
-public void setInputSaveVerifierBinding(){
+public void refresh() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
getVerifier().setNewButton(create, "SetOfVessels");
getVerifier().setDeleteButton(remove);
-}
-public void refresh() {
- getVerifier().addCurrentPanel(technicalEfficiency);
SetOfVessels setOfVessels = (SetOfVessels)getVerifier().getEntity(SetOfVessels.class);
setBean((SetOfVesselsImpl) setOfVessels);
if (getBean() != null){
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"), (Formule)getBean().getTechnicalEfficiencyEquation(), "SoVTechnicalEfficiencyEquation", fr.ifremer.isisfish.equation.SoVTechnicalEfficiencyEquation.class);
- technicalEfficiency.refresh();
+ technicalEfficiency.init(_("isisfish.setOfVessels.technicalEfficiency"), getBean(), "TechnicalEfficiencyEquation", "SoVTechnicalEfficiencyEquation", fr.ifremer.isisfish.equation.SoVTechnicalEfficiencyEquation.class);
+ getVerifier().addCurrentPanel(technicalEfficiency);
}
}
]]>
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -44,8 +44,6 @@
setOfVesselsTab.addChangeListener(new InputTabbedPaneListener());
public void refresh() {
getVerifier().addCurrentPanel(setOfVesselsTabsUI, effortDescriptionUI);
- setOfVesselsTabsUI.refresh();
- effortDescriptionUI.refresh();
}
]]></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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -62,13 +62,11 @@
}
}
});
-public void setInputSaveVerifierBinding(){
+public void refresh() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
getVerifier().setNewButton(create, "Species");
getVerifier().setDeleteButton(delete);
-}
-public void refresh() {
Species species = (Species)getVerifier().getEntity(Species.class);
setBean((SpeciesImpl) species);
setNextPath("$root/$species/" + getBean().getTopiaId() + "/$populations");
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyMonthInfoUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -36,12 +36,9 @@
<script><![CDATA[
import fr.ifremer.isisfish.types.Month;
-public void setInputSaveVerifierBinding(){
+public void refresh() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
-}
-public void refresh() {
- getVerifier().addCurrentPanel(strategyJanuary, strategyFebuary, strategyMarch, strategyApril, strategyMay, strategyJune, strategyJuly, strategyAugust, strategySeptember, strategyOctober, strategyNovember, strategyDecember);
strategyJanuary.init(Month.JANUARY);
strategyFebuary.init(Month.FEBRUARY);
strategyMarch.init(Month.MARCH);
@@ -54,18 +51,7 @@
strategyOctober.init(Month.OCTOBER);
strategyNovember.init(Month.NOVEMBER);
strategyDecember.init(Month.DECEMBER);
- strategyJanuary.refresh();
- strategyFebuary.refresh();
- strategyMarch.refresh();
- strategyApril.refresh();
- strategyMay.refresh();
- strategyJune.refresh();
- strategyJuly.refresh();
- strategyAugust.refresh();
- strategySeptember.refresh();
- strategyOctober.refresh();
- strategyNovember.refresh();
- strategyDecember.refresh();
+ getVerifier().addCurrentPanel(strategyJanuary, strategyFebuary, strategyMarch, strategyApril, strategyMay, strategyJune, strategyJuly, strategyAugust, strategySeptember, strategyOctober, strategyNovember, strategyDecember);
}
]]></script>
<JPanel id='body' layout='{new BorderLayout()}'>
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -76,7 +76,7 @@
}
});
public void refresh() {
- Strategy strategy = (Strategy)getVerifier().getEntity(Strategy.class);
+ 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());
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyTabUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -64,19 +64,16 @@
}
});
-public void setInputSaveVerifierBinding(){
+public void refresh() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
getVerifier().setNewButton(create, "Strategy");
getVerifier().setDeleteButton(remove);
-}
-public void refresh() {
- getVerifier().addCurrentPanel(strategyInactivity);
Strategy strategy = (Strategy)getVerifier().getEntity(Strategy.class);
setBean((StrategyImpl) strategy);
if (getBean() != null){
- strategyInactivity.init("", (Formule)getBean().getInactivityEquation(), "StrategyInactivityEquation", fr.ifremer.isisfish.equation.StrategyInactivityEquation.class);
- strategyInactivity.refresh();
+ strategyInactivity.init("", getBean(), "InactivityEquation", "StrategyInactivityEquation", fr.ifremer.isisfish.equation.StrategyInactivityEquation.class);
+ getVerifier().addCurrentPanel(strategyInactivity);
setSetOfVesselsModel();
}
}
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -40,8 +40,6 @@
strategyTab.addChangeListener(new InputTabbedPaneListener());
public void refresh() {
getVerifier().addCurrentPanel(strategyTabUI, strategyMonthInfoUI);
- strategyTabUI.refresh();
- strategyMonthInfoUI.refresh();
}
]]></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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/TripTypeUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -61,13 +61,12 @@
}
}
});
-public void setInputSaveVerifierBinding(){
+
+public void refresh() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
getVerifier().setNewButton(create, "TripType");
getVerifier().setDeleteButton(delete);
-}
-public void refresh() {
TripType tripType = (TripType)getVerifier().getEntity(TripType.class);
setBean((TripTypeImpl) tripType);
}
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -65,13 +65,11 @@
}
}
});
-public void setInputSaveVerifierBinding(){
+public void refresh() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
getVerifier().setNewButton(create, "VesselType");
getVerifier().setDeleteButton(delete);
-}
-public void refresh() {
VesselType vesselType = (VesselType)getVerifier().getEntity(VesselType.class);
setBean((VesselTypeImpl) vesselType);
jaxx.runtime.swing.Utils.fillList(vesselTypeTripType, getRegion().getTripType(), getBean().getTripType());
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-14 15:45:53 UTC (rev 1741)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx 2009-01-16 17:52:40 UTC (rev 1742)
@@ -69,13 +69,11 @@
}
});
-public void setInputSaveVerifierBinding(){
+public void refresh() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
getVerifier().setNewButton(create, "Zone");
getVerifier().setDeleteButton(remove);
-}
-public void refresh() {
setBean(null);
Zone zone = (Zone)getVerifier().getEntity(Zone.class);
setBean((ZoneImpl) zone);
1
0
r1741 - isis-fish/trunk/src/main/resources/i18n
by chatellier@users.labs.libre-entreprise.org 14 Jan '09
by chatellier@users.labs.libre-entreprise.org 14 Jan '09
14 Jan '09
Author: chatellier
Date: 2009-01-14 15:45:53 +0000 (Wed, 14 Jan 2009)
New Revision: 1741
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:
Download simulation result when simulation complete.
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-14 14:37:55 UTC (rev 1740)
+++ isis-fish/trunk/src/main/resources/i18n/isis-fish-en_GB.properties 2009-01-14 15:45:53 UTC (rev 1741)
@@ -21,7 +21,10 @@
Clear\ done\ jobs=
Could\ not\ found\ formule\ type\ %s\ autorised\ type\ are\ %s=
Error\ during\ vcs\ initialisation=
+Error\ while\ downloading\ simulation\ control=
+Error\ while\ launching\ simulation=
Error\ while\ uploading\ public\ key\ to\ remote\ serveur\ authorized_keys=
+Error\ while\ uploading\ simulation=
Generate\ next\ simulation=
Import\ one\ java\ file\ script\ source=
Import\ simulation\ file\ %s\ in\ directory\ %s\ and\ rename\ from\ %s\ to\ %s=
@@ -51,7 +54,6 @@
Try\ to\ log\ on\ %s@%s\:%d=
Use\ branches,\ switch\ not\ needed=
User\ stop\ simulation\ %s=
-buttonTitle=\=\=\=\=\=\=
cant\ start\ nimbus=
could\ not\ close\ reader\ %1$s=could not close reader %1$s
could\ not\ create\ simulation\ filter\ model\ for\ reason\ %1$s=could not create simulation filter model for reason %1$s
@@ -65,7 +67,6 @@
destination\ already\ exists\ %s\ use\ \\'force\\'\ argument\ to\ force\ overwrite=
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.
-getStrategyMonthInfo().getNumberOfTrips()=
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 />Please, report any bug you can found.<html>
isisfish.about.licensetext=You can modify and redistribute the program under the conditions of the GNU General Public License (version 2 or later). A copy of the GPL is in the file "LICENSE.txt" provided with Isis-Fish. All rights reserved. No guarantees are provided for use of this program.
isisfish.about.title=About Isis-Fish...
@@ -94,7 +95,6 @@
isisfish.common.clear=clear
isisfish.common.date=Date
isisfish.common.debug=debug
-isisfish.common.delete=\=\=\=\=\=\=
isisfish.common.ellipsis=ellipsis
isisfish.common.emigration=emigration
isisfish.common.empty=vide
@@ -318,10 +318,6 @@
isisfish.error.script.save=Can't save file %1$s for reason %2$s
isisfish.error.simulation.log.openAppender=could not open appender of simulation %1$s for reason %2$s
isisfish.error.simulation.remote.global=Can't launch a simulation on remote server
-isisfish.error.simulation.remote.launch=An error occurs when launching remote simulation
-isisfish.error.simulation.remote.output=Caparmor >
-isisfish.error.simulation.remote.upload=Can't upload simulation %s on %s@%s
-isisfish.error.simulation.remote.upload.stream=Stream error detected \: %s
isisfish.error.simulation.remote.wrongportvalue=Connection port value is incorrect \: %s
isisfish.error.simulation.resultXml.close=Can't close simulation result XML for reason %1$s
isisfish.error.simulation.resultXml.open=Can't open simulation result XML for reason %1$s
@@ -443,17 +439,6 @@
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.continueCells=Continue to Cells
-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 SetOfVessels
-isisfish.input.continueSpecies=Continue to Species
-isisfish.input.continueStrategies=Continue to Strategies
-isisfish.input.continueTripTypes=Continue to TripTypes
-isisfish.input.continueVesselTypes=Continue to VesselTypes
-isisfish.input.continueZones=Continue to zones
isisfish.input.menu.addRegion=Add region
isisfish.input.menu.commit=Commit change
isisfish.input.menu.copyRegion=Copy Region
@@ -857,6 +842,7 @@
isisfish.simulation.menu.simulation=Simulation
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.title=Simulation launcher
@@ -874,7 +860,6 @@
isisfish.species.scientificName=Scientific name
isisfish.species.structured=Structured
isisfish.strategy.comments=Comments
-isisfish.strategy.inactivity=Inactivity equation
isisfish.strategy.inactivityEquationUsed=Use inactivity equation
isisfish.strategy.name=Name
isisfish.strategy.proportionSetOfVessels=Set of vessels proportion
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-14 14:37:55 UTC (rev 1740)
+++ isis-fish/trunk/src/main/resources/i18n/isis-fish-fr_FR.properties 2009-01-14 15:45:53 UTC (rev 1741)
@@ -21,7 +21,10 @@
Clear\ done\ jobs=
Could\ not\ found\ formule\ type\ %s\ autorised\ type\ are\ %s=
Error\ during\ vcs\ initialisation=
+Error\ while\ downloading\ simulation\ control=
+Error\ while\ launching\ simulation=
Error\ while\ uploading\ public\ key\ to\ remote\ serveur\ authorized_keys=
+Error\ while\ uploading\ simulation=
Generate\ next\ simulation=
Import\ one\ java\ file\ script\ source=
Import\ simulation\ file\ %s\ in\ directory\ %s\ and\ rename\ from\ %s\ to\ %s=
@@ -51,7 +54,6 @@
Try\ to\ log\ on\ %s@%s\:%d=
Use\ branches,\ switch\ not\ needed=
User\ stop\ simulation\ %s=
-buttonTitle=\=\=\=\=\=\=
cant\ start\ nimbus=
could\ not\ close\ reader\ %1$s=could not close reader %1$s
could\ not\ create\ simulation\ filter\ model\ for\ reason\ %1$s=could not create simulation filter model for reason %1$s
@@ -65,7 +67,6 @@
destination\ already\ exists\ %s\ use\ \\'force\\'\ argument\ to\ force\ overwrite=
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.
-getStrategyMonthInfo().getNumberOfTrips()=
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...
@@ -94,7 +95,6 @@
isisfish.common.clear=Effacer
isisfish.common.date=Date
isisfish.common.debug=Debug
-isisfish.common.delete=Supprimer
isisfish.common.ellipsis=...
isisfish.common.emigration=\u00E9migration
isisfish.common.empty=vide
@@ -318,10 +318,6 @@
isisfish.error.script.save=N'a pas pu sauver le fichier %1$s pour la raison suivante %2$s
isisfish.error.simulation.log.openAppender=n'a pas pu ouvrir l'appender de la simulation %1$s pour la raison %2$s
isisfish.error.simulation.remote.global=Impossible de lancer une simulation sur serveur distant
-isisfish.error.simulation.remote.launch=Une erreur est survenue lors du lancement de la simulation
-isisfish.error.simulation.remote.output=Caparmor >
-isisfish.error.simulation.remote.upload=Impossible d'envoyer la simulation %s sur %s@%s
-isisfish.error.simulation.remote.upload.stream=Une erreur de flux a \u00E9t\u00E9 d\u00E9tect\u00E9e \: %s
isisfish.error.simulation.remote.wrongportvalue=Le port de connexion a une valeur incorrecte \: %s
isisfish.error.simulation.resultXml.close=Can't close simulation result XML for reason %1$s
isisfish.error.simulation.resultXml.open=Can't open simulation result XML for reason %1$s
@@ -443,17 +439,6 @@
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.continueCells=Continuer vers les mailles
-isisfish.input.continueGears=Continuer vers les engins
-isisfish.input.continueMetiers=Continuer vers les M\u00E9tiers
-isisfish.input.continuePopulations=Continuer vers les populations
-isisfish.input.continuePorts=Continuer vers les ports
-isisfish.input.continueSetOfVessels=Continuer vers les ensembles de navires
-isisfish.input.continueSpecies=Contiuer vers les esp\u00E8ces
-isisfish.input.continueStrategies=Continuer vers les strat\u00E9gies
-isisfish.input.continueTripTypes=Continuer vers les types de trajets
-isisfish.input.continueVesselTypes=Continuer vers les types de navires
-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
@@ -857,6 +842,7 @@
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.launch=Lancement de la simulation
isisfish.simulation.remote.message.upload=Upload de la simulation
isisfish.simulation.title=Lanceur de simulation
@@ -874,7 +860,6 @@
isisfish.species.scientificName=Scientific name
isisfish.species.structured=Structur\u00E9
isisfish.strategy.comments=Commentaires
-isisfish.strategy.inactivity=\u00C9quation d'inactivit\u00E9
isisfish.strategy.inactivityEquationUsed=Utiliser une \u00E9quation d'inactivit\u00E9
isisfish.strategy.name=Nom
isisfish.strategy.proportionSetOfVessels=Proportion des ensembles de navires
1
0
Author: chatellier
Date: 2009-01-14 14:37:55 +0000 (Wed, 14 Jan 2009)
New Revision: 1740
Modified:
isis-fish/trunk/changelog.txt
Log:
Update changelog
Modified: isis-fish/trunk/changelog.txt
===================================================================
--- isis-fish/trunk/changelog.txt 2009-01-14 14:22:05 UTC (rev 1739)
+++ isis-fish/trunk/changelog.txt 2009-01-14 14:37:55 UTC (rev 1740)
@@ -1,5 +1,8 @@
isis-fish (3.2.0.x) xxx
+ * Add ssh simulation launcher
+ * Add Jaxx UI for all interfaces
+ * Remove SwixAT UI
* switch to lutinproject 3.3
* switch to topia-service 1.0.1
* switch to topia-persistence 2.1.1
1
0
r1739 - isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher
by chatellier@users.labs.libre-entreprise.org 14 Jan '09
by chatellier@users.labs.libre-entreprise.org 14 Jan '09
14 Jan '09
Author: chatellier
Date: 2009-01-14 14:22:05 +0000 (Wed, 14 Jan 2009)
New Revision: 1739
Added:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHUtils.java
Modified:
isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SshSimulatorLauncher.java
Log:
Move ssh specific code to utility class.
Use ANT optionnal ssh task code (better than jsch samples)
Download simulation result when simulation complete.
Added: 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 (rev 0)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHUtils.java 2009-01-14 14:22:05 UTC (rev 1739)
@@ -0,0 +1,495 @@
+/* *##%
+ * 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/SshSimulatorLauncher.java
===================================================================
--- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SshSimulatorLauncher.java 2009-01-13 19:48:00 UTC (rev 1738)
+++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/simulator/launcher/SshSimulatorLauncher.java 2009-01-14 14:22:05 UTC (rev 1739)
@@ -25,11 +25,7 @@
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
import java.rmi.RemoteException;
import java.util.List;
@@ -43,8 +39,6 @@
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.JSch;
import com.jcraft.jsch.JSchException;
import com.jcraft.jsch.Session;
@@ -132,11 +126,16 @@
// 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) {
@@ -262,38 +261,7 @@
log.debug("command is : " + command);
}
- // exec previous commande
- Channel channel = session.openChannel("exec");
- ((ChannelExec) channel).setCommand(command);
-
- // read buffer
- // seems to not work without it
- InputStream in = channel.getInputStream();
- channel.connect();
- byte[] tmp = new byte[1024];
- while (true) {
- while (in.available() > 0) {
- int i = in.read(tmp, 0, 1024);
- if (i < 0)
- break;
- if (log.isInfoEnabled()) {
- log.info(new String(tmp, 0, i));
- }
- }
- if (channel.isClosed()) {
- if (log.isInfoEnabled()) {
- log.info("JSch channel exit-status: "
- + channel.getExitStatus());
- }
- break;
- }
- try {
- Thread.sleep(1000);
- } catch (Exception ee) {
- }
- }
- channel.disconnect();
- // end read buffer
+ SSHUtils.exec(session, command);
}
} catch (IOException e) {
if (log.isErrorEnabled()) {
@@ -301,14 +269,17 @@
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.
*
- * ScpTo code taken from :
- * http://www.jcraft.com/jsch/examples/ScpTo.java
- *
* @param session already open valid ssh session
* @param simulationFile simulation file to upload
*
@@ -316,141 +287,78 @@
*/
protected String uploadSimulation(Session session, File simulationFile) {
- // return flag
- String remotePath = null;
+ 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
- // file info
- String filePath = simulationFile.getAbsolutePath();
+ String remotePath = "/tmp/";
- FileInputStream fis = null;
- try {
+ 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;
+ }
- // exec 'scp -t rfile' remotely
- String command = "scp -p -t " + filePath;
- Channel channel = session.openChannel("exec");
- ((ChannelExec) channel).setCommand(command);
-
- // get I/O streams for remote scp
- OutputStream out = channel.getOutputStream();
- InputStream in = channel.getInputStream();
-
- channel.connect();
-
- // Check input stream validity
- if (checkAck(in) == 0) {
-
- if (log.isDebugEnabled()) {
- log.debug("Uploading " + filePath);
- }
-
- // send "C0644 filesize filename", where filename should not include '/'
- long filesize = (new File(filePath)).length();
- command = "C0644 " + filesize + " ";
- if (filePath.lastIndexOf('/') > 0) {
- command += filePath
- .substring(filePath.lastIndexOf('/') + 1);
- } else {
- command += filePath;
- }
- command += "\n";
- out.write(command.getBytes());
- out.flush();
-
- if (checkAck(in) == 0) {
-
- // send a content of lfile
- fis = new FileInputStream(filePath);
- byte[] buf = new byte[1024];
- while (true) {
- int len = fis.read(buf, 0, buf.length);
- if (len <= 0) {
- break;
- }
- out.write(buf, 0, len); //out.flush();
- }
- fis.close();
- fis = null;
- // send '\0'
- buf[0] = 0;
- out.write(buf, 0, 1);
- out.flush();
- if (checkAck(in) == 0) {
- remotePath = filePath;
- }
- out.close();
-
- channel.disconnect();
- }
- }
-
- } catch (JSchException e) {
+ try {
+ SSHUtils.scpTo(session, simulationFile, remotePath);
+ }
+ catch(SSHException e) {
if (log.isErrorEnabled()) {
- log.error(_("isisfish.error.simulation.remote.upload",
- filePath));
+ log.error(_("Error while uploading simulation"),
+ e);
}
- } catch (IOException e) {
- if (log.isErrorEnabled()) {
- log.error(_("isisfish.error.simulation.remote.upload",
- filePath));
- }
- } finally {
- try {
- if (fis != null) {
- fis.close();
- }
- } catch (IOException e) {
- // exception ignoree
- }
+
+ remotePath = null;
}
return remotePath;
}
/**
- * Check input stream validity.
+ * Download resulation results.
*
- * Code taken from Jsch samples.
- *
- * @param in input stream
+ * @return downloaded temp file (file have to be manually deleted)
*/
- protected int checkAck(InputStream in) throws IOException {
- int b = in.read();
- // b may be 0 for success,
- // 1 for error,
- // 2 for fatal error,
- // -1
- if (b == 0) {
- return b;
+ 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());
}
- if (b == -1) {
- return b;
- }
+
+ // 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;
- if (b == 1 || b == 2) {
- StringBuffer sb = new StringBuffer();
- int c;
- do {
- c = in.read();
- sb.append((char) c);
- } while (c != '\n');
- if (b == 1) { // error
- if (log.isErrorEnabled()) {
- log.error(_(
- "isisfish.error.simulation.remote.upload.stream",
- sb.toString()));
- }
+ 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"));
}
- if (b == 2) { // fatal error
- if (log.isFatalEnabled()) {
- log.fatal(_(
- "isisfish.error.simulation.remote.upload.stream",
- sb.toString()));
- }
- }
+
+ localFile = null;
}
- return b;
+
+ return localFile;
}
-
+
/**
* Launch simulation on remote server.
*
@@ -477,44 +385,15 @@
if (log.isDebugEnabled()) {
log.debug("Launch : " + command);
}
-
- Channel channel = session.openChannel("exec");
- ((ChannelExec) channel).setCommand(command);
-
- channel.setInputStream(null);
-
+
try {
- InputStream in = channel.getInputStream();
-
- channel.connect();
-
- byte[] tmp = new byte[1024];
- while (true) {
- while (in.available() > 0) {
- int i = in.read(tmp, 0, 1024);
- if (i < 0) {
- break;
- }
- if (log.isInfoEnabled()) {
- log.info(_("isisfish.error.simulation.remote.output") + new String(tmp, 0, i));
- }
- }
- if (channel.isClosed()) {
- if (log.isInfoEnabled()) {
- log.info("JSch channel exit-status: "
- + channel.getExitStatus());
- }
- break;
- }
- try {
- Thread.sleep(1000);
- } catch (Exception ee) {
- }
+ SSHUtils.exec(session, command);
+ }
+ catch(SSHException e) {
+ if (log.isErrorEnabled()) {
+ log.error(_("Error while launching simulation"),
+ e);
}
- channel.disconnect();
- } catch (IOException e) {
- throw new SimulationException(
- _("isisfish.error.simulation.remote.launch"), e);
}
}
@@ -623,9 +502,6 @@
* Download remote simulation control file and store
* its content into temp file.
*
- * ScpFrom code taken from :
- * http://www.jcraft.com/jsch/examples/ScpFrom.java
- *
* @return downloaded temp file (file have to be manually deleted)
* @throws IOException
*/
@@ -643,123 +519,19 @@
remoteFile += "/control";
// local tmp file
- File tempFile = File.createTempFile(simulationId, "control");
- FileOutputStream fos=null;
-
+ localFile = File.createTempFile(simulationId, "control");
+
try {
- // exec 'scp -f rfile' remotely
- String command = "scp -f \"" + remoteFile + "\"";
- Channel channel = sshSession.openChannel("exec");
- ((ChannelExec) channel).setCommand(command);
-
- // get I/O streams for remote scp
- OutputStream out = channel.getOutputStream();
- InputStream in = channel.getInputStream();
-
- channel.connect();
-
- byte[] buf = new byte[1024];
-
- // send '\0'
- buf[0] = 0;
- out.write(buf, 0, 1);
- out.flush();
-
- while (true) {
- int c = checkAck(in);
- if (c != 'C') {
- break;
- }
-
- // read '0644 '
- in.read(buf, 0, 5);
-
- long filesize = 0L;
- while (true) {
- if (in.read(buf, 0, 1) < 0) {
- // error
- break;
- }
- if (buf[0] == ' ') {
- break;
- }
- filesize = filesize * 10L + (buf[0] - '0');
- }
-
- //String file = null;
- for (int i = 0;; i++) {
- in.read(buf, i, 1);
- if (buf[i] == (byte) 0x0a) {
- //file = new String(buf, 0, i);
- break;
- }
- }
-
- // send '\0'
- buf[0] = 0;
- out.write(buf, 0, 1);
- out.flush();
-
- // read a content of lfile
- fos = new FileOutputStream(tempFile);
- int foo;
- while (true) {
- if (buf.length < filesize) {
- foo = buf.length;
- }
- else {
- foo = (int) filesize;
- }
- foo = in.read(buf, 0, foo);
- if (foo < 0) {
- // error
- break;
- }
- fos.write(buf, 0, foo);
- filesize -= foo;
- if (filesize == 0L) {
- break;
- }
- }
- fos.close();
- fos = null;
-
- if (checkAck(in) == 0) {
- localFile = tempFile;
- }
-
- // send '\0'
- buf[0] = 0;
- out.write(buf, 0, 1);
- out.flush();
- }
+ SSHUtils.scpFrom(sshSession, remoteFile, localFile);
}
- catch(IOException e){
- if(log.isErrorEnabled()) {
- log.error("I/O error while downloading control file", e);
+ catch(SSHException e) {
+ if (log.isErrorEnabled()) {
+ log.error(_("Error while launching simulation"),
+ e);
}
- } catch (JSchException e) {
- if(log.isErrorEnabled()) {
- log.error("Jsch error while downloading control file", e);
- }
+ localFile = null;
}
- finally {
- try{
- if(fos!=null) {
- fos.close();
- }
- }
- catch(Exception ignored) {
- }
- }
-
- if(localFile == null) {
- // an arror occurs
- // so remove temp file
- tempFile.delete();
- }
-
return localFile;
}
}
1
0
r1738 - in isis-fish/trunk: . src/test/java/fr/ifremer src/test/java/fr/ifremer/isisfish/entity src/test/java/fr/ifremer/isisfish/logging src/test/java/fr/ifremer/isisfish/logging/io src/test/java/fr/ifremer/isisfish/simulator
by tchemit@users.labs.libre-entreprise.org 13 Jan '09
by tchemit@users.labs.libre-entreprise.org 13 Jan '09
13 Jan '09
Author: tchemit
Date: 2009-01-13 19:48:00 +0000 (Tue, 13 Jan 2009)
New Revision: 1738
Added:
isis-fish/trunk/src/test/java/fr/ifremer/TestUtils.java
Modified:
isis-fish/trunk/pom.xml
isis-fish/trunk/src/test/java/fr/ifremer/isisfish/entity/PopulationSeasonInfoTest.java
isis-fish/trunk/src/test/java/fr/ifremer/isisfish/logging/SimulationLoggerUtilTest.java
isis-fish/trunk/src/test/java/fr/ifremer/isisfish/logging/TestUtil.java
isis-fish/trunk/src/test/java/fr/ifremer/isisfish/logging/io/LineReaderTest.java
isis-fish/trunk/src/test/java/fr/ifremer/isisfish/logging/io/LineReaderUtilTest.java
isis-fish/trunk/src/test/java/fr/ifremer/isisfish/simulator/SimulationHelperTest.java
Log:
suis pass?\195?\169 dans le coin et j'ai vu que y'avait plus beaucoup de test qui passaient...
il faut laisser les tester m?\195?\170me s'il y a des erreurs...
Modified: isis-fish/trunk/pom.xml
===================================================================
--- isis-fish/trunk/pom.xml 2009-01-13 16:51:24 UTC (rev 1737)
+++ isis-fish/trunk/pom.xml 2009-01-13 19:48:00 UTC (rev 1738)
@@ -332,12 +332,8 @@
<!--Main class in JAR -->
<maven.jar.main.class>fr.ifremer.isisfish.IsisFish</maven.jar.main.class>
- <!-- for the moment skip tests -->
- <maven.test.skip>true</maven.test.skip>
-
- <!-- FIXE should at leaste be this !-->
<!-- Ignore failure test for now -->
- <!--maven.test.testFailureIgnore>true</maven.test.testFailureIgnore-->
+ <maven.test.testFailureIgnore>true</maven.test.testFailureIgnore>
<!-- jnlp -->
<keystorepath>../../../CodeLutinKeystore</keystorepath>
Added: isis-fish/trunk/src/test/java/fr/ifremer/TestUtils.java
===================================================================
--- isis-fish/trunk/src/test/java/fr/ifremer/TestUtils.java (rev 0)
+++ isis-fish/trunk/src/test/java/fr/ifremer/TestUtils.java 2009-01-13 19:48:00 UTC (rev 1738)
@@ -0,0 +1,35 @@
+package fr.ifremer;
+
+import java.io.File;
+
+/**
+ * Une classe pour avoir des choses utiles pour tous les tests d'isis
+ *
+ * @author chemit
+ */
+public abstract class TestUtils {
+
+ static File basedir;
+
+ static File targetdir;
+
+ public static File getBasedir() {
+ if (basedir == null) {
+ String base = System.getProperty("basedir");
+ if (base == null || base.isEmpty()) {
+ base = new File("").getAbsolutePath();
+ }
+ basedir = new File(base);
+ System.out.println("basedir for test " + basedir);
+ }
+ return basedir;
+ }
+
+ public static File getTargetdir() {
+ if (targetdir == null) {
+ targetdir = new File(getBasedir(), "target");
+ System.out.println("targetdir for test " + targetdir);
+ }
+ return targetdir;
+ }
+}
Modified: isis-fish/trunk/src/test/java/fr/ifremer/isisfish/entity/PopulationSeasonInfoTest.java
===================================================================
--- isis-fish/trunk/src/test/java/fr/ifremer/isisfish/entity/PopulationSeasonInfoTest.java 2009-01-13 16:51:24 UTC (rev 1737)
+++ isis-fish/trunk/src/test/java/fr/ifremer/isisfish/entity/PopulationSeasonInfoTest.java 2009-01-13 19:48:00 UTC (rev 1738)
@@ -36,9 +36,12 @@
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
+import java.awt.event.WindowEvent;
import javax.swing.Box;
import javax.swing.JOptionPane;
+import javax.swing.JDialog;
+import javax.swing.SwingUtilities;
import junit.framework.TestCase;
@@ -53,8 +56,7 @@
*
*/
-public class PopulationSeasonInfoTest extends TestCase {
-
+public class PopulationSeasonInfoTest extends TestCase {
public void testToString() {
String [] s = new String[]{"toto", "titi", "tutu"};
System.out.println(Arrays.toString(s));
@@ -63,20 +65,20 @@
/*
* Test method for 'fr.ifremer.isisfish.entities.PopulationSeasonInfoImpl.getGroupChangeMatrix(Month)'
*/
- public void testGetGroupChangeMatrix() {
+ public void testGetGroupChangeMatrix() throws InterruptedException {
System.out.println("begin");
int nbrAge = 3;
int nbrZone = 2;
boolean groupplus = true;
List<String> sem = new ArrayList<String>();
-
+
for (int i=0; i<nbrAge; i++) {
for (int j=0; j<nbrZone; j++) {
sem.add("g" + i + "/z" + j);
- }
+ }
}
-
+
MatrixND mat = MatrixFactory.getInstance().create(new List[]{sem, sem});
for(MatrixIterator mi=mat.iterator(); mi.next();){
int [] dim = mi.getCoordinates();
@@ -91,25 +93,49 @@
// regarde si on est bien dans le dernier block
&& (nbrAge-1 == i/nbrZone)
// regarde si on est bien sur la diagonal
- && (i == j))
+ && (i == j))
){
mi.setValue(1);
}
}
-
- MatrixPanelEditor panel = new MatrixPanelEditor(false, 800, 300);
+
+ final MatrixPanelEditor panel = new MatrixPanelEditor(false, 800, 300);
panel.setMatrix(mat);
- JOptionPane.showMessageDialog(null, panel,
- _("Spacialized visualisation"), JOptionPane.INFORMATION_MESSAGE);
+ final JDialog dialog = new JDialog();
+ SwingUtilities.invokeLater(new Runnable() {
+ @Override
+ public void run() {
+ JOptionPane.showMessageDialog(dialog, panel,_("Spacialized visualisation"), JOptionPane.INFORMATION_MESSAGE);
+
+ }
+ });
+ Thread t = new Thread(new Runnable() {
+ public void run() {
+ try {
+ Thread.sleep(1000);
+ } catch (InterruptedException e) {
+ // do nothing
+ }
+ dialog.dispose();
+ }
+ });
+ t.start();
+
+ // it would really be nice to wait the thread, otherwise the test
+ // means nothing!!!
+ t.join();
+
+
+
System.out.println("end");
}
/**
* Converte no spacialized matrix to spacialized matrix
*/
- public void testSpacializeLengthChangeMatrix() {
-
-
+ public void testSpacializeLengthChangeMatrix() throws InterruptedException {
+
+
int nbsecteurs = 2;
int nbclasses = 3;
@@ -118,15 +144,15 @@
for (MatrixIterator mi=mat.iterator(); mi.next();) {
mi.setValue(i++);
}
-
+
List<String> sem = new ArrayList<String>();
-
+
for (i=0; i<nbclasses; i++) {
for (int j=0; j<nbsecteurs; j++) {
sem.add("g" + i + "/z" + j);
- }
+ }
}
-
+
MatrixND bigmat = MatrixFactory.getInstance().create(new List[]{sem, sem});
for(i=0; i<nbclasses; i++){
@@ -141,17 +167,38 @@
panel.setMatrix(mat);
MatrixPanelEditor bigpanel = new MatrixPanelEditor(false, 800, 300);
bigpanel.setMatrix(bigmat);
-
- Box box = Box.createVerticalBox();
+
+ final Box box = Box.createVerticalBox();
box.add(panel);
box.add(bigpanel);
-
- JOptionPane.showMessageDialog(null, box,
- _("Spacialized visualisation"), JOptionPane.INFORMATION_MESSAGE);
+
+ final JDialog dialog = new JDialog();
+ SwingUtilities.invokeLater(new Runnable() {
+ @Override
+ public void run() {
+ JOptionPane.showMessageDialog(dialog, box, _("Spacialized visualisation"), JOptionPane.INFORMATION_MESSAGE);
+ }
+ });
+
+ Thread t = new Thread(new Runnable() {
+ public void run() {
+ try {
+ Thread.sleep(1000);
+ } catch (InterruptedException e) {
+ // do nothing
+ }
+ dialog.dispose();
+ }
+ });
+ t.start();
+
+ // it would really be nice to wait the thread, otherwise the test
+ // means nothing!!!
+ t.join();
System.out.println("end");
}
-
+
}
Modified: isis-fish/trunk/src/test/java/fr/ifremer/isisfish/logging/SimulationLoggerUtilTest.java
===================================================================
--- isis-fish/trunk/src/test/java/fr/ifremer/isisfish/logging/SimulationLoggerUtilTest.java 2009-01-13 16:51:24 UTC (rev 1737)
+++ isis-fish/trunk/src/test/java/fr/ifremer/isisfish/logging/SimulationLoggerUtilTest.java 2009-01-13 19:48:00 UTC (rev 1738)
@@ -1,6 +1,7 @@
package fr.ifremer.isisfish.logging;
+import fr.ifremer.TestUtils;
import junit.framework.Assert;
import junit.framework.TestCase;
import org.apache.commons.logging.Log;
@@ -17,7 +18,7 @@
static private final String category = "fr.ifremer.isisfish.logging";
- static private final String appenderId = "myLogger_" + System.currentTimeMillis();
+ static private final String appenderId = category+"."+"myLogger_" + System.currentTimeMillis();
static private Log log = LogFactory.getLog(category);
@@ -31,9 +32,9 @@
List<String> messagesToWrite = new ArrayList<String>();
List<String> messagesToSkip = new ArrayList<String>();
- logInfo(logInit, "before new config", null,null);
- logInfo(logInit2, "before new config", null,null);
- logInfo(log, "before new config", null,null);
+ logInfo(logInit, "before new config", null, null);
+ logInfo(logInit2, "before new config", null, null);
+ logInfo(log, "before new config", null, null);
String threadName = Thread.currentThread().getName();
@@ -43,7 +44,9 @@
Level hibernateLogLevel = hibernatelog.getLevel();
- String loggerFile = "testLog.log";
+ String loggerFile = new File(TestUtils.getTargetdir(), SimulationLoggerUtilTest.class.getSimpleName() + "_" + System.nanoTime() + ".log").getAbsolutePath();
+ System.out.println(">>>> loggerFile " + loggerFile);
+
// todo do a test for addSimulationAppender too!
SimulationLoggerUtil.addSimulationAppender(
loggerFile,
@@ -67,10 +70,10 @@
hibernatelog.fatal(message);
messagesToWrite.add(message);
- logInfo(logInit, "after new config using old logger", messagesToWrite,messagesToSkip);
+ logInfo(logInit, "after new config using old logger", messagesToWrite, messagesToSkip);
- logInfo(logger, "after new config using new logger", messagesToWrite,messagesToSkip);
- logInfo(log, "after new config using new logger", messagesToWrite,messagesToSkip);
+ logInfo(logger, "after new config using new logger", messagesToWrite, messagesToSkip);
+ logInfo(log, "after new config using new logger", messagesToWrite, messagesToSkip);
final String message0 = "BLOCK LOG must not appear in log file !!! since coming from another thread";
messagesToSkip.add(message0);
@@ -111,13 +114,14 @@
log.info("-- nb messages skipped : " + messagesToSkip.size());
log.info("-- nb messages written : " + messagesToWrite.size());
-
+ System.out.println("test messages to be skipped");
for (String s : messagesToSkip) {
- Assert.assertTrue(logFileContent.indexOf(s) == -1);
+ Assert.assertTrue("should not have write this entry : '" + s + "'", logFileContent.indexOf(s) == -1);
}
+ System.out.println("test messages to be written");
for (String s : messagesToWrite) {
- Assert.assertTrue(s, logFileContent.indexOf(s) > -1);
+ Assert.assertTrue("should have write this entry : '" + s + "'", logFileContent.indexOf(s) > -1);
}
logFile.delete();
@@ -256,6 +260,7 @@
messagesToWrite.add(message);
}
}
+
private void logDebug(Log logger, String prefix, List<String> messagesToWrite) {
String message;
Modified: isis-fish/trunk/src/test/java/fr/ifremer/isisfish/logging/TestUtil.java
===================================================================
--- isis-fish/trunk/src/test/java/fr/ifremer/isisfish/logging/TestUtil.java 2009-01-13 16:51:24 UTC (rev 1737)
+++ isis-fish/trunk/src/test/java/fr/ifremer/isisfish/logging/TestUtil.java 2009-01-13 19:48:00 UTC (rev 1738)
@@ -10,6 +10,7 @@
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
+import java.io.UnsupportedEncodingException;
/**
* Usefull methods for tests.
@@ -17,7 +18,7 @@
* @author chemit
*/
-public class TestUtil {
+public abstract class TestUtil {
public static String filename;
public static long MEGA_STREAM_SIZE = 6 * 100000;
@@ -25,6 +26,19 @@
protected static final Log log = LogFactory.getLog(TestUtil.class);
+ public static void createMock(File testDir, String filename, int i) throws IOException, InterruptedException {
+ TestUtil.MEGA_STREAM_SIZE = 6 * i;
+ TestUtil.filename = new File(testDir, filename).getAbsolutePath();
+ File file = new File(testDir, filename);
+ long t0 = System.nanoTime();
+ mockLogFile();
+ long t1;
+
+ t1 = System.nanoTime();
+ log.info("create [" + TestUtil.MEGA_STREAM_SIZE + "] in " + StringUtil.convertTime(t1 - t0) + " [file: " + file + ", length: " + StringUtil.convertMemory(file.length()) + "]");
+ System.gc();
+ }
+
static void pause(long time) throws InterruptedException {
Thread.sleep(time);
totalPause += time;
@@ -59,16 +73,100 @@
}
t1 = System.currentTimeMillis();
- log.debug("create next [" + MAX_0 + "] in " + StringUtil.convertTime(t1-t0) + " | total " + i + " in " + StringUtil.convertTime( t1 - totalPause-t00));
+ log.debug("create next [" + MAX_0 + "] in " + StringUtil.convertTime(t1 - t0) + " | total " + i + " in " + StringUtil.convertTime(t1 - totalPause - t00));
//pause(500);
t0 = System.currentTimeMillis();
for (i = MAX_0; i < 2 * MAX_0; i++) {
+ LogRecord record = LogRecord.newInstance(LogLevel.WARN, 0, i + " warn", "jkljfdjkl fdkjlkj lkjdlkfjl dfkljl dflkfdj lfdjlk fjdlkj fdl", "vmfof o rieipk?prj,anklvndfkljn gmlrtsoijrmoig", i, new String[0]);
+ s.write(record.toString() + '\n');
+ }
+ t1 = System.currentTimeMillis();
+ log.debug("create next [" + MAX_0 + "] in " + StringUtil.convertTime(t1 - t0) + " | total " + i + " in " + StringUtil.convertTime(t1 - totalPause - t00));
+ //pause(500);
+ t0 = System.currentTimeMillis();
+ for (i = 2 * MAX_0; i < 3 * MAX_0; i++) {
+ LogRecord record = LogRecord.newInstance(LogLevel.INFO, 0, i + " info", "grlgjlrmgr jglerj mgrjm gre pjkogremoiqp jgpo rejopigjrej,m", "grkgherjfezoprjgbpdofajhlbnb;k nfkfjgmjmsg", i, new String[0]);
+ s.write(record.toString() + '\n');
+ }
+ t1 = System.currentTimeMillis();
+ log.debug("create next [" + MAX_0 + "] in " + StringUtil.convertTime(t1 - t0) + " | total " + i + " in " + StringUtil.convertTime(t1 - totalPause - t00));
+ //pause(500);
+ t0 = System.currentTimeMillis();
+ for (i = 3 * MAX_0; i < 4 * MAX_0; i++) {
+ LogRecord record = LogRecord.newInstance(LogLevel.DEBUG, 0, i + " debug", "grmgjueroijiorehjnjodj j gn mbr,nhltrhjjdo jp joi jreio j", "gezoeteroiyerphehkzb,fgbd bcmsherkgheiusbcjkdvberb ", i, new String[0]);
+ s.write(record.toString() + '\n');
+ s.flush();
+ }
+ t1 = System.currentTimeMillis();
+ log.debug("create next [" + MAX_0 + "] in " + StringUtil.convertTime(t1 - t0) + " | total " + i + " in " + StringUtil.convertTime(t1 - totalPause - t00));
+ //pause(500);
+ t0 = System.currentTimeMillis();
+ for (i = 4 * MAX_0; i < 5 * MAX_0; i++) {
+ LogRecord record = LogRecord.newInstance(LogLevel.TRACE, 0, i + " trace", "ffgkdhvlsdknjk eriopgejo ipjiropj i io poi opijgr pe jupoieruj ga geigerihpi oeop erp ", "griofeioteogbbekjbnrjemk prejrlmekhgrehivbn rekhgrhi ", i, new String[0]);
+ s.write(record.toString() + '\n');
+ }
+ t1 = System.currentTimeMillis();
+ log.debug("create next [" + MAX_0 + "] in " + StringUtil.convertTime(t1 - t0) + " | total " + i + " in " + StringUtil.convertTime(t1 - totalPause - t00));
+ //pause(500);
+ t0 = System.currentTimeMillis();
+ for (i = 5 * MAX_0; i < 6 * MAX_0; i++) {
+ LogRecord record = LogRecord.newInstance(LogLevel.TRACE, 0, i + " user", "grekgrhze t e re klgre ge rgre gre gfer g rjyukj yujty reez ze fz", "gekfhezh zhrze hgerhglkrej ljbvkxdfn df,ekgrrnvkmn", i, new String[0]);
+ s.write(record.toString() + '\n');
+ s.flush();
+ }
+ t1 = System.currentTimeMillis();
+ log.debug("create next [" + MAX_0 + "] in " + StringUtil.convertTime(t1 - t0) + " | total " + i + " in " + StringUtil.convertTime(t1 - totalPause - t00));
+ } catch (OutOfMemoryError e) {
+ t1 = System.currentTimeMillis();
+ log.info("failed after | total " + i + " in " + StringUtil.convertTime(t1 - totalPause - t00));
+ e.printStackTrace();
+ } finally {
+ if (s != null) {
+ s.flush();
+ s.close();
+ }
+ }
+ }
+
+ /**
+ * create a mock of logEvents
+ *
+ * @throws java.io.IOException todo
+ * @throws InterruptedException todo
+ */
+ public static void mockLogFile2() throws IOException, InterruptedException {
+ File f = new File(filename);
+ if (f.exists()) {
+ f.delete();
+ }
+ BufferedWriter s = new BufferedWriter(new FileWriter(f));
+ int MAX_0 = (int) (MEGA_STREAM_SIZE / 6);
+ int i = 0;
+ long t0, t00;
+ long t1;
+ totalPause = 0;
+ t00 = System.currentTimeMillis();
+ t0 = System.currentTimeMillis();
+ try {
+
+ for (i = 0; i < MAX_0; i++) {
+ LogRecord record = LogRecord.newInstance(LogLevel.FATAL, 0, i + "debug ", "ioreiovrio veuio vreupo xz xe opiu tep uxr u ", "xeoiujoiz xpo puoi rui hp", i, new String[0]);
+ s.write(record.toString() + '\n');
+ s.flush();
+ }
+
+ t1 = System.currentTimeMillis();
+ log.debug("create next [" + MAX_0 + "] in " + StringUtil.convertTime(t1 - t0) + " | total " + i + " in " + StringUtil.convertTime(t1 - totalPause - t00));
+ //pause(500);
+ t0 = System.currentTimeMillis();
+
+ for (i = MAX_0; i < 2 * MAX_0; i++) {
LogRecord record = LogRecord.newInstance(LogLevel.WARN, 0, i + " warn", "jkljfdjkl fdkjlkj lkjdlkfjl dfkljl dflkfdj lfdjlk fjdlkj fdl", "vmfof o rieipk?prj,ùnklvndfkljn gmlrtsoîjrmoig", i, new String[0]);
s.write(record.toString() + '\n');
}
t1 = System.currentTimeMillis();
- log.debug("create next [" + MAX_0 + "] in " + StringUtil.convertTime(t1-t0) + " | total " + i + " in " + StringUtil.convertTime( t1 - totalPause-t00));
+ log.debug("create next [" + MAX_0 + "] in " + StringUtil.convertTime(t1 - t0) + " | total " + i + " in " + StringUtil.convertTime(t1 - totalPause - t00));
//pause(500);
t0 = System.currentTimeMillis();
for (i = 2 * MAX_0; i < 3 * MAX_0; i++) {
@@ -76,7 +174,7 @@
s.write(record.toString() + '\n');
}
t1 = System.currentTimeMillis();
- log.debug("create next [" + MAX_0 + "] in " + StringUtil.convertTime(t1-t0) + " | total " + i + " in " + StringUtil.convertTime( t1 - totalPause-t00));
+ log.debug("create next [" + MAX_0 + "] in " + StringUtil.convertTime(t1 - t0) + " | total " + i + " in " + StringUtil.convertTime(t1 - totalPause - t00));
//pause(500);
t0 = System.currentTimeMillis();
for (i = 3 * MAX_0; i < 4 * MAX_0; i++) {
@@ -85,7 +183,7 @@
s.flush();
}
t1 = System.currentTimeMillis();
- log.debug("create next [" + MAX_0 + "] in " + StringUtil.convertTime(t1-t0) + " | total " + i + " in " + StringUtil.convertTime( t1 - totalPause-t00));
+ log.debug("create next [" + MAX_0 + "] in " + StringUtil.convertTime(t1 - t0) + " | total " + i + " in " + StringUtil.convertTime(t1 - totalPause - t00));
//pause(500);
t0 = System.currentTimeMillis();
for (i = 4 * MAX_0; i < 5 * MAX_0; i++) {
@@ -93,7 +191,7 @@
s.write(record.toString() + '\n');
}
t1 = System.currentTimeMillis();
- log.debug("create next [" + MAX_0 + "] in " + StringUtil.convertTime(t1-t0) + " | total " + i + " in " + StringUtil.convertTime( t1 - totalPause-t00));
+ log.debug("create next [" + MAX_0 + "] in " + StringUtil.convertTime(t1 - t0) + " | total " + i + " in " + StringUtil.convertTime(t1 - totalPause - t00));
//pause(500);
t0 = System.currentTimeMillis();
for (i = 5 * MAX_0; i < 6 * MAX_0; i++) {
@@ -102,10 +200,10 @@
s.flush();
}
t1 = System.currentTimeMillis();
- log.debug("create next [" + MAX_0 + "] in " + StringUtil.convertTime(t1-t0) + " | total " + i + " in " + StringUtil.convertTime( t1 - totalPause-t00));
+ log.debug("create next [" + MAX_0 + "] in " + StringUtil.convertTime(t1 - t0) + " | total " + i + " in " + StringUtil.convertTime(t1 - totalPause - t00));
} catch (OutOfMemoryError e) {
t1 = System.currentTimeMillis();
- log.info("failed after | total " + i + " in " + StringUtil.convertTime( t1 - totalPause-t00));
+ log.info("failed after | total " + i + " in " + StringUtil.convertTime(t1 - totalPause - t00));
e.printStackTrace();
} finally {
if (s != null) {
@@ -122,7 +220,7 @@
IsisFish.init();
} catch (Exception e) {
throw new RuntimeException(e);
- }
+ }
}
/**
@@ -193,7 +291,7 @@
String fileName,
String methodName,
int lineNumber,
- String[] errors) {
+ String[] errors) throws UnsupportedEncodingException {
return new LogRecord(
level == null ? LogLevel.DEBUG.ordinal() : level.ordinal(),
timestamp,
@@ -211,11 +309,11 @@
String filename,
String methodName,
int lineNumber,
- String[] throwableStrRep) {
+ String[] throwableStrRep) throws UnsupportedEncodingException {
this.level = level;
this.timeStamp = timestamp;
//this.message = message;
- this.message = filename + ":" + lineNumber + " - " + methodName + " - " + message;
+ this.message = new String((filename + ":" + lineNumber + " - " + methodName + " - " + message).getBytes("utf-8"));
//this.filename = filename;
//this.methodName = methodName;
//this.lineNumber = lineNumber;
Modified: isis-fish/trunk/src/test/java/fr/ifremer/isisfish/logging/io/LineReaderTest.java
===================================================================
--- isis-fish/trunk/src/test/java/fr/ifremer/isisfish/logging/io/LineReaderTest.java 2009-01-13 16:51:24 UTC (rev 1737)
+++ isis-fish/trunk/src/test/java/fr/ifremer/isisfish/logging/io/LineReaderTest.java 2009-01-13 19:48:00 UTC (rev 1738)
@@ -1,5 +1,6 @@
package fr.ifremer.isisfish.logging.io;
+import fr.ifremer.TestUtils;
import fr.ifremer.isisfish.logging.TestUtil;
import junit.framework.TestCase;
import org.apache.commons.logging.Log;
@@ -20,6 +21,8 @@
protected static final Log log = LogFactory.getLog(LineReaderTest.class);
+ File testDir;
+
final static int[] sizes = new int[]{
10,
50,
@@ -38,19 +41,23 @@
protected void setUp() throws Exception {
super.setUp();
- new File("bench").mkdirs();
+
+ testDir = new File(TestUtils.getTargetdir(), "bench_" + System.nanoTime());
+ testDir.mkdirs();
+ System.out.println("benchdir " + testDir);
+
}
- protected void createMock(int i) throws IOException, InterruptedException {
+ protected static void createMock(File testDir, int i) throws IOException, InterruptedException {
TestUtil.MEGA_STREAM_SIZE = 6 * i;
- TestUtil.filename = "bench/" + LineReaderTest.class.getSimpleName() + "_" + 6 * i + ".log";
- File file = new File(TestUtil.filename);
+ TestUtil.filename = new File(testDir, LineReaderTest.class.getSimpleName() + "_" + 6 * i + ".log").getAbsolutePath();
+ File file = new File(testDir, TestUtil.filename);
long t0 = System.nanoTime();
TestUtil.mockLogFile();
long t1;
t1 = System.nanoTime();
- log.info("create [" + TestUtil.MEGA_STREAM_SIZE + "] in " + StringUtil.convertTime(t1-t0) + " [file: " + file + ", length: " + StringUtil.convertMemory(file.length()) + "]");
+ log.info("create [" + TestUtil.MEGA_STREAM_SIZE + "] in " + StringUtil.convertTime(t1 - t0) + " [file: " + file + ", length: " + StringUtil.convertMemory(file.length()) + "]");
System.gc();
}
@@ -58,7 +65,7 @@
public void estMakeMock() throws Exception {
for (int size : sizes) {
- createMock(size);
+ createMock(testDir, size);
}
}
@@ -110,8 +117,9 @@
private boolean showLog = false;
protected LineReader createReader(File f, String ext) throws IOException {
- return new LineReader(f, new FileOffsetReader(new File(f,ext)));
+ return new LineReader(f, new FileOffsetReader(new File(f, ext)));
}
+
protected void scanAllLines(int size) throws IOException {
TestUtil.MEGA_STREAM_SIZE = size;
TestUtil.filename = "bench/" + LineReaderTest.class.getSimpleName() + "_" + TestUtil.MEGA_STREAM_SIZE + ".log";
@@ -357,7 +365,7 @@
System.out.println("");
System.out.println("");
- LineReader reader2 = new LineReader(reader, new FileOffsetReader(new File(f,"offsets_debug_or_warn"))) {
+ LineReader reader2 = new LineReader(reader, new FileOffsetReader(new File(f, "offsets_debug_or_warn"))) {
public boolean match(String line) {
return line.contains("debug") || line.contains("warn");
}
@@ -384,7 +392,7 @@
System.out.println("");
System.out.println("");
- LineReader reader3 = new LineReader(reader, new FileOffsetReader(new File(f,"offsets_debug"))) {
+ LineReader reader3 = new LineReader(reader, new FileOffsetReader(new File(f, "offsets_debug"))) {
public boolean match(String line) {
return line.contains("debug");
}
Modified: isis-fish/trunk/src/test/java/fr/ifremer/isisfish/logging/io/LineReaderUtilTest.java
===================================================================
--- isis-fish/trunk/src/test/java/fr/ifremer/isisfish/logging/io/LineReaderUtilTest.java 2009-01-13 16:51:24 UTC (rev 1737)
+++ isis-fish/trunk/src/test/java/fr/ifremer/isisfish/logging/io/LineReaderUtilTest.java 2009-01-13 19:48:00 UTC (rev 1738)
@@ -1,7 +1,9 @@
package fr.ifremer.isisfish.logging.io;
+import fr.ifremer.TestUtils;
import fr.ifremer.isisfish.logging.LogLevel;
import fr.ifremer.isisfish.logging.LogLevelUtil;
+import fr.ifremer.isisfish.logging.TestUtil;
import junit.framework.TestCase;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -18,6 +20,18 @@
protected static final Log log = LogFactory.getLog(LineReaderUtilTest.class);
+ static File testDir;
+
+ public static File getTestDir() {
+ if (testDir == null) {
+ testDir = new File(TestUtils.getTargetdir(), "bench_" + System.nanoTime());
+ if (!testDir.mkdirs()) {
+ throw new IllegalStateException("could not create directory " + testDir);
+ }
+ }
+ return testDir;
+ }
+
final static int[] sizes = new int[]{
10,
50,
@@ -37,15 +51,14 @@
protected void setUp() throws Exception {
super.setUp();
- new File("bench").mkdirs();
- String filename = "bench/LineReaderTest_30.log";
- f = new File(filename);
+ System.out.println("benchdir " + getTestDir());
+ String filename = "LineReaderTest_30.log";
+ f = new File(testDir, filename);
+
if (!f.exists()) {
- new LineReaderTest().createMock(5);
+ TestUtil.createMock(testDir, filename, 5);
}
-
-
}
@@ -54,14 +67,14 @@
long nbLines;
LineReader reader, reader2;
- reader = new LineReader(f, new FileOffsetReader(new File(f, "offsets")));
+ reader = new LineReader(f, new FileOffsetReader(new File(f.getParentFile(), "offsets")));
reader.getOffsetReader().deleteOffsetFile();
reader.open();
nbLines = reader.getNbLines();
assertEquals(30, nbLines);
log.info("found " + nbLines + " in reader " + reader);
- reader2 = new LineReaderUtil.LevelLineReader(reader, new FileOffsetReader(new File(reader.getFile(), "leveloffsets_" + LogLevel.DEBUG.mask())), LogLevel.DEBUG);
+ reader2 = new LineReaderUtil.LevelLineReader(reader, new FileOffsetReader(new File(reader.getFile().getParentFile(), "leveloffsets_" + LogLevel.DEBUG.mask())), LogLevel.FATAL);
reader2.getOffsetReader().deleteOffsetFile();
reader2.open();
nbLines = reader2.getNbLines();
@@ -69,13 +82,21 @@
assertEquals(5, nbLines);
reader2.close();
- reader2 = new LineReaderUtil.LevelLineReader(reader, new FileOffsetReader(new File(reader.getFile(), "leveloffsets_" + LogLevel.INFO.mask())), LogLevel.INFO);
+ reader2 = new LineReaderUtil.LevelLineReader(reader, new FileOffsetReader(new File(reader.getFile().getParentFile(), "leveloffsets_" + LogLevel.DEBUG.mask())), LogLevel.DEBUG);
reader2.getOffsetReader().deleteOffsetFile();
reader2.open();
nbLines = reader2.getNbLines();
log.info("found " + nbLines + " in reader " + reader2);
assertEquals(5, nbLines);
+ reader2.close();
+
+ reader2 = new LineReaderUtil.LevelLineReader(reader, new FileOffsetReader(new File(reader.getFile().getParentFile(), "leveloffsets_" + LogLevel.INFO.mask())), LogLevel.INFO);
reader2.getOffsetReader().deleteOffsetFile();
+ reader2.open();
+ nbLines = reader2.getNbLines();
+ log.info("found " + nbLines + " in reader " + reader2);
+ assertEquals(5, nbLines);
+ reader2.getOffsetReader().deleteOffsetFile();
reader2.close();
reader.getOffsetReader().deleteOffsetFile();
@@ -84,11 +105,11 @@
public void testLevelsReader() throws Exception {
- LineReader reader, reader2,reader3;
+ LineReader reader, reader2, reader3;
int levels;
long nbLines;
- reader = new LineReader(f, new FileOffsetReader(new File(f, "offsets")));
+ reader = new LineReader(f, new FileOffsetReader(new File(f.getParentFile(), "offsets")));
reader.getOffsetReader().deleteOffsetFile();
reader.open();
nbLines = reader.getNbLines();
@@ -96,7 +117,7 @@
log.info("found " + nbLines + " in reader " + reader);
levels = LogLevelUtil.createSet(LogLevel.DEBUG, LogLevel.INFO);
- reader2 = new LineReaderUtil.LevelsLineReader(reader, new FileOffsetReader(new File(reader.getFile(), "leveloffsets_" + levels)), LogLevel.DEBUG, LogLevel.INFO);
+ reader2 = new LineReaderUtil.LevelsLineReader(reader, new FileOffsetReader(new File(reader.getFile().getParentFile(), "leveloffsets_" + levels)), LogLevel.DEBUG, LogLevel.INFO);
reader2.getOffsetReader().deleteOffsetFile();
reader2.open();
nbLines = reader2.getNbLines();
@@ -106,7 +127,7 @@
reader2.close();
levels = LogLevelUtil.createSet(LogLevel.WARN, LogLevel.INFO);
- reader2 = new LineReaderUtil.LevelsLineReader(reader, new FileOffsetReader(new File(reader.getFile(), "leveloffsets_" + levels)), LogLevel.INFO, LogLevel.WARN);
+ reader2 = new LineReaderUtil.LevelsLineReader(reader, new FileOffsetReader(new File(reader.getFile().getParentFile(), "leveloffsets_" + levels)), LogLevel.INFO, LogLevel.WARN);
reader2.getOffsetReader().deleteOffsetFile();
assertTrue(reader2.getOffsetReader().needCreate());
reader2.open();
@@ -114,8 +135,8 @@
log.info("found " + nbLines + " in reader " + reader2);
assertEquals(10, nbLines);
- levels = LogLevelUtil.createSet( LogLevel.INFO);
- reader3 = new LineReaderUtil.LevelsLineReader(reader2, new FileOffsetReader(new File(reader.getFile(), "leveloffsets_" + levels)), LogLevel.INFO);
+ levels = LogLevelUtil.createSet(LogLevel.INFO);
+ reader3 = new LineReaderUtil.LevelsLineReader(reader2, new FileOffsetReader(new File(reader.getFile().getParentFile(), "leveloffsets_" + levels)), LogLevel.INFO);
reader3.getOffsetReader().deleteOffsetFile();
assertTrue(reader3.getOffsetReader().needCreate());
reader3.open();
@@ -123,11 +144,11 @@
log.info("found " + nbLines + " in reader " + reader3);
assertEquals(5, nbLines);
- reader2.close();
+ reader2.close();
reader3.close();
levels = LogLevelUtil.createSet(LogLevel.INFO, LogLevel.WARN);
- reader2 = new LineReaderUtil.LevelsLineReader(reader, new FileOffsetReader(new File(reader.getFile(), "leveloffsets_" + levels)), LogLevel.WARN, LogLevel.INFO);
+ reader2 = new LineReaderUtil.LevelsLineReader(reader, new FileOffsetReader(new File(reader.getFile().getParentFile(), "leveloffsets_" + levels)), LogLevel.WARN, LogLevel.INFO);
assertFalse(reader2.getOffsetReader().needCreate());
reader2.open();
nbLines = reader2.getNbLines();
@@ -137,7 +158,7 @@
reader2.close();
levels = LogLevelUtil.createSet(LogLevel.DEBUG);
- reader2 = new LineReaderUtil.LevelsLineReader(reader, new FileOffsetReader(new File(reader.getFile(), "leveloffsets_" + levels)), LogLevel.DEBUG);
+ reader2 = new LineReaderUtil.LevelsLineReader(reader, new FileOffsetReader(new File(reader.getFile().getParentFile(), "leveloffsets_" + levels)), LogLevel.DEBUG);
assertFalse(reader2.getOffsetReader().needCreate());
reader2.open();
nbLines = reader2.getNbLines();
@@ -146,7 +167,7 @@
reader2.close();
levels = LogLevelUtil.createSet(LogLevel.DEBUG, LogLevel.DEBUG);
- reader2 = new LineReaderUtil.LevelsLineReader(reader, new FileOffsetReader(new File(reader.getFile(), "leveloffsets_" + levels)), LogLevel.DEBUG, LogLevel.DEBUG);
+ reader2 = new LineReaderUtil.LevelsLineReader(reader, new FileOffsetReader(new File(reader.getFile().getParentFile(), "leveloffsets_" + levels)), LogLevel.DEBUG, LogLevel.DEBUG);
assertFalse(reader2.getOffsetReader().needCreate());
reader2.open();
nbLines = reader2.getNbLines();
@@ -165,7 +186,7 @@
LineReader reader, reader2;
long nbLines;
- reader = new LineReader(f, new FileOffsetReader(new File(f, "offsets")));
+ reader = new LineReader(f, new FileOffsetReader(new File(f.getParentFile(), "offsets")));
reader.getOffsetReader().deleteOffsetFile();
reader.open();
nbLines = reader.getNbLines();
@@ -191,5 +212,5 @@
reader.getOffsetReader().deleteOffsetFile();
reader.close();
}
-
+
}
\ No newline at end of file
Modified: isis-fish/trunk/src/test/java/fr/ifremer/isisfish/simulator/SimulationHelperTest.java
===================================================================
--- isis-fish/trunk/src/test/java/fr/ifremer/isisfish/simulator/SimulationHelperTest.java 2009-01-13 16:51:24 UTC (rev 1737)
+++ isis-fish/trunk/src/test/java/fr/ifremer/isisfish/simulator/SimulationHelperTest.java 2009-01-13 19:48:00 UTC (rev 1738)
@@ -31,42 +31,40 @@
package fr.ifremer.isisfish.simulator;
-import java.io.File;
-import java.util.Enumeration;
-import java.util.List;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.codelutin.math.matrix.DoubleBigVector;
-import org.codelutin.math.matrix.MatrixFactory;
-import org.codelutin.topia.TopiaContext;
-
+import fr.ifremer.TestUtils;
import fr.ifremer.isisfish.IsisFish;
import fr.ifremer.isisfish.datastore.ResultStorage;
import fr.ifremer.isisfish.datastore.SimulationStorage;
import fr.ifremer.isisfish.entities.Result;
import fr.ifremer.isisfish.types.Date;
-
import junit.framework.TestCase;
import junit.framework.TestFailure;
import junit.framework.TestResult;
import junit.framework.TestSuite;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.codelutin.math.matrix.DoubleBigVector;
+import org.codelutin.math.matrix.MatrixFactory;
+import org.codelutin.topia.TopiaContext;
+import java.io.File;
+import java.util.Enumeration;
+import java.util.List;
-/**
- * @author poussin
- *
- */
+/** @author poussin */
+
public class SimulationHelperTest extends TestCase {
private static final Log log = LogFactory.getLog(SimulationHelperTest.class);
-
- final static private String [] SIMULATION_ZIP_FILE = new String[]{
- "src/test/fr/ifremer/isisfish/simulator/SimulationTest.zip",
- // put here other zip simulation test
- };
-
+
+ final static private String[] SIMULATION_ZIP_FILE = new String[]{
+ //TC - 20090113 : remove the asrc to src when the zip file will be in correct db version, otherwise there is a ui asking to migrate
+ // or just desactivate the migration service ?
+ "asrc" + File.separator + "test" + File.separator + "java" + File.separator + "fr" + File.separator + "ifremer" + File.separator + "isisfish" + File.separator + "simulator" + File.separator + "SimulationTest.zip",
+ // put here other zip simulation test
+ };
+
// public void testVerifResult() throws Exception {
// try {
// IsisConfig.load();
@@ -115,18 +113,19 @@
// }
// }
-/*
-10;20;30;40;50;60;70;80;90;
-100;200;300;400;500;600;700;800;900;
-1000;2000;3000;4000;5000;6000;7000;8000;9000;
-10000;20000;30000;40000;50000;60000;70000;80000;90000;
-100000;200000;300000;400000;500000;600000;700000;800000;900000;
-1000000;2000000;3000000;4000000;5000000;6000000;7000000;8000000;9000000;
-10000000;20000000;30000000;40000000;50000000;60000000;70000000;80000000;90000000;
-100000000;200000000;300000000;400000000;500000000;600000000;700000000;800000000;900000000;
-1000000000;2000000000;3000000000;4000000000;5000000000;6000000000;7000000000;8000000000;9000000000;
-10000000000;20000000000;30000000000;40000000000;50000000000;60000000000;70000000000;80000000000;90000000000;
-*/
+ /*
+ 10;20;30;40;50;60;70;80;90;
+ 100;200;300;400;500;600;700;800;900;
+ 1000;2000;3000;4000;5000;6000;7000;8000;9000;
+ 10000;20000;30000;40000;50000;60000;70000;80000;90000;
+ 100000;200000;300000;400000;500000;600000;700000;800000;900000;
+ 1000000;2000000;3000000;4000000;5000000;6000000;7000000;8000000;9000000;
+ 10000000;20000000;30000000;40000000;50000000;60000000;70000000;80000000;90000000;
+ 100000000;200000000;300000000;400000000;500000000;600000000;700000000;800000000;900000000;
+ 1000000000;2000000000;3000000000;4000000000;5000000000;6000000000;7000000000;8000000000;9000000000;
+ 10000000000;20000000000;30000000000;40000000000;50000000000;60000000000;70000000000;80000000000;90000000000;
+ */
+
public void testSimulate() throws Exception {
try {
// par defaut on utilise des doubles pour les matrices
@@ -135,36 +134,36 @@
for (String zipName : SIMULATION_ZIP_FILE) {
// recuperation du fichier zip de la simulation de test
- File zip = new File(zipName);
+ File zip = new File(TestUtils.getBasedir(), zipName);
// import de cette simulation
String name = "simulation-test-" + System.currentTimeMillis();
SimulationStorage simRef = SimulationStorage.importAndRenameZip(zip, name + "-ref");
// import de la simulation avec un autre nom
- SimulationStorage sim = SimulationStorage.importAndRenameZip(zip, name);
-
+ SimulationStorage sim = SimulationStorage.importAndRenameZip(zip, name);
+
try {
// suppression des resultats de cette simulation
TopiaContext tx = sim.getStorage().beginTransaction();
tx.execute("DELETE from " + Result.class.getName());
tx.commitTransaction();
-
+
// lancement de la simulation
// FIXME a remplacer avec SimulationService
// SimulationHelper.simulate(null, sim);
-
+
// verification qu'on retrouve les memes resulats pour les deux simulations
ResultStorage resultRef = simRef.getResultStorage();
ResultStorage result = sim.getResultStorage();
-
+
List<String> resultNames = resultRef.getResultName();
assertEquals(resultNames, result.getResultName());
-
+
Date lastDate = resultRef.getLastDate();
log.info("Check result ...");
- for (Date date=new Date(0); date.before(lastDate); date=date.next()) {
+ for (Date date = new Date(0); date.before(lastDate); date = date.next()) {
for (String resultName : resultNames) {
log.debug("Check result " + date + " " + resultName);
assertEquals("Date " + date.getDate() + " result " + resultName,
@@ -172,7 +171,7 @@
result.getMatrix(date, resultName));
}
}
-
+
} finally {
// fermeture des bases
simRef.getStorage().closeContext();
@@ -188,22 +187,22 @@
throw eee;
}
}
-
+
public static void main(String[] args) {
TestSuite suite = new TestSuite(SimulationHelperTest.class);
TestResult result = new TestResult();
suite.run(result);
if (result.wasSuccessful()) {
System.out.println("Test Ok");
- } else {
+ } else {
System.out.println("Test Faild");
System.out.println("Failures");
- for (Enumeration e=result.failures(); e.hasMoreElements();) {
+ for (Enumeration e = result.failures(); e.hasMoreElements();) {
System.out.println(e.nextElement().toString());
}
System.out.println("Errors");
- for (Enumeration e=result.errors(); e.hasMoreElements();) {
- TestFailure eee = (TestFailure)e.nextElement();
+ for (Enumeration e = result.errors(); e.hasMoreElements();) {
+ TestFailure eee = (TestFailure) e.nextElement();
System.out.println(eee.toString());
eee.thrownException().printStackTrace();
}
1
0