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
March 2012
- 2 participants
- 129 discussions
19 Mar '12
Author: tchemit
Date: 2012-03-19 08:18:36 +0100 (Mon, 19 Mar 2012)
New Revision: 370
Url: http://forge.codelutin.com/repositories/revision/echobase/370
Log:
prepare last result imports
Added:
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/MapImportModel.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/MapImportModelRow.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/MapResultImportModel.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/MapResultImportModelRow.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/RegionResultImportModel.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/RegionResultImportModelRow.java
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeAcousticByEchotypeAndSpeciesCategory-validation.xml
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeMap-validation.xml
Removed:
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeAcousticByEchotypeAndSpecies-validation.xml
Modified:
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/configurations/ResultsImportConfiguration.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/configurations/ResultsImportMode.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/RegionCellAssociationImportModelRow.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/ResultsImportService.java
trunk/echobase-services/src/main/resources/i18n/echobase-services_en_GB.properties
trunk/echobase-services/src/main/resources/i18n/echobase-services_fr_FR.properties
trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/ResultsEsduImportServiceIT.java
trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureResults.java
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeRegion-validation.xml
trunk/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureResults.jsp
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/configurations/ResultsImportConfiguration.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/configurations/ResultsImportConfiguration.java 2012-03-16 18:02:23 UTC (rev 369)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/configurations/ResultsImportConfiguration.java 2012-03-19 07:18:36 UTC (rev 370)
@@ -54,15 +54,24 @@
/** Acoustic result by echotype import. */
protected final InputFile acousticByEchotypeFile;
- /** Acoustic result by echotype and species import. */
- protected final InputFile acousticByEchotypeAndSpeciesFile;
+ /** Acoustic result by echotype and species category import. */
+ protected final InputFile acousticByEchotypeAndSpeciesCategoryFile;
/** Region file to import. */
protected final InputFile regionsFile;
/** Region cell associations file to import. */
- protected final InputFile associationFile;
+ protected final InputFile regionAssociationFile;
+ /** Region cell results file to import. */
+ protected final InputFile regionResultFile;
+
+ /** Map cells file to import. */
+ protected final InputFile mapsFile;
+
+ /** Map cell results file to import. */
+ protected final InputFile mapResultFile;
+
/** Echotype file to import. */
protected final InputFile echotypeFile;
@@ -74,9 +83,15 @@
public ResultsImportConfiguration(Locale locale) {
regionsFile = InputFile.newFile(
- l_(locale, "echobase.common.regionsFile"));
- associationFile = InputFile.newFile(
- l_(locale, "echobase.common.associationFile"));
+ l_(locale, "echobase.common.cellRegionsFile"));
+ regionAssociationFile = InputFile.newFile(
+ l_(locale, "echobase.common.cellRegionAssociationFile"));
+ regionResultFile = InputFile.newFile(
+ l_(locale, "echobase.common.cellRegionResultFile"));
+ mapsFile = InputFile.newFile(
+ l_(locale, "echobase.common.cellMapsFile"));
+ mapResultFile = InputFile.newFile(
+ l_(locale, "echobase.common.cellMapResultFile"));
echotypeFile = InputFile.newFile(
l_(locale, "echobase.common.echotypeFile"));
lengthAgeKeyFile = InputFile.newFile(
@@ -85,8 +100,8 @@
l_(locale, "echobase.common.lengthWeightKeyFile"));
acousticByEchotypeFile = InputFile.newFile(
l_(locale, "echobase.common.acousticByEchotypeFile"));
- acousticByEchotypeAndSpeciesFile = InputFile.newFile(
- l_(locale, "echobase.common.acousticByEchotypeAndSpeciesFile"));
+ acousticByEchotypeAndSpeciesCategoryFile = InputFile.newFile(
+ l_(locale, "echobase.common.acousticByEchotypeAndSpeciesCategoryFile"));
}
public String getVoyageId() {
@@ -125,10 +140,22 @@
return regionsFile;
}
- public InputFile getAssociationFile() {
- return associationFile;
+ public InputFile getRegionAssociationFile() {
+ return regionAssociationFile;
}
+ public InputFile getRegionResultFile() {
+ return regionResultFile;
+ }
+
+ public InputFile getMapsFile() {
+ return mapsFile;
+ }
+
+ public InputFile getMapResultFile() {
+ return mapResultFile;
+ }
+
public InputFile getEchotypeFile() {
return echotypeFile;
}
@@ -145,15 +172,16 @@
return acousticByEchotypeFile;
}
- public InputFile getAcousticByEchotypeAndSpeciesFile() {
- return acousticByEchotypeAndSpeciesFile;
+ public InputFile getAcousticByEchotypeAndSpeciesCategoryFile() {
+ return acousticByEchotypeAndSpeciesCategoryFile;
}
@Override
public InputFile[] getInputFiles() {
- return new InputFile[]{regionsFile, associationFile, echotypeFile,
+ return new InputFile[]{regionsFile, regionAssociationFile, regionResultFile,
+ mapsFile, mapResultFile, echotypeFile,
lengthAgeKeyFile, lengthWeightKeyFile,
acousticByEchotypeFile,
- acousticByEchotypeAndSpeciesFile};
+ acousticByEchotypeAndSpeciesCategoryFile};
}
}
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/configurations/ResultsImportMode.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/configurations/ResultsImportMode.java 2012-03-16 18:02:23 UTC (rev 369)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/configurations/ResultsImportMode.java 2012-03-19 07:18:36 UTC (rev 370)
@@ -47,8 +47,8 @@
/** Import acoustic results by echotype. */
ACOUSTIC_BY_ECHOTYPE(n_("echobase.common.resultsImportMode.acoustic.byEchotype")),
- /** Import acoustic results by echotype and species. */
- ACOUSTIC_BY_ECHOTYPE_AND_SPECIES(n_("echobase.common.resultsImportMode.acoustic.byEchotypeAndspecies"));
+ /** Import acoustic results by echotype and species category. */
+ ACOUSTIC_BY_ECHOTYPE_AND_SPECIES_CATEGORY(n_("echobase.common.resultsImportMode.acoustic.byEchotypeAndSpeciesCategory"));
private final String i18nKey;
Added: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/MapImportModel.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/MapImportModel.java (rev 0)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/MapImportModel.java 2012-03-19 07:18:36 UTC (rev 370)
@@ -0,0 +1,42 @@
+/*
+ * #%L
+ * EchoBase :: Services
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 - 2012 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.csv;
+
+/**
+ * TODO
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 0.3
+ */
+public class MapImportModel extends CsvModelUtil.AbstractImportModel<MapImportModelRow> {
+
+ public MapImportModel(char separator) {
+ super(separator);
+ }
+
+ @Override
+ public MapImportModelRow newEmptyInstance() {
+ return new MapImportModelRow();
+ }
+}
\ No newline at end of file
Property changes on: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/MapImportModel.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/csv/MapImportModelRow.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/MapImportModelRow.java (rev 0)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/MapImportModelRow.java 2012-03-19 07:18:36 UTC (rev 370)
@@ -0,0 +1,33 @@
+/*
+ * #%L
+ * EchoBase :: Services
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 - 2012 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.csv;
+
+/**
+ * TODO
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 0.3
+ */
+public class MapImportModelRow {
+}
Property changes on: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/MapImportModelRow.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/csv/MapResultImportModel.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/MapResultImportModel.java (rev 0)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/MapResultImportModel.java 2012-03-19 07:18:36 UTC (rev 370)
@@ -0,0 +1,42 @@
+/*
+ * #%L
+ * EchoBase :: Services
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 - 2012 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.csv;
+
+/**
+ * TODO
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 0.3
+ */
+public class MapResultImportModel extends CsvModelUtil.AbstractImportModel<MapResultImportModelRow> {
+
+ public MapResultImportModel(char separator) {
+ super(separator);
+ }
+
+ @Override
+ public MapResultImportModelRow newEmptyInstance() {
+ return new MapResultImportModelRow();
+ }
+}
\ No newline at end of file
Property changes on: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/MapResultImportModel.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/csv/MapResultImportModelRow.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/MapResultImportModelRow.java (rev 0)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/MapResultImportModelRow.java 2012-03-19 07:18:36 UTC (rev 370)
@@ -0,0 +1,33 @@
+/*
+ * #%L
+ * EchoBase :: Services
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 - 2012 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.csv;
+
+/**
+ * TODO
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 0.3
+ */
+public class MapResultImportModelRow {
+}
Property changes on: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/MapResultImportModelRow.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/csv/RegionCellAssociationImportModelRow.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/RegionCellAssociationImportModelRow.java 2012-03-16 18:02:23 UTC (rev 369)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/RegionCellAssociationImportModelRow.java 2012-03-19 07:18:36 UTC (rev 370)
@@ -23,6 +23,8 @@
*/
package fr.ifremer.echobase.services.csv;
+import fr.ifremer.echobase.entities.data.Cell;
+
/**
* Bean used as a row for import of {@link RegionCellAssociationImportModel}.
*
@@ -31,8 +33,37 @@
*/
public class RegionCellAssociationImportModelRow {
+ protected Cell esduCell;
+
+ protected Cell regionSurfaceCell;
+ protected Cell regionBottomCell;
+
public RegionCellAssociationImportModelRow() {
}
+
+ public Cell getEsduCell() {
+ return esduCell;
+ }
+
+ public void setEsduCell(Cell esduCell) {
+ this.esduCell = esduCell;
+ }
+
+ public Cell getRegionSurfaceCell() {
+ return regionSurfaceCell;
+ }
+
+ public void setRegionSurfaceCell(Cell regionSurfaceCell) {
+ this.regionSurfaceCell = regionSurfaceCell;
+ }
+
+ public Cell getRegionBottomCell() {
+ return regionBottomCell;
+ }
+
+ public void setRegionBottomCell(Cell regionBottomCell) {
+ this.regionBottomCell = regionBottomCell;
+ }
}
Added: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/RegionResultImportModel.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/RegionResultImportModel.java (rev 0)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/RegionResultImportModel.java 2012-03-19 07:18:36 UTC (rev 370)
@@ -0,0 +1,42 @@
+/*
+ * #%L
+ * EchoBase :: Services
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 - 2012 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.csv;
+
+/**
+ * TODO
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 0.3
+ */
+public class RegionResultImportModel extends CsvModelUtil.AbstractImportModel<RegionResultImportModelRow> {
+
+ public RegionResultImportModel(char separator) {
+ super(separator);
+ }
+
+ @Override
+ public RegionResultImportModelRow newEmptyInstance() {
+ return new RegionResultImportModelRow();
+ }
+}
\ No newline at end of file
Property changes on: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/RegionResultImportModel.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/csv/RegionResultImportModelRow.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/RegionResultImportModelRow.java (rev 0)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/RegionResultImportModelRow.java 2012-03-19 07:18:36 UTC (rev 370)
@@ -0,0 +1,33 @@
+/*
+ * #%L
+ * EchoBase :: Services
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 - 2012 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.csv;
+
+/**
+ * TODO
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 0.3
+ */
+public class RegionResultImportModelRow {
+}
Property changes on: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/RegionResultImportModelRow.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/importdata/ResultsImportService.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/ResultsImportService.java 2012-03-16 18:02:23 UTC (rev 369)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/ResultsImportService.java 2012-03-19 07:18:36 UTC (rev 370)
@@ -65,9 +65,15 @@
import fr.ifremer.echobase.services.csv.LengthAgeKeyImportModelRow;
import fr.ifremer.echobase.services.csv.LengthWeightKeyImportModel;
import fr.ifremer.echobase.services.csv.LengthWeightKeyImportModelRow;
+import fr.ifremer.echobase.services.csv.MapImportModel;
+import fr.ifremer.echobase.services.csv.MapImportModelRow;
+import fr.ifremer.echobase.services.csv.MapResultImportModel;
+import fr.ifremer.echobase.services.csv.MapResultImportModelRow;
import fr.ifremer.echobase.services.csv.RegionCellAssociationImportModel;
import fr.ifremer.echobase.services.csv.RegionCellAssociationImportModelRow;
import fr.ifremer.echobase.services.csv.RegionCellImportModel;
+import fr.ifremer.echobase.services.csv.RegionResultImportModel;
+import fr.ifremer.echobase.services.csv.RegionResultImportModelRow;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.nuiton.topia.persistence.TopiaDAO;
@@ -178,14 +184,14 @@
}
break;
- case ACOUSTIC_BY_ECHOTYPE_AND_SPECIES: {
+ case ACOUSTIC_BY_ECHOTYPE_AND_SPECIES_CATEGORY: {
// get selected voyage
Voyage voyage = getEntityById(Voyage.class,
configuration.getVoyageId());
InputFile inputFile =
- configuration.getAcousticByEchotypeAndSpeciesFile();
+ configuration.getAcousticByEchotypeAndSpeciesCategoryFile();
if (inputFile.hasFile()) {
@@ -199,28 +205,66 @@
}
break;
- case REGION:
+ case REGION: {
- if (configuration.getRegionsFile().hasFile()) {
+ // get selected voyage
+ Voyage voyage = getEntityById(Voyage.class,
+ configuration.getVoyageId());
+
+
+ InputFile inputFile = configuration.getRegionsFile();
+
+ if (inputFile.hasFile()) {
CsvFileImportResult importResult = importRegionsFile(
- configuration.getRegionsFile());
+ inputFile, voyage);
- addResultAndLog(result, configuration.getRegionsFile(),
- importResult, user);
+ addResultAndLog(result, inputFile, importResult, user);
}
- if (configuration.getAssociationFile().hasFile()) {
+ inputFile = configuration.getRegionAssociationFile();
+ if (inputFile.hasFile()) {
CsvFileImportResult importResult = importRegionAssociationFile(
- configuration.getAssociationFile());
+ inputFile, voyage);
- addResultAndLog(result, configuration.getAssociationFile(),
+ addResultAndLog(result, inputFile, importResult, user);
+ }
+
+ inputFile = configuration.getRegionResultFile();
+ if (inputFile.hasFile()) {
+ CsvFileImportResult importResult = importRegionResultFile(
+ inputFile, voyage, configuration.getResultLabel());
+
+ addResultAndLog(result, inputFile, importResult, user);
+ }
+ }
+ break;
+ case MAP: {
+
+ // get selected voyage
+ Voyage voyage = getEntityById(Voyage.class,
+ configuration.getVoyageId());
+
+ InputFile inputFile = configuration.getMapsFile();
+ if (inputFile.hasFile()) {
+ CsvFileImportResult importResult = importMapFile(
+ inputFile, voyage);
+
+ addResultAndLog(result, inputFile,
importResult, user);
}
- break;
+ inputFile = configuration.getMapResultFile();
+ if (inputFile.hasFile()) {
+ CsvFileImportResult importResult = importMapResultFile(
+ inputFile, voyage, configuration.getResultLabel());
+
+ addResultAndLog(result, inputFile, importResult, user);
+ }
+ }
+ break;
}
return result;
}
- protected CsvFileImportResult importRegionsFile(InputFile inputFile) throws ImportException {
+ protected CsvFileImportResult importRegionsFile(InputFile inputFile, Voyage voyage) throws ImportException {
if (log.isInfoEnabled()) {
log.info("Starts import of region from file " +
@@ -254,12 +298,13 @@
}
}
- protected CsvFileImportResult importRegionAssociationFile(InputFile inputFile) throws ImportException {
+ protected CsvFileImportResult importRegionAssociationFile(InputFile inputFile,
+ Voyage voyage) throws ImportException {
RegionCellAssociationImportModel csvModel = new RegionCellAssociationImportModel(
serviceContext.getConfiguration().getCsvSeparator());
if (log.isInfoEnabled()) {
- log.info("Starts import of region association from file " +
+ log.info("Starts import of region cell association from file " +
inputFile.getFileName());
}
@@ -288,6 +333,113 @@
}
}
+ protected CsvFileImportResult importRegionResultFile(InputFile inputFile,
+ Voyage voyage,
+ String resultLabel) throws ImportException {
+ RegionResultImportModel csvModel = new RegionResultImportModel(
+ serviceContext.getConfiguration().getCsvSeparator());
+
+ if (log.isInfoEnabled()) {
+ log.info("Starts import of region cell results from file " +
+ inputFile.getFileName());
+ }
+
+ CsvFileImportResult importResult = new CsvFileImportResult(
+ inputFile.getFileName());
+
+ CellDAO dao = getDAO(Cell.class, CellDAO.class);
+
+ Reader reader = getInputFileReader(inputFile);
+ try {
+ Import<RegionResultImportModelRow> importer =
+ EchoBaseImport.newImport(csvModel, reader);
+
+ for (RegionResultImportModelRow row : importer) {
+
+ //TODO
+
+ importResult.incrementsNumberUpdated(EchoBaseEntityEnum.Cell);
+ }
+
+ return importResult;
+ } catch (ImportRuntimeException e) {
+ throw new ImportException(getLocale(), inputFile, e);
+ } finally {
+ closeReader(reader, inputFile);
+ }
+ }
+
+ protected CsvFileImportResult importMapFile(InputFile inputFile,
+ Voyage voyage) throws ImportException {
+ MapImportModel csvModel = new MapImportModel(
+ serviceContext.getConfiguration().getCsvSeparator());
+
+ if (log.isInfoEnabled()) {
+ log.info("Starts import of Map cells from file " +
+ inputFile.getFileName());
+ }
+
+ CsvFileImportResult importResult = new CsvFileImportResult(
+ inputFile.getFileName());
+
+ CellDAO dao = getDAO(Cell.class, CellDAO.class);
+
+ Reader reader = getInputFileReader(inputFile);
+ try {
+ EchoBaseImport<MapImportModelRow> importer =
+ EchoBaseImport.newImport(csvModel, reader);
+
+ for (MapImportModelRow row : importer) {
+
+ //TODO
+
+ importResult.incrementsNumberUpdated(EchoBaseEntityEnum.Cell);
+ }
+
+ return importResult;
+ } catch (ImportRuntimeException e) {
+ throw new ImportException(getLocale(), inputFile, e);
+ } finally {
+ closeReader(reader, inputFile);
+ }
+ }
+
+ protected CsvFileImportResult importMapResultFile(InputFile inputFile,
+ Voyage voyage,
+ String resultLabel) throws ImportException {
+ MapResultImportModel csvModel = new MapResultImportModel(
+ serviceContext.getConfiguration().getCsvSeparator());
+
+ if (log.isInfoEnabled()) {
+ log.info("Starts import of Map cell results from file " +
+ inputFile.getFileName());
+ }
+
+ CsvFileImportResult importResult = new CsvFileImportResult(
+ inputFile.getFileName());
+
+ CellDAO dao = getDAO(Cell.class, CellDAO.class);
+
+ Reader reader = getInputFileReader(inputFile);
+ try {
+ EchoBaseImport<MapResultImportModelRow> importer =
+ EchoBaseImport.newImport(csvModel, reader);
+
+ for (MapResultImportModelRow row : importer) {
+
+ //TODO
+
+ importResult.incrementsNumberUpdated(EchoBaseEntityEnum.Cell);
+ }
+
+ return importResult;
+ } catch (ImportRuntimeException e) {
+ throw new ImportException(getLocale(), inputFile, e);
+ } finally {
+ closeReader(reader, inputFile);
+ }
+ }
+
protected CsvFileImportResult importLenghtWeightKey(InputFile inputFile,
Map<String, Voyage> voyageMap,
Map<String, Species> speciesMap) throws ImportException {
Modified: trunk/echobase-services/src/main/resources/i18n/echobase-services_en_GB.properties
===================================================================
--- trunk/echobase-services/src/main/resources/i18n/echobase-services_en_GB.properties 2012-03-16 18:02:23 UTC (rev 369)
+++ trunk/echobase-services/src/main/resources/i18n/echobase-services_en_GB.properties 2012-03-19 07:18:36 UTC (rev 370)
@@ -1,12 +1,16 @@
csv.import.error.missingMandatoryHeaders=
csv.import.error.unrecognizedHeaders=
-echobase.common.acousticByEchotypeAndSpeciesFile=
+echobase.common.acousticByEchotypeAndSpeciesCategoryFile=
echobase.common.acousticByEchotypeFile=
-echobase.common.associationFile=
echobase.common.biometrySampleFile=
+echobase.common.cellMapResultFile=
+echobase.common.cellMapsFile=
echobase.common.cellPositionReference.end=
echobase.common.cellPositionReference.mid=
echobase.common.cellPositionReference.start=
+echobase.common.cellRegionAssociationFile=
+echobase.common.cellRegionResultFile=
+echobase.common.cellRegionsFile=
echobase.common.commonDataImportMode.all=
echobase.common.commonDataImportMode.transect=
echobase.common.echotypeFile=
@@ -22,10 +26,8 @@
echobase.common.moviesFile=
echobase.common.operationFile=
echobase.common.operationMetadataFile=
-echobase.common.regionsFile=
-echobase.common.resultsImportMode.acoustic=
echobase.common.resultsImportMode.acoustic.byEchotype=
-echobase.common.resultsImportMode.acoustic.byEchotypeAndspecies=
+echobase.common.resultsImportMode.acoustic.byEchotypeAndSpeciesCategory=
echobase.common.resultsImportMode.map=
echobase.common.resultsImportMode.region=
echobase.common.resultsImportMode.voyage=
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 2012-03-16 18:02:23 UTC (rev 369)
+++ trunk/echobase-services/src/main/resources/i18n/echobase-services_fr_FR.properties 2012-03-19 07:18:36 UTC (rev 370)
@@ -1,12 +1,16 @@
csv.import.error.missingMandatoryHeaders=
csv.import.error.unrecognizedHeaders=
-echobase.common.acousticByEchotypeAndSpeciesFile=Fichier d'import
+echobase.common.acousticByEchotypeAndSpeciesCategoryFile=Fichier d'import
echobase.common.acousticByEchotypeFile=Fichier d'import
-echobase.common.associationFile=Fichier d'associations de cellules
echobase.common.biometrySampleFile=Fichier BiometrySample
+echobase.common.cellMapResultFile=Fichier de résultats de cellules Carte
+echobase.common.cellMapsFile=Fichier des cellules Cartes
echobase.common.cellPositionReference.end=Fin
echobase.common.cellPositionReference.mid=Milieu
echobase.common.cellPositionReference.start=Début
+echobase.common.cellRegionAssociationFile=Fichier d'associations de cellules Région
+echobase.common.cellRegionResultFile=Fichier de résultats de cellules Région
+echobase.common.cellRegionsFile=Fichier des cellules Région
echobase.common.commonDataImportMode.all=Import Voyage / Transit / Transects
echobase.common.commonDataImportMode.transect=Import Transects
echobase.common.echotypeFile=Fichier echotype
@@ -22,10 +26,9 @@
echobase.common.moviesFile=Fichier Movies
echobase.common.operationFile=Fichier Opérations
echobase.common.operationMetadataFile=Fichier Méta-données opération
-echobase.common.regionsFile=Fichier des régions
echobase.common.resultsImportMode.acoustic.byEchotype=Import des résultats acoustiques par echotype
-echobase.common.resultsImportMode.acoustic.byEchotypeAndspecies=Import des résultats acoustiques par echotype et espèce
-echobase.common.resultsImportMode.map=Import des cellules de type Map
+echobase.common.resultsImportMode.acoustic.byEchotypeAndSpeciesCategory=Import des résultats acoustiques par echotype et catégorie d'espèce
+echobase.common.resultsImportMode.map=Import des cellules de type Carte
echobase.common.resultsImportMode.region=Import des cellules de type Région
echobase.common.resultsImportMode.voyage=Import des résultats du voyage
echobase.common.subSampleFile=Fichier SubSample
Modified: trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/ResultsEsduImportServiceIT.java
===================================================================
--- trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/ResultsEsduImportServiceIT.java 2012-03-16 18:02:23 UTC (rev 369)
+++ trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/ResultsEsduImportServiceIT.java 2012-03-19 07:18:36 UTC (rev 370)
@@ -23,8 +23,6 @@
*/
package fr.ifremer.echobase.services.importdata;
-import fr.ifremer.echobase.entities.data.Data;
-import fr.ifremer.echobase.entities.data.LengthAgeKey;
import fr.ifremer.echobase.entities.data.Result;
import fr.ifremer.echobase.services.FakeEchoBaseServiceContext;
import fr.ifremer.echobase.services.configurations.ResultsImportConfiguration;
@@ -100,7 +98,7 @@
conf.setResultLabel("resultLabel");
conf.setVoyageId(getVoyageId());
- conf.setImportMode(ResultsImportMode.ACOUSTIC_BY_ECHOTYPE_AND_SPECIES);
+ conf.setImportMode(ResultsImportMode.ACOUSTIC_BY_ECHOTYPE_AND_SPECIES_CATEGORY);
prepareInputFile(conf.getAcousticByEchotypeFile(),
getImportPath("acousticResultByEchotypeAndSpecies.csv"));
@@ -116,4 +114,77 @@
assertCsvImportResult(result.get(0), Result.class, NB_ESDU_RESULT_BY_ECHOTYPE_AND_SPECIES);
}
+ @Ignore
+ @Test
+ public void doImportRegion() throws Exception {
+
+ //TODO
+
+ assertImportCommonData();
+ assertImportOperations();
+ assertImportAcousticDatas();
+ assertImportVoyageResult();
+
+ assertNoEntities(Result.class);
+
+ ResultsImportConfiguration conf =
+ new ResultsImportConfiguration(getLocale());
+
+ conf.setResultLabel("resultLabel");
+ conf.setVoyageId(getVoyageId());
+ conf.setImportMode(ResultsImportMode.REGION);
+
+ prepareInputFile(conf.getRegionsFile(),
+ getImportPath("regions.csv"));
+ prepareInputFile(conf.getRegionAssociationFile(),
+ getImportPath("regionAssociations.csv"));
+ prepareInputFile(conf.getRegionsFile(),
+ getImportPath("regionResults.csv"));
+
+
+
+ ResultsImportService service =
+ getService(ResultsImportService.class);
+
+ List<CsvFileImportResult> result =
+ service.doImport(conf, createFakeUser());
+
+ Assert.assertNotNull(result);
+ Assert.assertEquals(1, result.size());
+ assertCsvImportResult(result.get(0), Result.class, NB_ESDU_RESULT_BY_ECHOTYPE_AND_SPECIES);
+ }
+
+ @Ignore
+ @Test
+ public void doImportMap() throws Exception {
+
+ //TODO
+
+ assertImportCommonData();
+ assertImportOperations();
+ assertImportAcousticDatas();
+ assertImportVoyageResult();
+
+ assertNoEntities(Result.class);
+
+ ResultsImportConfiguration conf =
+ new ResultsImportConfiguration(getLocale());
+
+ conf.setResultLabel("resultLabel");
+ conf.setVoyageId(getVoyageId());
+ conf.setImportMode(ResultsImportMode.MAP);
+
+ prepareInputFile(conf.getAcousticByEchotypeFile(),
+ getImportPath("acousticResultByEchotypeAndSpecies.csv"));
+
+ ResultsImportService service =
+ getService(ResultsImportService.class);
+
+ List<CsvFileImportResult> result =
+ service.doImport(conf, createFakeUser());
+
+ Assert.assertNotNull(result);
+ Assert.assertEquals(1, result.size());
+ assertCsvImportResult(result.get(0), Result.class, NB_ESDU_RESULT_BY_ECHOTYPE_AND_SPECIES);
+ }
}
\ No newline at end of file
Modified: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureResults.java
===================================================================
--- trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureResults.java 2012-03-16 18:02:23 UTC (rev 369)
+++ trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/importData/ConfigureResults.java 2012-03-19 07:18:36 UTC (rev 370)
@@ -95,7 +95,7 @@
}
@InputConfig(methodName = "input")
- public String modeAcousticByEchotypeAndSpecies() throws Exception {
+ public String modeAcousticByEchotypeAndSpeciesCategory() throws Exception {
return execute();
}
@@ -106,6 +106,12 @@
return execute();
}
+ @InputConfig(methodName = "input")
+ public String modeMap() throws Exception {
+
+ return execute();
+ }
+
public Map<String, String> getVoyages() {
return voyages;
}
@@ -139,18 +145,54 @@
getModel().getRegionsFile().setFileName(fileName);
}
- public void setAssociationFile(File file) {
- getModel().getAssociationFile().setFile(file);
+ public void setRegionAssociationFile(File file) {
+ getModel().getRegionAssociationFile().setFile(file);
}
- public void setAssociationFileContentType(String contentType) {
- getModel().getAssociationFile().setContentType(contentType);
+ public void setRegionAssociationFileContentType(String contentType) {
+ getModel().getRegionAssociationFile().setContentType(contentType);
}
- public void setAssociationFileFileName(String fileName) {
- getModel().getAssociationFile().setFileName(fileName);
+ public void setRegionAssociationFileFileName(String fileName) {
+ getModel().getRegionAssociationFile().setFileName(fileName);
}
+ public void setRegionResultFile(File file) {
+ getModel().getRegionResultFile().setFile(file);
+ }
+
+ public void setRegionResultFileContentType(String contentType) {
+ getModel().getRegionResultFile().setContentType(contentType);
+ }
+
+ public void setRegionResultFileFileName(String fileName) {
+ getModel().getRegionResultFile().setFileName(fileName);
+ }
+
+ public void setMapsFile(File file) {
+ getModel().getMapsFile().setFile(file);
+ }
+
+ public void setMapsFileContentType(String contentType) {
+ getModel().getMapsFile().setContentType(contentType);
+ }
+
+ public void setMapsFileFileName(String fileName) {
+ getModel().getMapsFile().setFileName(fileName);
+ }
+
+ public void setMapResultFile(File file) {
+ getModel().getMapResultFile().setFile(file);
+ }
+
+ public void setMapResultFileContentType(String contentType) {
+ getModel().getMapResultFile().setContentType(contentType);
+ }
+
+ public void setMapResultFileFileName(String fileName) {
+ getModel().getMapResultFile().setFileName(fileName);
+ }
+
public void setLengthAgeKeyFile(File file) {
getModel().getLengthAgeKeyFile().setFile(file);
}
@@ -199,16 +241,16 @@
getModel().getAcousticByEchotypeFile().setFileName(fileName);
}
- public void setAcousticByEchotypeAndSpeciesFile(File file) {
- getModel().getAcousticByEchotypeAndSpeciesFile().setFile(file);
+ public void setAcousticByEchotypeAndSpeciesCategoryFileFile(File file) {
+ getModel().getAcousticByEchotypeAndSpeciesCategoryFile().setFile(file);
}
- public void setAcousticByEchotypeAndSpeciesFileContentType(String contentType) {
- getModel().getAcousticByEchotypeAndSpeciesFile().setContentType(contentType);
+ public void setAcousticByEchotypeAndSpeciesCategoryFileContentType(String contentType) {
+ getModel().getAcousticByEchotypeAndSpeciesCategoryFile().setContentType(contentType);
}
- public void setAcousticByEchotypeAndSpeciesFileName(String fileName) {
- getModel().getAcousticByEchotypeAndSpeciesFile().setFileName(fileName);
+ public void setAcousticByEchotypeAndSpeciesCategoryFileName(String fileName) {
+ getModel().getAcousticByEchotypeAndSpeciesCategoryFile().setFileName(fileName);
}
}
Deleted: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeAcousticByEchotypeAndSpecies-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeAcousticByEchotypeAndSpecies-validation.xml 2012-03-16 18:02:23 UTC (rev 369)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeAcousticByEchotypeAndSpecies-validation.xml 2012-03-19 07:18:36 UTC (rev 370)
@@ -1,47 +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 "-//Apache Struts//XWork Validator 1.0.3//EN"
- "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
-<validators>
-
- <field name="model.voyageId">
- <field-validator type="nrequiredstring">
- <message key="echobase.error.import.voyage.required"/>
- </field-validator>
- </field>
-
- <field name="resultLabel">
- <field-validator type="nrequiredstring">
- <message key="echobase.error.import.resultLabel.required"/>
- </field-validator>
- </field>
-
- <field name="acousticByEchotypeAndSpeciesFile">
- <field-validator type="nfieldexpression">
- <param name="expression">model.acousticByEchotypeAndSpeciesFile.file!=null</param>
- <message key="echobase.error.import.acousticByEchotypeAndSpeciesFile.required"/>
- </field-validator>
- </field>
-
-</validators>
\ No newline at end of file
Copied: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeAcousticByEchotypeAndSpeciesCategory-validation.xml (from rev 369, trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeAcousticByEchotypeAndSpecies-validation.xml)
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeAcousticByEchotypeAndSpeciesCategory-validation.xml (rev 0)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeAcousticByEchotypeAndSpeciesCategory-validation.xml 2012-03-19 07:18:36 UTC (rev 370)
@@ -0,0 +1,47 @@
+<!--
+ #%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 "-//Apache Struts//XWork Validator 1.0.3//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
+<validators>
+
+ <field name="model.voyageId">
+ <field-validator type="nrequiredstring">
+ <message key="echobase.error.import.voyage.required"/>
+ </field-validator>
+ </field>
+
+ <field name="resultLabel">
+ <field-validator type="nrequiredstring">
+ <message key="echobase.error.import.resultLabel.required"/>
+ </field-validator>
+ </field>
+
+ <field name="acousticByEchotypeAndSpeciesCategoryFile">
+ <field-validator type="nfieldexpression">
+ <param name="expression">model.acousticByEchotypeAndSpeciesCategoryFile.file!=null</param>
+ <message key="echobase.error.import.acousticByEchotypeAndSpeciesCategoryFile.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/ConfigureResults-ConfigureResults-modeAcousticByEchotypeAndSpeciesCategory-validation.xml
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Added: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeMap-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeMap-validation.xml (rev 0)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeMap-validation.xml 2012-03-19 07:18:36 UTC (rev 370)
@@ -0,0 +1,54 @@
+<!--
+ #%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 "-//Apache Struts//XWork Validator 1.0.3//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
+<validators>
+
+ <field name="model.voyageId">
+ <field-validator type="nrequiredstring">
+ <message key="echobase.error.import.voyage.required"/>
+ </field-validator>
+ </field>
+
+ <field name="resultLabel">
+ <field-validator type="nrequiredstring">
+ <message key="echobase.error.import.resultLabel.required"/>
+ </field-validator>
+ </field>
+
+ <field name="mapsFile">
+ <field-validator type="nfieldexpression">
+ <param name="expression">model.mapsFile.file!=null</param>
+ <message key="echobase.error.import.mapsFile.required"/>
+ </field-validator>
+ </field>
+
+ <field name="mapResultFile">
+ <field-validator type="nfieldexpression">
+ <param name="expression">model.mapResultFile.file!=null</param>
+ <message key="echobase.error.import.mapResultFile.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/ConfigureResults-ConfigureResults-modeMap-validation.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/ConfigureResults-ConfigureResults-modeRegion-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeRegion-validation.xml 2012-03-16 18:02:23 UTC (rev 369)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeRegion-validation.xml 2012-03-19 07:18:36 UTC (rev 370)
@@ -31,6 +31,12 @@
</field-validator>
</field>
+ <field name="resultLabel">
+ <field-validator type="nrequiredstring">
+ <message key="echobase.error.import.resultLabel.required"/>
+ </field-validator>
+ </field>
+
<field name="regionsFile">
<field-validator type="nfieldexpression">
<param name="expression">model.regionsFile.file!=null</param>
@@ -38,11 +44,18 @@
</field-validator>
</field>
- <field name="associationFile">
+ <field name="regionAssociationFile">
<field-validator type="nfieldexpression">
- <param name="expression">model.associationFile.file!=null</param>
- <message key="echobase.error.import.associationFile.required"/>
+ <param name="expression">model.regionAssociationFile.file!=null</param>
+ <message key="echobase.error.import.regionAssociationFile.required"/>
</field-validator>
</field>
+ <field name="regionResultFile">
+ <field-validator type="nfieldexpression">
+ <param name="expression">model.regionResultFile.file!=null</param>
+ <message key="echobase.error.import.regionResultFile.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 2012-03-16 18:02:23 UTC (rev 369)
+++ trunk/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties 2012-03-19 07:18:36 UTC (rev 370)
@@ -83,13 +83,12 @@
echobase.error.export.sqlQuery.forbidden.update.word=La requète contient le mot 'UPDATE', ce qui est interdit
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.import.acousticByEchotypeAndSpeciesFile.required=La sélection d'un fichier d'import est obligatoire
+echobase.error.import.acousticByEchotypeAndSpeciesCategoryFile.required=La sélection d'un fichier d'import est obligatoire
echobase.error.import.acousticByEchotypeFile.required=La sélection d'un fichier d'import est obligatoire
echobase.error.import.acousticDensityUnit.required=acousticDensityUnit non renseigné
echobase.error.import.acquisitionSoftwareVersionER60.required=acquisitionSoftwareVersionER60 non renseigné
echobase.error.import.acquisitionSoftwareVersionME70.required=acquisitionSoftwareVersionME70 non renseigné
echobase.error.import.areaOfOperation.required=La sélection d'une zone d'opération est obligatoire
-echobase.error.import.associationFile.required=La sélection d'un fichier Association est obligatoire
echobase.error.import.biometrySampleFile.required=La sélection d'un fichier BiometrySample est obligatoire
echobase.error.import.cellPositionReference.required=La sélection d'un cellPositionReference est obligatoire
echobase.error.import.datum.required=Datum de la campagne non rengeigné
@@ -101,6 +100,8 @@
echobase.error.import.lengthWeightKeyFile.required=La sélection d'un fichier lengthWeightKey est obligatoire
echobase.error.import.loggedDataDatatype.required=loggedDataDatatype non renseigné
echobase.error.import.loggedDataFormat.required=loggedDataFormat non renseigné
+echobase.error.import.mapResultFile.required=La sélection d'un fichier de résultat de Carte est obligatoire
+echobase.error.import.mapsFile.required=La sélection d'un fichier Carte 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
@@ -111,6 +112,8 @@
echobase.error.import.pingDutyCycle.required=pingDutyCycle non renseigné
echobase.error.import.processingDescription.required=processingDescription non renseigné
echobase.error.import.processingTemplate.required=processingTemplate non renseigné
+echobase.error.import.regionAssociationFile.required=La sélection d'un fichier d'association de Région est obligatoire
+echobase.error.import.regionResultFile.required=La sélection d'un fichier de résultat de Région est obligatoire
echobase.error.import.regionsFile.required=La sélection d'un fichier Region est obligatoire
echobase.error.import.resultImportFile.required=Veuillez donner au moins un fichier à importer
echobase.error.import.resultLabel.required=Le champs ResultLabel est obligatoire
Modified: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureResults.jsp
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureResults.jsp 2012-03-16 18:02:23 UTC (rev 369)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/configureResults.jsp 2012-03-19 07:18:36 UTC (rev 370)
@@ -24,8 +24,8 @@
<%@page contentType="text/html" pageEncoding="UTF-8" %>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%@ taglib prefix="sj" uri="/struts-jquery-tags" %>
-<script type="text/javascript"
- src="<s:url value='/js/gridHelper.js' />"></script>
+<%--script type="text/javascript"
+ src="<s:url value='/js/gridHelper.js' />"></script--%>
<title>
Configuration <s:text name="echobase.common.importDataMode.results"/>
</title>
@@ -34,22 +34,16 @@
jQuery(document).ready(function () {
+ // to change form when mode is changed
$('[name="model.importMode"]').change(function (event) {
$('[class~="importMode"]').hide();
$('#' + this.value).show();
$('#' + this.value + ' .errorMessage').hide();
});
+ // show incoming mode
var incomingVal = $('[name="model.importMode"][checked="checked"]').val();
$('#' + incomingVal).show();
-
- $.autoSelectVoyageAndVessel(
- $('#ACOUSTIC_model_voyageId'),
- $('[name="model.vesselId"]'),
- '<s:url action="getVesselsForVoyage" namespace="/importData"/>',
- '<s:property value="model.voyageId"/>',
- '<s:property value="model.vesselId"/>'
- );
});
</script>
@@ -80,13 +74,12 @@
<s:file key="echotypeFile" required="true"
label='%{getText("echobase.common.echotypeFile")}'/>
-
</fieldset>
<br/>
<s:submit action="ConfigureResults-modeVoyage" key='echobase.action.import'/>
</s:form>
-<s:form id="REGION" namespace="/importData" method="POST"
+<s:form id="ACOUSTIC_BY_ECHOTYPE" namespace="/importData" method="POST"
enctype="multipart/form-data" cssClass="hidden importMode">
<fieldset>
@@ -94,24 +87,25 @@
<s:text name="echobase.legend.importData.configure"/>
</legend>
- <s:hidden key="model.importMode" value="REGION" label=''/>
+ <s:hidden key="model.importMode" value="ACOUSTIC" label=''/>
<s:select key="model.voyageId" required="true"
label='%{getText("echobase.common.voyage")}'
list="voyages" headerKey="" headerValue=""/>
- <s:file key="regionsFile" required="true"
- label='%{getText("echobase.common.regionsFile")}'/>
+ <s:textfield key="model.resultLabel" size="40" required="true"
+ label='%{getText("echobase.common.resultLabel")}'/>
- <s:file key="associationFile" required="true"
- label='%{getText("echobase.common.associationFile")}'/>
-
+ <s:file key="acousticByEchotypeFile" required="true"
+ label='%{getText("echobase.common.acousticByEchotypeFile")}'/>
</fieldset>
<br/>
- <s:submit action="ConfigureResults-modeRegion" key='echobase.action.import'/>
+ <s:submit action="ConfigureResults-modeAcousticByEchotype"
+ key='echobase.action.import'/>
</s:form>
-<s:form id="ACOUSTIC_BY_ECHOTYPE" namespace="/importData" method="POST"
+<s:form id="ACOUSTIC_BY_ECHOTYPE_AND_SPECIES_CATEGORY" namespace="/importData"
+ method="POST"
enctype="multipart/form-data" cssClass="hidden importMode">
<fieldset>
@@ -128,17 +122,15 @@
<s:textfield key="model.resultLabel" size="40" required="true"
label='%{getText("echobase.common.resultLabel")}'/>
- <s:file key="acousticByEchotypeFile" required="true"
- label='%{getText("echobase.common.acousticByEchotypeFile")}'/>
-
+ <s:file key="acousticByEchotypeAndSpeciesCategoryFile" required="true"
+ label='%{getText("echobase.common.acousticByEchotypeAndSpeciesCategoryFile")}'/>
</fieldset>
<br/>
- <s:submit action="ConfigureResults-modeAcousticByEchotype"
+ <s:submit action="ConfigureResults-modeAcousticByEchotypeAndSpeciesCategory"
key='echobase.action.import'/>
</s:form>
-<s:form id="ACOUSTIC_BY_ECHOTYPE_AND_SPECIES" namespace="/importData"
- method="POST"
+<s:form id="REGION" namespace="/importData" method="POST"
enctype="multipart/form-data" cssClass="hidden importMode">
<fieldset>
@@ -146,7 +138,7 @@
<s:text name="echobase.legend.importData.configure"/>
</legend>
- <s:hidden key="model.importMode" value="ACOUSTIC" label=''/>
+ <s:hidden key="model.importMode" value="REGION" label=''/>
<s:select key="model.voyageId" required="true"
label='%{getText("echobase.common.voyage")}'
@@ -155,11 +147,42 @@
<s:textfield key="model.resultLabel" size="40" required="true"
label='%{getText("echobase.common.resultLabel")}'/>
- <s:file key="acousticByEchotypeFile" required="true"
- label='%{getText("echobase.common.acousticByEchotypeAndSpeciesFile")}'/>
+ <s:file key="regionsFile" required="true"
+ label='%{getText("echobase.common.cellRegionsFile")}'/>
+ <s:file key="regionAssociationFile" required="true"
+ label='%{getText("echobase.common.cellRegionAssociationFile")}'/>
+
+ <s:file key="regionResultFile" required="true"
+ label='%{getText("echobase.common.cellRegionResultFile")}'/>
</fieldset>
<br/>
- <s:submit action="ConfigureResults-modeAcousticByEchotypeAndSpecies"
- key='echobase.action.import'/>
-</s:form>
\ No newline at end of file
+ <s:submit action="ConfigureResults-modeRegion" key='echobase.action.import'/>
+</s:form>
+
+<s:form id="MAP" namespace="/importData" method="POST"
+ enctype="multipart/form-data" cssClass="hidden importMode">
+
+ <fieldset>
+ <legend>
+ <s:text name="echobase.legend.importData.configure"/>
+ </legend>
+
+ <s:hidden key="model.importMode" value="REGION" label=''/>
+
+ <s:select key="model.voyageId" required="true"
+ label='%{getText("echobase.common.voyage")}'
+ list="voyages" headerKey="" headerValue=""/>
+
+ <s:textfield key="model.resultLabel" size="40" required="true"
+ label='%{getText("echobase.common.resultLabel")}'/>
+
+ <s:file key="mapsFile" required="true"
+ label='%{getText("echobase.common.cellMapsFile")}'/>
+
+ <s:file key="mapResultFile" required="true"
+ label='%{getText("echobase.common.cellMapResultFile")}'/>
+ </fieldset>
+ <br/>
+ <s:submit action="ConfigureResults-modeMap" key='echobase.action.import'/>
+</s:form>
1
0
r368 - in trunk/echobase-tools/src/test: java/fr/ifremer/echobase/tools/loaders resources/csv/new
by tchemit@users.forge.codelutin.com 16 Mar '12
by tchemit@users.forge.codelutin.com 16 Mar '12
16 Mar '12
Author: tchemit
Date: 2012-03-16 18:59:54 +0100 (Fri, 16 Mar 2012)
New Revision: 368
Url: http://forge.codelutin.com/repositories/revision/echobase/368
Log:
nupdate data type
Modified:
trunk/echobase-tools/src/test/java/fr/ifremer/echobase/tools/loaders/DataTypeLoaderIT.java
trunk/echobase-tools/src/test/resources/csv/new/input-DataType.csv
Modified: trunk/echobase-tools/src/test/java/fr/ifremer/echobase/tools/loaders/DataTypeLoaderIT.java
===================================================================
--- trunk/echobase-tools/src/test/java/fr/ifremer/echobase/tools/loaders/DataTypeLoaderIT.java 2012-03-16 11:57:15 UTC (rev 367)
+++ trunk/echobase-tools/src/test/java/fr/ifremer/echobase/tools/loaders/DataTypeLoaderIT.java 2012-03-16 17:59:54 UTC (rev 368)
@@ -35,7 +35,7 @@
public class DataTypeLoaderIT extends AbstractLoaderIT<DataType, DataTypeLoader> {
public DataTypeLoaderIT() {
- super(DataTypeLoader.class, 16, 0);
+ super(DataTypeLoader.class, 17, 0);
}
@Test
Modified: trunk/echobase-tools/src/test/resources/csv/new/input-DataType.csv
===================================================================
--- trunk/echobase-tools/src/test/resources/csv/new/input-DataType.csv 2012-03-16 11:57:15 UTC (rev 367)
+++ trunk/echobase-tools/src/test/resources/csv/new/input-DataType.csv 2012-03-16 17:59:54 UTC (rev 368)
@@ -15,3 +15,4 @@
Formula;String;
MeanXe;Double;
EsduFlag;String;
+NumberOfSamples;Integer;
\ No newline at end of file
1
0
r367 - in trunk: echobase-entities/src/main/java/fr/ifremer/echobase echobase-services/src/main/java/fr/ifremer/echobase/services echobase-services/src/main/java/fr/ifremer/echobase/services/csv echobase-services/src/main/resources/i18n echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/dbeditor echobase-ui/src/main/resources/i18n echobase-ui/src/main/webapp/WEB-INF/jsp/dbeditor
by tchemit@users.forge.codelutin.com 16 Mar '12
by tchemit@users.forge.codelutin.com 16 Mar '12
16 Mar '12
Author: tchemit
Date: 2012-03-16 12:57:15 +0100 (Fri, 16 Mar 2012)
New Revision: 367
Url: http://forge.codelutin.com/repositories/revision/echobase/367
Log:
permettre l'export d'une table comme ?\195?\160 l'?\195?\169cran + am?\195?\169lioration d?\195?\169coration de Species (ajout baracoudaCode)
Modified:
trunk/echobase-entities/src/main/java/fr/ifremer/echobase/EchoBaseDecoratorProvider.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/DbEditorService.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ExportService.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/CsvModelUtil.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/EntityCsvModel.java
trunk/echobase-services/src/main/resources/i18n/echobase-services_en_GB.properties
trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/dbeditor/ExportTable.java
trunk/echobase-ui/src/main/resources/i18n/echobase-ui_en_GB.properties
trunk/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/dbeditor/dbeditor.jsp
Modified: trunk/echobase-entities/src/main/java/fr/ifremer/echobase/EchoBaseDecoratorProvider.java
===================================================================
--- trunk/echobase-entities/src/main/java/fr/ifremer/echobase/EchoBaseDecoratorProvider.java 2012-03-16 10:08:35 UTC (rev 366)
+++ trunk/echobase-entities/src/main/java/fr/ifremer/echobase/EchoBaseDecoratorProvider.java 2012-03-16 11:57:15 UTC (rev 367)
@@ -210,7 +210,7 @@
registerJXPathDecorator(locale, SizeCategory.class, "${name}$s");
// Species decorator
- registerJXPathDecorator(locale, Species.class, "${genusSpecies}$s");
+ registerJXPathDecorator(locale, Species.class, "${genusSpecies}$s (${baracoudaCode}$s)");
// SpeciesCategory decorator
registerJXPathDecorator(locale, SpeciesCategory.class, "${species/genusSpecies}$s - (size:: ${sizeCategoryName}$s) - (age: ${ageCategoryLabel}$s) - (sex: ${sexCategoryLabel}$s)");
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 2012-03-16 10:08:35 UTC (rev 366)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/DbEditorService.java 2012-03-16 11:57:15 UTC (rev 367)
@@ -33,7 +33,6 @@
import fr.ifremer.echobase.entities.meta.ColumnMeta;
import fr.ifremer.echobase.entities.meta.DbMeta;
import fr.ifremer.echobase.entities.meta.TableMeta;
-import fr.ifremer.echobase.services.csv.CsvModelUtil;
import fr.ifremer.echobase.services.csv.EntityCsvModel;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
@@ -50,6 +49,7 @@
import org.nuiton.util.csv.ExportableColumn;
import org.nuiton.util.csv.ImportExportModel;
import org.nuiton.util.csv.ImportableColumn;
+import org.nuiton.util.decorator.Decorator;
import org.nuiton.util.decorator.JXPathDecorator;
import org.nuiton.web.struts2.FilterPagerUtil;
@@ -107,7 +107,7 @@
Map<?, ?>[] rows = new Map[entities.size()];
- ImportExportModel<TopiaEntity> model = buildForLoad(meta, "id", true);
+ ExportModel<TopiaEntity> model = buildForLoad(meta, "id", true);
int i = 0;
for (Object o : entities) {
@@ -543,9 +543,9 @@
return model;
}
- protected <E extends TopiaEntity> ImportExportModel<E> buildForLoad(TableMeta meta,
- String idName,
- boolean addDecorated) {
+ protected <E extends TopiaEntity> ExportModel<E> buildForLoad(TableMeta meta,
+ String idName,
+ boolean addDecorated) {
EntityCsvModel<E> model = EntityCsvModel.newModel(
getConfiguration().getCsvSeparator(),
@@ -566,13 +566,16 @@
if (addDecorated) {
// translate foreign key to his decorated value
- model.newColumnForExport(
+ Decorator<TopiaEntity> decorator =
+ getDecoratorService().getDecorator(getLocale(), entityType, null);
+ model.addDecoratedForeignKeyForExport(
propertyName + "_lib",
propertyName,
- CsvModelUtil.newForeignKeyDecoratedValue(
- entityType,
- getDecoratorService(),
- getLocale())
+ decorator
+// CsvModelUtil.newForeignKeyDecoratedValue(
+// entityType,
+// getDecoratorService(),
+// getLocale())
);
}
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ExportService.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ExportService.java 2012-03-16 10:08:35 UTC (rev 366)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/ExportService.java 2012-03-16 11:57:15 UTC (rev 367)
@@ -36,6 +36,7 @@
import org.nuiton.util.TimeLog;
import org.nuiton.util.csv.Export;
import org.nuiton.util.csv.ExportModel;
+import org.nuiton.util.decorator.Decorator;
import java.io.File;
import java.util.List;
@@ -62,21 +63,46 @@
return model;
}
- public <E extends TopiaEntity> ExportModel<E> buildForExport(TableMeta meta) {
+ public <E extends TopiaEntity> ExportModel<E> buildForExport(TableMeta meta, boolean asSeen) {
- EntityCsvModel<E> model = EntityCsvModel.newModel(
- getConfiguration().getCsvSeparator(),
- meta,
- TopiaEntity.TOPIA_ID
- );
+ EntityCsvModel<E> model;
+ if (asSeen) {
+
+ // no need to have topiaId as first column
+ model = EntityCsvModel.newModel(
+ getConfiguration().getCsvSeparator(),
+ meta
+ );
+ } else {
+
+ // normla export add topiaId column
+ model = EntityCsvModel.newModel(
+ getConfiguration().getCsvSeparator(),
+ meta,
+ TopiaEntity.TOPIA_ID
+ );
+ }
+
+ DecoratorService service = getService(DecoratorService.class);
+
for (ColumnMeta columnMeta : meta) {
String propertyName = columnMeta.getName();
Class<?> type = columnMeta.getType();
if (columnMeta.isFK()) {
Class<TopiaEntity> entityType = (Class<TopiaEntity>) type;
- model.addForeignKeyForExport(propertyName, entityType);
+ if (asSeen) {
+
+ // export decorated foreign key value
+ Decorator<TopiaEntity> decorator =
+ service.getDecorator(getLocale(), entityType, null);
+ model.addDecoratedForeignKeyForExport(propertyName, propertyName, decorator);
+ } else {
+
+ // export foreign key value as his topiaId
+ model.addForeignKeyForExport(propertyName, entityType);
+ }
} else {
model.addDefaultColumn(propertyName, type);
}
@@ -84,9 +110,9 @@
return model;
}
- public String exportDatas(TableMeta tableMeta) {
+ public String exportDatas(TableMeta tableMeta, boolean asSeen) {
- Export<TopiaEntity> export = prepareExport(tableMeta);
+ Export<TopiaEntity> export = prepareExport(tableMeta, asSeen);
try {
return export.toString(Charsets.UTF_8);
@@ -101,7 +127,7 @@
log.info("Export table " + tableMeta + " to " + file);
}
long s1 = TimeLog.getTime();
- Export<TopiaEntity> export = prepareExport(tableMeta);
+ Export<TopiaEntity> export = prepareExport(tableMeta, false);
TIME_LOG.log(s1, "exportDatas::prepareExport");
long s2 = TimeLog.getTime();
try {
@@ -130,11 +156,11 @@
TIME_LOG.log(s2, "exportDatas::exportToFile");
}
- protected Export<TopiaEntity> prepareExport(TableMeta tableMeta) {
+ protected Export<TopiaEntity> prepareExport(TableMeta tableMeta, boolean asSeen) {
DbEditorService service = getService(DbEditorService.class);
List<TopiaEntity> datas = service.getEntities(tableMeta, null, null, null, null);
- ExportModel<TopiaEntity> model = buildForExport(tableMeta);
+ ExportModel<TopiaEntity> model = buildForExport(tableMeta, asSeen);
return Export.newExport(model, datas);
}
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/CsvModelUtil.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/CsvModelUtil.java 2012-03-16 10:08:35 UTC (rev 366)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/CsvModelUtil.java 2012-03-16 11:57:15 UTC (rev 367)
@@ -32,7 +32,6 @@
import fr.ifremer.echobase.entities.data.ResultImpl;
import fr.ifremer.echobase.entities.data.Voyage;
import fr.ifremer.echobase.entities.references.DataMetadata;
-import fr.ifremer.echobase.services.DecoratorService;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.nuiton.topia.TopiaException;
@@ -60,7 +59,6 @@
import java.util.Collection;
import java.util.Date;
import java.util.List;
-import java.util.Locale;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@@ -95,11 +93,6 @@
return new ForeignKeyValueForAssociation<E>(type, propertyName, universe);
}
- public static <E extends TopiaEntity> ForeignKeyDecoratedValue<E> newForeignKeyDecoratedValue(Class<E> entityType,
- DecoratorService decoratorService, Locale locale) {
- return new ForeignKeyDecoratedValue<E>(entityType, decoratorService, locale);
- }
-
public static <E extends TopiaEntity> ValueFormatter<Collection<E>> newAssociationValueFormatter() {
return new AssociationValueParserFormatter<E>(null, null);
}
@@ -280,32 +273,7 @@
}
}
- public static class ForeignKeyDecoratedValue<E extends TopiaEntity> implements ValueFormatter<E> {
- protected final Class<E> entityType;
-
- protected final DecoratorService decoratorService;
-
- protected final Locale locale;
-
- public ForeignKeyDecoratedValue(Class<E> entityType, DecoratorService decoratorService, Locale locale) {
- this.entityType = entityType;
- this.decoratorService = decoratorService;
- this.locale = locale;
-
- }
-
- @Override
- public String format(E e) {
- String value = "";
- if (e != null) {
-
- value = decoratorService.decorate(locale, e, null);
- }
- return value;
- }
- }
-
protected CsvModelUtil() {
// avoid instanciation on helper class
}
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/EntityCsvModel.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/EntityCsvModel.java 2012-03-16 10:08:35 UTC (rev 366)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/EntityCsvModel.java 2012-03-16 11:57:15 UTC (rev 367)
@@ -28,6 +28,8 @@
import fr.ifremer.echobase.EchoBaseFunctions;
import fr.ifremer.echobase.entities.meta.TableMeta;
import org.nuiton.topia.persistence.TopiaEntity;
+import org.nuiton.util.csv.ValueFormatter;
+import org.nuiton.util.decorator.Decorator;
import java.util.Collection;
import java.util.Collections;
@@ -77,6 +79,11 @@
);
}
+ public <T> void addDecoratedForeignKeyForExport(String headerName, String propertyName, Decorator<T> decorator) {
+ modelBuilder.newColumnForExport(headerName, propertyName,
+ new ForeignKeyDecoratedValue<T>(decorator));
+ }
+
public <E extends TopiaEntity> void addForeignKeyForImport(String headerName,
String propertyName,
Class<E> entityType,
@@ -211,19 +218,24 @@
}
}
-// public ImportableColumn<E, String> newMandatoryColumn(String headerName,
-// String propertyName) {
-// return modelBuilder.newMandatoryColumn(headerName, propertyName);
-// }
-//
-// public ImportableColumn<E, String> newMandatoryColumn(String headerName) {
-// return modelBuilder.newMandatoryColumn(headerName, headerName);
-// }
-//
-// public <T> ImportableColumn<E, T> newMandatoryColumn(String headerName, String propertyName, ValueParser<T> valueParser) {
-// return modelBuilder.newMandatoryColumn(headerName, valueParser, CsvModelUtil.<E, T>newBeanProperty(propertyName));
-// }
+ public static class ForeignKeyDecoratedValue<E> implements ValueFormatter<E> {
+ protected final Decorator<E> decorator;
+
+ public ForeignKeyDecoratedValue(Decorator<E> decorator) {
+ this.decorator = decorator;
+ }
+
+ @Override
+ public String format(E e) {
+ String value = "";
+ if (e != null) {
+ value = decorator.toString(e);
+ }
+ return value;
+ }
+ }
+
protected EntityCsvModel(char separator,
TableMeta tableMeta) {
super(separator);
Modified: trunk/echobase-services/src/main/resources/i18n/echobase-services_en_GB.properties
===================================================================
--- trunk/echobase-services/src/main/resources/i18n/echobase-services_en_GB.properties 2012-03-16 10:08:35 UTC (rev 366)
+++ trunk/echobase-services/src/main/resources/i18n/echobase-services_en_GB.properties 2012-03-16 11:57:15 UTC (rev 367)
@@ -35,6 +35,7 @@
echobase.common.transitFile=
echobase.common.voyageFile=
echobase.importError.can.only.import.one.voyage.atime=
+echobase.importError.dataMetadata.notFound=
echobase.importError.duplicate.sample=
echobase.importError.esduCell.notfound=
echobase.importError.fromFile=
Modified: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/dbeditor/ExportTable.java
===================================================================
--- trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/dbeditor/ExportTable.java 2012-03-16 10:08:35 UTC (rev 366)
+++ trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/dbeditor/ExportTable.java 2012-03-16 11:57:15 UTC (rev 367)
@@ -61,6 +61,9 @@
/** Type of the file to export. */
protected String contentType;
+ /** Export datas as seen on screen (no topiaId). */
+ protected boolean exportAsSeen;
+
public void setEntityType(EchoBaseEntityEnum entityType) {
this.entityType = entityType;
}
@@ -69,6 +72,10 @@
this.exportFileName = exportFileName;
}
+ public void setExportAsSeen(boolean exportAsSeen) {
+ this.exportAsSeen = exportAsSeen;
+ }
+
public InputStream getInputStream() {
return inputStream;
}
@@ -91,7 +98,7 @@
ExportService exportService = newService(ExportService.class);
TableMeta table = serviceContext.getDbMeta().getTable(entityType);
- String content = exportService.exportDatas(table);
+ String content = exportService.exportDatas(table, exportAsSeen);
if (log.isDebugEnabled()) {
log.debug("file to export " + content);
Modified: trunk/echobase-ui/src/main/resources/i18n/echobase-ui_en_GB.properties
===================================================================
--- trunk/echobase-ui/src/main/resources/i18n/echobase-ui_en_GB.properties 2012-03-16 10:08:35 UTC (rev 366)
+++ trunk/echobase-ui/src/main/resources/i18n/echobase-ui_en_GB.properties 2012-03-16 11:57:15 UTC (rev 367)
@@ -46,6 +46,7 @@
echobase.info.user.delete=
echobase.info.user.update=
echobase.information.mission.created=
+echobase.label.exportAsSeen=Export as seen on screen
echobase.legend.dbeditor.show=Visualisation de '%s'
echobase.legend.importData.result.resume=Résultat
echobase.legend.libreOfficeQuery=Requète "libre office"
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 2012-03-16 10:08:35 UTC (rev 366)
+++ trunk/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties 2012-03-16 11:57:15 UTC (rev 367)
@@ -167,6 +167,7 @@
echobase.label.createIfNotFound=Créer les entités non trouvées en base
echobase.label.embeddedApplicationFileName=Nom de l'archive à télécharger
echobase.label.embeddedWarFileName=Nom du war à utiliser
+echobase.label.exportAsSeen=Exporter "comme à l'écran"
echobase.label.exportDbFileName=Nom du fichier d'export
echobase.label.exportFileName=Nom du fichier d'export
echobase.label.import.accoustique=Fichier accoustique
Modified: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/dbeditor/dbeditor.jsp
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/dbeditor/dbeditor.jsp 2012-03-16 10:08:35 UTC (rev 366)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/dbeditor/dbeditor.jsp 2012-03-16 11:57:15 UTC (rev 367)
@@ -225,6 +225,8 @@
<s:textfield key="exportFileName" required="true" size="100"
label="%{getText('echobase.label.exportFileName')}"/>
+ <s:checkbox key='exportAsSeen' value='false'
+ label='%{getText("echobase.label.exportAsSeen")}'/>
<br/>
<s:submit key="echobase.action.exportTable" action="doExport"
align="right"/>
1
0
r366 - in trunk/echobase-services/src: main/java/fr/ifremer/echobase/services/csv main/java/fr/ifremer/echobase/services/importdata main/resources/i18n test/java/fr/ifremer/echobase/services/importdata test/resources test/resources/import-data
by tchemit@users.forge.codelutin.com 16 Mar '12
by tchemit@users.forge.codelutin.com 16 Mar '12
16 Mar '12
Author: tchemit
Date: 2012-03-16 11:08:35 +0100 (Fri, 16 Mar 2012)
New Revision: 366
Url: http://forge.codelutin.com/repositories/revision/echobase/366
Log:
les imports de r?\195?\169sultas continuent...
Added:
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesCategoryImportModel.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesCategoryImportModelRow.java
Removed:
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesImportModel.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesImportModelRow.java
Modified:
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/AbstractImportDataService.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/AcousticDataImportService.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/CatchesDataImportService.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/ResultsImportService.java
trunk/echobase-services/src/main/resources/i18n/echobase-services_fr_FR.properties
trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/ResultsEsduImportServiceIT.java
trunk/echobase-services/src/test/resources/import-data/echobase-0.3-catches-and-acoustic-and-voyage-result.h2.db.gz
trunk/echobase-services/src/test/resources/import-data/echobase-0.3-catches-and-acoustic.h2.db.gz
trunk/echobase-services/src/test/resources/log4j.properties
Copied: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesCategoryImportModel.java (from rev 362, trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesImportModel.java)
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesCategoryImportModel.java (rev 0)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesCategoryImportModel.java 2012-03-16 10:08:35 UTC (rev 366)
@@ -0,0 +1,101 @@
+/*
+ * #%L
+ * EchoBase :: Services
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 - 2012 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.csv;
+
+import com.google.common.collect.Lists;
+import fr.ifremer.echobase.entities.data.CellDAO;
+import fr.ifremer.echobase.entities.data.Echotype;
+import fr.ifremer.echobase.entities.data.Result;
+import fr.ifremer.echobase.entities.data.Voyage;
+import fr.ifremer.echobase.entities.references.AgeCategory;
+import fr.ifremer.echobase.entities.references.DataMetadata;
+import fr.ifremer.echobase.entities.references.SizeCategory;
+import fr.ifremer.echobase.entities.references.Species;
+import org.nuiton.util.csv.ImportRuntimeException;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Model to import {@link Result} for esdu cell and echotypes.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 0.3
+ */
+public class AcousticResultByEchotypeAndSpeciesCategoryImportModel extends CsvModelUtil.AbstractImportModel<AcousticResultByEchotypeAndSpeciesCategoryImportModelRow> {
+
+ public static List<DataMetadata> getMetas(Map<String, DataMetadata> dataMetadataMap,
+ String... headers) {
+
+ List<String> metadataNames = Lists.newArrayList(headers);
+ metadataNames.remove(AcousticResultByEchotypeImportModelRow.PROPERTY_ECHOTYPE);
+ metadataNames.remove("name");
+
+ List<DataMetadata> result = Lists.newArrayList();
+
+ for (String header : headers) {
+
+ DataMetadata dataMetadata = dataMetadataMap.get(header);
+ if (dataMetadata == null) {
+ throw new ImportRuntimeException(
+ "Could not find dataMetadata with name [" + header + "]");
+ }
+ result.add(dataMetadata);
+ }
+ return result;
+ }
+
+ public AcousticResultByEchotypeAndSpeciesCategoryImportModel(
+ char separator,
+ Map<String, Echotype> echotypeMap,
+ Map<String, Species> speciesMap,
+ Map<String, SizeCategory> sizeCategoryMap,
+ Map<String, AgeCategory> ageCategoryMap,
+ Voyage voyage,
+ CellDAO cellDAO,
+ List<DataMetadata> dataMetadatas) {
+ super(separator);
+
+ newForeignKeyColumn(AcousticResultByEchotypeAndSpeciesCategoryImportModelRow.PROPERTY_ECHOTYPE, Echotype.class, Echotype.PROPERTY_NAME, echotypeMap);
+ newForeignKeyColumn(AcousticResultByEchotypeAndSpeciesCategoryImportModelRow.PROPERTY_SPECIES, Species.class, Species.PROPERTY_BARACOUDA_CODE, speciesMap);
+ newForeignKeyColumn(AcousticResultByEchotypeAndSpeciesCategoryImportModelRow.PROPERTY_LENGTH, SizeCategory.class, SizeCategory.PROPERTY_NAME, sizeCategoryMap);
+ newForeignKeyColumn(AcousticResultByEchotypeAndSpeciesCategoryImportModelRow.PROPERTY_AGE, AgeCategory.class, AgeCategory.PROPERTY_NAME, ageCategoryMap);
+ newMandatoryColumn("name", AcousticResultByEchotypeAndSpeciesCategoryImportModelRow.PROPERTY_CELL, CsvModelUtil.newCellValueParser(voyage, cellDAO));
+
+
+ for (DataMetadata metadata : dataMetadatas) {
+ String name = metadata.getName();
+ newMandatoryColumn(
+ name,
+ CsvModelUtil.newResultValueParser(metadata),
+ CsvModelUtil.<AcousticResultByEchotypeAndSpeciesCategoryImportModelRow>newResultValueSetter());
+ }
+ }
+
+ @Override
+ public AcousticResultByEchotypeAndSpeciesCategoryImportModelRow newEmptyInstance() {
+ return new AcousticResultByEchotypeAndSpeciesCategoryImportModelRow();
+ }
+
+}
\ No newline at end of file
Property changes on: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesCategoryImportModel.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Copied: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesCategoryImportModelRow.java (from rev 362, trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesImportModelRow.java)
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesCategoryImportModelRow.java (rev 0)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesCategoryImportModelRow.java 2012-03-16 10:08:35 UTC (rev 366)
@@ -0,0 +1,74 @@
+/*
+ * #%L
+ * EchoBase :: Services
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 - 2012 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.csv;
+
+import fr.ifremer.echobase.entities.references.AgeCategory;
+import fr.ifremer.echobase.entities.references.SizeCategory;
+import fr.ifremer.echobase.entities.references.Species;
+
+/**
+ * Bean used as a row for import of
+ * {@link AcousticResultByEchotypeAndSpeciesCategoryImportModel}.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 0.3
+ */
+public class AcousticResultByEchotypeAndSpeciesCategoryImportModelRow extends AcousticResultByEchotypeImportModelRow {
+
+ public static final String PROPERTY_SPECIES = "species";
+
+ public static final String PROPERTY_LENGTH = "length";
+
+ public static final String PROPERTY_AGE = "age";
+
+ protected Species species;
+
+ private SizeCategory length;
+
+ private AgeCategory age;
+
+ public Species getSpecies() {
+ return species;
+ }
+
+ public void setSpecies(Species species) {
+ this.species = species;
+ }
+
+ public SizeCategory getLength() {
+ return length;
+ }
+
+ public void setLength(SizeCategory length) {
+ this.length = length;
+ }
+
+ public AgeCategory getAge() {
+ return age;
+ }
+
+ public void setAge(AgeCategory age) {
+ this.age = age;
+ }
+}
Property changes on: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesCategoryImportModelRow.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Deleted: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesImportModel.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesImportModel.java 2012-03-16 10:07:43 UTC (rev 365)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesImportModel.java 2012-03-16 10:08:35 UTC (rev 366)
@@ -1,95 +0,0 @@
-/*
- * #%L
- * EchoBase :: Services
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2011 - 2012 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.csv;
-
-import com.google.common.collect.Lists;
-import fr.ifremer.echobase.entities.data.CellDAO;
-import fr.ifremer.echobase.entities.data.Echotype;
-import fr.ifremer.echobase.entities.data.Result;
-import fr.ifremer.echobase.entities.data.Voyage;
-import fr.ifremer.echobase.entities.references.DataMetadata;
-import fr.ifremer.echobase.entities.references.Species;
-import org.nuiton.util.csv.ImportRuntimeException;
-
-import java.util.List;
-import java.util.Map;
-
-/**
- * Model to import {@link Result} for esdu cell and echotypes.
- *
- * @author tchemit <chemit(a)codelutin.com>
- * @since 0.3
- */
-public class AcousticResultByEchotypeAndSpeciesImportModel extends CsvModelUtil.AbstractImportModel<AcousticResultByEchotypeAndSpeciesImportModelRow> {
-
- public static List<DataMetadata> getMetas(Map<String, DataMetadata> dataMetadataMap,
- String... headers) {
-
- List<String> metadataNames = Lists.newArrayList(headers);
- metadataNames.remove(AcousticResultByEchotypeImportModelRow.PROPERTY_ECHOTYPE);
- metadataNames.remove("name");
-
- List<DataMetadata> result = Lists.newArrayList();
-
- for (String header : headers) {
-
- DataMetadata dataMetadata = dataMetadataMap.get(header);
- if (dataMetadata == null) {
- throw new ImportRuntimeException(
- "Could not find dataMetadata with name [" + header + "]");
- }
- result.add(dataMetadata);
- }
- return result;
- }
-
- public AcousticResultByEchotypeAndSpeciesImportModel(
- char separator,
- Map<String, Echotype> echotypeMap,
- Map<String, Species> speciesMap,
- Voyage voyage,
- CellDAO cellDAO,
- List<DataMetadata> dataMetadatas) {
- super(separator);
-
- newForeignKeyColumn(AcousticResultByEchotypeAndSpeciesImportModelRow.PROPERTY_ECHOTYPE, Echotype.class, Echotype.PROPERTY_NAME, echotypeMap);
- newForeignKeyColumn(AcousticResultByEchotypeAndSpeciesImportModelRow.PROPERTY_SPECIES, Species.class, Species.PROPERTY_BARACOUDA_CODE, speciesMap);
- newMandatoryColumn("name", AcousticResultByEchotypeAndSpeciesImportModelRow.PROPERTY_CELL, CsvModelUtil.newCellValueParser(voyage, cellDAO));
-
-
- for (DataMetadata metadata : dataMetadatas) {
- String name = metadata.getName();
- newMandatoryColumn(
- name,
- CsvModelUtil.newResultValueParser(metadata),
- CsvModelUtil.<AcousticResultByEchotypeAndSpeciesImportModelRow>newResultValueSetter());
- }
- }
-
- @Override
- public AcousticResultByEchotypeAndSpeciesImportModelRow newEmptyInstance() {
- return new AcousticResultByEchotypeAndSpeciesImportModelRow();
- }
-
-}
\ No newline at end of file
Deleted: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesImportModelRow.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesImportModelRow.java 2012-03-16 10:07:43 UTC (rev 365)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeAndSpeciesImportModelRow.java 2012-03-16 10:08:35 UTC (rev 366)
@@ -1,48 +0,0 @@
-/*
- * #%L
- * EchoBase :: Services
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2011 - 2012 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.csv;
-
-import fr.ifremer.echobase.entities.references.Species;
-
-/**
- * Bean used as a row for import of {@link AcousticResultByEchotypeAndSpeciesImportModel}.
- *
- * @author tchemit <chemit(a)codelutin.com>
- * @since 0.3
- */
-public class AcousticResultByEchotypeAndSpeciesImportModelRow extends AcousticResultByEchotypeImportModelRow {
-
- public static final String PROPERTY_SPECIES = "species";
-
- protected Species species;
-
- public Species getSpecies() {
- return species;
- }
-
- public void setSpecies(Species species) {
- this.species = species;
- }
-
-}
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/AbstractImportDataService.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/AbstractImportDataService.java 2012-03-16 10:07:43 UTC (rev 365)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/AbstractImportDataService.java 2012-03-16 10:08:35 UTC (rev 366)
@@ -34,8 +34,7 @@
import fr.ifremer.echobase.entities.data.Category;
import fr.ifremer.echobase.entities.data.CategoryDAO;
import fr.ifremer.echobase.entities.data.Echotype;
-import fr.ifremer.echobase.entities.references.ProcessedAge;
-import fr.ifremer.echobase.entities.references.ProcessedLength;
+import fr.ifremer.echobase.entities.references.AgeCategory;
import fr.ifremer.echobase.entities.references.SexCategory;
import fr.ifremer.echobase.entities.references.SizeCategory;
import fr.ifremer.echobase.entities.references.Species;
@@ -210,10 +209,13 @@
protected SpeciesCategory getSpeciesCategory(SpeciesCategoryDAO speciesCategoryDAO,
Species species,
SizeCategory sizeCategory,
- SexCategory sexCategory) {
+ AgeCategory ageCategory,
+ SexCategory sexCategory,
+ CsvFileImportResult importResult) {
SpeciesCategory category = findByProperties(
speciesCategoryDAO,
SpeciesCategory.PROPERTY_SPECIES, species,
+ SpeciesCategory.PROPERTY_AGE_CATEGORY, ageCategory,
SpeciesCategory.PROPERTY_SIZE_CATEGORY, sizeCategory,
SpeciesCategory.PROPERTY_SEX_CATEGORY, sexCategory
);
@@ -226,32 +228,43 @@
category.setSpecies(species);
category.setSizeCategory(sizeCategory);
category.setSexCategory(sexCategory);
+ importResult.incrementsNumberCreated(EchoBaseEntityEnum.SpeciesCategory);
}
return category;
}
- protected Category getResultCategory(CategoryDAO speciesCategoryDAO,
+ protected Category getResultCategory(CategoryDAO categoryDAO,
+ SpeciesCategoryDAO speciesCategoryDAO,
Echotype echotype,
Species species,
- ProcessedLength processedLength,
- ProcessedAge processedAge) {
+ SizeCategory sizeCategory,
+ AgeCategory ageCategory,
+ CsvFileImportResult importResult) {
+
+ // get species categorie first
+
+ SpeciesCategory speciesCategory = getSpeciesCategory(
+ speciesCategoryDAO,
+ species,
+ sizeCategory,
+ ageCategory,
+ null,
+ importResult);
+
Category category = findByProperties(
- speciesCategoryDAO,
+ categoryDAO,
Category.PROPERTY_ECHOTYPE, echotype,
- Category.PROPERTY_SPECIES, species,
- Category.PROPERTY_PROCESSED_LENGTH, processedLength,
- Category.PROPERTY_PROCESSED_AGE, processedAge
+ Category.PROPERTY_SPECIES_CATEGORY, speciesCategory
);
if (category == null) {
// create it
- category = create(speciesCategoryDAO);
+ category = create(categoryDAO);
category.setEchotype(echotype);
- category.setSpecies(species);
- category.setProcessedLength(processedLength);
- category.setProcessedAge(processedAge);
+ category.setSpeciesCategory(speciesCategory);
+ importResult.incrementsNumberCreated(EchoBaseEntityEnum.Category);
}
return category;
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/AcousticDataImportService.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/AcousticDataImportService.java 2012-03-16 10:07:43 UTC (rev 365)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/AcousticDataImportService.java 2012-03-16 10:08:35 UTC (rev 366)
@@ -187,6 +187,7 @@
Reader reader = getInputFileReader(inputFile);
Locale locale = getLocale();
+ String dataProcessingId = null;
try {
Import<AcousticDataImportModelRow> importer =
EchoBaseImport.newImport(csvModel, reader);
@@ -199,6 +200,13 @@
rowNumber++;
+ if (dataProcessingId==null) {
+
+ // compute once for all the common dataprocessing id used
+ // for hole the movies file
+ dataProcessingId = row.getEiLayer()+ configuration.getProcessingTemplate();
+ }
+
Date startDate = row.getCellDateStart();
// get transect to use
@@ -288,6 +296,7 @@
// create data processing
dataProcessing = createDataProcessing(
configuration,
+ dataProcessingId,
softwareVersion,
soundSpeedCalculations,
row,
@@ -521,6 +530,7 @@
}
private DataProcessing createDataProcessing(AcousticDataImportConfiguration configuration,
+ String id,
String softwareVersion,
String soundSpeedCalculations,
AcousticDataImportModelRow row,
@@ -536,12 +546,10 @@
String acousticDensityUnit = configuration.getAcousticDensityUnit();
String notes = configuration.getNotes();
- String processingId = row.getEiLayer() + processingTemplate;
-
DataProcessing dataProcessing = create(dataProcessingDAO);
// fill from manual configuration
- dataProcessing.setId(processingId);
+ dataProcessing.setId(id);
dataProcessing.setProcessingTemplate(processingTemplate);
dataProcessing.setProcessingDescription(processingDescription);
dataProcessing.setSounderConstant(sounderConstant);
@@ -568,9 +576,9 @@
row.getTransceiverAcquisitionGain();
Float transceiverAcquisitionSacorrection =
row.getTransceiverAcquisitionSacorrection();
-// Float eIThreshold = row.getEiThreshold();
+ int eIThreshold = row.getMaxEIthr();
-// dataProcessing.setEiThreshold(eIThreshold);
+ dataProcessing.setEiThreshold(eIThreshold);
dataProcessing.setTransceiverProcessingSacorrection(transceiverAcquisitionSacorrection);
dataProcessing.setTransceiverProcessingAbsorption(transceiverAcquisitionAbsorption);
dataProcessing.setTransceiverProcessingGain(transceiverAcquisitionGain);
@@ -578,7 +586,6 @@
dataProcessing.setTransducerProcessingBeamAngleAthwartship(transducerAcquisitionBeamAngleAthwartship);
dataProcessing.setTransducerProcessingBeamAngleAlongship(transducerAcquisitionBeamAngleAlongship);
-
return dataProcessing;
}
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/CatchesDataImportService.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/CatchesDataImportService.java 2012-03-16 10:07:43 UTC (rev 365)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/CatchesDataImportService.java 2012-03-16 10:08:35 UTC (rev 366)
@@ -203,7 +203,9 @@
speciesCategoryDAO,
species,
sizeCategory,
- null
+ null,
+ null,
+ importResult
);
SampleType sampleType;
@@ -360,7 +362,9 @@
speciesCategoryDAO,
species,
sizeCategory,
- sexCategory
+ null,
+ sexCategory,
+ importResult
);
// find the sample with this category
@@ -470,7 +474,9 @@
speciesCategoryDAO,
species,
null,
- null
+ null,
+ null,
+ importResult
);
sample.setSpeciesCategory(category);
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/ResultsImportService.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/ResultsImportService.java 2012-03-16 10:07:43 UTC (rev 365)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/ResultsImportService.java 2012-03-16 10:08:35 UTC (rev 366)
@@ -42,6 +42,7 @@
import fr.ifremer.echobase.entities.data.LengthWeightKeyDAO;
import fr.ifremer.echobase.entities.data.Result;
import fr.ifremer.echobase.entities.data.Voyage;
+import fr.ifremer.echobase.entities.references.AgeCategory;
import fr.ifremer.echobase.entities.references.DataMetadata;
import fr.ifremer.echobase.entities.references.DepthStratum;
import fr.ifremer.echobase.entities.references.SizeCategory;
@@ -52,8 +53,8 @@
import fr.ifremer.echobase.services.ImportException;
import fr.ifremer.echobase.services.configurations.ResultsImportConfiguration;
import fr.ifremer.echobase.services.configurations.ResultsImportMode;
-import fr.ifremer.echobase.services.csv.AcousticResultByEchotypeAndSpeciesImportModel;
-import fr.ifremer.echobase.services.csv.AcousticResultByEchotypeAndSpeciesImportModelRow;
+import fr.ifremer.echobase.services.csv.AcousticResultByEchotypeAndSpeciesCategoryImportModel;
+import fr.ifremer.echobase.services.csv.AcousticResultByEchotypeAndSpeciesCategoryImportModelRow;
import fr.ifremer.echobase.services.csv.AcousticResultByEchotypeImportModel;
import fr.ifremer.echobase.services.csv.AcousticResultByEchotypeImportModelRow;
import fr.ifremer.echobase.services.csv.CsvFileImportResult;
@@ -338,8 +339,11 @@
// find speciesCategory
SpeciesCategory speciesCategory = getSpeciesCategory(
speciesCategoryDAO,
- species, sizeCategory,
- null
+ species,
+ sizeCategory,
+ null,
+ null,
+ importResult
);
lengthWeightKey.setSpeciesCategory(speciesCategory);
@@ -517,7 +521,7 @@
Map<String, Echotype> echotypeMap = Maps.uniqueIndex(
voyage.getEchotype(),
EchoBaseFunctions.ECHOTYPE_NAME);
-
+
List<DataMetadata> metas =
AcousticResultByEchotypeImportModel.getMetas(
getLocale(), dataMetadataMap, header);
@@ -532,6 +536,8 @@
metas);
CategoryDAO categoryDAO = (CategoryDAO) getDAO(Category.class);
+ SpeciesCategoryDAO speciesCategoryDAO =
+ getDAO(SpeciesCategory.class, SpeciesCategoryDAO.class);
Reader reader = getInputFileReader(inputFile);
try {
@@ -543,10 +549,12 @@
Cell cell = row.getCell();
Category category = getResultCategory(categoryDAO,
+ speciesCategoryDAO,
row.getEchotype(),
null,
null,
- null);
+ null,
+ importResult);
List<Result> results = row.getResult();
@@ -602,15 +610,27 @@
Species.class,
EchoBaseFunctions.SPECIES_BARACOUDA_CODE);
+ Map<String, SizeCategory> sizeCategoryMap = getEntitiesMap(
+ SizeCategory.class,
+ EchoBaseFunctions.SIZE_CATEGORY_NAME);
+
+ Map<String, AgeCategory> ageCategoryMap = getEntitiesMap(
+ AgeCategory.class,
+ EchoBaseFunctions.AGE_CATEGORY_NAME);
List<DataMetadata> metas =
AcousticResultByEchotypeImportModel.getMetas(getLocale(), dataMetadataMap, header);
CellDAO cellDAO = (CellDAO) getDAO(Cell.class);
- AcousticResultByEchotypeAndSpeciesImportModel csvModel = new AcousticResultByEchotypeAndSpeciesImportModel(
+ SpeciesCategoryDAO speciesCategoryDAO =
+ getDAO(SpeciesCategory.class, SpeciesCategoryDAO.class);
+
+ AcousticResultByEchotypeAndSpeciesCategoryImportModel csvModel = new AcousticResultByEchotypeAndSpeciesCategoryImportModel(
serviceContext.getConfiguration().getCsvSeparator(),
echotypeMap,
speciesMap,
+ sizeCategoryMap,
+ ageCategoryMap,
voyage,
cellDAO,
metas);
@@ -619,18 +639,20 @@
Reader reader = getInputFileReader(inputFile);
try {
- EchoBaseImport<AcousticResultByEchotypeAndSpeciesImportModelRow> importer =
+ EchoBaseImport<AcousticResultByEchotypeAndSpeciesCategoryImportModelRow> importer =
EchoBaseImport.newImport(csvModel, reader);
- for (AcousticResultByEchotypeAndSpeciesImportModelRow row : importer) {
+ for (AcousticResultByEchotypeAndSpeciesCategoryImportModelRow row : importer) {
Cell cell = row.getCell();
Category category = getResultCategory(categoryDAO,
+ speciesCategoryDAO,
row.getEchotype(),
row.getSpecies(),
- null,
- null);
+ row.getLength(),
+ row.getAge(),
+ importResult);
List<Result> results = row.getResult();
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 2012-03-16 10:07:43 UTC (rev 365)
+++ trunk/echobase-services/src/main/resources/i18n/echobase-services_fr_FR.properties 2012-03-16 10:08:35 UTC (rev 366)
@@ -10,7 +10,6 @@
echobase.common.commonDataImportMode.all=Import Voyage / Transit / Transects
echobase.common.commonDataImportMode.transect=Import Transects
echobase.common.echotypeFile=Fichier echotype
-echobase.importError.dataMetadata.notFound=Une colonne de Metadata nommée %s non trouvée (valeurs existantes : %s)
echobase.common.gearMetadataFile=Fichier Méta-données d'engin
echobase.common.importDataMode.accousticData=Import des données accoustiques
echobase.common.importDataMode.catchesData=Import des données de pêche
@@ -35,6 +34,7 @@
echobase.common.transitFile=Fichier des transits
echobase.common.voyageFile=Fichier des voyages
echobase.importError.can.only.import.one.voyage.atime=Vous ne pouvez pas importer plus d'un voyage à la fois.
+echobase.importError.dataMetadata.notFound=Une colonne de Metadata nommée %s non trouvée (valeurs existantes \: %s)
echobase.importError.duplicate.sample=L'opération %s ne peut pas contenir deux échantillons de même type %s, espèce %s et taille %s
echobase.importError.esduCell.notfound=Un nouveau dataAquisition pour la campagne %s, navire %s, instrument %s doit être crée mais il reste des cellules élémentaires non rattachées à une cellule ESDU (ligne %s)
echobase.importError.fromFile=Erreur lors de l'import du fichier %s \: %s
Modified: trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/ResultsEsduImportServiceIT.java
===================================================================
--- trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/ResultsEsduImportServiceIT.java 2012-03-16 10:07:43 UTC (rev 365)
+++ trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/ResultsEsduImportServiceIT.java 2012-03-16 10:08:35 UTC (rev 366)
@@ -100,7 +100,7 @@
conf.setResultLabel("resultLabel");
conf.setVoyageId(getVoyageId());
- conf.setImportMode(ResultsImportMode.ACOUSTIC_BY_ECHOTYPE);
+ conf.setImportMode(ResultsImportMode.ACOUSTIC_BY_ECHOTYPE_AND_SPECIES);
prepareInputFile(conf.getAcousticByEchotypeFile(),
getImportPath("acousticResultByEchotypeAndSpecies.csv"));
Modified: trunk/echobase-services/src/test/resources/import-data/echobase-0.3-catches-and-acoustic-and-voyage-result.h2.db.gz
===================================================================
(Binary files differ)
Modified: trunk/echobase-services/src/test/resources/import-data/echobase-0.3-catches-and-acoustic.h2.db.gz
===================================================================
(Binary files differ)
Modified: trunk/echobase-services/src/test/resources/log4j.properties
===================================================================
--- trunk/echobase-services/src/test/resources/log4j.properties 2012-03-16 10:07:43 UTC (rev 365)
+++ trunk/echobase-services/src/test/resources/log4j.properties 2012-03-16 10:08:35 UTC (rev 366)
@@ -30,4 +30,4 @@
# package level
log4j.logger.fr.ifremer.echobase=INFO
-#log4j.logger.fr.ifremer.echobase.services.importdata.AcousticDataImportService=DEBUG
+log4j.logger.fr.ifremer.echobase.services.importdata.AcousticDataImportService=DEBUG
1
0
r365 - in trunk/echobase-entities/src/main: java/fr/ifremer/echobase java/fr/ifremer/echobase/entities java/fr/ifremer/echobase/entities/data xmi
by tchemit@users.forge.codelutin.com 16 Mar '12
by tchemit@users.forge.codelutin.com 16 Mar '12
16 Mar '12
Author: tchemit
Date: 2012-03-16 11:07:43 +0100 (Fri, 16 Mar 2012)
New Revision: 365
Url: http://forge.codelutin.com/repositories/revision/echobase/365
Log:
remaniement de l'entit?\195?\169 Category + ajout type text sur Exportquery.sqlQuery
Added:
trunk/echobase-entities/src/main/java/fr/ifremer/echobase/entities/data/CategoryImpl.java
Modified:
trunk/echobase-entities/src/main/java/fr/ifremer/echobase/EchoBaseDecoratorProvider.java
trunk/echobase-entities/src/main/java/fr/ifremer/echobase/EchoBaseFunctions.java
trunk/echobase-entities/src/main/java/fr/ifremer/echobase/entities/EntitiesUtil.java
trunk/echobase-entities/src/main/xmi/echobase.properties
trunk/echobase-entities/src/main/xmi/echobase.zargo
Modified: trunk/echobase-entities/src/main/java/fr/ifremer/echobase/EchoBaseDecoratorProvider.java
===================================================================
--- trunk/echobase-entities/src/main/java/fr/ifremer/echobase/EchoBaseDecoratorProvider.java 2012-03-16 10:02:28 UTC (rev 364)
+++ trunk/echobase-entities/src/main/java/fr/ifremer/echobase/EchoBaseDecoratorProvider.java 2012-03-16 10:07:43 UTC (rev 365)
@@ -67,8 +67,6 @@
import fr.ifremer.echobase.entities.references.Mission;
import fr.ifremer.echobase.entities.references.OperationEvent;
import fr.ifremer.echobase.entities.references.OperationMetadata;
-import fr.ifremer.echobase.entities.references.ProcessedAge;
-import fr.ifremer.echobase.entities.references.ProcessedLength;
import fr.ifremer.echobase.entities.references.ReferenceDatum;
import fr.ifremer.echobase.entities.references.ReferenceDatumType;
import fr.ifremer.echobase.entities.references.ReferencingMethod;
@@ -116,7 +114,7 @@
registerJXPathDecorator(locale, Calibration.class, "${date}$s - acquisition ${aquisitionMethod}$s");
// Category decorator
- registerJXPathDecorator(locale, Category.class, "${classCode}$s ${categoryValue}$s");
+ registerJXPathDecorator(locale, Category.class, "${echotype/name}$s - (species: ${speciesLabel}$s) - (age: ${processedAgeLabel}$s) - (lenght: ${processedLengthLabel}$s)");
// CategoryMeaning decorator
registerJXPathDecorator(locale, CategoryMeaning.class, "${name}$s");
@@ -190,14 +188,6 @@
// OperationMetadata decorator
registerJXPathDecorator(locale, OperationMetadata.class, "${name}$s");
- //TODO
- // ProcessedAge decorator
- registerJXPathDecorator(locale, ProcessedAge.class, "${}$s");
-
- //TODO
- // ProcessedLength decorator
- registerJXPathDecorator(locale, ProcessedLength.class, "${}$s");
-
// ReferenceDatum decorator
registerJXPathDecorator(locale, ReferenceDatum.class, "${id}$s");
@@ -251,9 +241,8 @@
// DataAcquisition decorator
registerJXPathDecorator(locale, DataAcquisition.class, "");
- //TODO
// DataProcessing decorator
- registerJXPathDecorator(locale, DataProcessing.class, "");
+ registerJXPathDecorator(locale, DataProcessing.class, "${id} ");
// Operation decorator
registerJXPathDecorator(locale, Operation.class, "${startDate}$td/%1$tm/%1$tY - ${endDate}$td/%2$tm/%2$tY");
Modified: trunk/echobase-entities/src/main/java/fr/ifremer/echobase/EchoBaseFunctions.java
===================================================================
--- trunk/echobase-entities/src/main/java/fr/ifremer/echobase/EchoBaseFunctions.java 2012-03-16 10:02:28 UTC (rev 364)
+++ trunk/echobase-entities/src/main/java/fr/ifremer/echobase/EchoBaseFunctions.java 2012-03-16 10:07:43 UTC (rev 365)
@@ -30,6 +30,7 @@
import fr.ifremer.echobase.entities.data.Transect;
import fr.ifremer.echobase.entities.data.Voyage;
import fr.ifremer.echobase.entities.references.AcousticInstrument;
+import fr.ifremer.echobase.entities.references.AgeCategory;
import fr.ifremer.echobase.entities.references.AreaOfOperation;
import fr.ifremer.echobase.entities.references.CellMethod;
import fr.ifremer.echobase.entities.references.CellType;
@@ -55,7 +56,6 @@
import fr.ifremer.echobase.entities.references.VesselType;
import org.nuiton.topia.persistence.TopiaEntity;
-import javax.annotation.Nullable;
import java.io.File;
import java.util.Map;
@@ -208,6 +208,7 @@
return String.valueOf(input.getName());
}
};
+
public static final Function<OperationEvent, String> OPERATION_EVENT_NAME = new Function<OperationEvent, String>() {
@Override
public String apply(OperationEvent input) {
@@ -295,6 +296,13 @@
}
};
+ public static final Function<AgeCategory, String> AGE_CATEGORY_NAME = new Function<AgeCategory, String>() {
+ @Override
+ public String apply(AgeCategory input) {
+ return input.getName();
+ }
+ };
+
public static String getSpeciesCategoryKey(Species species, SizeCategory sizeCategory, SexCategory sexCategory) {
String key = species.getBaracoudaCode();
if (sizeCategory != null) {
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 2012-03-16 10:02:28 UTC (rev 364)
+++ trunk/echobase-entities/src/main/java/fr/ifremer/echobase/entities/EntitiesUtil.java 2012-03-16 10:07:43 UTC (rev 365)
@@ -150,8 +150,6 @@
result.add(EchoBaseEntityEnum.Gear);
result.add(EchoBaseEntityEnum.DataProtocol);
result.add(EchoBaseEntityEnum.SpeciesCategory);
- result.add(EchoBaseEntityEnum.ProcessedAge);
- result.add(EchoBaseEntityEnum.ProcessedLength);
return result.toArray(new EchoBaseEntityEnum[result.size()]);
}
@@ -187,8 +185,6 @@
result.add(EchoBaseEntityEnum.MeasureType);
result.add(EchoBaseEntityEnum.MeasurementMetadata);
result.add(EchoBaseEntityEnum.ReferencingMethod);
- result.add(EchoBaseEntityEnum.ProcessedAge);
- result.add(EchoBaseEntityEnum.ProcessedLength);
// with deps
result.add(EchoBaseEntityEnum.Strata);
Added: trunk/echobase-entities/src/main/java/fr/ifremer/echobase/entities/data/CategoryImpl.java
===================================================================
--- trunk/echobase-entities/src/main/java/fr/ifremer/echobase/entities/data/CategoryImpl.java (rev 0)
+++ trunk/echobase-entities/src/main/java/fr/ifremer/echobase/entities/data/CategoryImpl.java 2012-03-16 10:07:43 UTC (rev 365)
@@ -0,0 +1,48 @@
+/*
+ * #%L
+ * EchoBase :: Entities
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 - 2012 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.entities.data;
+
+public class CategoryImpl extends CategoryAbstract {
+
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ public String getSpeciesLabel() {
+ return speciesCategory == null ? "" :
+ speciesCategory.getSpecies().getBaracoudaCode();
+ }
+
+ @Override
+ public String getProcessedAgeLabel() {
+ return speciesCategory == null ? "" :
+ speciesCategory.getAgeCategoryName();
+ }
+
+ @Override
+ public String getProcessedLengthLabel() {
+ return speciesCategory == null ? "" :
+ speciesCategory.getSizeCategoryName();
+ }
+
+} //CategoryImpl
Property changes on: trunk/echobase-entities/src/main/java/fr/ifremer/echobase/entities/data/CategoryImpl.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Modified: trunk/echobase-entities/src/main/xmi/echobase.properties
===================================================================
--- trunk/echobase-entities/src/main/xmi/echobase.properties 2012-03-16 10:02:28 UTC (rev 364)
+++ trunk/echobase-entities/src/main/xmi/echobase.properties 2012-03-16 10:07:43 UTC (rev 365)
@@ -42,4 +42,5 @@
# big text zone
fr.ifremer.echobase.entities.EntityModificationLog.attribute.modificationText.tagvalue.type=text
+fr.ifremer.echobase.entities.ExportQuery.attribute.sqlQuery.tagvalue.type=text
Modified: trunk/echobase-entities/src/main/xmi/echobase.zargo
===================================================================
(Binary files differ)
1
0
Author: tchemit
Date: 2012-03-16 11:02:28 +0100 (Fri, 16 Mar 2012)
New Revision: 364
Url: http://forge.codelutin.com/repositories/revision/echobase/364
Log:
reunion CR
Added:
trunk/src/doc/reunions/reunion-2012-03-15.txt
Modified:
trunk/src/doc/reunions/reunion-2012-03-06.txt
Modified: trunk/src/doc/reunions/reunion-2012-03-06.txt
===================================================================
--- trunk/src/doc/reunions/reunion-2012-03-06.txt 2012-03-16 08:08:32 UTC (rev 363)
+++ trunk/src/doc/reunions/reunion-2012-03-06.txt 2012-03-16 10:02:28 UTC (rev 364)
@@ -163,8 +163,24 @@
import résultat esdu / echotype
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Format d'import dynamique une partie fixe et une partie correspondant
+Input :
+- Voyage
+- champ text ResultLabel qu'on mettre dans le résultat.
+
+Format d'import dynamique une partie fixe et une partie correspondant.
+
+La partie fix est un id cellule :
+ - une date pour cellule ESDU
+ - une date_xx pour cellule Elementaire
+ - id echotype
+
+Le reste des colonnes correspond à DataMetadata#name (et leur contenu est
+Data#dataValue).
+
+Il faut donc faire une première passe pour valider les colonne et construire le
+modèle d'import.
+
Mettre en place la table Category (fonctionnement semblable à celui de speciesCategory) avec remplissage au fil des import
Category :
@@ -174,7 +190,6 @@
-processedLength (nouvelle table de reference)
-processedAge (nouvelle table de reference)
-
Action
------
Added: trunk/src/doc/reunions/reunion-2012-03-15.txt
===================================================================
--- trunk/src/doc/reunions/reunion-2012-03-15.txt (rev 0)
+++ trunk/src/doc/reunions/reunion-2012-03-15.txt 2012-03-16 10:02:28 UTC (rev 364)
@@ -0,0 +1,141 @@
+projet echobase
+---------------
+
+Jeudi 15 mars 2012 (Ifremer)
+
+Présents : Mathieu et Tony
+
+Planning
+--------
+
+- import nouvelles données
+- valider les imports déjà réalisés
+- valider le référentiel définitif
+
+Import nouvelles données
+------------------------
+
+Mettre l'action Créer une mission au dessus de la sélection de type d'import.
+
+DbEditor
+--------
+
+Ajouter une case à cocher pour pouvoir exporter la table
+sélectionnée telquel apparait à l'écran (sans topiaId).
+
+Import Acoustic data
+====================
+
+Valider le dataProcessingName car le dataAcquisition peut changer
+(si on change d'instrument) donc le processing ne devrait-il pas aussi changer ?
+
+Non on conserve le même id pour tous les dataProcessings du fichier.
+
+Attention les nouvelles DataMetadata ne sont pas complêtes (il manque de Datatype,
+CellMethod et autres).
+
+Mathieu modifiera le référentiel plus tard, ça n'a pas d'impact sur les imports.
+
+Attention! la nouvelle data MOVIES_EILayer\cellset\thresholdup (maxEIthr)
+remplace (dataProcessing.eIThreshold).
+
+Ok sur une ligne de création on ajouter aussi cette donnée dans dataProcessing.eIThreshold.
+
+Pour le nom d'une cellule élementaire, il existe déjà une données pour obtenir
+le numéro de la cellule : (MOVIES_EILayer\cellset\cellnum : AX.
+
+Oui on se base toujours sur cette valeur.
+
+Mathieu va m'envoyer le nouveau fichier des données 2011 qui sera compatible
+avec les résultats à importer.
+
+Envoyer à mathieu la liste des colonnes utilisées dans le fichier movies
+
+Remplacer dans les données historiques les cellules élémentaires en xxF par xxB
+
+Import résultats
+================
+
+import résultat esdu / echotype
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Attention, il me faut les valeurs des nouveaux référentiels
+(processedLength, processedAge).
+
+Ne plus tenir compte vu qu'on supprime ces deux tables qui font doublon avec
+SizeCategory et AgeCategory.
+
+Problème car on utilise Echotype.name (non unique) au lieu de Echotype.id à
+moins de filtrer sur les échotype du voyage ?
+
+Oui on peut rester sur les names vu qu'on travaille uniquement au niveau
+de la campagne.
+
+import résultat esdu /echotype / catégorie espèce
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+idem que l'import précédent mais avec :
+
+- une recherche de catégorie d'espèce (création si nécessaire)
+- une recher de catégorie (echotype-catégorie d'espèce)
+
+On supprime les 2 tables processedAge - processedLength
+On remplace dans category le lien vers un lien sur SpeciesCategory.
+
+import region
+~~~~~~~~~~~~~
+
+3 fichiers :
+
+- le fichier de définition des régions
+- le fichier d'association esdu région (un esdu sera dans deux regions une de surface et une de fond)
+- le fichier de résultats suit la même logique que les import de résultats esdu.
+
+import carte
+~~~~~~~~~~~~
+
+2 fichiers :
+
+- fichier de définition des cellules
+- fichier de résultats suit la même logique que les import de résultats esdu.
+
+Suppression des résultats
+-------------------------
+
+On part sur l'idée d'ajouter un id d'import en haut des grappes que
+l'on utilise ensuite.
+
++ une table de résultat d'import pour conserver plus finement les import
+effectués.
+
+--> Cette fonctionnalité ne sera pas effectuée dans ce présent contrat car
+assez couteuse et non prévue.
+
+base embarquéee
+---------------
+
+Ajouter les clef naturels si possible
+
+Vérifier que les requetes sont bien repliquées
+
+modifier le data dir + url de connexion au runtime (en remplaçant le . par le chemin complet)
+
+Ecrire un guide de survie pour comment lancer ça sous windows.
+
+Action
+------
+
+- Tony :
+
+- prendre en compte les retours vu dans la réunion
+- finir import de résultats
+- revoir Aurélie
+- finir base embarquée
+
+- Mathieu
+- envoyer fichiers d'import movies + resultats.
+- envoyer les fichiers i18n.
+
+Prochaine réunion :
+
+ - Jeudi 22/03/2012 à 14h30 (Ifremer)
\ No newline at end of file
Property changes on: trunk/src/doc/reunions/reunion-2012-03-15.txt
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
1
0
r363 - trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData
by tchemit@users.forge.codelutin.com 16 Mar '12
by tchemit@users.forge.codelutin.com 16 Mar '12
16 Mar '12
Author: tchemit
Date: 2012-03-16 09:08:32 +0100 (Fri, 16 Mar 2012)
New Revision: 363
Url: http://forge.codelutin.com/repositories/revision/echobase/363
Log:
Change create mission buton place
Modified:
trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/selectImportType.jsp
Modified: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/selectImportType.jsp
===================================================================
--- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/selectImportType.jsp 2012-03-15 11:37:29 UTC (rev 362)
+++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/importData/selectImportType.jsp 2012-03-16 08:08:32 UTC (rev 363)
@@ -30,8 +30,9 @@
function updateMode(newValue) {
// change the action target
- $('#selectImportType_configure').attr('name',
- 'action:configure-' + newValue + '!input');
+ $('#selectImportType_configure').attr(
+ 'name',
+ 'action:configure-' + newValue + '!input');
}
jQuery(document).ready(function () {
@@ -45,6 +46,8 @@
<s:form namespace="/importData" method="GET">
+ <s:submit action="createMission" key='echobase.action.createNewMission'
+ method="input"/>
<fieldset>
<legend>
<s:text name="echobase.legend.importData.configuration.selectImportType"/>
@@ -52,19 +55,8 @@
<s:radio key='mode' list="modes" cssClass="cleanBoth"
label='%{getText("echobase.common.importDataMode")}'
required="true" template="myradiomap"/>
-
</fieldset>
- <ul class="toolbar floatRight">
- <li>
- <s:submit action="createMission" key='echobase.action.createNewMission'
- method="input" theme="simple"/>
- </li>
- <li>
- <s:submit action="selectImportType" key='echobase.action.configureImport'
- theme="simple"/>
- </li>
- </ul>
-
-
+ <s:submit action="selectImportType" key='echobase.action.configureImport'
+ align="right"/>
</s:form>
\ No newline at end of file
1
0
r362 - in trunk/echobase-services/src: main/java/fr/ifremer/echobase/services/csv main/java/fr/ifremer/echobase/services/importdata main/resources/i18n test/java/fr/ifremer/echobase/services/importdata test/resources/import-data
by tchemit@users.forge.codelutin.com 15 Mar '12
by tchemit@users.forge.codelutin.com 15 Mar '12
15 Mar '12
Author: tchemit
Date: 2012-03-15 12:37:29 +0100 (Thu, 15 Mar 2012)
New Revision: 362
Url: http://forge.codelutin.com/repositories/revision/echobase/362
Log:
continue result imports + add more import test dbs
Added:
trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/ResultsEsduImportServiceIT.java
trunk/echobase-services/src/test/resources/import-data/echobase-0.3-catches-and-acoustic-and-voyage-result.h2.db.gz
trunk/echobase-services/src/test/resources/import-data/echobase-0.3-catches-and-acoustic.h2.db.gz
trunk/echobase-services/src/test/resources/import-data/echobase-0.3-catches.h2.db.gz
Modified:
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeImportModel.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/CsvModelUtil.java
trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/ResultsImportService.java
trunk/echobase-services/src/main/resources/i18n/echobase-services_fr_FR.properties
trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/AbstractImportDataServiceIT.java
trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/AcousticDataImportServiceIT.java
trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/ResultsImportServiceIT.java
trunk/echobase-services/src/test/resources/import-data/echobase-0.3-commonData-result.h2.db.gz
trunk/echobase-services/src/test/resources/import-data/echobase-0.3-nodata.h2.db.gz
trunk/echobase-services/src/test/resources/import-data/echobase-0.3-operation-result.h2.db.gz
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeImportModel.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeImportModel.java 2012-03-15 10:41:06 UTC (rev 361)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/AcousticResultByEchotypeImportModel.java 2012-03-15 11:37:29 UTC (rev 362)
@@ -32,8 +32,13 @@
import org.nuiton.util.csv.ImportRuntimeException;
import java.util.List;
+import java.util.Locale;
import java.util.Map;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import static org.nuiton.i18n.I18n.l_;
+
/**
* Model to import {@link Result} for esdu cell and echotypes.
*
@@ -42,21 +47,32 @@
*/
public class AcousticResultByEchotypeImportModel extends CsvModelUtil.AbstractImportModel<AcousticResultByEchotypeImportModelRow> {
- public static List<DataMetadata> getMetas(Map<String, DataMetadata> dataMetadataMap,
+ public static final Pattern REMOVE_DOUBLE_QUOTES_PATTERN = Pattern.compile("\"(.+)\"");
+
+ public static List<DataMetadata> getMetas(Locale locale,
+ Map<String, DataMetadata> dataMetadataMap,
String... headers) {
List<String> metadataNames = Lists.newArrayList(headers);
metadataNames.remove(AcousticResultByEchotypeImportModelRow.PROPERTY_ECHOTYPE);
+ metadataNames.remove("\"" + AcousticResultByEchotypeImportModelRow.PROPERTY_ECHOTYPE + "\"");
metadataNames.remove("name");
+ metadataNames.remove("\"name\"");
List<DataMetadata> result = Lists.newArrayList();
- for (String header : headers) {
+ for (String metadataName : metadataNames) {
- DataMetadata dataMetadata = dataMetadataMap.get(header);
+ Matcher matcher = REMOVE_DOUBLE_QUOTES_PATTERN.matcher(metadataName);
+ if (matcher.matches()) {
+ metadataName = matcher.group(1);
+ }
+ DataMetadata dataMetadata = dataMetadataMap.get(metadataName);
if (dataMetadata == null) {
throw new ImportRuntimeException(
- "Could not find dataMetadata with name [" + header + "]");
+ l_(locale, "echobase.importError.dataMetadata.notFound",
+ metadataName,
+ dataMetadataMap.keySet()));
}
result.add(dataMetadata);
}
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/CsvModelUtil.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/CsvModelUtil.java 2012-03-15 10:41:06 UTC (rev 361)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/csv/CsvModelUtil.java 2012-03-15 11:37:29 UTC (rev 362)
@@ -541,7 +541,7 @@
private final Voyage voyage;
- private final Pattern ID_PATTERN = Pattern.compile("(.+)[_(.+)]");
+ private final Pattern ID_PATTERN = Pattern.compile("(.[^_]+)(_(.+)){0,1}");
private final CellDAO cellDAO;
@@ -560,7 +560,7 @@
// must find it
Matcher matcher = ID_PATTERN.matcher(value);
- if (!matcher.find()) {
+ if (!matcher.matches()) {
throw new ImportRuntimeException(
"Can not match cell id pattern with value " + value);
}
@@ -574,15 +574,15 @@
"Can not found esdu cell [" + esduCellId + "]");
}
- if (matcher.groupCount() == 1) {
+ String elementaryCellId = matcher.group(3);
+ if (elementaryCellId == null) {
+
//using a simple esdu cell
result = esduCell;
} else {
// using a elementary cell
- String elementaryCellId = matcher.group(2);
-
result = esduCell.getChildByName(elementaryCellId);
if (result == null) {
throw new ImportRuntimeException(
Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/ResultsImportService.java
===================================================================
--- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/ResultsImportService.java 2012-03-15 10:41:06 UTC (rev 361)
+++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/importdata/ResultsImportService.java 2012-03-15 11:37:29 UTC (rev 362)
@@ -510,11 +510,17 @@
EchoBaseFunctions.DATA_METADATA_NAME);
- Map<String, Echotype> echotypeMap = getEntitiesMap(
- Echotype.class,
+// Map<String, Echotype> echotypeMap = getEntitiesMap(
+// Echotype.class,
+// EchoBaseFunctions.ECHOTYPE_NAME);
+
+ Map<String, Echotype> echotypeMap = Maps.uniqueIndex(
+ voyage.getEchotype(),
EchoBaseFunctions.ECHOTYPE_NAME);
+
List<DataMetadata> metas =
- AcousticResultByEchotypeImportModel.getMetas(dataMetadataMap, header);
+ AcousticResultByEchotypeImportModel.getMetas(
+ getLocale(), dataMetadataMap, header);
CellDAO cellDAO = (CellDAO) getDAO(Cell.class);
@@ -597,7 +603,7 @@
EchoBaseFunctions.SPECIES_BARACOUDA_CODE);
List<DataMetadata> metas =
- AcousticResultByEchotypeImportModel.getMetas(dataMetadataMap, header);
+ AcousticResultByEchotypeImportModel.getMetas(getLocale(), dataMetadataMap, header);
CellDAO cellDAO = (CellDAO) getDAO(Cell.class);
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 2012-03-15 10:41:06 UTC (rev 361)
+++ trunk/echobase-services/src/main/resources/i18n/echobase-services_fr_FR.properties 2012-03-15 11:37:29 UTC (rev 362)
@@ -10,6 +10,7 @@
echobase.common.commonDataImportMode.all=Import Voyage / Transit / Transects
echobase.common.commonDataImportMode.transect=Import Transects
echobase.common.echotypeFile=Fichier echotype
+echobase.importError.dataMetadata.notFound=Une colonne de Metadata nommée %s non trouvée (valeurs existantes : %s)
echobase.common.gearMetadataFile=Fichier Méta-données d'engin
echobase.common.importDataMode.accousticData=Import des données accoustiques
echobase.common.importDataMode.catchesData=Import des données de pêche
Modified: trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/AbstractImportDataServiceIT.java
===================================================================
--- trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/AbstractImportDataServiceIT.java 2012-03-15 10:41:06 UTC (rev 361)
+++ trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/AbstractImportDataServiceIT.java 2012-03-15 11:37:29 UTC (rev 362)
@@ -27,7 +27,10 @@
import fr.ifremer.echobase.entities.data.Data;
import fr.ifremer.echobase.entities.data.DataAcquisition;
import fr.ifremer.echobase.entities.data.DataProcessing;
+import fr.ifremer.echobase.entities.data.Echotype;
import fr.ifremer.echobase.entities.data.GearMetadataValue;
+import fr.ifremer.echobase.entities.data.LengthAgeKey;
+import fr.ifremer.echobase.entities.data.LengthWeightKey;
import fr.ifremer.echobase.entities.data.Operation;
import fr.ifremer.echobase.entities.data.OperationMetadataValue;
import fr.ifremer.echobase.entities.data.Sample;
@@ -52,6 +55,12 @@
public static final String IMPORT_DATA_ECHOBASE_OPERATION_RESULT = "/import-data/echobase-0.3-operation-result.h2.db.gz";
+ public static final String IMPORT_DATA_ECHOBASE_CATCHES= "/import-data/echobase-0.3-catches.h2.db.gz";
+
+ public static final String IMPORT_DATA_ECHOBASE_CATCHES_AND_ACOUSTIC= "/import-data/echobase-0.3-catches-and-acoustic.h2.db.gz";
+
+ public static final String IMPORT_DATA_ECHOBASE_CATCHES_AND_ACOUSTIC_AND_VOYAGE_RESULT= "/import-data/echobase-0.3-catches-and-acoustic-and-voyage-result.h2.db.gz";
+
public static final String VESSEL_ID = "fr.ifremer.echobase.entities.references.Vessel#1323196672049#0.9790502711645855";
public static final String MISSION_ID = "fr.ifremer.echobase.entities.references.Mission#1323127544274#0.7939481378378231";
@@ -100,6 +109,10 @@
public static final int NB_ECHOTYPE = 8;
+ public static final int NB_ESDU_RESULT_BY_ECHOTYPE = 8;
+
+ public static final int NB_ESDU_RESULT_BY_ECHOTYPE_AND_SPECIES= 8;
+
public void assertImportCommonData() throws TopiaException {
assertNbEntities(Voyage.class, NB_VOYAGE);
assertNbEntities(Transit.class, NB_TRANSIT);
@@ -123,4 +136,11 @@
assertNbEntities(Cell.class, NB_CELL);
assertNbEntities(Data.class, NB_DATA);
}
+
+
+ public void assertImportVoyageResult() throws TopiaException {
+ assertNbEntities(LengthAgeKey.class, NB_LENGTH_AGE_KEY);
+ assertNbEntities(LengthWeightKey.class, NB_LENGTH_WEIGHT_KEY);
+ assertNbEntities(Echotype.class, NB_ECHOTYPE);
+ }
}
Modified: trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/AcousticDataImportServiceIT.java
===================================================================
--- trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/AcousticDataImportServiceIT.java 2012-03-15 10:41:06 UTC (rev 361)
+++ trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/AcousticDataImportServiceIT.java 2012-03-15 11:37:29 UTC (rev 362)
@@ -48,15 +48,13 @@
public class AcousticDataImportServiceIT extends AbstractImportDataServiceIT {
protected FakeEchoBaseServiceContext initContext() {
- return new FakeEchoBaseServiceContext(
- IMPORT_DATA_ECHOBASE_COMMON_DATA_RESULT);
+ return new FakeEchoBaseServiceContext(IMPORT_DATA_ECHOBASE_CATCHES);
}
protected String[] getImportPath(String filename) {
return new String[]{"/import-data", "acousticData", filename};
}
- @Ignore
@Test
public void doImport() throws Exception {
@@ -97,8 +95,8 @@
getService(AcousticDataImportService.class);
// //FIXME : remove this when db will have such data
- service.create(getDAO(DataMetadata.class), DataMetadata.PROPERTY_NAME, "minEIthr");
- service.create(getDAO(DataMetadata.class), DataMetadata.PROPERTY_NAME, "maxEIthr");
+// service.create(getDAO(DataMetadata.class), DataMetadata.PROPERTY_NAME, "minEIthr");
+// service.create(getDAO(DataMetadata.class), DataMetadata.PROPERTY_NAME, "maxEIthr");
// service.create(getDAO(AcousticInstrument.class), AcousticInstrument.PROPERTY_ID, "ES38B");
// service.create(getDAO(AcousticInstrument.class), AcousticInstrument.PROPERTY_ID, "ES70-7C");
// service.create(getDAO(AcousticInstrument.class), AcousticInstrument.PROPERTY_ID, "ES120-7");
Added: trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/ResultsEsduImportServiceIT.java
===================================================================
--- trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/ResultsEsduImportServiceIT.java (rev 0)
+++ trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/ResultsEsduImportServiceIT.java 2012-03-15 11:37:29 UTC (rev 362)
@@ -0,0 +1,119 @@
+/*
+ * #%L
+ * EchoBase :: Services
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 - 2012 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.importdata;
+
+import fr.ifremer.echobase.entities.data.Data;
+import fr.ifremer.echobase.entities.data.LengthAgeKey;
+import fr.ifremer.echobase.entities.data.Result;
+import fr.ifremer.echobase.services.FakeEchoBaseServiceContext;
+import fr.ifremer.echobase.services.configurations.ResultsImportConfiguration;
+import fr.ifremer.echobase.services.configurations.ResultsImportMode;
+import fr.ifremer.echobase.services.csv.CsvFileImportResult;
+import org.junit.Assert;
+import org.junit.Ignore;
+import org.junit.Test;
+
+import java.util.List;
+
+/**
+ * Test import of esdu results.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 0.3
+ */
+public class ResultsEsduImportServiceIT extends AbstractImportDataServiceIT {
+
+ protected FakeEchoBaseServiceContext initContext() {
+ return new FakeEchoBaseServiceContext(
+ IMPORT_DATA_ECHOBASE_CATCHES_AND_ACOUSTIC_AND_VOYAGE_RESULT);
+ }
+
+ protected String[] getImportPath(String filename) {
+ return new String[]{"/import-data", "result", filename};
+ }
+
+ @Test
+ public void doImportEsduResultByEchotype() throws Exception {
+
+ assertImportCommonData();
+ assertImportOperations();
+ assertImportAcousticDatas();
+ assertImportVoyageResult();
+
+ assertNoEntities(Result.class);
+
+ ResultsImportConfiguration conf =
+ new ResultsImportConfiguration(getLocale());
+
+ conf.setResultLabel("resultLabel");
+ conf.setVoyageId(getVoyageId());
+ conf.setImportMode(ResultsImportMode.ACOUSTIC_BY_ECHOTYPE);
+
+ prepareInputFile(conf.getAcousticByEchotypeFile(),
+ getImportPath("acousticResultByEchotype.csv"));
+
+ ResultsImportService service =
+ getService(ResultsImportService.class);
+
+ List<CsvFileImportResult> result =
+ service.doImport(conf, createFakeUser());
+
+ Assert.assertNotNull(result);
+ Assert.assertEquals(1, result.size());
+ assertCsvImportResult(result.get(0), Result.class, NB_ESDU_RESULT_BY_ECHOTYPE);
+ }
+
+ @Ignore
+ @Test
+ public void doImportEsduResultByEchotypeAndSpecies() throws Exception {
+
+ assertImportCommonData();
+ assertImportOperations();
+ assertImportAcousticDatas();
+ assertImportVoyageResult();
+
+ assertNoEntities(Result.class);
+
+ ResultsImportConfiguration conf =
+ new ResultsImportConfiguration(getLocale());
+
+ conf.setResultLabel("resultLabel");
+ conf.setVoyageId(getVoyageId());
+ conf.setImportMode(ResultsImportMode.ACOUSTIC_BY_ECHOTYPE);
+
+ prepareInputFile(conf.getAcousticByEchotypeFile(),
+ getImportPath("acousticResultByEchotypeAndSpecies.csv"));
+
+ ResultsImportService service =
+ getService(ResultsImportService.class);
+
+ List<CsvFileImportResult> result =
+ service.doImport(conf, createFakeUser());
+
+ Assert.assertNotNull(result);
+ Assert.assertEquals(1, result.size());
+ assertCsvImportResult(result.get(0), Result.class, NB_ESDU_RESULT_BY_ECHOTYPE_AND_SPECIES);
+ }
+
+}
\ No newline at end of file
Property changes on: trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/ResultsEsduImportServiceIT.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Modified: trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/ResultsImportServiceIT.java
===================================================================
--- trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/ResultsImportServiceIT.java 2012-03-15 10:41:06 UTC (rev 361)
+++ trunk/echobase-services/src/test/java/fr/ifremer/echobase/services/importdata/ResultsImportServiceIT.java 2012-03-15 11:37:29 UTC (rev 362)
@@ -31,6 +31,7 @@
import fr.ifremer.echobase.services.configurations.ResultsImportMode;
import fr.ifremer.echobase.services.csv.CsvFileImportResult;
import org.junit.Assert;
+import org.junit.Ignore;
import org.junit.Test;
import java.util.List;
@@ -45,7 +46,7 @@
protected FakeEchoBaseServiceContext initContext() {
return new FakeEchoBaseServiceContext(
- IMPORT_DATA_ECHOBASE_COMMON_DATA_RESULT);
+ IMPORT_DATA_ECHOBASE_CATCHES_AND_ACOUSTIC);
}
protected String[] getImportPath(String filename) {
@@ -53,6 +54,44 @@
}
@Test
+ public void doImportResultByVoyage() throws Exception {
+ assertImportCommonData();
+ assertNoEntities(LengthAgeKey.class);
+ assertNoEntities(LengthWeightKey.class);
+ assertNoEntities(Echotype.class);
+
+ ResultsImportConfiguration conf =
+ new ResultsImportConfiguration(getLocale());
+
+ conf.setVoyageId(getVoyageId());
+ conf.setImportMode(ResultsImportMode.VOYAGE);
+
+ prepareInputFile(conf.getLengthAgeKeyFile(),
+ getImportPath("lengthAgeKey.csv"));
+ prepareInputFile(conf.getLengthWeightKeyFile(),
+ getImportPath("lengthWeightKey.csv"));
+ prepareInputFile(conf.getEchotypeFile(), getImportPath("echotype.csv"));
+
+
+ ResultsImportService service =
+ getService(ResultsImportService.class);
+
+ List<CsvFileImportResult> result =
+ service.doImport(conf, createFakeUser());
+
+ Assert.assertNotNull(result);
+ Assert.assertEquals(3, result.size());
+ assertCsvImportResult(result.get(0), LengthAgeKey.class,
+ NB_LENGTH_AGE_KEY);
+ assertCsvImportResult(result.get(1), LengthWeightKey.class,
+ NB_LENGTH_WEIGHT_KEY);
+ assertCsvImportResult(result.get(2), Echotype.class,
+ NB_ECHOTYPE);
+
+ }
+
+ @Ignore
+ @Test
public void doImportLengthAgeKey() throws Exception {
assertImportCommonData();
@@ -79,6 +118,7 @@
NB_LENGTH_AGE_KEY);
}
+ @Ignore
@Test
public void doImportLengthWeightKey() throws Exception {
@@ -106,6 +146,7 @@
NB_LENGTH_WEIGHT_KEY);
}
+ @Ignore
@Test
public void doImportEchotype() throws Exception {
Added: trunk/echobase-services/src/test/resources/import-data/echobase-0.3-catches-and-acoustic-and-voyage-result.h2.db.gz
===================================================================
(Binary files differ)
Property changes on: trunk/echobase-services/src/test/resources/import-data/echobase-0.3-catches-and-acoustic-and-voyage-result.h2.db.gz
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/echobase-services/src/test/resources/import-data/echobase-0.3-catches-and-acoustic.h2.db.gz
===================================================================
(Binary files differ)
Property changes on: trunk/echobase-services/src/test/resources/import-data/echobase-0.3-catches-and-acoustic.h2.db.gz
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/echobase-services/src/test/resources/import-data/echobase-0.3-catches.h2.db.gz
===================================================================
(Binary files differ)
Property changes on: trunk/echobase-services/src/test/resources/import-data/echobase-0.3-catches.h2.db.gz
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: svn:keywords
+ Author Date Id Revision HeadURL
Modified: trunk/echobase-services/src/test/resources/import-data/echobase-0.3-commonData-result.h2.db.gz
===================================================================
(Binary files differ)
Modified: trunk/echobase-services/src/test/resources/import-data/echobase-0.3-nodata.h2.db.gz
===================================================================
(Binary files differ)
Modified: trunk/echobase-services/src/test/resources/import-data/echobase-0.3-operation-result.h2.db.gz
===================================================================
(Binary files differ)
1
0
r361 - in trunk/echobase-tools: . src/test/java/fr/ifremer/echobase/tools
by tchemit@users.forge.codelutin.com 15 Mar '12
by tchemit@users.forge.codelutin.com 15 Mar '12
15 Mar '12
Author: tchemit
Date: 2012-03-15 11:41:06 +0100 (Thu, 15 Mar 2012)
New Revision: 361
Url: http://forge.codelutin.com/repositories/revision/echobase/361
Log:
use last version of generated db
Modified:
trunk/echobase-tools/pom.xml
trunk/echobase-tools/src/test/java/fr/ifremer/echobase/tools/TestHelper.java
Modified: trunk/echobase-tools/pom.xml
===================================================================
--- trunk/echobase-tools/pom.xml 2012-03-15 10:40:47 UTC (rev 360)
+++ trunk/echobase-tools/pom.xml 2012-03-15 10:41:06 UTC (rev 361)
@@ -196,14 +196,14 @@
<profile>
<activation>
<file>
- <exists>src/test/private/echobase-2012-03-01</exists>
+ <exists>src/test/private/echobase-2012-03-15</exists>
</file>
</activation>
<id>echobase-csv-inputs</id>
<build>
<testResources>
<testResource>
- <directory>src/test/private/echobase-2012-03-01</directory>
+ <directory>src/test/private/echobase-2012-03-15</directory>
<includes>
<include>**/*.csv</include>
</includes>
Modified: trunk/echobase-tools/src/test/java/fr/ifremer/echobase/tools/TestHelper.java
===================================================================
--- trunk/echobase-tools/src/test/java/fr/ifremer/echobase/tools/TestHelper.java 2012-03-15 10:40:47 UTC (rev 360)
+++ trunk/echobase-tools/src/test/java/fr/ifremer/echobase/tools/TestHelper.java 2012-03-15 10:41:06 UTC (rev 361)
@@ -57,7 +57,7 @@
protected static final long timestamp = System.currentTimeMillis();
/** La version du jeux de données utilisé. */
- public static final String ECHOBASE_CSV_VERSION = "2012-03-01";
+ public static final String ECHOBASE_CSV_VERSION = "2012-03-15";
public static File getBasedir() {
if (basedir == null) {
1
0
r360 - in trunk/echobase-ui/src/main/resources: . config fr/ifremer/echobase/ui/actions/dbeditor fr/ifremer/echobase/ui/actions/exportQuery fr/ifremer/echobase/ui/actions/importData fr/ifremer/echobase/ui/actions/importHistorical fr/ifremer/echobase/ui/actions/user
by tchemit@users.forge.codelutin.com 15 Mar '12
by tchemit@users.forge.codelutin.com 15 Mar '12
15 Mar '12
Author: tchemit
Date: 2012-03-15 11:40:47 +0100 (Thu, 15 Mar 2012)
New Revision: 360
Url: http://forge.codelutin.com/repositories/revision/echobase/360
Log:
use last struts dtd definitions
Modified:
trunk/echobase-ui/src/main/resources/config/struts-dbeditor.xml
trunk/echobase-ui/src/main/resources/config/struts-embeddedApplication.xml
trunk/echobase-ui/src/main/resources/config/struts-exportDb.xml
trunk/echobase-ui/src/main/resources/config/struts-exportQuery.xml
trunk/echobase-ui/src/main/resources/config/struts-importData.xml
trunk/echobase-ui/src/main/resources/config/struts-importDb.xml
trunk/echobase-ui/src/main/resources/config/struts-user.xml
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/dbeditor/ImportTable-doImport-validation.xml
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/exportQuery/ManageExportQuery-clone-validation.xml
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/exportQuery/ManageExportQuery-save-validation.xml
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureAccousticData-validation.xml
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureCatchesData-validation.xml
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureCommonData-ConfigureCommonData-modeAll-validation.xml
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureCommonData-ConfigureCommonData-modeTransect-validation.xml
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureOperation-validation.xml
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeAcousticByEchotype-validation.xml
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeAcousticByEchotypeAndSpecies-validation.xml
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeRegion-validation.xml
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeVoyage-validation.xml
trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/CreateMission-createMission-validation.xml
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/user/LoginAction-login-validation.xml
trunk/echobase-ui/src/main/resources/struts.xml
trunk/echobase-ui/src/main/resources/validators.xml
Modified: trunk/echobase-ui/src/main/resources/config/struts-dbeditor.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/config/struts-dbeditor.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/config/struts-dbeditor.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -24,8 +24,8 @@
-->
<!DOCTYPE struts PUBLIC
- "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
- "http://struts.apache.org/dtds/struts-2.1.7.dtd">
+ "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
+ "http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
Modified: trunk/echobase-ui/src/main/resources/config/struts-embeddedApplication.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/config/struts-embeddedApplication.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/config/struts-embeddedApplication.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -24,8 +24,8 @@
-->
<!DOCTYPE struts PUBLIC
- "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
- "http://struts.apache.org/dtds/struts-2.1.7.dtd">
+ "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
+ "http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
Modified: trunk/echobase-ui/src/main/resources/config/struts-exportDb.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/config/struts-exportDb.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/config/struts-exportDb.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -23,8 +23,8 @@
#L%
-->
<!DOCTYPE struts PUBLIC
- "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
- "http://struts.apache.org/dtds/struts-2.1.7.dtd">
+ "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
+ "http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
Modified: trunk/echobase-ui/src/main/resources/config/struts-exportQuery.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/config/struts-exportQuery.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/config/struts-exportQuery.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -24,8 +24,8 @@
-->
<!DOCTYPE struts PUBLIC
- "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
- "http://struts.apache.org/dtds/struts-2.1.7.dtd">
+ "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
+ "http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
Modified: trunk/echobase-ui/src/main/resources/config/struts-importData.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/config/struts-importData.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/config/struts-importData.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -25,8 +25,8 @@
<!DOCTYPE struts PUBLIC
- "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
- "http://struts.apache.org/dtds/struts-2.1.7.dtd">
+ "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
+ "http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
Modified: trunk/echobase-ui/src/main/resources/config/struts-importDb.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/config/struts-importDb.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/config/struts-importDb.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -23,8 +23,8 @@
#L%
-->
<!DOCTYPE struts PUBLIC
- "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
- "http://struts.apache.org/dtds/struts-2.1.7.dtd">
+ "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
+ "http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
Modified: trunk/echobase-ui/src/main/resources/config/struts-user.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/config/struts-user.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/config/struts-user.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -24,8 +24,8 @@
-->
<!DOCTYPE struts PUBLIC
- "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
- "http://struts.apache.org/dtds/struts-2.1.7.dtd">
+ "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
+ "http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
Modified: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/dbeditor/ImportTable-doImport-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/dbeditor/ImportTable-doImport-validation.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/dbeditor/ImportTable-doImport-validation.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -21,9 +21,8 @@
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">
+<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.3//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
<validators>
<field name="importFile">
Modified: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/exportQuery/ManageExportQuery-clone-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/exportQuery/ManageExportQuery-clone-validation.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/exportQuery/ManageExportQuery-clone-validation.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -21,9 +21,8 @@
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">
+<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.3//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
<validators>
<field name="query.name">
Modified: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/exportQuery/ManageExportQuery-save-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/exportQuery/ManageExportQuery-save-validation.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/exportQuery/ManageExportQuery-save-validation.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -21,9 +21,8 @@
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">
+<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.3//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
<validators>
<field name="query.name">
Modified: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureAccousticData-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureAccousticData-validation.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureAccousticData-validation.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -21,9 +21,8 @@
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">
+<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.3//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
<validators>
<field name="model.voyageId">
Modified: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureCatchesData-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureCatchesData-validation.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureCatchesData-validation.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -21,9 +21,8 @@
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">
+<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.3//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
<validators>
<field name="model.voyageId">
Modified: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureCommonData-ConfigureCommonData-modeAll-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureCommonData-ConfigureCommonData-modeAll-validation.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureCommonData-ConfigureCommonData-modeAll-validation.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -21,9 +21,8 @@
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">
+<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.3//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
<validators>
<field name="model.missionId">
Modified: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureCommonData-ConfigureCommonData-modeTransect-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureCommonData-ConfigureCommonData-modeTransect-validation.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureCommonData-ConfigureCommonData-modeTransect-validation.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -21,9 +21,8 @@
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">
+<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.3//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
<validators>
<field name="model.voyageId">
Modified: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureOperation-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureOperation-validation.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureOperation-validation.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -24,9 +24,8 @@
-->
-<!DOCTYPE validators PUBLIC
- "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
- "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
+<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.3//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
<validators>
Modified: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeAcousticByEchotype-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeAcousticByEchotype-validation.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeAcousticByEchotype-validation.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -21,9 +21,8 @@
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">
+<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.3//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
<validators>
<field name="model.voyageId">
Modified: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeAcousticByEchotypeAndSpecies-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeAcousticByEchotypeAndSpecies-validation.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeAcousticByEchotypeAndSpecies-validation.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -21,9 +21,8 @@
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">
+<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.3//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
<validators>
<field name="model.voyageId">
Modified: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeRegion-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeRegion-validation.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeRegion-validation.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -21,9 +21,8 @@
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">
+<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.3//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
<validators>
<field name="model.voyageId">
Modified: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeVoyage-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeVoyage-validation.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/ConfigureResults-ConfigureResults-modeVoyage-validation.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -21,9 +21,8 @@
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">
+<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.3//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
<validators>
<field name="model.voyageId">
Modified: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/CreateMission-createMission-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/CreateMission-createMission-validation.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importData/CreateMission-createMission-validation.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -24,9 +24,8 @@
-->
-<!DOCTYPE validators PUBLIC
- "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
- "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
+<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.3//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
<validators>
Modified: 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 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/importHistorical/Configure-validation.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -21,9 +21,8 @@
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">
+<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.3//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
<validators>
<field name="input">
Modified: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/user/LoginAction-login-validation.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/user/LoginAction-login-validation.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/user/LoginAction-login-validation.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -21,9 +21,8 @@
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">
+<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.3//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
<validators>
<field name="email">
Modified: trunk/echobase-ui/src/main/resources/struts.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/struts.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/struts.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -25,14 +25,15 @@
<!DOCTYPE struts PUBLIC
- "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
- "http://struts.apache.org/dtds/struts-2.1.7.dtd">
+ "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
+ "http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<bean class="org.nuiton.web.struts2.I18nTextProvider"
name="i18nTextProvider"
type="com.opensymphony.xwork2.TextProvider"/>
+
<constant name="struts.xworkTextProvider" value="i18nTextProvider"/>
<constant name="struts.ognl.allowStaticMethodAccess" value="true"/>
@@ -50,10 +51,6 @@
<package name="default" extends="json-default" abstract="true"
namespace="/">
- <!--result-types>
- <result-type name="json" class="org.apache.struts2.json.JSONResult"/>
- </result-types-->
-
<interceptors>
<!-- to remove parameter from context -->
@@ -82,8 +79,21 @@
</interceptors>
<!-- default action to use everywhere (fix i18n when not translated) -->
- <default-class-ref class="fr.ifremer.echobase.ui.actions.EchoBaseActionSupport"/>
+ <default-class-ref
+ class="fr.ifremer.echobase.ui.actions.EchoBaseActionSupport"/>
+ <!--global-results>
+ <result name="TechinicalException">
+ /WEB-INF/jsp/technicalException.jsp
+ </result>
+ </global-results>
+
+ <global-exception-mappings>
+ <exception-mapping
+ exception="fr.ifremer.echobase.EchoBaseTechnicalException"
+ result="TechinicalException"/>
+ </global-exception-mappings-->
+
</package>
<package name="loggued" extends="default" abstract="true">
@@ -115,7 +125,8 @@
<default-action-ref name="home"/>
<!-- go to home -->
- <action name="home" class="fr.ifremer.echobase.ui.actions.EchoBaseActionSupport">
+ <action name="home"
+ class="fr.ifremer.echobase.ui.actions.EchoBaseActionSupport">
<result>/WEB-INF/jsp/home.jsp</result>
Modified: trunk/echobase-ui/src/main/resources/validators.xml
===================================================================
--- trunk/echobase-ui/src/main/resources/validators.xml 2012-03-15 09:57:06 UTC (rev 359)
+++ trunk/echobase-ui/src/main/resources/validators.xml 2012-03-15 10:40:47 UTC (rev 360)
@@ -23,9 +23,8 @@
#L%
-->
-<!DOCTYPE validators PUBLIC
- "-//OpenSymphony Group//XWork Validator Config 1.0//EN"
- "http://www.opensymphony.com/xwork/xwork-validator-config-1.0.dtd">
+<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator Config 1.0//EN"
+ "http://www.opensymphony.com/xwork/xwork-validator-config-1.0.dtd">
<validators>
<!-- default validators from XWork framework -->
<validator name="int" class="com.opensymphony.xwork2.validator.validators.IntRangeFieldValidator"/>
1
0