Echobase-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
November 2011
- 3 participants
- 137 discussions
r139 - in trunk/echobase-entities/src/main: java/fr/ifremer/echobase/entities xmi
by tchemit@users.forge.codelutin.com 29 Nov '11
by tchemit@users.forge.codelutin.com 29 Nov '11
29 Nov '11
Author: tchemit
Date: 2011-11-29 13:08:00 +0100 (Tue, 29 Nov 2011)
New Revision: 139
Url: http://forge.codelutin.com/repositories/revision/echobase/139
Log:
fix model
Modified:
trunk/echobase-entities/src/main/java/fr/ifremer/echobase/entities/EntitiesUtil.java
trunk/echobase-entities/src/main/xmi/echobase.zargo
Modified: trunk/echobase-entities/src/main/java/fr/ifremer/echobase/entities/EntitiesUtil.java
===================================================================
--- trunk/echobase-entities/src/main/java/fr/ifremer/echobase/entities/EntitiesUtil.java 2011-11-29 11:53:35 UTC (rev 138)
+++ trunk/echobase-entities/src/main/java/fr/ifremer/echobase/entities/EntitiesUtil.java 2011-11-29 12:08:00 UTC (rev 139)
@@ -55,14 +55,11 @@
result.add(EchoBaseEntityEnum.Result);
result.add(EchoBaseEntityEnum.Operation);
result.add(EchoBaseEntityEnum.OperationMetadataValue);
- result.add(EchoBaseEntityEnum.OperationMeasurementMetadataValue);
result.add(EchoBaseEntityEnum.Individual);
result.add(EchoBaseEntityEnum.OperationGearMetadataValue);
result.add(EchoBaseEntityEnum.Sample);
+ result.add(EchoBaseEntityEnum.SampleData);
result.add(EchoBaseEntityEnum.SampleAge);
- result.add(EchoBaseEntityEnum.SampleLength);
- result.add(EchoBaseEntityEnum.SampleAggregation);
- result.add(EchoBaseEntityEnum.AggregationLevel);
return result.toArray(new EchoBaseEntityEnum[result.size()]);
}
@@ -92,6 +89,7 @@
result.add(EchoBaseEntityEnum.DepthStratum);
result.add(EchoBaseEntityEnum.DepthStratumType);
result.add(EchoBaseEntityEnum.Gear);
+ result.add(EchoBaseEntityEnum.GearCaracteristic);
result.add(EchoBaseEntityEnum.GearMetadata);
result.add(EchoBaseEntityEnum.GearMetadataValue);
result.add(EchoBaseEntityEnum.GearType);
@@ -104,6 +102,9 @@
result.add(EchoBaseEntityEnum.ReferenceDatum);
result.add(EchoBaseEntityEnum.ReferenceDatumType);
result.add(EchoBaseEntityEnum.ReferencingMethod);
+ result.add(EchoBaseEntityEnum.SampleTag);
+ result.add(EchoBaseEntityEnum.SampleDataType);
+ result.add(EchoBaseEntityEnum.SampleRatioType);
result.add(EchoBaseEntityEnum.Species);
result.add(EchoBaseEntityEnum.Station);
result.add(EchoBaseEntityEnum.Vessel);
Modified: trunk/echobase-entities/src/main/xmi/echobase.zargo
===================================================================
(Binary files differ)
1
0
r138 - in trunk: . echobase-entities/src/main/resources/i18n echobase-entities/src/main/xmi src/doc/reunions src/site/resources src/site/resources/model src/site/rst
by tchemit@users.forge.codelutin.com 29 Nov '11
by tchemit@users.forge.codelutin.com 29 Nov '11
29 Nov '11
Author: tchemit
Date: 2011-11-29 12:53:35 +0100 (Tue, 29 Nov 2011)
New Revision: 138
Url: http://forge.codelutin.com/repositories/revision/echobase/138
Log:
add site + CR of last meeting
Added:
trunk/src/doc/reunions/reunion-2011-11-28.txt
trunk/src/site/resources/model/
trunk/src/site/resources/model/Transverse.png
trunk/src/site/resources/model/dataAcoustic.png
trunk/src/site/resources/model/dataCatches.png
trunk/src/site/resources/model/dataCommon.png
trunk/src/site/resources/model/referenceAcousticInstrument.png
trunk/src/site/resources/model/referenceAll.png
trunk/src/site/resources/model/referenceAreaOfOperation.png
trunk/src/site/resources/model/referenceDataMetadata.png
trunk/src/site/resources/model/referenceDataQuality.png
trunk/src/site/resources/model/referenceDepthStratum.png
trunk/src/site/resources/model/referenceEchotype.png
trunk/src/site/resources/model/referenceGear.png
trunk/src/site/resources/model/referenceMission.png
trunk/src/site/resources/model/referenceReferenceDatum.png
trunk/src/site/resources/model/referenceTSParameter.png
trunk/src/site/resources/model/referenceVessel.png
trunk/src/site/rst/model.rst
Modified:
trunk/echobase-entities/src/main/resources/i18n/echobase-entities_fr_FR.properties
trunk/echobase-entities/src/main/xmi/echobase.zargo
trunk/pom.xml
trunk/src/site/rst/index.rst
Modified: trunk/echobase-entities/src/main/resources/i18n/echobase-entities_fr_FR.properties
===================================================================
--- trunk/echobase-entities/src/main/resources/i18n/echobase-entities_fr_FR.properties 2011-11-28 22:23:24 UTC (rev 137)
+++ trunk/echobase-entities/src/main/resources/i18n/echobase-entities_fr_FR.properties 2011-11-29 11:53:35 UTC (rev 138)
@@ -58,6 +58,7 @@
echobase.common.dateCreated=
echobase.common.datum=datum
echobase.common.datumType=
+echobase.common.defaultAggregationLevel=
echobase.common.depthStratum=depthStratum
echobase.common.depthStratumId=
echobase.common.depthStratumMeaning=
@@ -90,6 +91,8 @@
echobase.common.flagMeanings=
echobase.common.frequency=
echobase.common.gear=
+echobase.common.gearCaracteristic=
+echobase.common.gearCaracteristicName=
echobase.common.gearMetadata=
echobase.common.gearMetadataName=
echobase.common.gearMetadataValue=
@@ -113,6 +116,7 @@
echobase.common.imo=
echobase.common.impacte=
echobase.common.individual=
+echobase.common.individualId=
echobase.common.individualValue=
echobase.common.institution=Institution
echobase.common.keywords=Môts clefs
@@ -120,6 +124,7 @@
echobase.common.lastModifiedDate=Date de dernière modification
echobase.common.lastModifiedUser=Utilisateur de dernière modification
echobase.common.length=
+echobase.common.level=
echobase.common.licence=
echobase.common.linestring=
echobase.common.litteratureReference=
@@ -148,7 +153,9 @@
echobase.common.modificationUser=Utilisateur
echobase.common.mz=
echobase.common.name=Nom
+echobase.common.newAttr=
echobase.common.notes=
+echobase.common.number=
echobase.common.numberAtAge=
echobase.common.numberAtLength=
echobase.common.numberSampled=
@@ -175,6 +182,7 @@
echobase.common.processingTemplate=
echobase.common.project=Projet
echobase.common.qualityDataFlagValues=
+echobase.common.ratio=
echobase.common.referenceDatum=referenceDatum
echobase.common.referenceDatumId=
echobase.common.referenceDatumType=
@@ -187,7 +195,12 @@
echobase.common.sample=
echobase.common.sampleAge=
echobase.common.sampleAggregation=
+echobase.common.sampleData=
+echobase.common.sampleDataType=
echobase.common.sampleLength=
+echobase.common.sampleMetadata=
+echobase.common.sampleRatioType=
+echobase.common.sampleTag=
echobase.common.sampleWeight=
echobase.common.scaleFactor=
echobase.common.seafloorSubstrate=
@@ -245,6 +258,7 @@
echobase.common.transitStartLocality=
echobase.common.transitStartTime=
echobase.common.transitVessel=
+echobase.common.type=
echobase.common.units=
echobase.common.validMax=
echobase.common.validMin=
Modified: trunk/echobase-entities/src/main/xmi/echobase.zargo
===================================================================
(Binary files differ)
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2011-11-28 22:23:24 UTC (rev 137)
+++ trunk/pom.xml 2011-11-29 11:53:35 UTC (rev 138)
@@ -15,7 +15,7 @@
<groupId>fr.ifremer</groupId>
<artifactId>echobase</artifactId>
- <version>0.2-rev-120-SNAPSHOT</version>
+ <version>0.2-SNAPSHOT</version>
<modules>
<module>echobase-entities</module>
Added: trunk/src/doc/reunions/reunion-2011-11-28.txt
===================================================================
--- trunk/src/doc/reunions/reunion-2011-11-28.txt (rev 0)
+++ trunk/src/doc/reunions/reunion-2011-11-28.txt 2011-11-29 11:53:35 UTC (rev 138)
@@ -0,0 +1,160 @@
+projet echobase
+---------------
+
+Lundi 15-11-2011 (Ifremer)
+
+Présents : Mathieu, Vincent, Benjamin, Tony, Franck (téléphone)
+
+Planning
+--------
+
+- détail du modèle pêcherie
+- scénarii d'import
+- import historique
+
+Modele peche
+------------
+
+Fait nouveau pour nous de découvrir que le moèdle peche proposé est un nouveau
+modèle et non pas un existant.
+
+Mathieu et Vincent s'interrogent sur le modèle actuel et cela concerne deux
+points :
+
+- les échantillons individuels qui ne sont pas uniformes avec les échantillons
+ non individuels, ce qui complexifie beaucoup le modèle.
+
+- la représentation des aggrégations d'échantillons hiérarchisés qui ne convient
+ pas.
+
+On a appelé Franck pour essayer d'éclaircir ces deux points et il est d'accord
+sur ces deux points.
+
+On essaye de trouver une meilleure modélisation.
+
+Les solutions retenues sont décrites dans les sections suivantes (à voir si
+cela permettra de bien prendre en compte tous les cas possibles et souhaités).
+
+Gestion des échantillons individuels
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+On supprime du modèle toute la partie sur les échantillons individuels,
+on introduit une notion de type des donnée échantillonnée qui convient et pour
+les échantillons groupés (il s'agit pour le moment uniquement d'un type de
+données taille) et pour les échantillons individuels.
+
+Cela permet d'avoir une grande felxibilité sur les données échantillonnées.
+
+On ajoute sur l'éntitié échantillon un entier qui est nulle lors d'un
+échantillon non individuel et qui représente l'identifiant de l'individu dans
+le cas d'un échantillon individuel.
+
+Gestion des aggregations d'échantillons
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Les échantillons peuvent être aggrégés et donc on voudrait pouvoir stoquer une
+information de type arbre.
+Plusieurs problématiques entrent en jeu lorsqu'on veut écrire un tel modèle :
+
+- le modèle sera-t-il reflexible ?
+- le modèle sera-t-il efficace à intérroger ?
+- le modèle sera-t-il facilement représentable sous forme d'arbre ?
+
+Nous partons sur une solution dite *labélisée*.
+
+Un échantilon possèdera plusieurs labels qui représentent en fait les noeuds de
+l'arbre d'échantillonage.
+
+Par exemple, un label *Gros* ou *Male* ou encore *Gros* et *Male*.
+
+A chaque label possible on associe un niveau de hiérarchie qui permettra
+ensuite de pouvoir gérer la cohérence de l'arbre d'échantillon.
+
+Par exemple si on a un tel arbre :
+
+G
+GM
+
+on ne peut pas avoir un nouveau noeud F car F est de niveau 2 et G de niveau ,
+il faut obligatoirement mettre un noeud GF.
+
+Inversement si on a
+
+M
+
+On ne peut pas directement ajouter un noued GF car le niveau G n'existe pas, il
+faudrait alors ajouter le noeud G, puis GM et GF.
+
+Le modèle que nous proposons est très flexible et peut très facilement rendre
+les hiérarchies incohérentes si on n'a pas de règles de gestion bien conçues.
+
+Il faudra alors bien penser à cela lors de la création d'un outil de saisie.
+
+On pourra mieux expliquer le fonctionnement lors de la prochaine réunion.
+
+Une question reste en suspens :
+
+ A quoi correspond aggregationLevelSampledWeight et
+ aggregationLevelObservedWeight dans l'ancien SampleAggregation ?
+
+ Il nous faudrait les formules utilisés pour les élévations selon ces deux
+ champs.
+
+Divers
+~~~~~~
+
+- Correction de la modélisation des engins (dans la version que j'ai du modèle
+ il y avait une liaison entre paramètre engin et type engin qui n' pas lieu
+ d'être).
+
+- On a remarqué que la table *captures* qui n'est rattaché à rien ! (dans le
+ modèle MS-ACCESS), il faut tiré cela au clair.
+
+Import historique
+-----------------
+
+Cet import sera réalisé par nos soins et donc cette fonctionnalité ne sera pas
+présente dans la version web.
+
+Nous fournirons donc une version finale de l'application avec une base déjà
+constituée des données historiques.
+
+Modèle acoustic
+---------------
+
+- suppression de l'entité supplémentaire Voyage_echotype car non utile.
+
+Scénarii d'import
+-----------------
+
+- non traité
+
+Disponibilité du modèle
+-----------------------
+
+Le modèle est sur le dépôt svn et est accessible au téléchargement pour tous
+à cette adresse :
+
+http://svn.forge.codelutin.com/svn/echobase/trunk/echobase-entities/src/main/xmi/echobase.zargo
+
+A faire
+-------
+
+- faire une procédure d'import des données peches historiques vers le nouveau
+ modèle. (Ifremer)
+- faire une procédure d'import des données accoustiques vers le nouveau modèle. (Ifremer)
+- fournir les données 2011 à importer (idéalement au format csv) (Ifremer)
+- coder l'import des données du référentiel (Codelutin)
+- regarder comment on peut exporter toute une base sql (dump sql) (Codelutin)
+- pouvoir supprimer lors d'un réimport les données précédemment importer (via la clef métier sur Voyage) (Codelutin)
+- mettre à disposition le modèle dans le compte rendu (Tony)
+
+- Prochaine réunion lundi 5 décembre 2011 à 10h00 (Ifremer).
+
+
+
+
+
+
+
+
Property changes on: trunk/src/doc/reunions/reunion-2011-11-28.txt
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Added: trunk/src/site/resources/model/Transverse.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/site/resources/model/Transverse.png
___________________________________________________________________
Added: svn:mime-type
+ image/png
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/src/site/resources/model/dataAcoustic.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/site/resources/model/dataAcoustic.png
___________________________________________________________________
Added: svn:mime-type
+ image/png
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/src/site/resources/model/dataCatches.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/site/resources/model/dataCatches.png
___________________________________________________________________
Added: svn:mime-type
+ image/png
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/src/site/resources/model/dataCommon.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/site/resources/model/dataCommon.png
___________________________________________________________________
Added: svn:mime-type
+ image/png
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/src/site/resources/model/referenceAcousticInstrument.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/site/resources/model/referenceAcousticInstrument.png
___________________________________________________________________
Added: svn:mime-type
+ image/png
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/src/site/resources/model/referenceAll.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/site/resources/model/referenceAll.png
___________________________________________________________________
Added: svn:mime-type
+ image/png
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/src/site/resources/model/referenceAreaOfOperation.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/site/resources/model/referenceAreaOfOperation.png
___________________________________________________________________
Added: svn:mime-type
+ image/png
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/src/site/resources/model/referenceDataMetadata.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/site/resources/model/referenceDataMetadata.png
___________________________________________________________________
Added: svn:mime-type
+ image/png
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/src/site/resources/model/referenceDataQuality.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/site/resources/model/referenceDataQuality.png
___________________________________________________________________
Added: svn:mime-type
+ image/png
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/src/site/resources/model/referenceDepthStratum.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/site/resources/model/referenceDepthStratum.png
___________________________________________________________________
Added: svn:mime-type
+ image/png
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/src/site/resources/model/referenceEchotype.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/site/resources/model/referenceEchotype.png
___________________________________________________________________
Added: svn:mime-type
+ image/png
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/src/site/resources/model/referenceGear.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/site/resources/model/referenceGear.png
___________________________________________________________________
Added: svn:mime-type
+ image/png
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/src/site/resources/model/referenceMission.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/site/resources/model/referenceMission.png
___________________________________________________________________
Added: svn:mime-type
+ image/png
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/src/site/resources/model/referenceReferenceDatum.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/site/resources/model/referenceReferenceDatum.png
___________________________________________________________________
Added: svn:mime-type
+ image/png
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/src/site/resources/model/referenceTSParameter.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/site/resources/model/referenceTSParameter.png
___________________________________________________________________
Added: svn:mime-type
+ image/png
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/src/site/resources/model/referenceVessel.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/site/resources/model/referenceVessel.png
___________________________________________________________________
Added: svn:mime-type
+ image/png
Added: svn:keywords
+ Author Date Id Revision HeadURL
Modified: trunk/src/site/rst/index.rst
===================================================================
--- trunk/src/site/rst/index.rst 2011-11-28 22:23:24 UTC (rev 137)
+++ trunk/src/site/rst/index.rst 2011-11-29 11:53:35 UTC (rev 138)
@@ -42,4 +42,9 @@
Les documents
-------------
-TODO
+- La documentation d'`installation`_.
+- La description du `modèle`_.
+
+.. _installation: install.html
+.. _modèle: model.html
+
Added: trunk/src/site/rst/model.rst
===================================================================
--- trunk/src/site/rst/model.rst (rev 0)
+++ trunk/src/site/rst/model.rst 2011-11-29 11:53:35 UTC (rev 138)
@@ -0,0 +1,94 @@
+.. -
+.. * #%L
+.. * echobase
+.. *
+.. * $Id$
+.. * $HeadURL$
+.. * %%
+.. * Copyright (C) 2011 Ifremer, Codelutin
+.. * %%
+.. * This program is free software: you can redistribute it and/or modify
+.. * it under the terms of the GNU Affero General Public License as published by
+.. * the Free Software Foundation, either version 3 of the License, or
+.. * (at your option) any later version.
+.. *
+.. * This program is distributed in the hope that it will be useful,
+.. * but WITHOUT ANY WARRANTY; without even the implied warranty of
+.. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+.. * GNU General Public License for more details.
+.. *
+.. * You should have received a copy of the GNU Affero General Public License
+.. * along with this program. If not, see <http://www.gnu.org/licenses/>.
+.. * #L%
+.. -
+===============
+Modèle Echobase
+===============
+
+:Authors: Tony Chemit <chemit(a)codelutin.com>
+
+.. contents:: Table des matières
+ :depth: 2
+
+.. sectnum::
+ :start: 1
+ :depth: 2
+
+Présentation
+------------
+
+On donne ici des explications sur le modèle.
+
+Le modèle conçu sous argoUML est téléchargeable `ici`_ .
+
+Modèle du référentiel
+---------------------
+
+- `Vue générale du référentiel`_
+- `Référentiel AcousticInstrument`_
+- `Référentiel AreaOfOperation`_
+- `Référentiel DataMetadata`_
+- `Référentiel DepthStratum`_
+- `Référentiel Echotype`_
+- `Référentiel Gear`_
+- `Référentiel Mission`_
+- `Référentiel ReferenceDatum`_
+- `Référentiel TSParameter`_
+- `Référentiel Vessel`_
+
+Modèle thématique
+-----------------
+
+Partie commune
+~~~~~~~~~~~~~~
+
+- `Partie commune des données thématiques`_
+
+
+Sous modèle acoustique
+~~~~~~~~~~~~~~~~~~~~~~
+
+- `Sous modèle acoustique`_
+
+Sous modèle pêcherie
+~~~~~~~~~~~~~~~~~~~~
+
+- `Sous modèle pêcherie`_
+
+.. _ici: http://svn.forge.codelutin.com/svn/echobase/trunk/echobase-entities/src/mai…
+
+.. _Vue générale du référentiel: model/referenceAll.png
+.. _Référentiel AcousticInstrument: model/referenceAcousticInstrument.png
+.. _Référentiel AreaOfOperation: model/referenceAreaOfOperation.png
+.. _Référentiel DataMetadata: model/referenceDataMetadata.png
+.. _Référentiel DepthStratum: model/referenceDepthStratum.png
+.. _Référentiel Echotype: model/referenceEchotype.png
+.. _Référentiel Gear: model/referenceGear.png
+.. _Référentiel Mission: model/referenceMission.png
+.. _Référentiel ReferenceDatum: model/referenceReferenceDatum.png
+.. _Référentiel TSParameter: model/referenceTSParameter.png
+.. _Référentiel Vessel: model/referenceVessel.png
+
+.. _Partie commune des données thématiques: model/dataCommon.png
+.. _Sous modèle acoustique: model/dataAcoustic.png
+.. _Sous modèle pêcherie: model/dataCatches.png
Property changes on: trunk/src/site/rst/model.rst
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
1
0
Author: maven-release
Date: 2011-11-28 23:23:24 +0100 (Mon, 28 Nov 2011)
New Revision: 137
Url: http://forge.codelutin.com/repositories/revision/echobase/137
Log:
Update mavenpom4redmine to 3.0.6.
Modified:
trunk/pom.xml
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2011-11-27 10:09:45 UTC (rev 136)
+++ trunk/pom.xml 2011-11-28 22:23:24 UTC (rev 137)
@@ -10,12 +10,12 @@
<parent>
<groupId>org.nuiton</groupId>
<artifactId>mavenpom4redmine</artifactId>
- <version>3.0.5</version>
+ <version>3.0.6</version>
</parent>
<groupId>fr.ifremer</groupId>
<artifactId>echobase</artifactId>
- <version>0.2-SNAPSHOT</version>
+ <version>0.2-rev-120-SNAPSHOT</version>
<modules>
<module>echobase-entities</module>
1
0
27 Nov '11
Author: tchemit
Date: 2011-11-27 11:09:45 +0100 (Sun, 27 Nov 2011)
New Revision: 136
Url: http://forge.codelutin.com/repositories/revision/echobase/136
Log:
- mise en place suqelette import historique
- mise en place mode d'import
- validation sur les import de donn?\195?\169es
- suppression package import
- renommage ImportMode en SelectedMissionMode
Added:
trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/SelectedMissionMode.java
trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importHistorical/
trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importHistorical/Configure.java
trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importHistorical/LaunchImport.java
trunk/echobase-ui/src/main/resources/config/struts-importHistorical.xml
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importHistorical/
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importHistorical/Configure-validation.xml
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/progress.jsp
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/result.jsp
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importHistorical/
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importHistorical/configure.jsp
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importHistorical/progress.jsp
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importHistorical/result.jsp
Removed:
trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ImportMode.java
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importProgress.jsp
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importResult.jsp
Modified:
trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/EchoBaseSession.java
trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/EchoBaseActionSupport.java
trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/dbeditor/GetEntity.java
trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureFiles.java
trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureMission.java
trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/LaunchImport.java
trunk/echobase-ui/src/main/resources/config/struts-importData.xml
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureFiles-validation.xml
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureMission-validation.xml
trunk/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties
trunk/echobase-ui/src/main/resources/struts.xml
trunk/echobase-ui/src/main/resources/validators.xml
trunk/echobase-ui/src/main/webapp/WEB-INF/includes/header.jsp
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureFiles.jsp
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureMission.jsp
Modified: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/EchoBaseSession.java
===================================================================
--- trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/EchoBaseSession.java 2011-11-27 10:06:33 UTC (rev 135)
+++ trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/EchoBaseSession.java 2011-11-27 10:09:45 UTC (rev 136)
@@ -25,6 +25,7 @@
import fr.ifremer.echobase.entities.EchoBaseUser;
import fr.ifremer.echobase.services.ImportDataConfiguration;
+import fr.ifremer.echobase.services.ImportHistoricalConfiguration;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -45,9 +46,12 @@
/** Key to set User connected in this session. */
protected static final String PROPERTY_ECHO_BASE_USER = "echobaseUser";
- /** Key to keep import configuration in this session. */
+ /** Key to keep import data configuration in this session. */
protected static final String PROPERTY_IMPORT_DATA_CONFIGURATION = "importDataConfiguration";
+ /** Key to keep historical import configuration in this session. */
+ protected static final String PROPERTY_IMPORT_HISTORICAL_CONFIGURATION = "importHistoricalConfiguration";
+
/** To store all properties in this session. */
protected Map<String, Object> store;
@@ -77,6 +81,14 @@
set(PROPERTY_IMPORT_DATA_CONFIGURATION, configuration);
}
+ public ImportHistoricalConfiguration getImportHistoricalConfiguration() {
+ return get(PROPERTY_IMPORT_HISTORICAL_CONFIGURATION, ImportHistoricalConfiguration.class);
+ }
+
+ public void setImportHistoricalConfiguration(ImportHistoricalConfiguration configuration) {
+ set(PROPERTY_IMPORT_HISTORICAL_CONFIGURATION, configuration);
+ }
+
/**
* Remove form this session, the object from his given key and returns it.
*
Modified: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/EchoBaseActionSupport.java
===================================================================
--- trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/EchoBaseActionSupport.java 2011-11-27 10:06:33 UTC (rev 135)
+++ trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/EchoBaseActionSupport.java 2011-11-27 10:09:45 UTC (rev 136)
@@ -25,6 +25,7 @@
import com.opensymphony.xwork2.ActionContext;
import fr.ifremer.echobase.EchoBaseConfiguration;
+import fr.ifremer.echobase.InputFile;
import fr.ifremer.echobase.services.DecoratorService;
import fr.ifremer.echobase.services.EchoBaseService;
import fr.ifremer.echobase.services.EchoBaseServiceContext;
@@ -32,6 +33,9 @@
import fr.ifremer.echobase.services.EchoBaseServiceFactory;
import fr.ifremer.echobase.ui.EchoBaseApplicationContext;
import fr.ifremer.echobase.ui.EchoBaseSession;
+import org.apache.commons.io.FileUtils;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
import org.apache.struts2.StrutsStatics;
import org.nuiton.topia.TopiaContext;
import org.nuiton.topia.framework.TopiaTransactionAware;
@@ -40,6 +44,8 @@
import org.nuiton.web.struts2.BaseAction;
import javax.servlet.http.HttpServletRequest;
+import java.io.File;
+import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Collection;
import java.util.Date;
@@ -66,6 +72,10 @@
/** Key to store the single instance of the application context */
public static final String APPLICATION_CONTEXT_PARAMETER = "echoBaseApplicationContext";
+ /** Logger. */
+ private static final Log log =
+ LogFactory.getLog(EchoBaseActionSupport.class);
+
private SimpleDateFormat dateFormat;
private SimpleDateFormat monthFormat;
@@ -219,4 +229,21 @@
protected static ActionContext getActionContext() {
return ActionContext.getContext();
}
+
+ protected void copyFile(InputFile inputFile,
+ File dataDirectory) throws IOException {
+ File source = inputFile.getFile();
+ if (source != null) {
+
+ File target = new File(dataDirectory, inputFile.getFileName());
+ if (log.isInfoEnabled()) {
+ log.info("Copy file " + source + " to " + target);
+ }
+ FileUtils.copyFile(source, target);
+
+ // keep target (source file will be removed at the end of this action)
+ inputFile.setFile(target);
+ }
+
+ }
}
Modified: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/dbeditor/GetEntity.java
===================================================================
--- trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/dbeditor/GetEntity.java 2011-11-27 10:06:33 UTC (rev 135)
+++ trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/dbeditor/GetEntity.java 2011-11-27 10:09:45 UTC (rev 136)
@@ -77,7 +77,7 @@
DbEditorService service = newService(DbEditorService.class);
TableMeta table = serviceContext.getDbMeta().getTable(entityType);
-
+
datas = service.getData(table, id);
List<ColumnMeta> columnMetas = table.getColumns();
Modified: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureFiles.java
===================================================================
--- trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureFiles.java 2011-11-27 10:06:33 UTC (rev 135)
+++ trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureFiles.java 2011-11-27 10:09:45 UTC (rev 136)
@@ -23,11 +23,12 @@
*/
package fr.ifremer.echobase.ui.actions.importData;
+import com.google.common.collect.Maps;
import com.opensymphony.xwork2.Preparable;
-import fr.ifremer.echobase.InputFile;
import fr.ifremer.echobase.entities.references.Mission;
import fr.ifremer.echobase.services.EchoBaseServiceSupport;
import fr.ifremer.echobase.services.ImportDataConfiguration;
+import fr.ifremer.echobase.services.ImportDataMode;
import fr.ifremer.echobase.ui.actions.EchoBaseActionSupport;
import org.apache.commons.io.FileUtils;
import org.apache.commons.logging.Log;
@@ -35,7 +36,7 @@
import org.nuiton.util.FileUtil;
import java.io.File;
-import java.io.IOException;
+import java.util.Map;
/**
* Action to load input files to import.
@@ -56,10 +57,17 @@
/** Id of selected voyage used in import. */
protected String missionId;
+ /** Universe of possible import modes. */
+ protected Map<String, String> importDataModes;
+
public void setMissionId(String missionId) {
this.missionId = missionId;
}
+ public void setImportDataMode(ImportDataMode importDataMode) {
+ getModel().setImportDataMode(importDataMode);
+ }
+
public void setAcoustic(File file) {
getModel().getAcousticFile().setFile(file);
}
@@ -124,6 +132,10 @@
return missionId;
}
+ public ImportDataMode getImportDataMode() {
+ return getModel().getImportDataMode();
+ }
+
public ImportDataConfiguration getModel() {
if (model == null) {
model = new ImportDataConfiguration(getLocale());
@@ -131,6 +143,10 @@
return model;
}
+ public Map<String, String> getImportDataModes() {
+ return importDataModes;
+ }
+
@Override
public String input() throws Exception {
@@ -147,8 +163,9 @@
File tempDirectory = FileUtils.getTempDirectory();
File dataDirectory = new File(
tempDirectory,
- "echobase-import" + System.currentTimeMillis());
+ "echobase-importData-" + System.currentTimeMillis());
FileUtil.createDirectoryIfNecessary(dataDirectory);
+ importModel.setWorkingDirectory(dataDirectory);
if (log.isInfoEnabled()) {
log.info("Temporary directory to use : " + dataDirectory);
}
@@ -169,23 +186,21 @@
newService(EchoBaseServiceSupport.class);
Mission mission = service.getEntityById(Mission.class, missionId);
- getModel().setMission(mission);
- }
+ ImportDataConfiguration configuration = getModel();
+ configuration.setMission(mission);
- protected void copyFile(InputFile inputFile,
- File dataDirectory) throws IOException {
- File source = inputFile.getFile();
- if (source != null) {
+ importDataModes = Maps.newLinkedHashMap();
+ for (ImportDataMode mode : ImportDataMode.values()) {
+ importDataModes.put(mode.name(), _(mode.getI18nKey()));
+ }
- File target = new File(dataDirectory, inputFile.getFileName());
- if (log.isInfoEnabled()) {
- log.info("Copy file " + source + " to " + target);
- }
- FileUtils.copyFile(source, target);
-
- // keep target (source file will be removed at the end of this action)
- inputFile.setFile(target);
+ if (log.isInfoEnabled()) {
+ log.info("Incoming importDataMode " +
+ configuration.getImportDataMode());
}
+ if (configuration.getImportDataMode() == null) {
+ configuration.setImportDataMode(ImportDataMode.ALL);
+ }
+ }
- }
}
Modified: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureMission.java
===================================================================
--- trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureMission.java 2011-11-27 10:06:33 UTC (rev 135)
+++ trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureMission.java 2011-11-27 10:09:45 UTC (rev 136)
@@ -56,7 +56,7 @@
protected Map<String, String> importModes;
/** Selected import mode. */
- protected ImportMode importMode;
+ protected SelectedMissionMode importMode;
/** mission to use. */
protected Mission mission;
@@ -76,23 +76,23 @@
return missions;
}
- public ImportMode getImportMode() {
+ public SelectedMissionMode getImportMode() {
return importMode;
}
- public void setImportMode(ImportMode importMode) {
+ public void setImportMode(SelectedMissionMode importMode) {
this.importMode = importMode;
}
@Override
public String input() throws Exception {
importModes = Maps.newLinkedHashMap();
- for (ImportMode mode : ImportMode.values()) {
+ for (SelectedMissionMode mode : SelectedMissionMode.values()) {
importModes.put(mode.name(), _(mode.getI18nKey()));
}
if (importMode == null) {
- importMode = ImportMode.USE_EXISTING_MISSION;
+ importMode = SelectedMissionMode.USE_EXISTING_MISSION;
}
EchoBaseServiceSupport service =
@@ -111,7 +111,7 @@
@Override
public String execute() throws Exception {
- if (importMode == ImportMode.CREATE_NEW_MISSION) {
+ if (importMode == SelectedMissionMode.CREATE_NEW_MISSION) {
// create voyage in db
ImportDataService service = newService(ImportDataService.class);
Deleted: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ImportMode.java
===================================================================
--- trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ImportMode.java 2011-11-27 10:06:33 UTC (rev 135)
+++ trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ImportMode.java 2011-11-27 10:09:45 UTC (rev 136)
@@ -1,49 +0,0 @@
-/*
- * #%L
- * EchoBase :: UI
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2011 Ifremer, Codelutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- * #L%
- */
-package fr.ifremer.echobase.ui.actions.importData;
-
-import static org.nuiton.i18n.I18n.n_;
-
-/**
- * Define import mode (use an existing voayge, or create a new one.
- *
- * @author tchemit <chemit(a)codelutin.com>
- * @since 0.2
- */
-public enum ImportMode {
-
- CREATE_NEW_MISSION(n_("echobase.common.importMode.createNewMission")),
- USE_EXISTING_MISSION(n_("echobase.common.importMode.useExistingMission"));
-
-
- private final String i18nKey;
-
- ImportMode(String i18nKey) {
- this.i18nKey = i18nKey;
- }
-
- public String getI18nKey() {
- return i18nKey;
- }
-}
Modified: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/LaunchImport.java
===================================================================
--- trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/LaunchImport.java 2011-11-27 10:06:33 UTC (rev 135)
+++ trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/LaunchImport.java 2011-11-27 10:09:45 UTC (rev 136)
@@ -52,7 +52,7 @@
protected Map<InputFile, CsvImportResult> importResult;
- transient ImportDataService service;
+ protected transient ImportDataService service;
public ImportDataConfiguration getModel() {
return model;
@@ -83,6 +83,9 @@
return SUCCESS;
} finally {
+ // clean configuration
+ model.destroy();
+
// remove configuration from session
getEchoBaseSession().setImportDataConfiguration(null);
}
Copied: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/SelectedMissionMode.java (from rev 132, trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ImportMode.java)
===================================================================
--- trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/SelectedMissionMode.java (rev 0)
+++ trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/SelectedMissionMode.java 2011-11-27 10:09:45 UTC (rev 136)
@@ -0,0 +1,48 @@
+/*
+ * #%L
+ * EchoBase :: UI
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ * #L%
+ */
+package fr.ifremer.echobase.ui.actions.importData;
+
+import static org.nuiton.i18n.I18n.n_;
+
+/**
+ * Define import mode (use an existing voayge, or create a new one.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 0.2
+ */
+public enum SelectedMissionMode {
+
+ CREATE_NEW_MISSION(n_("echobase.common.importMode.createNewMission")),
+ USE_EXISTING_MISSION(n_("echobase.common.importMode.useExistingMission"));
+
+ private final String i18nKey;
+
+ SelectedMissionMode(String i18nKey) {
+ this.i18nKey = i18nKey;
+ }
+
+ public String getI18nKey() {
+ return i18nKey;
+ }
+}
Property changes on: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/SelectedMissionMode.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Added: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importHistorical/Configure.java
===================================================================
--- trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importHistorical/Configure.java (rev 0)
+++ trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importHistorical/Configure.java 2011-11-27 10:09:45 UTC (rev 136)
@@ -0,0 +1,101 @@
+/*
+ * #%L
+ * EchoBase :: UI
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ * #L%
+ */
+package fr.ifremer.echobase.ui.actions.importHistorical;
+
+import fr.ifremer.echobase.InputFile;
+import fr.ifremer.echobase.services.ImportHistoricalConfiguration;
+import fr.ifremer.echobase.ui.actions.EchoBaseActionSupport;
+import org.apache.commons.io.FileUtils;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.nuiton.util.FileUtil;
+
+import java.io.File;
+
+/**
+ * Configure an historical import.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 0.2
+ */
+public class Configure extends EchoBaseActionSupport {
+
+ private static final long serialVersionUID = 1L;
+
+ /** Logger. */
+ private static final Log log = LogFactory.getLog(Configure.class);
+
+ /** Configuration of the historical import. */
+ protected ImportHistoricalConfiguration model;
+
+ public ImportHistoricalConfiguration getModel() {
+ if (model == null) {
+ model = new ImportHistoricalConfiguration(getLocale());
+ }
+ return model;
+ }
+
+ public void setInputFileName(String fileName) {
+ getModel().getInput().setFileName(fileName);
+ }
+
+ public void setInput(File file) {
+ getModel().getInput().setFile(file);
+ }
+
+ public void setInputContentType(String contentType) {
+ getModel().getInput().setContentType(contentType);
+ }
+
+ @Override
+ public String input() throws Exception {
+
+ // always remove configuration from session anytime coming here
+ getEchoBaseSession().setImportHistoricalConfiguration(null);
+ return INPUT;
+ }
+
+ @Override
+ public String execute() throws Exception {
+
+ ImportHistoricalConfiguration configuration = getModel();
+
+ File tempDirectory = FileUtils.getTempDirectory();
+ File dataDirectory = new File(
+ tempDirectory,
+ "echobase-importHistorical-" + System.currentTimeMillis());
+ FileUtil.createDirectoryIfNecessary(dataDirectory);
+ configuration.setWorkingDirectory(dataDirectory);
+ if (log.isInfoEnabled()) {
+ log.info("Temporary directory to use : " + dataDirectory);
+ }
+
+ InputFile input = configuration.getInput();
+ copyFile(input, dataDirectory);
+
+ // store configuration in session
+ getEchoBaseSession().setImportHistoricalConfiguration(configuration);
+ return SUCCESS;
+ }
+}
Property changes on: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importHistorical/Configure.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Added: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importHistorical/LaunchImport.java
===================================================================
--- trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importHistorical/LaunchImport.java (rev 0)
+++ trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importHistorical/LaunchImport.java 2011-11-27 10:09:45 UTC (rev 136)
@@ -0,0 +1,94 @@
+/*
+ * #%L
+ * EchoBase :: UI
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ * #L%
+ */
+package fr.ifremer.echobase.ui.actions.importHistorical;
+
+import com.opensymphony.xwork2.Preparable;
+import fr.ifremer.echobase.services.CsvImportResult;
+import fr.ifremer.echobase.services.ImportHistoricalConfiguration;
+import fr.ifremer.echobase.services.ImportHistoricalService;
+import fr.ifremer.echobase.ui.actions.EchoBaseActionSupport;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+/**
+ * To starts the historical import.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 0.2
+ */
+public class LaunchImport extends EchoBaseActionSupport implements Preparable {
+
+ private static final long serialVersionUID = 1L;
+
+ /** Logger. */
+ private static final Log log = LogFactory.getLog(LaunchImport.class);
+
+ /** Configuration of the historical import. */
+ protected ImportHistoricalConfiguration model;
+
+ /** Result of import. */
+ protected CsvImportResult importResult;
+
+ /** service to execute the import. */
+ protected transient ImportHistoricalService service;
+
+ public ImportHistoricalConfiguration getModel() {
+ return model;
+ }
+
+ public CsvImportResult getImportResult() {
+ return importResult;
+ }
+
+ @Override
+ public void prepare() throws Exception {
+
+ model = getEchoBaseSession().getImportHistoricalConfiguration();
+
+ service = newService(ImportHistoricalService.class);
+ }
+
+ @Override
+ public String execute() throws Exception {
+
+ try {
+
+ if (log.isInfoEnabled()) {
+ log.info("Start imports with file " +
+ model.getInput().getFileName());
+ }
+
+ importResult = service.startImport(model);
+ return SUCCESS;
+ } finally {
+
+ // clean configuration
+ model.destroy();
+
+ // remove configuration from session
+ getEchoBaseSession().setImportHistoricalConfiguration(null);
+ }
+ }
+
+}
Property changes on: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importHistorical/LaunchImport.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Modified: trunk/echobase-ui/src/main/resources/config/struts-importData.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/config/struts-importData.xml 2011-11-27 10:06:33 UTC (rev 135)
+++ trunk/echobase-ui/src/main/resources/config/struts-importData.xml 2011-11-27 10:09:45 UTC (rev 136)
@@ -30,7 +30,7 @@
<struts>
- <package name="import" extends="loggued" namespace="/importData">
+ <package name="importData" extends="loggued" namespace="/importData">
<!-- Configure import mission -->
<action name="configureMission"
@@ -62,8 +62,8 @@
method="execute">
<interceptor-ref name="basicStackLoggued"/>
<interceptor-ref name="execAndWait"/>
- <result name="wait">/WEB-INF/jsp/importData/importProgress.jsp</result>
- <result>/WEB-INF/jsp/importData/importResult.jsp</result>
+ <result name="wait">/WEB-INF/jsp/importData/progress.jsp</result>
+ <result>/WEB-INF/jsp/importData/result.jsp</result>
</action>
</package>
Added: trunk/echobase-ui/src/main/resources/config/struts-importHistorical.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/config/struts-importHistorical.xml (rev 0)
+++ trunk/echobase-ui/src/main/resources/config/struts-importHistorical.xml 2011-11-27 10:09:45 UTC (rev 136)
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+ #%L
+ EchoBase :: UI
+
+ $Id$
+ $HeadURL$
+ %%
+ Copyright (C) 2011 Ifremer, Codelutin
+ %%
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ #L%
+ -->
+
+
+<!DOCTYPE struts PUBLIC
+ "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
+ "http://struts.apache.org/dtds/struts-2.1.7.dtd">
+
+<struts>
+
+ <package name="importHistorical" extends="loggued" namespace="/importHistorical">
+
+ <!-- Configure import -->
+ <action name="configureImport"
+ class="fr.ifremer.echobase.ui.actions.importHistorical.Configure">
+ <interceptor-ref name="paramsPrepareParamsStackLoggued"/>
+ <result name="input">/WEB-INF/jsp/importHistorical/configure.jsp</result>
+ <result type="redirectAction">
+ <param name="namespace">/importHistorical</param>
+ <param name="actionName">doImport</param>
+ </result>
+ </action>
+
+ <!-- Starts import -->
+ <action name="doImport"
+ class="fr.ifremer.echobase.ui.actions.importHistorical.LaunchImport"
+ method="execute">
+ <interceptor-ref name="basicStackLoggued"/>
+ <interceptor-ref name="execAndWait"/>
+ <result name="wait">/WEB-INF/jsp/importHistorical/progress.jsp</result>
+ <result>/WEB-INF/jsp/importHistorical/result.jsp</result>
+ </action>
+
+ </package>
+
+</struts>
+
Property changes on: trunk/echobase-ui/src/main/resources/config/struts-importHistorical.xml
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Modified: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureFiles-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureFiles-validation.xml 2011-11-27 10:06:33 UTC (rev 135)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureFiles-validation.xml 2011-11-27 10:09:45 UTC (rev 136)
@@ -26,10 +26,56 @@
"http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
<validators>
- <field name="missionId">
- <field-validator type="requiredstring">
- <message key="echobase.error.import.voyage.required"/>
+ <field name="model.mission">
+ <field-validator type="required">
+ <message key="echobase.error.import.mission.required"/>
</field-validator>
</field>
+ <field name="importDataMode">
+ <field-validator type="required">
+ <message key="echobase.error.import.importDataMode.required"/>
+ </field-validator>
+ </field>
+
+ <field name="acoustic">
+ <field-validator type="nfieldexpression">
+ <param name="expression">model.acousticFile.file != null</param>
+ <param name="skip">importDataMode.name() != "ALL" && importDataMode.name() != "ACOUSTIC"</param>
+ <message key="echobase.error.import.acousticFile.required"/>
+ </field-validator>
+ </field>
+
+ <field name="capture">
+ <field-validator type="nfieldexpression">
+ <param name="expression">model.captureFile.file != null</param>
+ <param name="skip">importDataMode.name() != "ALL"</param>
+ <message key="echobase.error.import.captureFile.required"/>
+ </field-validator>
+ </field>
+
+ <field name="lectureAgeGen">
+ <field-validator type="nfieldexpression">
+ <param name="expression">model.lectureAgeGenFile.file != null</param>
+ <param name="skip">importDataMode.name() != "ALL"</param>
+ <message key="echobase.error.import.lectureAgeGenFile.required"/>
+ </field-validator>
+ </field>
+
+ <field name="events">
+ <field-validator type="nfieldexpression">
+ <param name="expression">model.eventsFile.file != null</param>
+ <param name="skip">importDataMode.name() != "ALL"</param>
+ <message key="echobase.error.import.eventsFile.required"/>
+ </field-validator>
+ </field>
+
+ <field name="typeEchoSpecies">
+ <field-validator type="nfieldexpression">
+ <param name="expression">model.typeEchoSpeciesFile.file != null</param>
+ <param name="skip">importDataMode.name() != "ALL"</param>
+ <message key="echobase.error.import.typeEchoSpeciesFile.required"/>
+ </field-validator>
+ </field>
+
</validators>
\ No newline at end of file
Modified: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureMission-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureMission-validation.xml 2011-11-27 10:06:33 UTC (rev 135)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureMission-validation.xml 2011-11-27 10:09:45 UTC (rev 136)
@@ -33,21 +33,21 @@
</field>
<field name="mission.topiaId">
- <field-validator type="requiredstring">
+ <field-validator type="nrequiredstring">
<param name="skip">importMode.name() != "USE_EXISTING_MISSION"</param>
<message key="echobase.error.import.mission.required"/>
</field-validator>
</field>
<field name="mission.missionName">
- <field-validator type="requiredstring">
+ <field-validator type="nrequiredstring">
<param name="skip">importMode.name() != "CREATE_NEW_MISSION"</param>
<message key="echobase.error.import.missionName.required"/>
</field-validator>
</field>
<field name="mission.missionAbstract">
- <field-validator type="requiredstring">
+ <field-validator type="nrequiredstring">
<param name="skip">importMode.name() != "CREATE_NEW_MISSION"</param>
<message key="echobase.error.import.missionAbstract.required"/>
</field-validator>
Added: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importHistorical/Configure-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importHistorical/Configure-validation.xml (rev 0)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importHistorical/Configure-validation.xml 2011-11-27 10:09:45 UTC (rev 136)
@@ -0,0 +1,36 @@
+<!--
+ #%L
+ EchoBase :: UI
+
+ $Id$
+ $HeadURL$
+ %%
+ Copyright (C) 2011 Ifremer, Codelutin
+ %%
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ #L%
+ -->
+<!DOCTYPE validators PUBLIC
+ "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
+<validators>
+
+ <field name="input">
+ <field-validator type="fieldexpression">
+ <param name="expression">model.input.file != null</param>
+ <message key="echobase.error.importHistorical.input.required"/>
+ </field-validator>
+ </field>
+
+</validators>
\ No newline at end of file
Property changes on: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importHistorical/Configure-validation.xml
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Modified: trunk/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties
===================================================================
--- trunk/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties 2011-11-27 10:06:33 UTC (rev 135)
+++ trunk/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties 2011-11-27 10:09:45 UTC (rev 136)
@@ -23,6 +23,7 @@
echobase.common.comment=Commentaire
echobase.common.email=Email
echobase.common.entityType=Type d'entité
+echobase.common.importDataMode=Type d'import
echobase.common.importMode=Type de mission
echobase.common.importMode.createNewMission=Créer une nouvelle mission
echobase.common.importMode.useExistingMission=Utiliser une mission existante
@@ -45,6 +46,7 @@
echobase.error.import.missionName.required=Le nom de la mission est obligatoire
echobase.error.importArgument=
echobase.error.importFile.required=Fichier d'import obligatoire
+echobase.error.importHistorical.input.required=Le fichier d'import est obligatoire
echobase.error.login.password.requiredstring=Le mot de passe est obligatoire
echobase.error.login.unknown=Utilisateur inconnu
echobase.error.login.wrongLogin=Le login est déjà utilisé
@@ -84,18 +86,19 @@
echobase.label.voyageToSelect=Voyage à exporter
echobase.legend.dbeditor.edit=Edition de '%s'
echobase.legend.embeddedApplication.configuration=Configuration de l'application embarquée
-echobase.legend.import=Import configuration
-echobase.legend.import.configuration.files=Choix des fichiers d'import
-echobase.legend.import.configuration.mission=Configurer la mission
-echobase.legend.import.configuration.mission.resume=Résumé de la mission à utiliser
+echobase.legend.importData.configuration.files=Choix des fichiers d'import
+echobase.legend.importData.configuration.mission=Configurer la mission
+echobase.legend.importData.configuration.mission.resume=Résumé de la mission à utiliser
echobase.legend.importFileResult=Résultat de l'import %s
+echobase.legend.importHistorical.configuration.files=Choix du fichier d'import de données historiques
echobase.legend.sqlQuery.configuration=Configuration de la requête
echobase.legend.sqlQuery.result=Résultats de la requête
echobase.menu.connectToDbInformations=Se connecter à la base
echobase.menu.createEmbeddedApplication=Créer une application embarquée
echobase.menu.dbeditor=Modifier les données
echobase.menu.export=Exporter des données
-echobase.menu.import=Importer des données
+echobase.menu.importData=Importer des données
+echobase.menu.importHistorical=Importer les données historiques
echobase.menu.logs=Visualiser les modifications
echobase.menu.users=Gérer les utilisateurs
echobase.message.askAdministratorPassword=Demander à un administrateur le mot de passe pour l'utilisateur donné
@@ -113,10 +116,14 @@
echobase.title.entityModificationLogs=Journal des modifications
echobase.title.export=Export
echobase.title.exportTable=Exporter une table
-echobase.title.import=Imports
-echobase.title.import.configuration=Configuration d'un import
-echobase.title.importProgress=Import en cours
-echobase.title.importResult=Résultats de l'import
+echobase.title.importData=Import de données
+echobase.title.importData.configuration=Configuration d'un import de données
+echobase.title.importDataProgress=Import de données en cours
+echobase.title.importDataResult=Résultats de l'import de données
+echobase.title.importHistorical=Import de données historiques
+echobase.title.importHistorical.configuration=Configuration d'un import de données historiques
+echobase.title.importHistoricalProgress=Import de données historiques en cours
+echobase.title.importHistoricalResult=Résultats de l'import de données historiques
echobase.title.importTable=Importer une table
echobase.title.login=Connexion
echobase.title.modification.detail=Détail de la modification
Modified: trunk/echobase-ui/src/main/resources/struts.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/struts.xml 2011-11-27 10:06:33 UTC (rev 135)
+++ trunk/echobase-ui/src/main/resources/struts.xml 2011-11-27 10:09:45 UTC (rev 136)
@@ -132,6 +132,7 @@
<include file="config/struts-dbeditor.xml"/>
<include file="config/struts-user.xml"/>
<include file="config/struts-importData.xml"/>
+ <include file="config/struts-importHistorical.xml"/>
<include file="config/struts-export.xml"/>
</struts>
Modified: trunk/echobase-ui/src/main/resources/validators.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/validators.xml 2011-11-27 10:06:33 UTC (rev 135)
+++ trunk/echobase-ui/src/main/resources/validators.xml 2011-11-27 10:09:45 UTC (rev 136)
@@ -37,11 +37,13 @@
<validator name="fieldexpression" class="com.opensymphony.xwork2.validator.validators.FieldExpressionValidator"/>
<validator name="conversion" class="com.opensymphony.xwork2.validator.validators.ConversionErrorFieldValidator"/>
<validator name="stringlength" class="com.opensymphony.xwork2.validator.validators.StringLengthFieldValidator"/>
+ <validator name="required" class="com.opensymphony.xwork2.validator.validators.RequiredFieldValidator"/>
+ <validator name="requiredstring" class="com.opensymphony.xwork2.validator.validators.RequiredStringValidator"/>
<!-- default nuiton-validator validators -->
- <validator name="fieldexpressionwithparams" class="org.nuiton.validator.xwork2.field.FieldExpressionWithParamsValidator"/>
- <validator name="required" class="org.nuiton.validator.xwork2.field.SkipableRequiredFieldValidator"/>
- <validator name="requiredstring" class="org.nuiton.validator.xwork2.field.SkipableRequiredStringFieldValidator"/>
+ <validator name="nfieldexpression" class="org.nuiton.validator.xwork2.field.NuitonFieldExpressionValidator"/>
+ <validator name="nrequired" class="org.nuiton.validator.xwork2.field.SkipableRequiredFieldValidator"/>
+ <validator name="nrequiredstring" class="org.nuiton.validator.xwork2.field.SkipableRequiredStringFieldValidator"/>
<!-- EchoBase validators -->
<validator name="login" class="fr.ifremer.echobase.ui.validators.LoginValidator"/>
Modified: trunk/echobase-ui/src/main/webapp/WEB-INF/includes/header.jsp
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/includes/header.jsp 2011-11-27 10:06:33 UTC (rev 135)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/includes/header.jsp 2011-11-27 10:09:45 UTC (rev 136)
@@ -55,8 +55,12 @@
<div class="cleanBoth">
<ul>
<li>
+ <s:a action="configureImport" namespace="/importHistorical" method="input">
+ <s:text name="echobase.menu.importHistorical"/></s:a>
+ </li>
+ <li>
<s:a action="configureMission" namespace="/importData" method="input">
- <s:text name="echobase.menu.import"/></s:a>
+ <s:text name="echobase.menu.importData"/></s:a>
</li>
<li>
<s:a action="exportSql" namespace="/export">
Modified: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureFiles.jsp
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureFiles.jsp 2011-11-27 10:06:33 UTC (rev 135)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureFiles.jsp 2011-11-27 10:09:45 UTC (rev 136)
@@ -24,13 +24,38 @@
<%@page contentType="text/html" pageEncoding="UTF-8" %>
<%@ taglib prefix="s" uri="/struts-tags" %>
-<title><s:text name="echobase.title.import"/></title>
+<title><s:text name="echobase.title.importData"/></title>
+<script type="text/javascript">
+
+ function updateMode(newValue) {
+ switch (newValue) {
+ case "ALL":
+ $('[class="inputFile"]').show();
+ break;
+ case "ACOUSTIC":
+ $('[class="inputFile"]').hide();
+ $('#acousticFile').show();
+ break;
+ }
+ }
+
+ jQuery(document).ready(function () {
+
+
+ $('[name="importDataMode"]').change(function(event) {
+ updateMode(this.value);
+ });
+ var val = $('[name="importDataMode"][checked="checked"]').val();
+ updateMode(val);
+ });
+</script>
+
<s:form namespace="/importData" method="POST" enctype="multipart/form-data">
<fieldset>
<legend>
- <s:text name="echobase.legend.import.configuration.mission.resume"/>
+ <s:text name="echobase.legend.importData.configuration.mission.resume"/>
</legend>
<s:label value="%{model.mission.missionName}"
key='echobase.common.missionName'/>
@@ -42,29 +67,39 @@
<hr/>
<fieldset>
<legend>
- <s:text name="echobase.legend.import.configuration.files"/>
+ <s:text name="echobase.legend.importData.configuration.files"/>
</legend>
<s:hidden key="missionId" label=''/>
- <s:file name="acoustic"
- key="echobase.label.import.accoustique"/>
+ <s:radio key='importDataMode' list="importDataModes"
+ label='%{getText("echobase.common.importDataMode")}'
+ required="true"/>
+ <hr/>
+ <div class="inputFile" id="acousticFile">
+ <s:file id="acoustic" name="acoustic" required="true"
+ key="echobase.label.import.accoustique"/>
+ </div>
+ <div class="inputFile" id="captureFile">
+ <s:file name="capture" required="true"
+ key="echobase.label.import.pecherie"/>
+ </div>
+ <div class="inputFile" id="lectureAgeGenFile">
+ <s:file name="lectureAgeGen" required="true"
+ key="echobase.label.import.lectureAgeGen"/>
+ </div>
+ <div class="inputFile" id="eventsFile">
+ <s:file name="events" required="true"
+ key="echobase.label.import.events"/>
+ </div>
+ <div class="inputFile" id="typeEchoSpeciesFile">
+ <s:file name="typeEchoSpecies" required="true"
+ key="echobase.label.import.typeEchoSpecies"/>
- <s:file name="capture"
- key="echobase.label.import.pecherie"/>
-
- <s:file name="lectureAgeGen"
- key="echobase.label.import.lectureAgeGen"/>
-
- <s:file name="events"
- key="echobase.label.import.events"/>
-
- <s:file name="typeEchoSpecies"
- key="echobase.label.import.typeEchoSpecies"/>
-
+ </div>
</fieldset>
<br/>
- <s:submit id="addFilesSubmit" action="configureFiles"
+ <s:submit action="configureFiles"
value='%{getText("echobase.action.import")}'/>
Modified: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureMission.jsp
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureMission.jsp 2011-11-27 10:06:33 UTC (rev 135)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureMission.jsp 2011-11-27 10:09:45 UTC (rev 136)
@@ -38,13 +38,13 @@
$("#" + val).show();
});
</script>
-<title><s:text name="echobase.title.import.configuration"/></title>
+<title><s:text name="echobase.title.importData.configuration"/></title>
<s:form id="importForm" namespace="/importData" method="POST">
<fieldset>
<legend>
- <s:text name="echobase.legend.import.configuration.mission"/>
+ <s:text name="echobase.legend.importData.configuration.mission"/>
</legend>
<s:radio key='importMode' list="importModes"
Deleted: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importProgress.jsp
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importProgress.jsp 2011-11-27 10:06:33 UTC (rev 135)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importProgress.jsp 2011-11-27 10:09:45 UTC (rev 136)
@@ -1,40 +0,0 @@
-<%--
- #%L
- EchoBase :: UI
-
- $Id$
- $HeadURL$
- %%
- Copyright (C) 2011 Ifremer, Codelutin
- %%
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU Affero General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- #L%
- --%>
-<%@page contentType="text/html" pageEncoding="UTF-8" %>
-<%@ taglib prefix="s" uri="/struts-tags" %>
-<%@ taglib prefix="sj" uri="/struts-jquery-tags" %>
-
-<s:url id="url" action="doImport" namespace="/importData"/>
-<meta http-equiv="refresh" content="1;url=${url}"/>
-
-<title><s:text name="echobase.title.importProgress"/></title>
-
-<%-- TODO letellier 20111104 : Add warn icon --%>
-<p><s:text name="echobase.message.warnImportInProgress"/></p>
-
-<br/>
-
-<div>
- <sj:progressbar value="%{model.progression}"/>
-</div>
\ No newline at end of file
Deleted: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importResult.jsp
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importResult.jsp 2011-11-27 10:06:33 UTC (rev 135)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importResult.jsp 2011-11-27 10:09:45 UTC (rev 136)
@@ -1,60 +0,0 @@
-<%--
- #%L
- EchoBase :: UI
-
- $Id$
- $HeadURL$
- %%
- Copyright (C) 2011 Ifremer, Codelutin
- %%
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU Affero General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- #L%
- --%>
-<%@page contentType="text/html" pageEncoding="UTF-8" %>
-<%@ taglib prefix="s" uri="/struts-tags" %>
-
-<title><s:text name="echobase.title.importResult"/></title>
-
-<fieldset>
- <legend>
- <s:text name="echobase.legend.import.configuration.mission.resume"/>
- </legend>
- <s:label value="%{model.mission.missionName}"
- key='echobase.common.missionName'/>
-
- <s:label value="%{model.mission.missionAbstract}"
- key='echobase.common.missionAbstract'/>
-</fieldset>
-<br/>
-<s:iterator value="importResult" var="entry">
- <s:set var="inputFile" value="%{#entry.key}"/>
- <s:set var="result" value="%{#entry.value}"/>
- <fieldset>
- <legend>
- <s:text name="echobase.legend.importFileResult">
- <s:param><strong><s:property
- value="%{#inputFile.label}"/></strong></s:param>
- </s:text>
- </legend>
-
- <s:label value="%{#inputFile.fileName}"
- label="%{getText('echobase.label.importFile')}"/>
-
- <s:label value="%{#result.numberCreated}"
- label="%{getText('echobase.label.numberOfCreatedEntities')}"/>
-
- <s:label value="%{#result.numberUpdated}"
- label="%{getText('echobase.label.numberOfUpdatedEntities')}"/>
- </fieldset>
-</s:iterator>
Copied: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/progress.jsp (from rev 132, trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importProgress.jsp)
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/progress.jsp (rev 0)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/progress.jsp 2011-11-27 10:09:45 UTC (rev 136)
@@ -0,0 +1,40 @@
+<%--
+ #%L
+ EchoBase :: UI
+
+ $Id$
+ $HeadURL$
+ %%
+ Copyright (C) 2011 Ifremer, Codelutin
+ %%
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ #L%
+ --%>
+<%@page contentType="text/html" pageEncoding="UTF-8" %>
+<%@ taglib prefix="s" uri="/struts-tags" %>
+<%@ taglib prefix="sj" uri="/struts-jquery-tags" %>
+
+<s:url id="url" action="doImport" namespace="/importData"/>
+<meta http-equiv="refresh" content="1;url=${url}"/>
+
+<title><s:text name="echobase.title.importDataProgress"/></title>
+
+<%-- TODO letellier 20111104 : Add warn icon --%>
+<p><s:text name="echobase.message.warnImportInProgress"/></p>
+
+<br/>
+
+<div>
+ <sj:progressbar value="%{model.progression}"/>
+</div>
\ No newline at end of file
Property changes on: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/progress.jsp
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Copied: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/result.jsp (from rev 133, trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importResult.jsp)
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/result.jsp (rev 0)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/result.jsp 2011-11-27 10:09:45 UTC (rev 136)
@@ -0,0 +1,60 @@
+<%--
+ #%L
+ EchoBase :: UI
+
+ $Id$
+ $HeadURL$
+ %%
+ Copyright (C) 2011 Ifremer, Codelutin
+ %%
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ #L%
+ --%>
+<%@page contentType="text/html" pageEncoding="UTF-8" %>
+<%@ taglib prefix="s" uri="/struts-tags" %>
+
+<title><s:text name="echobase.title.importDataResult"/></title>
+
+<fieldset>
+ <legend>
+ <s:text name="echobase.legend.importData.configuration.mission.resume"/>
+ </legend>
+ <s:label value="%{model.mission.missionName}"
+ key='echobase.common.missionName'/>
+
+ <s:label value="%{model.mission.missionAbstract}"
+ key='echobase.common.missionAbstract'/>
+</fieldset>
+<br/>
+<s:iterator value="importResult" var="entry">
+ <s:set var="inputFile" value="%{#entry.key}"/>
+ <s:set var="result" value="%{#entry.value}"/>
+ <fieldset>
+ <legend>
+ <s:text name="echobase.legend.importFileResult">
+ <s:param><strong><s:property
+ value="%{#inputFile.label}"/></strong></s:param>
+ </s:text>
+ </legend>
+
+ <s:label value="%{#inputFile.fileName}"
+ label="%{getText('echobase.label.importFile')}"/>
+
+ <s:label value="%{#result.numberCreated}"
+ label="%{getText('echobase.label.numberOfCreatedEntities')}"/>
+
+ <s:label value="%{#result.numberUpdated}"
+ label="%{getText('echobase.label.numberOfUpdatedEntities')}"/>
+ </fieldset>
+</s:iterator>
Property changes on: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/result.jsp
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Added: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importHistorical/configure.jsp
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importHistorical/configure.jsp (rev 0)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importHistorical/configure.jsp 2011-11-27 10:09:45 UTC (rev 136)
@@ -0,0 +1,45 @@
+<%--
+ #%L
+ EchoBase :: UI
+
+ $Id$
+ $HeadURL$
+ %%
+ Copyright (C) 2011 Ifremer, Codelutin
+ %%
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ #L%
+ --%>
+<%@page contentType="text/html" pageEncoding="UTF-8" %>
+<%@ taglib prefix="s" uri="/struts-tags" %>
+
+<title><s:text name="echobase.title.importHistorical"/></title>
+
+<s:form namespace="/importHistorical" method="POST" enctype="multipart/form-data">
+
+ <fieldset>
+ <legend>
+ <s:text name="echobase.legend.importHistorical.configuration.files"/>
+ </legend>
+
+ <s:file name="input" required="true"
+ key="echobase.common.importHistoricalFile"/>
+
+ </fieldset>
+ <br/>
+ <s:submit action="configureImport"
+ value='%{getText("echobase.action.import")}'/>
+
+
+</s:form>
\ No newline at end of file
Property changes on: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importHistorical/configure.jsp
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Added: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importHistorical/progress.jsp
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importHistorical/progress.jsp (rev 0)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importHistorical/progress.jsp 2011-11-27 10:09:45 UTC (rev 136)
@@ -0,0 +1,40 @@
+<%--
+ #%L
+ EchoBase :: UI
+
+ $Id$
+ $HeadURL$
+ %%
+ Copyright (C) 2011 Ifremer, Codelutin
+ %%
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ #L%
+ --%>
+<%@page contentType="text/html" pageEncoding="UTF-8" %>
+<%@ taglib prefix="s" uri="/struts-tags" %>
+<%@ taglib prefix="sj" uri="/struts-jquery-tags" %>
+
+<s:url id="url" action="doImport" namespace="/importHistorical"/>
+<meta http-equiv="refresh" content="1;url=${url}"/>
+
+<title><s:text name="echobase.title.importHistoricalProgress"/></title>
+
+<%-- TODO letellier 20111104 : Add warn icon --%>
+<p><s:text name="echobase.message.warnImportInProgress"/></p>
+
+<br/>
+
+<div>
+ <sj:progressbar value="%{model.progression}"/>
+</div>
\ No newline at end of file
Property changes on: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importHistorical/progress.jsp
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Added: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importHistorical/result.jsp
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importHistorical/result.jsp (rev 0)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importHistorical/result.jsp 2011-11-27 10:09:45 UTC (rev 136)
@@ -0,0 +1,48 @@
+<%--
+ #%L
+ EchoBase :: UI
+
+ $Id$
+ $HeadURL$
+ %%
+ Copyright (C) 2011 Ifremer, Codelutin
+ %%
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ #L%
+ --%>
+<%@page contentType="text/html" pageEncoding="UTF-8" %>
+<%@ taglib prefix="s" uri="/struts-tags" %>
+
+<title><s:text name="echobase.title.importHistoricalResult"/></title>
+
+<fieldset>
+ <legend>
+ <s:text name="echobase.legend.importFileResult">
+ <s:param><strong><s:property
+ value="%{model.input.label}"/></strong></s:param>
+ </s:text>
+ </legend>
+
+ <s:label value="%{model.input.fileName}"
+ label="%{getText('echobase.label.importFile')}"/>
+
+ <s:label value="%{importResult.numberCreated}"
+ label="%{getText('echobase.label.numberOfCreatedEntities')}"/>
+
+ <s:label value="%{importResult.numberUpdated}"
+ label="%{getText('echobase.label.numberOfUpdatedEntities')}"/>
+</fieldset>
+
+<div>TODO</div>
+
Property changes on: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importHistorical/result.jsp
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
1
0
r135 - trunk/echobase-entities/src/main/resources/i18n
by tchemit@users.forge.codelutin.com 27 Nov '11
by tchemit@users.forge.codelutin.com 27 Nov '11
27 Nov '11
Author: tchemit
Date: 2011-11-27 11:06:33 +0100 (Sun, 27 Nov 2011)
New Revision: 135
Url: http://forge.codelutin.com/repositories/revision/echobase/135
Log:
clean i18n
Modified:
trunk/echobase-entities/src/main/resources/i18n/echobase-entities_fr_FR.properties
Modified: trunk/echobase-entities/src/main/resources/i18n/echobase-entities_fr_FR.properties
===================================================================
--- trunk/echobase-entities/src/main/resources/i18n/echobase-entities_fr_FR.properties 2011-11-27 10:06:07 UTC (rev 134)
+++ trunk/echobase-entities/src/main/resources/i18n/echobase-entities_fr_FR.properties 2011-11-27 10:06:33 UTC (rev 135)
@@ -38,7 +38,6 @@
echobase.common.categoryValue=
echobase.common.cell=cell
echobase.common.cellMethod=
-echobase.common.cellMethods=
echobase.common.cellName=
echobase.common.cellType=
echobase.common.citation=
@@ -51,13 +50,9 @@
echobase.common.dataCentre=Centre de données
echobase.common.dataCentreEmail=Courriel du centre de données
echobase.common.dataMetadata=
-echobase.common.dataMetadataName=
echobase.common.dataName=
echobase.common.dataProcessing=dataProcessing
echobase.common.dataQuality=dataQuality
-echobase.common.dataQualityFlagMeaning=
-echobase.common.dataQualityFlagNote=
-echobase.common.dataQualityFlagValue=
echobase.common.dataType=
echobase.common.dataValue=
echobase.common.dateCreated=
@@ -78,8 +73,6 @@
echobase.common.echotype=
echobase.common.echotypeCategory=
echobase.common.echotypeCategoryName=
-echobase.common.echotypeDepthStratum=
-echobase.common.echotypeGeniusSpecies=
echobase.common.echotypeLengthCategory=
echobase.common.echotypeMeaning=
echobase.common.echotypeName=
@@ -116,7 +109,6 @@
echobase.common.geospatialVerticalMin=
echobase.common.geospatialVerticalPositive=
echobase.common.history=
-echobase.common.iMO=
echobase.common.id=Identifiant
echobase.common.imo=
echobase.common.impacte=
@@ -141,7 +133,6 @@
echobase.common.loggedDataFormat=
echobase.common.longName=
echobase.common.m=
-echobase.common.meaning=
echobase.common.measureType=
echobase.common.measurementBinSize=
echobase.common.measurementMetadata=
@@ -189,8 +180,6 @@
echobase.common.referenceDatumType=
echobase.common.referenceDatumTypeName=
echobase.common.referenceMeaning=
-echobase.common.referenceType=
-echobase.common.referenceValue=
echobase.common.referencingMethod=
echobase.common.relatedActivity=
echobase.common.result=
1
0
r134 - in trunk/echobase-services/src/main: java/fr/ifremer/echobase java/fr/ifremer/echobase/services resources/i18n
by tchemit@users.forge.codelutin.com 27 Nov '11
by tchemit@users.forge.codelutin.com 27 Nov '11
27 Nov '11
Author: tchemit
Date: 2011-11-27 11:06:07 +0100 (Sun, 27 Nov 2011)
New Revision: 134
Url: http://forge.codelutin.com/repositories/revision/echobase/134
Log:
- ajout type d'import de donn?\195?\169es (enum ImportDataMode)
- mise en place squelette import historique
Added:
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataMode.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportHistoricalConfiguration.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportHistoricalService.java
Modified:
trunk/echobase-services/src/main/java/fr/ifremer/echobase/InputFile.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataConfiguration.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataService.java
trunk/echobase-services/src/main/resources/i18n/echobase-services_fr_FR.properties
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/InputFile.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/InputFile.java 2011-11-26 11:02:53 UTC (rev 133)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/InputFile.java 2011-11-27 10:06:07 UTC (rev 134)
@@ -48,7 +48,11 @@
/** Label of the import. */
protected String label;
- public InputFile(String label) {
+ public static InputFile newFile(String label) {
+ return new InputFile(label);
+ }
+
+ protected InputFile(String label) {
this.label = label;
}
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataConfiguration.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataConfiguration.java 2011-11-26 11:02:53 UTC (rev 133)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataConfiguration.java 2011-11-27 10:06:07 UTC (rev 134)
@@ -25,7 +25,10 @@
import fr.ifremer.echobase.InputFile;
import fr.ifremer.echobase.entities.references.Mission;
+import org.apache.commons.io.FileUtils;
+import java.io.File;
+import java.io.IOException;
import java.io.Serializable;
import java.util.Locale;
@@ -44,6 +47,10 @@
/** Mission used for the import (may not be in db if needed to be created). */
protected Mission mission;
+ protected ImportDataMode importDataMode;
+
+ protected File workingDirectory;
+
protected InputFile acousticFile;
protected InputFile captureFile;
@@ -61,13 +68,26 @@
protected float progression;
public ImportDataConfiguration(Locale locale) {
- acousticFile = new InputFile(l_(locale, "echobase.common.acousticImport"));
- captureFile = new InputFile(l_(locale, "echobase.common.captureImport"));
- lectureAgeGenFile = new InputFile(l_(locale, "echobase.common.lectureAgeGenImport"));
- eventsFile = new InputFile(l_(locale, "echobase.common.eventsImport"));
- typeEchoSpeciesFile = new InputFile(l_(locale, "echobase.common.typeEchoSpeciesImport"));
+ acousticFile = InputFile.newFile(
+ l_(locale, "echobase.common.acousticImport"));
+ captureFile = InputFile.newFile(
+ l_(locale, "echobase.common.captureImport"));
+ lectureAgeGenFile = InputFile.newFile(
+ l_(locale, "echobase.common.lectureAgeGenImport"));
+ eventsFile = InputFile.newFile(
+ l_(locale, "echobase.common.eventsImport"));
+ typeEchoSpeciesFile = InputFile.newFile(
+ l_(locale, "echobase.common.typeEchoSpeciesImport"));
}
+ public ImportDataMode getImportDataMode() {
+ return importDataMode;
+ }
+
+ public File getWorkingDirectory() {
+ return workingDirectory;
+ }
+
public Mission getMission() {
return mission;
}
@@ -100,6 +120,14 @@
return progression;
}
+ public void setImportDataMode(ImportDataMode importDataMode) {
+ this.importDataMode = importDataMode;
+ }
+
+ public void setWorkingDirectory(File workingDirectory) {
+ this.workingDirectory = workingDirectory;
+ }
+
public void setMission(Mission mission) {
this.mission = mission;
}
@@ -114,21 +142,19 @@
public void computeSteps() {
nbSteps = 0;
- if (acousticFile.getFile() != null) {
- nbSteps++;
+ switch (importDataMode) {
+ case ALL:
+ nbSteps = 5;
+ case ACOUSTIC:
+ nbSteps = 1;
+ default:
}
- if (captureFile.getFile() != null) {
- nbSteps++;
- }
- if (lectureAgeGenFile.getFile() != null) {
- nbSteps++;
- }
- if (eventsFile.getFile() != null) {
- nbSteps++;
- }
- if (typeEchoSpeciesFile.getFile() != null) {
- nbSteps++;
- }
stepIncrement = 100f / nbSteps;
}
+
+ public void destroy() throws IOException {
+ if (workingDirectory != null) {
+ FileUtils.deleteDirectory(workingDirectory);
+ }
+ }
}
Added: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataMode.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataMode.java (rev 0)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataMode.java 2011-11-27 10:06:07 UTC (rev 134)
@@ -0,0 +1,50 @@
+/*
+ * #%L
+ * EchoBase :: Services
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ * #L%
+ */
+package fr.ifremer.echobase.services;
+
+import static org.nuiton.i18n.I18n.n_;
+
+/**
+ * To define the mode of import data (says files to be imported).
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 0.2
+ */
+public enum ImportDataMode {
+
+ /** Import only acoustic file. */
+ ACOUSTIC(n_("echobase.common.importDataMode.acoustic")),
+ /** Import all files. */
+ ALL(n_("echobase.common.importDataMode.all"));
+
+ private final String i18nKey;
+
+ ImportDataMode(String i18nKey) {
+ this.i18nKey = i18nKey;
+ }
+
+ public String getI18nKey() {
+ return i18nKey;
+ }
+}
Property changes on: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataMode.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataService.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataService.java 2011-11-26 11:02:53 UTC (rev 133)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataService.java 2011-11-27 10:06:07 UTC (rev 134)
@@ -60,6 +60,29 @@
Map<InputFile, CsvImportResult> result = Maps.newHashMap();
+
+ ImportDataMode importDataMode = configuration.getImportDataMode();
+ switch (importDataMode) {
+ case ACOUSTIC:
+ doImportAcoustic(configuration, result);
+ break;
+ case ALL:
+ doImportAll(configuration, result);
+ break;
+ default:
+ throw new IllegalStateException(
+ "Can not know what to do with importDataMode " +
+ importDataMode);
+
+ }
+
+
+ return result;
+ }
+
+ protected void doImportAcoustic(ImportDataConfiguration configuration,
+ Map<InputFile, CsvImportResult> result) {
+
Mission mission = configuration.getMission();
// compute nb step to treate (means nb imports to do)
@@ -83,7 +106,35 @@
deleteFile(acousticFile);
}
}
+ }
+ protected void doImportAll(ImportDataConfiguration configuration,
+ Map<InputFile, CsvImportResult> result) {
+
+ Mission mission = configuration.getMission();
+
+ // compute nb step to treate (means nb imports to do)
+ configuration.computeSteps();
+
+ if (log.isInfoEnabled()) {
+ log.info("Starts data import with mission " +
+ mission.getMissionName());
+ }
+
+ InputFile acousticFile = configuration.getAcousticFile();
+ if (acousticFile.getFile() != null) {
+
+ // do acoustic import
+ try {
+ CsvImportResult importResult =
+ importAcoustic(mission, acousticFile);
+ configuration.incrementsProgression();
+ result.put(acousticFile, importResult);
+ } finally {
+ deleteFile(acousticFile);
+ }
+ }
+
InputFile captureFile = configuration.getCaptureFile();
if (captureFile.getFile() != null) {
@@ -139,8 +190,6 @@
deleteFile(typeEchoSpeciesFile);
}
}
-
- return result;
}
protected void deleteFile(InputFile input) {
Added: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportHistoricalConfiguration.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportHistoricalConfiguration.java (rev 0)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportHistoricalConfiguration.java 2011-11-27 10:06:07 UTC (rev 134)
@@ -0,0 +1,102 @@
+/*
+ * #%L
+ * EchoBase :: Services
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ * #L%
+ */
+package fr.ifremer.echobase.services;
+
+import fr.ifremer.echobase.InputFile;
+import org.apache.commons.io.FileUtils;
+
+import java.io.File;
+import java.io.IOException;
+import java.io.Serializable;
+import java.util.Locale;
+
+import static org.nuiton.i18n.I18n.l_;
+
+/**
+ * Configuration of an historical import.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 0.2
+ */
+public class ImportHistoricalConfiguration implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ protected File workingDirectory;
+
+
+ protected InputFile input;
+
+ protected int nbSteps;
+
+ private float stepIncrement;
+
+ protected float progression;
+
+ public ImportHistoricalConfiguration(Locale locale) {
+ input = InputFile.newFile(
+ l_(locale, "echobase.common.importHistoricalFile"));
+ }
+
+ public File getWorkingDirectory() {
+ return workingDirectory;
+ }
+
+ public InputFile getInput() {
+ return input;
+ }
+
+ public int getNbSteps() {
+ return nbSteps;
+ }
+
+ public float getProgression() {
+ return progression;
+ }
+
+ public void setWorkingDirectory(File workingDirectory) {
+ this.workingDirectory = workingDirectory;
+ }
+
+ public void setProgression(float progression) {
+ this.progression = progression;
+ }
+
+ public void incrementsProgression() {
+ setProgression(progression + stepIncrement);
+ }
+
+ public void computeSteps() {
+ nbSteps = 0;
+
+ stepIncrement = 100f / nbSteps;
+ }
+
+ public void destroy() throws IOException {
+ if (workingDirectory != null) {
+ FileUtils.deleteDirectory(workingDirectory);
+ }
+ }
+
+}
\ No newline at end of file
Property changes on: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportHistoricalConfiguration.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Added: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportHistoricalService.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportHistoricalService.java (rev 0)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportHistoricalService.java 2011-11-27 10:06:07 UTC (rev 134)
@@ -0,0 +1,94 @@
+/*
+ * #%L
+ * EchoBase :: Services
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ * #L%
+ */
+package fr.ifremer.echobase.services;
+
+import fr.ifremer.echobase.EchoBaseTechnicalException;
+import fr.ifremer.echobase.InputFile;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import java.io.File;
+
+/**
+ * To import historical datas (from access database).
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 0.2
+ */
+public class ImportHistoricalService extends EchoBaseServiceSupport {
+
+ /** Logger. */
+ private static final Log log =
+ LogFactory.getLog(ImportHistoricalService.class);
+
+ public CsvImportResult startImport(ImportHistoricalConfiguration configuration) {
+
+ CsvImportResult result;
+
+ InputFile input = configuration.getInput();
+
+ if (log.isInfoEnabled()) {
+ log.info("Starts historical import with file " +
+ input.getFileName());
+ }
+
+ try {
+
+ result = doImport(input);
+
+ } finally {
+ deleteFile(input);
+ }
+ return result;
+ }
+
+ protected CsvImportResult doImport(InputFile input) {
+
+ CsvImportResult result = new CsvImportResult();
+ prepareImport();
+ return result;
+ }
+
+ protected void deleteFile(InputFile input) {
+ File file = input.getFile();
+
+ if (log.isInfoEnabled()) {
+ log.info("Will delete import file " + file);
+ }
+ boolean wasDel = file.delete();
+ if (!wasDel) {
+ throw new EchoBaseTechnicalException("Could not delete file " + file);
+ }
+ }
+
+
+ protected void prepareImport() {
+ try {
+ Thread.sleep(2000);
+ } catch (InterruptedException e) {
+ // ignore
+ }
+ }
+
+}
Property changes on: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportHistoricalService.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Modified: trunk/echobase-services/src/main/resources/i18n/echobase-services_fr_FR.properties
===================================================================
--- trunk/echobase-services/src/main/resources/i18n/echobase-services_fr_FR.properties 2011-11-26 11:02:53 UTC (rev 133)
+++ trunk/echobase-services/src/main/resources/i18n/echobase-services_fr_FR.properties 2011-11-27 10:06:07 UTC (rev 134)
@@ -1,5 +1,8 @@
echobase.common.acousticImport=Import Acoustique
echobase.common.captureImport=Import Pêcherie
echobase.common.eventsImport=Import Evènements
+echobase.common.importDataMode.acoustic=Import Acoustic
+echobase.common.importDataMode.all=Import globale
+echobase.common.importHistoricalFile=Fichier MS-ACCESS de données historiques
echobase.common.lectureAgeGenImport=Import Lecture Agen Gen
echobase.common.typeEchoSpeciesImport=Import Type EchoSpecies
1
0
r133 - trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData
by tchemit@users.forge.codelutin.com 26 Nov '11
by tchemit@users.forge.codelutin.com 26 Nov '11
26 Nov '11
Author: tchemit
Date: 2011-11-26 12:02:53 +0100 (Sat, 26 Nov 2011)
New Revision: 133
Url: http://forge.codelutin.com/repositories/revision/echobase/133
Log:
fix import data
Modified:
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureFiles.jsp
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importResult.jsp
Modified: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureFiles.jsp
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureFiles.jsp 2011-11-26 10:50:09 UTC (rev 132)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureFiles.jsp 2011-11-26 11:02:53 UTC (rev 133)
@@ -45,7 +45,7 @@
<s:text name="echobase.legend.import.configuration.files"/>
</legend>
- <s:hidden key="voyageId" label=''/>
+ <s:hidden key="missionId" label=''/>
<s:file name="acoustic"
key="echobase.label.import.accoustique"/>
Modified: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importResult.jsp
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importResult.jsp 2011-11-26 10:50:09 UTC (rev 132)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importResult.jsp 2011-11-26 11:02:53 UTC (rev 133)
@@ -26,13 +26,25 @@
<title><s:text name="echobase.title.importResult"/></title>
+<fieldset>
+ <legend>
+ <s:text name="echobase.legend.import.configuration.mission.resume"/>
+ </legend>
+ <s:label value="%{model.mission.missionName}"
+ key='echobase.common.missionName'/>
+
+ <s:label value="%{model.mission.missionAbstract}"
+ key='echobase.common.missionAbstract'/>
+</fieldset>
+<br/>
<s:iterator value="importResult" var="entry">
<s:set var="inputFile" value="%{#entry.key}"/>
<s:set var="result" value="%{#entry.value}"/>
<fieldset>
<legend>
<s:text name="echobase.legend.importFileResult">
- <s:param><strong><s:property value="%{#inputFile.label}"/></strong></s:param>
+ <s:param><strong><s:property
+ value="%{#inputFile.label}"/></strong></s:param>
</s:text>
</legend>
1
0
r132 - in trunk/echobase-ui/src/main: env/dev/resources java/fr/ifremer/echobase/ui/actions/export java/fr/ifremer/echobase/ui/actions/importData resources resources/config resources/fr/ifremer/echobase/ui/actions/importData resources/i18n webapp/WEB-INF/includes webapp/WEB-INF/jsp webapp/WEB-INF/jsp/import webapp/WEB-INF/jsp/importData
by tchemit@users.forge.codelutin.com 26 Nov '11
by tchemit@users.forge.codelutin.com 26 Nov '11
26 Nov '11
Author: tchemit
Date: 2011-11-26 11:50:09 +0100 (Sat, 26 Nov 2011)
New Revision: 132
Url: http://forge.codelutin.com/repositories/revision/echobase/132
Log:
- usage of EchoBaseServiceSupport when possible
- rename import package to importData (there will be a importacces package as well)
- change voyage to mission in import data
- remove log4j file (see the env directory)
Added:
trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureMission.java
trunk/echobase-ui/src/main/resources/config/struts-importData.xml
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureMission-validation.xml
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureFiles.jsp
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureMission.jsp
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importProgress.jsp
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importResult.jsp
Removed:
trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureVoyage.java
trunk/echobase-ui/src/main/resources/config/struts-import.xml
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureVoyage-validation.xml
trunk/echobase-ui/src/main/resources/log4j.properties
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/configureFiles.jsp
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/configureVoyage.jsp
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/import.jsp
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/importProgress.jsp
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/importResult.jsp
Modified:
trunk/echobase-ui/src/main/env/dev/resources/log4j.properties
trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/export/CreateEmbeddedApplication.java
trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureFiles.java
trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ImportMode.java
trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/LaunchImport.java
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureFiles-validation.xml
trunk/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties
trunk/echobase-ui/src/main/resources/struts.xml
trunk/echobase-ui/src/main/webapp/WEB-INF/includes/header.jsp
Modified: trunk/echobase-ui/src/main/env/dev/resources/log4j.properties
===================================================================
--- trunk/echobase-ui/src/main/env/dev/resources/log4j.properties 2011-11-26 10:46:13 UTC (rev 131)
+++ trunk/echobase-ui/src/main/env/dev/resources/log4j.properties 2011-11-26 10:50:09 UTC (rev 132)
@@ -31,6 +31,5 @@
# package level
log4j.logger.fr.ifremer.echobase=INFO
-log4j.logger.fr.ifremer.echobase.services.ioc=WARN
log4j.logger.org.nuiton=WARN
log4j.logger.org.nuiton.topia.migration=INFO
Modified: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/export/CreateEmbeddedApplication.java
===================================================================
--- trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/export/CreateEmbeddedApplication.java 2011-11-26 10:46:13 UTC (rev 131)
+++ trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/export/CreateEmbeddedApplication.java 2011-11-26 10:50:09 UTC (rev 132)
@@ -25,7 +25,7 @@
import fr.ifremer.echobase.EchoBaseConfiguration;
import fr.ifremer.echobase.entities.data.Voyage;
-import fr.ifremer.echobase.services.VoyageService;
+import fr.ifremer.echobase.services.EchoBaseServiceSupport;
import fr.ifremer.echobase.ui.actions.EchoBaseActionSupport;
import org.nuiton.util.Version;
@@ -72,7 +72,8 @@
@Override
public String execute() throws Exception {
- VoyageService service = newService(VoyageService.class);
+ EchoBaseServiceSupport service =
+ newService(EchoBaseServiceSupport.class);
List<Voyage> allVoyages = service.getEntities(Voyage.class);
voyages = sortAndDecorate(allVoyages, null);
Modified: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureFiles.java
===================================================================
--- trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureFiles.java 2011-11-26 10:46:13 UTC (rev 131)
+++ trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureFiles.java 2011-11-26 10:50:09 UTC (rev 132)
@@ -25,9 +25,9 @@
import com.opensymphony.xwork2.Preparable;
import fr.ifremer.echobase.InputFile;
-import fr.ifremer.echobase.entities.data.Voyage;
+import fr.ifremer.echobase.entities.references.Mission;
+import fr.ifremer.echobase.services.EchoBaseServiceSupport;
import fr.ifremer.echobase.services.ImportDataConfiguration;
-import fr.ifremer.echobase.services.VoyageService;
import fr.ifremer.echobase.ui.actions.EchoBaseActionSupport;
import org.apache.commons.io.FileUtils;
import org.apache.commons.logging.Log;
@@ -54,10 +54,10 @@
protected ImportDataConfiguration model;
/** Id of selected voyage used in import. */
- protected String voyageId;
+ protected String missionId;
- public void setVoyageId(String voyageId) {
- this.voyageId = voyageId;
+ public void setMissionId(String missionId) {
+ this.missionId = missionId;
}
public void setAcoustic(File file) {
@@ -120,8 +120,8 @@
getModel().getTypeEchoSpeciesFile().setFileName(fileName);
}
- public String getVoyageId() {
- return voyageId;
+ public String getMissionId() {
+ return missionId;
}
public ImportDataConfiguration getModel() {
@@ -145,7 +145,9 @@
ImportDataConfiguration importModel = getModel();
File tempDirectory = FileUtils.getTempDirectory();
- File dataDirectory = new File(tempDirectory, "echobase-import" + System.currentTimeMillis());
+ File dataDirectory = new File(
+ tempDirectory,
+ "echobase-import" + System.currentTimeMillis());
FileUtil.createDirectoryIfNecessary(dataDirectory);
if (log.isInfoEnabled()) {
log.info("Temporary directory to use : " + dataDirectory);
@@ -163,13 +165,15 @@
@Override
public void prepare() throws Exception {
- VoyageService service = newService(VoyageService.class);
+ EchoBaseServiceSupport service =
+ newService(EchoBaseServiceSupport.class);
- Voyage voyage = service.getEntityById(Voyage.class, voyageId);
- getModel().setVoyage(voyage);
+ Mission mission = service.getEntityById(Mission.class, missionId);
+ getModel().setMission(mission);
}
- protected void copyFile(InputFile inputFile, File dataDirectory) throws IOException {
+ protected void copyFile(InputFile inputFile,
+ File dataDirectory) throws IOException {
File source = inputFile.getFile();
if (source != null) {
Copied: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureMission.java (from rev 127, trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureVoyage.java)
===================================================================
--- trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureMission.java (rev 0)
+++ trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureMission.java 2011-11-26 10:50:09 UTC (rev 132)
@@ -0,0 +1,125 @@
+/*
+ * #%L
+ * EchoBase :: UI
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ * #L%
+ */
+package fr.ifremer.echobase.ui.actions.importData;
+
+import com.google.common.collect.Maps;
+import com.opensymphony.xwork2.interceptor.annotations.InputConfig;
+import fr.ifremer.echobase.entities.references.Mission;
+import fr.ifremer.echobase.entities.references.MissionImpl;
+import fr.ifremer.echobase.services.EchoBaseServiceSupport;
+import fr.ifremer.echobase.services.ImportDataService;
+import fr.ifremer.echobase.ui.actions.EchoBaseActionSupport;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Configure the mission to use in the data import.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 0.2
+ */
+public class ConfigureMission extends EchoBaseActionSupport {
+
+ private static final long serialVersionUID = 1L;
+
+ /** Logger. */
+ private static final Log log = LogFactory.getLog(ConfigureMission.class);
+
+ /** Universe of existing missions. */
+ protected Map<String, String> missions;
+
+ /** Universe of possible import modes. */
+ protected Map<String, String> importModes;
+
+ /** Selected import mode. */
+ protected ImportMode importMode;
+
+ /** mission to use. */
+ protected Mission mission;
+
+ public Mission getMission() {
+ if (mission == null) {
+ mission = new MissionImpl();
+ }
+ return mission;
+ }
+
+ public Map<String, String> getImportModes() {
+ return importModes;
+ }
+
+ public Map<String, String> getMissions() {
+ return missions;
+ }
+
+ public ImportMode getImportMode() {
+ return importMode;
+ }
+
+ public void setImportMode(ImportMode importMode) {
+ this.importMode = importMode;
+ }
+
+ @Override
+ public String input() throws Exception {
+ importModes = Maps.newLinkedHashMap();
+ for (ImportMode mode : ImportMode.values()) {
+ importModes.put(mode.name(), _(mode.getI18nKey()));
+ }
+
+ if (importMode == null) {
+ importMode = ImportMode.USE_EXISTING_MISSION;
+ }
+
+ EchoBaseServiceSupport service =
+ newService(EchoBaseServiceSupport.class);
+
+ List<Mission> allMissions = service.getEntities(Mission.class);
+ missions = sortAndDecorate(allMissions, null);
+
+ if (log.isInfoEnabled()) {
+ log.info("File errors : " + getFieldErrors());
+ }
+ return INPUT;
+ }
+
+ @InputConfig(methodName = "input")
+ @Override
+ public String execute() throws Exception {
+
+ if (importMode == ImportMode.CREATE_NEW_MISSION) {
+
+ // create voyage in db
+ ImportDataService service = newService(ImportDataService.class);
+ Mission missionToCreate = getMission();
+
+ mission = service.createMission(missionToCreate);
+ }
+ return SUCCESS;
+ }
+
+}
Property changes on: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureMission.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Deleted: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureVoyage.java
===================================================================
--- trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureVoyage.java 2011-11-26 10:46:13 UTC (rev 131)
+++ trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureVoyage.java 2011-11-26 10:50:09 UTC (rev 132)
@@ -1,170 +0,0 @@
-/*
- * #%L
- * EchoBase :: UI
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2011 Ifremer, Codelutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- * #L%
- */
-package fr.ifremer.echobase.ui.actions.importData;
-
-import com.google.common.collect.Maps;
-import com.opensymphony.xwork2.interceptor.annotations.InputConfig;
-import fr.ifremer.echobase.entities.data.Voyage;
-import fr.ifremer.echobase.entities.data.VoyageImpl;
-import fr.ifremer.echobase.entities.references.AreaOfOperation;
-import fr.ifremer.echobase.entities.references.Mission;
-import fr.ifremer.echobase.services.VoyageService;
-import fr.ifremer.echobase.ui.actions.EchoBaseActionSupport;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import java.util.List;
-import java.util.Map;
-
-/**
- * Configure the step 1 of import data (says which campagne to use).
- *
- * @author tchemit <chemit(a)codelutin.com>
- * @since 0.2
- */
-public class ConfigureVoyage extends EchoBaseActionSupport {
-
- private static final long serialVersionUID = 1L;
-
- /** Logger. */
- private static final Log log = LogFactory.getLog(ConfigureVoyage.class);
-
- /** Universe of existing voyages. */
- protected Map<String, String> voyages;
-
- /** Universe of existing missions. */
- protected Map<String, String> missions;
-
- /** Universe of existing areaOfOperations. */
- protected Map<String, String> areaOfOperations;
-
- /** Universe of possible import modes. */
- protected Map<String, String> importModes;
-
- /** Selected import mode. */
- protected ImportMode importMode;
-
- /** Voyage to use. */
- protected Voyage voyage;
-
- /** Mission selected id. */
- protected String missionId;
-
- /** Area of operation selected id. */
- protected String areaOfOperationId;
-
- public Voyage getVoyage() {
- if (voyage == null) {
- voyage = new VoyageImpl();
- }
- return voyage;
- }
-
- public Map<String, String> getImportModes() {
- return importModes;
- }
-
- public Map<String, String> getVoyages() {
- return voyages;
- }
-
- public Map<String, String> getMissions() {
- return missions;
- }
-
- public Map<String, String> getAreaOfOperations() {
- return areaOfOperations;
- }
-
- public ImportMode getImportMode() {
- return importMode;
- }
-
- public void setMissionId(String missionId) {
- this.missionId = missionId;
- }
-
- public void setAreaOfOperationId(String areaOfOperationId) {
- this.areaOfOperationId = areaOfOperationId;
- }
-
- public void setImportMode(ImportMode importMode) {
- this.importMode = importMode;
- }
-
- @Override
- public String input() throws Exception {
- importModes = Maps.newLinkedHashMap();
- for (ImportMode mode : ImportMode.values()) {
- importModes.put(mode.name(), _(mode.getI18nKey()));
- }
-
- if (importMode == null) {
- importMode = ImportMode.USE_EXISTING_VOYAGE;
- }
-
- VoyageService service = newService(VoyageService.class);
- List<Voyage> allVoyages = service.getEntities(Voyage.class);
- voyages = sortAndDecorate(allVoyages, null);
-
- List<Mission> allMissions = service.getEntities(Mission.class);
- missions = sortAndDecorate(allMissions, null);
-
- List<AreaOfOperation> allAreaOfOperations =
- service.getEntities(AreaOfOperation.class);
- areaOfOperations = sortAndDecorate(allAreaOfOperations, null);
- if (log.isInfoEnabled()) {
- log.info("File errors : "+getFieldErrors());
- }
- return INPUT;
- }
-
- @InputConfig(methodName = "input")
- @Override
- public String execute() throws Exception {
-
- if (importMode == ImportMode.CREATE_NEW_VOYAGE) {
-
- // create voyage in db
- VoyageService service = newService(VoyageService.class);
- Voyage voyageToCreate = getVoyage();
- //TODO Remove this test when references will be ok
- if (StringUtils.isNotEmpty(missionId)) {
- Mission mission =
- service.getEntityById(Mission.class, missionId);
- voyage.setMission(mission);
- }
- //TODO Remove this test when references will be ok
- if (StringUtils.isNotEmpty(areaOfOperationId)) {
- AreaOfOperation area = service.getEntityById(AreaOfOperation.class,
- areaOfOperationId);
- voyage.setAreaOfOperation(area);
- }
- voyage = service.createVoyage(voyageToCreate);
- }
- return SUCCESS;
- }
-
-}
Modified: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ImportMode.java
===================================================================
--- trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ImportMode.java 2011-11-26 10:46:13 UTC (rev 131)
+++ trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ImportMode.java 2011-11-26 10:50:09 UTC (rev 132)
@@ -33,8 +33,8 @@
*/
public enum ImportMode {
- CREATE_NEW_VOYAGE(n_("echobase.common.importMode.createNewVoyage")),
- USE_EXISTING_VOYAGE(n_("echobase.common.importMode.useExistingVoyage"));
+ CREATE_NEW_MISSION(n_("echobase.common.importMode.createNewMission")),
+ USE_EXISTING_MISSION(n_("echobase.common.importMode.useExistingMission"));
private final String i18nKey;
Modified: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/LaunchImport.java
===================================================================
--- trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/LaunchImport.java 2011-11-26 10:46:13 UTC (rev 131)
+++ trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/LaunchImport.java 2011-11-26 10:50:09 UTC (rev 132)
@@ -66,7 +66,7 @@
public void prepare() throws Exception {
model = getEchoBaseSession().getImportDataConfiguration();
-
+
service = newService(ImportDataService.class);
}
@@ -75,8 +75,8 @@
try {
if (log.isInfoEnabled()) {
- log.info("Start imports with voyage " +
- model.getVoyage().getVoyageName());
+ log.info("Start imports with mission " +
+ model.getMission().getMissionName());
}
importResult = service.startImport(model);
Deleted: trunk/echobase-ui/src/main/resources/config/struts-import.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/config/struts-import.xml 2011-11-26 10:46:13 UTC (rev 131)
+++ trunk/echobase-ui/src/main/resources/config/struts-import.xml 2011-11-26 10:50:09 UTC (rev 132)
@@ -1,72 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!--
- #%L
- EchoBase :: UI
-
- $Id$
- $HeadURL$
- %%
- Copyright (C) 2011 Ifremer, Codelutin
- %%
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU Affero General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- #L%
- -->
-
-
-<!DOCTYPE struts PUBLIC
- "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
- "http://struts.apache.org/dtds/struts-2.1.7.dtd">
-
-<struts>
-
- <package name="import" extends="loggued" namespace="/import">
-
- <!-- Configure import voyage -->
- <action name="configureVoyage"
- class="fr.ifremer.echobase.ui.actions.importData.ConfigureVoyage">
- <interceptor-ref name="paramsPrepareParamsStackLoggued"/>
- <result name="input">/WEB-INF/jsp/import/configureVoyage.jsp</result>
- <result type="redirectAction">
- <param name="namespace">/import</param>
- <param name="actionName">configureFiles</param>
- <param name="method">input</param>
- <param name="voyageId">${voyage.topiaId}</param>
- </result>
- </action>
-
- <!-- Configure import files -->
- <action name="configureFiles"
- class="fr.ifremer.echobase.ui.actions.importData.ConfigureFiles">
- <interceptor-ref name="paramsPrepareParamsStackLoggued"/>
- <result name="input">/WEB-INF/jsp/import/configureFiles.jsp</result>
- <result type="redirectAction">
- <param name="namespace">/import</param>
- <param name="actionName">doImport</param>
- </result>
- </action>
-
- <!-- Starts import -->
- <action name="doImport"
- class="fr.ifremer.echobase.ui.actions.importData.LaunchImport"
- method="execute">
- <interceptor-ref name="basicStackLoggued"/>
- <interceptor-ref name="execAndWait"/>
- <result name="wait">/WEB-INF/jsp/import/importProgress.jsp</result>
- <result>/WEB-INF/jsp/import/importResult.jsp</result>
- </action>
-
- </package>
-
-</struts>
-
Copied: trunk/echobase-ui/src/main/resources/config/struts-importData.xml (from rev 127, trunk/echobase-ui/src/main/resources/config/struts-import.xml)
===================================================================
--- trunk/echobase-ui/src/main/resources/config/struts-importData.xml (rev 0)
+++ trunk/echobase-ui/src/main/resources/config/struts-importData.xml 2011-11-26 10:50:09 UTC (rev 132)
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+ #%L
+ EchoBase :: UI
+
+ $Id$
+ $HeadURL$
+ %%
+ Copyright (C) 2011 Ifremer, Codelutin
+ %%
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ #L%
+ -->
+
+
+<!DOCTYPE struts PUBLIC
+ "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
+ "http://struts.apache.org/dtds/struts-2.1.7.dtd">
+
+<struts>
+
+ <package name="import" extends="loggued" namespace="/importData">
+
+ <!-- Configure import mission -->
+ <action name="configureMission"
+ class="fr.ifremer.echobase.ui.actions.importData.ConfigureMission">
+ <interceptor-ref name="paramsPrepareParamsStackLoggued"/>
+ <result name="input">/WEB-INF/jsp/importData/configureMission.jsp</result>
+ <result type="redirectAction">
+ <param name="namespace">/importData</param>
+ <param name="actionName">configureFiles</param>
+ <param name="method">input</param>
+ <param name="missionId">${mission.topiaId}</param>
+ </result>
+ </action>
+
+ <!-- Configure import files -->
+ <action name="configureFiles"
+ class="fr.ifremer.echobase.ui.actions.importData.ConfigureFiles">
+ <interceptor-ref name="paramsPrepareParamsStackLoggued"/>
+ <result name="input">/WEB-INF/jsp/importData/configureFiles.jsp</result>
+ <result type="redirectAction">
+ <param name="namespace">/importData</param>
+ <param name="actionName">doImport</param>
+ </result>
+ </action>
+
+ <!-- Starts import -->
+ <action name="doImport"
+ class="fr.ifremer.echobase.ui.actions.importData.LaunchImport"
+ method="execute">
+ <interceptor-ref name="basicStackLoggued"/>
+ <interceptor-ref name="execAndWait"/>
+ <result name="wait">/WEB-INF/jsp/importData/importProgress.jsp</result>
+ <result>/WEB-INF/jsp/importData/importResult.jsp</result>
+ </action>
+
+ </package>
+
+</struts>
+
Property changes on: trunk/echobase-ui/src/main/resources/config/struts-importData.xml
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Modified: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureFiles-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureFiles-validation.xml 2011-11-26 10:46:13 UTC (rev 131)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureFiles-validation.xml 2011-11-26 10:50:09 UTC (rev 132)
@@ -26,7 +26,7 @@
"http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
<validators>
- <field name="voyageId">
+ <field name="missionId">
<field-validator type="requiredstring">
<message key="echobase.error.import.voyage.required"/>
</field-validator>
Copied: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureMission-validation.xml (from rev 127, trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureVoyage-validation.xml)
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureMission-validation.xml (rev 0)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureMission-validation.xml 2011-11-26 10:50:09 UTC (rev 132)
@@ -0,0 +1,56 @@
+<!--
+ #%L
+ EchoBase :: UI
+
+ $Id $
+ $HeadURL $
+ %%
+ Copyright (C) 2011 Ifremer, Codelutin
+ %%
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ #L%
+ -->
+<!DOCTYPE validators PUBLIC
+ "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
+<validators>
+
+ <field name="importMode">
+ <field-validator type="required">
+ <message key="echobase.error.import.importMode.required"/>
+ </field-validator>
+ </field>
+
+ <field name="mission.topiaId">
+ <field-validator type="requiredstring">
+ <param name="skip">importMode.name() != "USE_EXISTING_MISSION"</param>
+ <message key="echobase.error.import.mission.required"/>
+ </field-validator>
+ </field>
+
+ <field name="mission.missionName">
+ <field-validator type="requiredstring">
+ <param name="skip">importMode.name() != "CREATE_NEW_MISSION"</param>
+ <message key="echobase.error.import.missionName.required"/>
+ </field-validator>
+ </field>
+
+ <field name="mission.missionAbstract">
+ <field-validator type="requiredstring">
+ <param name="skip">importMode.name() != "CREATE_NEW_MISSION"</param>
+ <message key="echobase.error.import.missionAbstract.required"/>
+ </field-validator>
+ </field>
+
+</validators>
\ No newline at end of file
Property changes on: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureMission-validation.xml
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Deleted: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureVoyage-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureVoyage-validation.xml 2011-11-26 10:46:13 UTC (rev 131)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureVoyage-validation.xml 2011-11-26 10:50:09 UTC (rev 132)
@@ -1,92 +0,0 @@
-<!--
- #%L
- EchoBase :: UI
-
- $Id $
- $HeadURL $
- %%
- Copyright (C) 2011 Ifremer, Codelutin
- %%
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU Affero General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- #L%
- -->
-<!DOCTYPE validators PUBLIC
- "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
- "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
-<validators>
-
- <field name="importMode">
- <field-validator type="required">
- <message key="echobase.error.import.importMode.required"/>
- </field-validator>
- </field>
-
- <field name="voyage.topiaId">
- <field-validator type="requiredstring">
- <param name="skip">importMode.name() != "USE_EXISTING_VOYAGE"</param>
- <message key="echobase.error.import.voyage.required"/>
- </field-validator>
- </field>
-
- <field name="voyage.voyageName">
- <field-validator type="requiredstring">
- <param name="skip">importMode.name() != "CREATE_NEW_VOYAGE"</param>
- <message key="echobase.error.import.voyageName.required"/>
- </field-validator>
- </field>
-
- <field name="voyage.datum">
- <field-validator type="requiredstring">
- <param name="skip">importMode.name() != "CREATE_NEW_VOYAGE"</param>
- <message key="echobase.error.import.datum.required"/>
- </field-validator>
- </field>
-
- <field name="voyage.voyageDescription">
- <field-validator type="requiredstring">
- <param name="skip">importMode.name() != "CREATE_NEW_VOYAGE"</param>
- <message key="echobase.error.import.voyageDescription.required"/>
- </field-validator>
- </field>
-
- <!-- TODO Reput this when references are in db -->
- <!--field name="missionId">
- <field-validator type="requiredstring">
- <param name="skip">${importMode.name} != "CREATE_NEW_VOYAGE"</param>
- <message key="echobase.error.import.missionId.required"/>
- </field-validator>
- </field-->
-
- <!--field name="areaOfOperationId">
- <field-validator type="requiredstring">
- <param name="skip">importMode.name() != "CREATE_NEW_VOYAGE"</param>
- <message key="echobase.error.import.areaOfOperationId.required"/>
- </field-validator>
- </field-->
-
- <field name="voyage.voyageStartDate">
- <field-validator type="required">
- <param name="skip">importMode.name() != "CREATE_NEW_VOYAGE"</param>
- <message key="echobase.error.import.voyageStartDate.required"/>
- </field-validator>
- </field>
-
- <field name="voyage.voyageEndDate">
- <field-validator type="required">
- <param name="skip">importMode.name() != "CREATE_NEW_VOYAGE"</param>
- <message key="echobase.error.import.voyageEndDate.required"/>
- </field-validator>
- </field>
-
-</validators>
\ No newline at end of file
Modified: trunk/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties
===================================================================
--- trunk/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties 2011-11-26 10:46:13 UTC (rev 131)
+++ trunk/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties 2011-11-26 10:50:09 UTC (rev 132)
@@ -18,14 +18,14 @@
echobase.action.return=Retour
echobase.action.save=Sauvegarder
echobase.action.saveSqlQuery=Enregistrer la requête
-echobase.action.validateImportVoyage=Valider la campagne
+echobase.action.validateImportMission=Valider la mission
echobase.common.admin=Administrateur
echobase.common.comment=Commentaire
echobase.common.email=Email
echobase.common.entityType=Type d'entité
-echobase.common.importMode=Type de campagne
-echobase.common.importMode.createNewVoyage=Créer une nouvelle campagne
-echobase.common.importMode.useExistingVoyage=Utiliser une campagne existante
+echobase.common.importMode=Type de mission
+echobase.common.importMode.createNewMission=Créer une nouvelle mission
+echobase.common.importMode.useExistingMission=Utiliser une mission existante
echobase.common.jdbcLogin=Login de connexion
echobase.common.jdbcPassword=Mot de passe
echobase.common.jdbcUrl=Url de connexion
@@ -37,9 +37,12 @@
echobase.error.export.name.requiredstring=Le nom de l'export est obligatoire
echobase.error.export.sqlQuery.requiredstring=La requête de l'export est obligatoire
echobase.error.export.sqlQuery.wrongformat=La requêtes n'est pas valide
-echobase.error.fileDontExist=
-echobase.error.fileNotFound=
-echobase.error.import.selectedVoyageOrAccessImport.required=Merci de selectionner un campagne
+echobase.error.fileDontExist=Fichier inexistant
+echobase.error.fileNotFound=Fichier non trouvé
+echobase.error.import.importMode.required=Le mode d'import est obligatoire
+echobase.error.import.mission.required=La sélection d'une mission est obligatoire
+echobase.error.import.missionAbstract.required=Le résumé de la mission est obligatoire
+echobase.error.import.missionName.required=Le nom de la mission est obligatoire
echobase.error.importArgument=
echobase.error.importFile.required=Fichier d'import obligatoire
echobase.error.login.password.requiredstring=Le mot de passe est obligatoire
@@ -83,8 +86,8 @@
echobase.legend.embeddedApplication.configuration=Configuration de l'application embarquée
echobase.legend.import=Import configuration
echobase.legend.import.configuration.files=Choix des fichiers d'import
-echobase.legend.import.configuration.voyage=Configurer la campagne
-echobase.legend.import.configuration.voyage.resume=Résumé de la campagne à utiliser
+echobase.legend.import.configuration.mission=Configurer la mission
+echobase.legend.import.configuration.mission.resume=Résumé de la mission à utiliser
echobase.legend.importFileResult=Résultat de l'import %s
echobase.legend.sqlQuery.configuration=Configuration de la requête
echobase.legend.sqlQuery.result=Résultats de la requête
Deleted: trunk/echobase-ui/src/main/resources/log4j.properties
===================================================================
--- trunk/echobase-ui/src/main/resources/log4j.properties 2011-11-26 10:46:13 UTC (rev 131)
+++ trunk/echobase-ui/src/main/resources/log4j.properties 2011-11-26 10:50:09 UTC (rev 132)
@@ -1,35 +0,0 @@
-###
-# #%L
-# EchoBase :: UI
-#
-# $Id$
-# $HeadURL$
-# %%
-# Copyright (C) 2011 Ifremer, Codelutin
-# %%
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# #L%
-###
-# Default to info level output; this is very handy if you eventually use Hibernate as well.
-log4j.rootCategory=WARN, A1
-
-# A1 is set to be a ConsoleAppender.
-log4j.appender.A1=org.apache.log4j.ConsoleAppender
-
-# A1 uses PatternLayout.
-log4j.appender.A1.layout=org.apache.log4j.PatternLayout
-log4j.appender.A1.layout.ConversionPattern=%d %5p [%t] (%F:%L) %M - %m%n
-
-# Toute l'application
-log4j.logger.fr.ifremer.echobase=INFO
\ No newline at end of file
Modified: trunk/echobase-ui/src/main/resources/struts.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/struts.xml 2011-11-26 10:46:13 UTC (rev 131)
+++ trunk/echobase-ui/src/main/resources/struts.xml 2011-11-26 10:50:09 UTC (rev 132)
@@ -131,7 +131,7 @@
<include file="config/struts-dbeditor.xml"/>
<include file="config/struts-user.xml"/>
- <include file="config/struts-import.xml"/>
+ <include file="config/struts-importData.xml"/>
<include file="config/struts-export.xml"/>
</struts>
Modified: trunk/echobase-ui/src/main/webapp/WEB-INF/includes/header.jsp
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/includes/header.jsp 2011-11-26 10:46:13 UTC (rev 131)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/includes/header.jsp 2011-11-26 10:50:09 UTC (rev 132)
@@ -55,7 +55,7 @@
<div class="cleanBoth">
<ul>
<li>
- <s:a action="configureVoyage" namespace="/import" method="input">
+ <s:a action="configureMission" namespace="/importData" method="input">
<s:text name="echobase.menu.import"/></s:a>
</li>
<li>
Deleted: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/configureFiles.jsp
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/configureFiles.jsp 2011-11-26 10:46:13 UTC (rev 131)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/configureFiles.jsp 2011-11-26 10:50:09 UTC (rev 132)
@@ -1,71 +0,0 @@
-<%--
- #%L
- EchoBase :: UI
-
- $Id$
- $HeadURL$
- %%
- Copyright (C) 2011 Ifremer, Codelutin
- %%
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU Affero General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- #L%
- --%>
-<%@page contentType="text/html" pageEncoding="UTF-8" %>
-<%@ taglib prefix="s" uri="/struts-tags" %>
-
-<title><s:text name="echobase.title.import"/></title>
-
-<s:form namespace="/import" method="POST" enctype="multipart/form-data">
-
- <fieldset>
- <legend>
- <s:text name="echobase.legend.import.configuration.voyage.resume"/>
- </legend>
- <s:label value="%{model.voyage.voyageName}"
- key='echobase.common.voyageName'/>
-
- <s:label value="%{model.voyage.voyageDescription}"
- key='echobase.common.voyageDescription'/>
- </fieldset>
-
- <hr/>
- <fieldset>
- <legend>
- <s:text name="echobase.legend.import.configuration.files"/>
- </legend>
-
- <s:hidden key="voyageId" label=''/>
-
- <s:file name="acoustic"
- key="echobase.label.import.accoustique"/>
-
- <s:file name="capture"
- key="echobase.label.import.pecherie"/>
-
- <s:file name="lectureAgeGen"
- key="echobase.label.import.lectureAgeGen"/>
-
- <s:file name="events"
- key="echobase.label.import.events"/>
-
- <s:file name="typeEchoSpecies"
- key="echobase.label.import.typeEchoSpecies"/>
-
- </fieldset>
- <br/>
- <s:submit id="addFilesSubmit" action="configureFiles"
- value='%{getText("echobase.action.import")}'/>
-
-
-</s:form>
\ No newline at end of file
Deleted: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/configureVoyage.jsp
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/configureVoyage.jsp 2011-11-26 10:46:13 UTC (rev 131)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/configureVoyage.jsp 2011-11-26 10:50:09 UTC (rev 132)
@@ -1,127 +0,0 @@
-<%--
- #%L
- EchoBase :: UI
-
- $Id$
- $HeadURL$
- %%
- Copyright (C) 2011 Ifremer, Codelutin
- %%
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU Affero General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- #L%
- --%>
-<%@page contentType="text/html" pageEncoding="UTF-8" %>
-<%@ taglib prefix="s" uri="/struts-tags" %>
-<%@ taglib prefix="sj" uri="/struts-jquery-tags" %>
-
-<script type="text/javascript">
-
- jQuery(document).ready(function () {
-
- var importMode = $('[name="importMode"]');
- importMode.change(function(event) {
- $('[class="importMode"]').hide();
- $('#' + this.value).show();
- });
- var val = $('[name="importMode"][checked="checked"]').val();
- $('[class="importMode"]').hide();
- $("#"+val).show();
- });
-</script>
-<title><s:text name="echobase.title.import.configuration"/></title>
-
-<s:form id="importForm" namespace="/import" method="POST">
-
- <fieldset>
- <legend>
- <s:text name="echobase.legend.import.configuration.voyage"/>
- </legend>
-
- <s:radio key='importMode' list="importModes"
- label='%{getText("echobase.common.importMode")}'
- required="true" />
-
- <hr/>
-
- <div id='USE_EXISTING_VOYAGE' class='importMode'>
- <s:select name="voyage.topiaId" value="''"
- label='%{getText("echobase.common.voyage")}'
- list="voyages" headerKey="" headerValue=""/>
- </div>
-
- <div id='CREATE_NEW_VOYAGE' class='importMode'>
-
- <%--
- String PROPERTY_VOYAGE_NAME = "voyageName";
-
- String PROPERTY_VOYAGE_START_DATE = "voyageStartDate";
-
- String PROPERTY_VOYAGE_END_DATE = "voyageEndDate";
-
- String PROPERTY_VOYAGE_START_HARBOUR = "voyageStartHarbour";
-
- String PROPERTY_VOYAGE_END_HARBOUR = "voyageEndHarbour";
-
- String PROPERTY_VOYAGE_DESCRIPTION = "voyageDescription";
-
- String PROPERTY_DATUM = "datum";
-
- String PROPERTY_MISSION = "mission";
-
- String PROPERTY_AREA_OF_OPERATION = "areaOfOperation";
-
- String PROPERTY_TRANSIT = "transit";
-
- String PROPERTY_ECHOTYPE = "echotype";
- --%>
-
- <s:textfield key="voyage.voyageName"
- label='%{getText("echobase.common.voyageName")}'/>
-
- <s:textfield key="voyage.voyageStartHarbour"
- label='%{getText("echobase.common.voyageStartHarbour")}'/>
-
- <s:textfield key="voyage.voyageEndHarbour"
- label='%{getText("echobase.common.voyageEndHarbour")}'/>
-
- <s:textfield key="voyage.datum"
- label='%{getText("echobase.common.datum")}'/>
-
- <s:textarea key="voyage.voyageDescription"
- label='%{getText("echobase.common.voyageDescription")}'/>
-
- <s:select name="missionId" value="''"
- label='%{getText("echobase.common.mission")}'
- list="missions" headerKey="" headerValue=""/>
-
- <s:select name="areaOfOperationId" value="''"
- label='%{getText("echobase.common.areaOfOperation")}'
- list="areaOfOperations" headerKey="" headerValue=""/>
-
- <sj:datepicker key="voyage.voyageStartDate"
- label='%{getText("echobase.common.voyageStartDate")}'
- value="%{new java.util.Date()}"
- displayFormat="dd/mm/yy"/>
-
- <sj:datepicker key="voyage.voyageEndDate"
- label='%{getText("echobase.common.voyageEndDate")}'
- value="%{new java.util.Date()}"
- displayFormat="dd/mm/yy"/>
- </div>
-
- </fieldset>
- <br/>
- <s:submit value='%{getText("echobase.action.validateImportVoyage")}'
- action="configureVoyage" />
-</s:form>
\ No newline at end of file
Deleted: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/import.jsp
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/import.jsp 2011-11-26 10:46:13 UTC (rev 131)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/import.jsp 2011-11-26 10:50:09 UTC (rev 132)
@@ -1,61 +0,0 @@
-<%--
- #%L
- EchoBase :: UI
-
- $Id$
- $HeadURL$
- %%
- Copyright (C) 2011 Ifremer, Codelutin
- %%
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU Affero General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- #L%
- --%>
-<%@page contentType="text/html" pageEncoding="UTF-8" %>
-<%@ taglib prefix="s" uri="/struts-tags" %>
-
-<title><s:text name="echobase.title.import"/></title>
-
-<s:form id="importForm" action="doImport" namespace="/import" method="POST"
- enctype="multipart/form-data">
-
- <fieldset>
- <legend>
- <s:text name="echobase.legend.import"/>
- </legend>
- <s:select key="selectedVoyageId"
- label='%{getText("echobase.common.voyage")}'
- list="voyages"
- emptyOption="true"
- headerKey="-1"
- headerValue='%{getText("echobase.header.voyageSelect")}' />
-
- <s:file name="importModel.accessImport"
- key="echobase.label.import.access"/>
- <s:file name="importModel.accousticImport"
- key="echobase.label.import.accoustique"/>
- <s:file name="importModel.pecherieImport"
- key="echobase.label.import.pecherie"/>
- <s:file name="importModel.lectureAgeGenImport"
- key="echobase.label.import.lectureAgeGen"/>
- <s:file name="importModel.eventsImport"
- key="echobase.label.import.events"/>
- <s:file name="importModel.typeEchoSpeciesImport"
- key="echobase.label.import.typeEchoSpecies"/>
-
- <s:textarea name="importModel.comment" rows="4" cols="50" key="echobase.common.comment"/>
-
- </fieldset>
- <br/>
- <s:submit id="addFilesSubmit" value='%{getText("echobase.action.import")}'/>
-</s:form>
\ No newline at end of file
Deleted: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/importProgress.jsp
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/importProgress.jsp 2011-11-26 10:46:13 UTC (rev 131)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/importProgress.jsp 2011-11-26 10:50:09 UTC (rev 132)
@@ -1,40 +0,0 @@
-<%--
- #%L
- EchoBase :: UI
-
- $Id$
- $HeadURL$
- %%
- Copyright (C) 2011 Ifremer, Codelutin
- %%
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU Affero General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- #L%
- --%>
-<%@page contentType="text/html" pageEncoding="UTF-8" %>
-<%@ taglib prefix="s" uri="/struts-tags" %>
-<%@ taglib prefix="sj" uri="/struts-jquery-tags" %>
-
-<s:url id="url" action="doImport" namespace="/import"/>
-<meta http-equiv="refresh" content="1;url=${url}"/>
-
-<title><s:text name="echobase.title.importProgress"/></title>
-
-<%-- TODO letellier 20111104 : Add warn icon --%>
-<p><s:text name="echobase.message.warnImportInProgress"/></p>
-
-<br/>
-
-<div>
- <sj:progressbar value="%{model.progression}"/>
-</div>
\ No newline at end of file
Deleted: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/importResult.jsp
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/importResult.jsp 2011-11-26 10:46:13 UTC (rev 131)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/importResult.jsp 2011-11-26 10:50:09 UTC (rev 132)
@@ -1,48 +0,0 @@
-<%--
- #%L
- EchoBase :: UI
-
- $Id$
- $HeadURL$
- %%
- Copyright (C) 2011 Ifremer, Codelutin
- %%
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU Affero General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- #L%
- --%>
-<%@page contentType="text/html" pageEncoding="UTF-8" %>
-<%@ taglib prefix="s" uri="/struts-tags" %>
-
-<title><s:text name="echobase.title.importResult"/></title>
-
-<s:iterator value="importResult" var="entry">
- <s:set var="inputFile" value="%{#entry.key}"/>
- <s:set var="result" value="%{#entry.value}"/>
- <fieldset>
- <legend>
- <s:text name="echobase.legend.importFileResult">
- <s:param><strong><s:property value="%{#inputFile.label}"/></strong></s:param>
- </s:text>
- </legend>
-
- <s:label value="%{#inputFile.fileName}"
- label="%{getText('echobase.label.importFile')}"/>
-
- <s:label value="%{#result.numberCreated}"
- label="%{getText('echobase.label.numberOfCreatedEntities')}"/>
-
- <s:label value="%{#result.numberUpdated}"
- label="%{getText('echobase.label.numberOfUpdatedEntities')}"/>
- </fieldset>
-</s:iterator>
Copied: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureFiles.jsp (from rev 127, trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/configureFiles.jsp)
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureFiles.jsp (rev 0)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureFiles.jsp 2011-11-26 10:50:09 UTC (rev 132)
@@ -0,0 +1,71 @@
+<%--
+ #%L
+ EchoBase :: UI
+
+ $Id$
+ $HeadURL$
+ %%
+ Copyright (C) 2011 Ifremer, Codelutin
+ %%
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ #L%
+ --%>
+<%@page contentType="text/html" pageEncoding="UTF-8" %>
+<%@ taglib prefix="s" uri="/struts-tags" %>
+
+<title><s:text name="echobase.title.import"/></title>
+
+<s:form namespace="/importData" method="POST" enctype="multipart/form-data">
+
+ <fieldset>
+ <legend>
+ <s:text name="echobase.legend.import.configuration.mission.resume"/>
+ </legend>
+ <s:label value="%{model.mission.missionName}"
+ key='echobase.common.missionName'/>
+
+ <s:label value="%{model.mission.missionAbstract}"
+ key='echobase.common.missionAbstract'/>
+ </fieldset>
+
+ <hr/>
+ <fieldset>
+ <legend>
+ <s:text name="echobase.legend.import.configuration.files"/>
+ </legend>
+
+ <s:hidden key="voyageId" label=''/>
+
+ <s:file name="acoustic"
+ key="echobase.label.import.accoustique"/>
+
+ <s:file name="capture"
+ key="echobase.label.import.pecherie"/>
+
+ <s:file name="lectureAgeGen"
+ key="echobase.label.import.lectureAgeGen"/>
+
+ <s:file name="events"
+ key="echobase.label.import.events"/>
+
+ <s:file name="typeEchoSpecies"
+ key="echobase.label.import.typeEchoSpecies"/>
+
+ </fieldset>
+ <br/>
+ <s:submit id="addFilesSubmit" action="configureFiles"
+ value='%{getText("echobase.action.import")}'/>
+
+
+</s:form>
\ No newline at end of file
Property changes on: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureFiles.jsp
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Copied: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureMission.jsp (from rev 127, trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/configureVoyage.jsp)
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureMission.jsp (rev 0)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureMission.jsp 2011-11-26 10:50:09 UTC (rev 132)
@@ -0,0 +1,156 @@
+<%--
+ #%L
+ EchoBase :: UI
+
+ $Id$
+ $HeadURL$
+ %%
+ Copyright (C) 2011 Ifremer, Codelutin
+ %%
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ #L%
+ --%>
+<%@page contentType="text/html" pageEncoding="UTF-8" %>
+<%@ taglib prefix="s" uri="/struts-tags" %>
+<%@ taglib prefix="sj" uri="/struts-jquery-tags" %>
+
+<script type="text/javascript">
+
+ jQuery(document).ready(function () {
+
+ $('[name="importMode"]').change(function(event) {
+ $('[class="importMode"]').hide();
+ $('#' + this.value).show();
+ });
+ var val = $('[name="importMode"][checked="checked"]').val();
+ $('[class="importMode"]').hide();
+ $("#" + val).show();
+ });
+</script>
+<title><s:text name="echobase.title.import.configuration"/></title>
+
+<s:form id="importForm" namespace="/importData" method="POST">
+
+ <fieldset>
+ <legend>
+ <s:text name="echobase.legend.import.configuration.mission"/>
+ </legend>
+
+ <s:radio key='importMode' list="importModes"
+ label='%{getText("echobase.common.importMode")}'
+ required="true"/>
+
+ <hr/>
+
+ <div id='USE_EXISTING_MISSION' class='importMode'>
+ <s:select name="mission.topiaId" value="''"
+ label='%{getText("echobase.common.mission")}'
+ list="missions" headerKey="" headerValue=""/>
+ </div>
+
+ <div id='CREATE_NEW_MISSION' class='importMode'>
+
+ <%--
+ String PROPERTY_MISSION_NAME = "missionName";
+
+ String PROPERTY_LITTERATURE_REFERENCES = "litteratureReferences";
+
+ String PROPERTY_MISSION_ABSTRACT = "missionAbstract";
+
+ String PROPERTY_PROJECT = "project";
+
+ String PROPERTY_PLATFORM = "platform";
+
+ String PROPERTY_INSTITUTION = "institution";
+
+ String PROPERTY_KEYWORDS = "keywords";
+
+ String PROPERTY_DATA_CENTRE = "dataCentre";
+
+ String PROPERTY_DATA_CENTRE_EMAIL = "dataCentreEmail";
+
+ String PROPERTY_AUTHOR = "author";
+
+ String PROPERTY_AUTHOR_EMAIL = "authorEmail";
+
+ String PROPERTY_PRINCIPAL_INVESTIGATOR = "principalInvestigator";
+
+ String PROPERTY_PRINCIPAL_INVESTIGATOR_EMAIL = "principalInvestigatorEmail";
+
+ String PROPERTY_ORGANISATION_REFERENCES = "organisationReferences";
+
+ String PROPERTY_DISTRIBUTION_STATEMENT = "distributionStatement";
+
+ String PROPERTY_ORGANISATION_LEVEL_ACKNOWLEDGEMENTS = "organisationLevelAcknowledgements";
+
+ String PROPERTY_SOURCE = "source";
+ --%>
+
+ <s:textfield key="mission.missionName" size="40" required="true"
+ label='%{getText("echobase.common.missionName")}'/>
+
+ <s:textfield key="mission.missionAbstract" size="40" required="true"
+ label='%{getText("echobase.common.missionAbstract")}'/>
+
+ <s:textfield key="mission.litteratureReferences" size="40"
+ label='%{getText("echobase.common.litteratureReferences")}'/>
+
+ <s:textfield key="mission.project"
+ label='%{getText("echobase.common.project")}'/>
+
+ <s:textfield key="mission.platform"
+ label='%{getText("echobase.common.platform")}'/>
+
+ <s:textfield key="mission.institution"
+ label='%{getText("echobase.common.institution")}'/>
+
+ <s:textfield key="mission.keywords"
+ label='%{getText("echobase.common.keywords")}'/>
+
+ <s:textfield key="mission.dataCentre"
+ label='%{getText("echobase.common.dataCentre")}'/>
+
+ <s:textfield key="mission.dataCentreEmail"
+ label='%{getText("echobase.common.dataCentreEmail")}'/>
+
+ <s:textfield key="mission.author"
+ label='%{getText("echobase.common.author")}'/>
+
+ <s:textfield key="mission.authorEmail"
+ label='%{getText("echobase.common.authorEmail")}'/>
+
+ <s:textfield key="mission.principalInvestigator"
+ label='%{getText("echobase.common.principalInvestigator")}'/>
+
+ <s:textfield key="mission.principalInvestigatorEmail"
+ label='%{getText("echobase.common.principalInvestigatorEmail")}'/>
+
+ <s:textfield key="mission.organisationReferences"
+ label='%{getText("echobase.common.organisationReferences")}'/>
+
+ <s:textfield key="mission.distributionStatement"
+ label='%{getText("echobase.common.distributionStatement")}'/>
+
+ <s:textfield key="mission.organisationLevelAcknowledgements"
+ label='%{getText("echobase.common.organisationLevelAcknowledgements")}'/>
+
+ <s:textfield key="mission.source"
+ label='%{getText("echobase.common.source")}'/>
+ </div>
+
+ </fieldset>
+ <br/>
+ <s:submit value='%{getText("echobase.action.validateImportMission")}'
+ action="configureMission"/>
+</s:form>
\ No newline at end of file
Property changes on: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureMission.jsp
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Copied: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importProgress.jsp (from rev 127, trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/importProgress.jsp)
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importProgress.jsp (rev 0)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importProgress.jsp 2011-11-26 10:50:09 UTC (rev 132)
@@ -0,0 +1,40 @@
+<%--
+ #%L
+ EchoBase :: UI
+
+ $Id$
+ $HeadURL$
+ %%
+ Copyright (C) 2011 Ifremer, Codelutin
+ %%
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ #L%
+ --%>
+<%@page contentType="text/html" pageEncoding="UTF-8" %>
+<%@ taglib prefix="s" uri="/struts-tags" %>
+<%@ taglib prefix="sj" uri="/struts-jquery-tags" %>
+
+<s:url id="url" action="doImport" namespace="/importData"/>
+<meta http-equiv="refresh" content="1;url=${url}"/>
+
+<title><s:text name="echobase.title.importProgress"/></title>
+
+<%-- TODO letellier 20111104 : Add warn icon --%>
+<p><s:text name="echobase.message.warnImportInProgress"/></p>
+
+<br/>
+
+<div>
+ <sj:progressbar value="%{model.progression}"/>
+</div>
\ No newline at end of file
Property changes on: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importProgress.jsp
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Copied: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importResult.jsp (from rev 127, trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/importResult.jsp)
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importResult.jsp (rev 0)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importResult.jsp 2011-11-26 10:50:09 UTC (rev 132)
@@ -0,0 +1,48 @@
+<%--
+ #%L
+ EchoBase :: UI
+
+ $Id$
+ $HeadURL$
+ %%
+ Copyright (C) 2011 Ifremer, Codelutin
+ %%
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ #L%
+ --%>
+<%@page contentType="text/html" pageEncoding="UTF-8" %>
+<%@ taglib prefix="s" uri="/struts-tags" %>
+
+<title><s:text name="echobase.title.importResult"/></title>
+
+<s:iterator value="importResult" var="entry">
+ <s:set var="inputFile" value="%{#entry.key}"/>
+ <s:set var="result" value="%{#entry.value}"/>
+ <fieldset>
+ <legend>
+ <s:text name="echobase.legend.importFileResult">
+ <s:param><strong><s:property value="%{#inputFile.label}"/></strong></s:param>
+ </s:text>
+ </legend>
+
+ <s:label value="%{#inputFile.fileName}"
+ label="%{getText('echobase.label.importFile')}"/>
+
+ <s:label value="%{#result.numberCreated}"
+ label="%{getText('echobase.label.numberOfCreatedEntities')}"/>
+
+ <s:label value="%{#result.numberUpdated}"
+ label="%{getText('echobase.label.numberOfUpdatedEntities')}"/>
+ </fieldset>
+</s:iterator>
Property changes on: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/importResult.jsp
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
1
0
r131 - trunk/echobase-services/src/main/java/fr/ifremer/echobase/services
by tchemit@users.forge.codelutin.com 26 Nov '11
by tchemit@users.forge.codelutin.com 26 Nov '11
26 Nov '11
Author: tchemit
Date: 2011-11-26 11:46:13 +0100 (Sat, 26 Nov 2011)
New Revision: 131
Url: http://forge.codelutin.com/repositories/revision/echobase/131
Log:
use mission instead of voyage in importData service + prefer use a support service (not abstract at all and can be use for generci db requests
Added:
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/EchoBaseServiceSupport.java
Removed:
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/AbstractEchoBaseService.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/VoyageService.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/models/
Modified:
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/DbEditorService.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/DecoratorService.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/EmbeddedApplicationService.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ExportSqlService.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataConfiguration.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataService.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/UserService.java
Deleted: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/AbstractEchoBaseService.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/AbstractEchoBaseService.java 2011-11-26 10:45:07 UTC (rev 130)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/AbstractEchoBaseService.java 2011-11-26 10:46:13 UTC (rev 131)
@@ -1,128 +0,0 @@
-/*
- * #%L
- * EchoBase :: Services
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2011 Ifremer, Codelutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- * #L%
- */
-package fr.ifremer.echobase.services;
-
-import com.google.common.base.Preconditions;
-import fr.ifremer.echobase.EchoBaseConfiguration;
-import fr.ifremer.echobase.EchoBaseTechnicalException;
-import fr.ifremer.echobase.entities.EchoBaseDAOHelper;
-import fr.ifremer.echobase.entities.EchoBaseEntityEnum;
-import fr.ifremer.echobase.entities.meta.DbMeta;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.commons.lang3.time.DateUtils;
-import org.nuiton.topia.TopiaContext;
-import org.nuiton.topia.TopiaException;
-import org.nuiton.topia.persistence.TopiaDAO;
-import org.nuiton.topia.persistence.TopiaEntity;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Locale;
-
-/**
- * @author sletellier <letellier(a)codelutin.com>
- * @since 0.1
- */
-public class AbstractEchoBaseService implements EchoBaseService {
-
- protected EchoBaseServiceContext serviceContext;
-
- @Override
- public void setServiceContext(EchoBaseServiceContext serviceContext) {
- this.serviceContext = serviceContext;
- }
-
- public <E extends TopiaEntity> List<E> getEntities(Class<E> entityType) {
- Preconditions.checkNotNull(entityType);
- try {
- List<E> result = getDAO(entityType).findAll();
- return result;
- } catch (TopiaException eee) {
- throw new EchoBaseTechnicalException(
- "Could not obtain data for type " + entityType, eee);
- }
- }
-
- public <E extends TopiaEntity> E getEntityById(Class<E> entityType, String id) {
- Preconditions.checkNotNull(entityType);
- Preconditions.checkArgument(StringUtils.isNotEmpty(id));
- try {
- E result = getDAO(entityType).findByTopiaId(id);
- return result;
- } catch (TopiaException eee) {
- throw new EchoBaseTechnicalException(
- "Could not obtain data of id [" + id + "] for type " +
- entityType, eee);
- }
- }
-
- protected TopiaContext getTransaction() {
- return serviceContext.getTransaction();
- }
-
- protected Locale getLocale() {
- return serviceContext.getLocale();
- }
-
- protected DbMeta getDbMeta() {
- return serviceContext.getDbMeta();
- }
-
- protected EchoBaseConfiguration getConfiguration() {
- return serviceContext.getConfiguration();
- }
-
- protected <E extends EchoBaseService> E newService(Class<E> serviceClass) {
- E e = serviceContext.newService(serviceClass);
- return e;
- }
-
- protected <E extends TopiaEntity> TopiaDAO<E> getDAO(EchoBaseEntityEnum entityEnum) throws TopiaException {
- TopiaDAO<E> dao = getDAO((Class<E>) entityEnum.getContract());
- return dao;
- }
-
- protected <E extends TopiaEntity> TopiaDAO<E> getDAO(Class<E> entityType) throws TopiaException {
- TopiaDAO<E> dao = EchoBaseDAOHelper.<E, TopiaDAO<E>>getDAO(
- getTransaction(),
- entityType);
-
- return dao;
- }
-
- protected void commitTransaction(String errorMessage) {
- try {
- getTransaction().commitTransaction();
- } catch (TopiaException eee) {
- throw new EchoBaseTechnicalException(errorMessage, eee);
- }
- }
-
- protected Date newDate() {
- Date result = new Date();
- DateUtils.setMilliseconds(result, 0);
- return result;
- }
-
-}
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/DbEditorService.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/DbEditorService.java 2011-11-26 10:45:07 UTC (rev 130)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/DbEditorService.java 2011-11-26 10:46:13 UTC (rev 131)
@@ -62,7 +62,7 @@
* @author tchemit <chemit(a)codelutin.com>
* @since 0.1
*/
-public class DbEditorService extends AbstractEchoBaseService {
+public class DbEditorService extends EchoBaseServiceSupport {
/** Logger. */
private static final Log log = LogFactory.getLog(DbEditorService.class);
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/DecoratorService.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/DecoratorService.java 2011-11-26 10:45:07 UTC (rev 130)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/DecoratorService.java 2011-11-26 10:46:13 UTC (rev 131)
@@ -29,6 +29,7 @@
import fr.ifremer.echobase.entities.EchoBaseUser;
import fr.ifremer.echobase.entities.ExportQuery;
import fr.ifremer.echobase.entities.data.Voyage;
+import fr.ifremer.echobase.entities.references.Mission;
import org.apache.commons.collections.CollectionUtils;
import org.nuiton.topia.persistence.TopiaEntity;
import org.nuiton.util.decorator.Decorator;
@@ -47,7 +48,7 @@
* @author tchemit <chemit(a)codelutin.com>
* @since 0.1
*/
-public class DecoratorService extends AbstractEchoBaseService {
+public class DecoratorService extends EchoBaseServiceSupport {
protected final DecoratorMulti18nProvider decoratorProvider;
@@ -121,6 +122,9 @@
// user decorator
registerJXPathDecorator(locale, EchoBaseUser.class, "${email}$s");
+ // mission decorator
+ registerJXPathDecorator(locale, Mission.class, "${missionName}$s");
+
// voyage decorator
registerJXPathDecorator(locale, Voyage.class, "${voyageName}$s");
Copied: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/EchoBaseServiceSupport.java (from rev 129, trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/AbstractEchoBaseService.java)
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/EchoBaseServiceSupport.java (rev 0)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/EchoBaseServiceSupport.java 2011-11-26 10:46:13 UTC (rev 131)
@@ -0,0 +1,128 @@
+/*
+ * #%L
+ * EchoBase :: Services
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ * #L%
+ */
+package fr.ifremer.echobase.services;
+
+import com.google.common.base.Preconditions;
+import fr.ifremer.echobase.EchoBaseConfiguration;
+import fr.ifremer.echobase.EchoBaseTechnicalException;
+import fr.ifremer.echobase.entities.EchoBaseDAOHelper;
+import fr.ifremer.echobase.entities.EchoBaseEntityEnum;
+import fr.ifremer.echobase.entities.meta.DbMeta;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.lang3.time.DateUtils;
+import org.nuiton.topia.TopiaContext;
+import org.nuiton.topia.TopiaException;
+import org.nuiton.topia.persistence.TopiaDAO;
+import org.nuiton.topia.persistence.TopiaEntity;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Locale;
+
+/**
+ * @author sletellier <letellier(a)codelutin.com>
+ * @since 0.1
+ */
+public class EchoBaseServiceSupport implements EchoBaseService {
+
+ protected EchoBaseServiceContext serviceContext;
+
+ @Override
+ public void setServiceContext(EchoBaseServiceContext serviceContext) {
+ this.serviceContext = serviceContext;
+ }
+
+ public <E extends TopiaEntity> List<E> getEntities(Class<E> entityType) {
+ Preconditions.checkNotNull(entityType);
+ try {
+ List<E> result = getDAO(entityType).findAll();
+ return result;
+ } catch (TopiaException eee) {
+ throw new EchoBaseTechnicalException(
+ "Could not obtain data for type " + entityType, eee);
+ }
+ }
+
+ public <E extends TopiaEntity> E getEntityById(Class<E> entityType, String id) {
+ Preconditions.checkNotNull(entityType);
+ Preconditions.checkArgument(StringUtils.isNotEmpty(id));
+ try {
+ E result = getDAO(entityType).findByTopiaId(id);
+ return result;
+ } catch (TopiaException eee) {
+ throw new EchoBaseTechnicalException(
+ "Could not obtain data of id [" + id + "] for type " +
+ entityType, eee);
+ }
+ }
+
+ protected TopiaContext getTransaction() {
+ return serviceContext.getTransaction();
+ }
+
+ protected Locale getLocale() {
+ return serviceContext.getLocale();
+ }
+
+ protected DbMeta getDbMeta() {
+ return serviceContext.getDbMeta();
+ }
+
+ protected EchoBaseConfiguration getConfiguration() {
+ return serviceContext.getConfiguration();
+ }
+
+ protected <E extends EchoBaseService> E newService(Class<E> serviceClass) {
+ E e = serviceContext.newService(serviceClass);
+ return e;
+ }
+
+ protected <E extends TopiaEntity> TopiaDAO<E> getDAO(EchoBaseEntityEnum entityEnum) throws TopiaException {
+ TopiaDAO<E> dao = getDAO((Class<E>) entityEnum.getContract());
+ return dao;
+ }
+
+ protected <E extends TopiaEntity> TopiaDAO<E> getDAO(Class<E> entityType) throws TopiaException {
+ TopiaDAO<E> dao = EchoBaseDAOHelper.<E, TopiaDAO<E>>getDAO(
+ getTransaction(),
+ entityType);
+
+ return dao;
+ }
+
+ protected void commitTransaction(String errorMessage) {
+ try {
+ getTransaction().commitTransaction();
+ } catch (TopiaException eee) {
+ throw new EchoBaseTechnicalException(errorMessage, eee);
+ }
+ }
+
+ protected Date newDate() {
+ Date result = new Date();
+ DateUtils.setMilliseconds(result, 0);
+ return result;
+ }
+
+}
Property changes on: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/EchoBaseServiceSupport.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/EmbeddedApplicationService.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/EmbeddedApplicationService.java 2011-11-26 10:45:07 UTC (rev 130)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/EmbeddedApplicationService.java 2011-11-26 10:46:13 UTC (rev 131)
@@ -56,7 +56,7 @@
* @author sletellier <letellier(a)codelutin.com>
* @since 0.1
*/
-public class EmbeddedApplicationService extends AbstractEchoBaseService {
+public class EmbeddedApplicationService extends EchoBaseServiceSupport {
/** Logger. */
private static final Log log =
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ExportSqlService.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ExportSqlService.java 2011-11-26 10:45:07 UTC (rev 130)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ExportSqlService.java 2011-11-26 10:46:13 UTC (rev 131)
@@ -39,7 +39,6 @@
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
-import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.List;
import java.util.Map;
@@ -50,7 +49,7 @@
* @author tchemit <chemit(a)codelutin.com>
* @since 0.1
*/
-public class ExportSqlService extends AbstractEchoBaseService {
+public class ExportSqlService extends EchoBaseServiceSupport {
/** Logger. */
private static final Log log = LogFactory.getLog(ExportSqlService.class);
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataConfiguration.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataConfiguration.java 2011-11-26 10:45:07 UTC (rev 130)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataConfiguration.java 2011-11-26 10:46:13 UTC (rev 131)
@@ -24,7 +24,7 @@
package fr.ifremer.echobase.services;
import fr.ifremer.echobase.InputFile;
-import fr.ifremer.echobase.entities.data.Voyage;
+import fr.ifremer.echobase.entities.references.Mission;
import java.io.Serializable;
import java.util.Locale;
@@ -41,8 +41,8 @@
private static final long serialVersionUID = 1L;
- /** Voyage used for the import (may not be in db if needed to be created). */
- protected Voyage voyage;
+ /** Mission used for the import (may not be in db if needed to be created). */
+ protected Mission mission;
protected InputFile acousticFile;
@@ -68,8 +68,8 @@
typeEchoSpeciesFile = new InputFile(l_(locale, "echobase.common.typeEchoSpeciesImport"));
}
- public Voyage getVoyage() {
- return voyage;
+ public Mission getMission() {
+ return mission;
}
public InputFile getAcousticFile() {
@@ -100,8 +100,8 @@
return progression;
}
- public void setVoyage(Voyage voyage) {
- this.voyage = voyage;
+ public void setMission(Mission mission) {
+ this.mission = mission;
}
public void setProgression(float progression) {
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataService.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataService.java 2011-11-26 10:45:07 UTC (rev 130)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ImportDataService.java 2011-11-26 10:46:13 UTC (rev 131)
@@ -26,9 +26,10 @@
import com.google.common.collect.Maps;
import fr.ifremer.echobase.EchoBaseTechnicalException;
import fr.ifremer.echobase.InputFile;
-import fr.ifremer.echobase.entities.data.Voyage;
+import fr.ifremer.echobase.entities.references.Mission;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.nuiton.topia.TopiaException;
import java.io.File;
import java.util.Map;
@@ -39,23 +40,34 @@
* @author tchemit <chemit(a)codelutin.com>
* @since 0.2
*/
-public class ImportDataService extends AbstractEchoBaseService {
+public class ImportDataService extends EchoBaseServiceSupport {
/** Logger. */
private static final Log log = LogFactory.getLog(ImportDataService.class);
+ public Mission createMission(Mission mission) {
+ try {
+ Mission result = getDAO(Mission.class).create(mission);
+ commitTransaction("Could not create mission " +
+ mission.getMissionName());
+ return result;
+ } catch (TopiaException eee) {
+ throw new EchoBaseTechnicalException(eee);
+ }
+ }
+
public Map<InputFile, CsvImportResult> startImport(ImportDataConfiguration configuration) {
Map<InputFile, CsvImportResult> result = Maps.newHashMap();
- Voyage voyage = configuration.getVoyage();
+ Mission mission = configuration.getMission();
// compute nb step to treate (means nb imports to do)
configuration.computeSteps();
if (log.isInfoEnabled()) {
- log.info("Starts data import with voyage " +
- voyage.getVoyageName());
+ log.info("Starts data import with mission " +
+ mission.getMissionName());
}
InputFile acousticFile = configuration.getAcousticFile();
@@ -63,7 +75,8 @@
// do acoustic import
try {
- CsvImportResult importResult = importAcoustic(voyage, acousticFile);
+ CsvImportResult importResult =
+ importAcoustic(mission, acousticFile);
configuration.incrementsProgression();
result.put(acousticFile, importResult);
} finally {
@@ -76,7 +89,8 @@
// do capture import
try {
- CsvImportResult importResult = importCapture(voyage, captureFile);
+ CsvImportResult importResult =
+ importCapture(mission, captureFile);
configuration.incrementsProgression();
result.put(captureFile, importResult);
} finally {
@@ -89,7 +103,8 @@
// do events import
try {
- CsvImportResult importResult = importEvents(voyage, eventsFile);
+ CsvImportResult importResult =
+ importEvents(mission, eventsFile);
configuration.incrementsProgression();
result.put(eventsFile, importResult);
} finally {
@@ -102,7 +117,8 @@
// do lecture age gen import
try {
- CsvImportResult importResult = importLectureAgeGen(voyage, lectureAgeGenFile);
+ CsvImportResult importResult =
+ importLectureAgeGen(mission, lectureAgeGenFile);
configuration.incrementsProgression();
result.put(lectureAgeGenFile, importResult);
} finally {
@@ -115,7 +131,8 @@
// do echo species import
try {
- CsvImportResult importResult = importTypeEchoSpecies(voyage, typeEchoSpeciesFile);
+ CsvImportResult importResult =
+ importTypeEchoSpecies(mission, typeEchoSpeciesFile);
configuration.incrementsProgression();
result.put(typeEchoSpeciesFile, importResult);
} finally {
@@ -138,7 +155,8 @@
}
}
- protected CsvImportResult importAcoustic(Voyage voyage, InputFile importFile) {
+ protected CsvImportResult importAcoustic(Mission mission,
+ InputFile importFile) {
if (log.isInfoEnabled()) {
log.info("Starts " + importFile.getLabel() + " with file " +
importFile.getFile());
@@ -148,7 +166,8 @@
return result;
}
- protected CsvImportResult importCapture(Voyage voyage, InputFile importFile) {
+ protected CsvImportResult importCapture(Mission mission,
+ InputFile importFile) {
if (log.isInfoEnabled()) {
log.info("Starts " + importFile.getLabel() + " with file " +
importFile.getFile());
@@ -158,7 +177,8 @@
return result;
}
- protected CsvImportResult importEvents(Voyage voyage, InputFile importFile) {
+ protected CsvImportResult importEvents(Mission mission,
+ InputFile importFile) {
if (log.isInfoEnabled()) {
log.info("Starts " + importFile.getLabel() + " with file " +
importFile.getFile());
@@ -168,7 +188,8 @@
return result;
}
- protected CsvImportResult importLectureAgeGen(Voyage voyage, InputFile importFile) {
+ protected CsvImportResult importLectureAgeGen(Mission mission,
+ InputFile importFile) {
if (log.isInfoEnabled()) {
log.info("Starts " + importFile.getLabel() + " with file " +
importFile.getFile());
@@ -178,7 +199,8 @@
return result;
}
- protected CsvImportResult importTypeEchoSpecies(Voyage voyage, InputFile importFile) {
+ protected CsvImportResult importTypeEchoSpecies(Mission mission,
+ InputFile importFile) {
if (log.isInfoEnabled()) {
log.info("Starts " + importFile.getLabel() + " with file " +
importFile.getFile());
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/UserService.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/UserService.java 2011-11-26 10:45:07 UTC (rev 130)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/UserService.java 2011-11-26 10:46:13 UTC (rev 131)
@@ -41,7 +41,7 @@
* @author sletellier <letellier(a)codelutin.com>
* @since 0.1
*/
-public class UserService extends AbstractEchoBaseService {
+public class UserService extends EchoBaseServiceSupport {
public static final String DEFAULT_ADMIN_EMAIL = "admin";
Deleted: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/VoyageService.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/VoyageService.java 2011-11-26 10:45:07 UTC (rev 130)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/VoyageService.java 2011-11-26 10:46:13 UTC (rev 131)
@@ -1,48 +0,0 @@
-/*
- * #%L
- * EchoBase :: Services
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2011 Ifremer, Codelutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- * #L%
- */
-package fr.ifremer.echobase.services;
-
-import fr.ifremer.echobase.EchoBaseTechnicalException;
-import fr.ifremer.echobase.entities.data.Voyage;
-import org.nuiton.topia.TopiaException;
-
-/**
- * Service to manage all concerning voyages.
- *
- * @author sletellier <letellier(a)codelutin.com>
- */
-public class VoyageService extends AbstractEchoBaseService {
-
- public Voyage createVoyage(Voyage voyage) {
- try {
- Voyage result = getDAO(Voyage.class).create(voyage);
- commitTransaction("Could not create voyage " +
- voyage.getVoyageName());
- return result;
- } catch (TopiaException eee) {
- throw new EchoBaseTechnicalException(eee);
- }
- }
-
-}
1
0
r130 - trunk/echobase-entities/src/main/resources/i18n
by tchemit@users.forge.codelutin.com 26 Nov '11
by tchemit@users.forge.codelutin.com 26 Nov '11
26 Nov '11
Author: tchemit
Date: 2011-11-26 11:45:07 +0100 (Sat, 26 Nov 2011)
New Revision: 130
Url: http://forge.codelutin.com/repositories/revision/echobase/130
Log:
i18n
Modified:
trunk/echobase-entities/src/main/resources/i18n/echobase-entities_fr_FR.properties
Modified: trunk/echobase-entities/src/main/resources/i18n/echobase-entities_fr_FR.properties
===================================================================
--- trunk/echobase-entities/src/main/resources/i18n/echobase-entities_fr_FR.properties 2011-11-25 19:11:42 UTC (rev 129)
+++ trunk/echobase-entities/src/main/resources/i18n/echobase-entities_fr_FR.properties 2011-11-26 10:45:07 UTC (rev 130)
@@ -15,8 +15,8 @@
echobase.common.altCallsign=
echobase.common.areaOfOperation=areaOfOperation
echobase.common.areaOfOperationName=
-echobase.common.author=
-echobase.common.authorEmail=
+echobase.common.author=Auteur
+echobase.common.authorEmail=Courriel de l'auteur
echobase.common.axis=
echobase.common.b=
echobase.common.bathymetre=
@@ -48,8 +48,8 @@
echobase.common.commonName=
echobase.common.data=data
echobase.common.dataAcquisition=dataAcquisition
-echobase.common.dataCentre=
-echobase.common.dataCentreEmail=
+echobase.common.dataCentre=Centre de données
+echobase.common.dataCentreEmail=Courriel du centre de données
echobase.common.dataMetadata=
echobase.common.dataMetadataName=
echobase.common.dataName=
@@ -122,8 +122,8 @@
echobase.common.impacte=
echobase.common.individual=
echobase.common.individualValue=
-echobase.common.institution=
-echobase.common.keywords=
+echobase.common.institution=Institution
+echobase.common.keywords=Môts clefs
echobase.common.label=
echobase.common.lastModifiedDate=Date de dernière modification
echobase.common.lastModifiedUser=Utilisateur de dernière modification
@@ -131,7 +131,7 @@
echobase.common.licence=
echobase.common.linestring=
echobase.common.litteratureReference=
-echobase.common.litteratureReferences=
+echobase.common.litteratureReferences=Références
echobase.common.localisation=
echobase.common.locationMaxLatitude=
echobase.common.locationMaxLongitude=
@@ -150,9 +150,8 @@
echobase.common.measurementUnit=
echobase.common.metadata=metadata
echobase.common.mission=mission
-echobase.common.missionAbstract=
-echobase.common.missionName=
-echobase.common.missionReferences=
+echobase.common.missionAbstract=Résumé de la mission
+echobase.common.missionName=Nom de la mission
echobase.common.modificationDate=Date de modification
echobase.common.modificationText=Modification
echobase.common.modificationUser=Utilisateur
@@ -178,12 +177,12 @@
echobase.common.pingDutyCycle=
echobase.common.platform=
echobase.common.positive=
-echobase.common.principalInvestigator=
-echobase.common.principalInvestigatorEmail=
+echobase.common.principalInvestigator=Chercheur
+echobase.common.principalInvestigatorEmail=Courriel du chercheur
echobase.common.processingDescription=
echobase.common.processingSoftwareVersion=
echobase.common.processingTemplate=
-echobase.common.project=
+echobase.common.project=Projet
echobase.common.qualityDataFlagValues=
echobase.common.referenceDatum=referenceDatum
echobase.common.referenceDatumId=
@@ -206,7 +205,7 @@
echobase.common.size=
echobase.common.soundSpeedCalculations=
echobase.common.sounderConstant=
-echobase.common.source=
+echobase.common.source=Source
echobase.common.species=espèce
echobase.common.sqlQuery=requête SQL
echobase.common.standardName=
1
0