branch develop updated (cdde5a7 -> b81ab5b)
This is an automated email from the git hooks/post-receive script. New change to branch develop in repository echobase. See http://git.codelutin.com/echobase.git from cdde5a7 [jgitflow-maven-plugin]Updating develop poms back to pre merge state new 514f408 utilisation d'une classe helper pour chaque entite new 0a55d61 mis en place filtrage des indicateurs a exporter par voyage new 2a33130 utilisation des nouveau helper d'entities new bee7476 pas de calcul de zone au depart new 6309fb7 amelioration code new 7bd2f31 correction javascript new 41a5a73 fix api new b81ab5b fixes #6513 The 8 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit b81ab5bc6f4d48f48e71e24ff92b777377eaef06 Merge: cdde5a7 41a5a73 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Jan 21 18:08:23 2015 +0100 fixes #6513 commit 41a5a73b17fcf48791ac6735f5f403481df7e824 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Jan 21 18:08:04 2015 +0100 fix api commit 7bd2f31d8698c5dd910ca5da416bc44b11678306 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Jan 21 18:05:47 2015 +0100 correction javascript commit 6309fb7481f61a43114a85795385efd8cc0e0252 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Jan 21 18:04:06 2015 +0100 amelioration code commit bee747698d8a1fd8bd9f906ca926ffa0a5b3bc4f Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Jan 21 18:03:47 2015 +0100 pas de calcul de zone au depart commit 2a331301d0436f43c416a9213a1fd7a0432e0363 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Jan 21 17:16:17 2015 +0100 utilisation des nouveau helper d'entities commit 0a55d6167f1ba35fea568974370a0c7521da87b5 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Jan 21 17:16:03 2015 +0100 mis en place filtrage des indicateurs a exporter par voyage commit 514f408b63a8ce30bbd4a34d3576d45de7486adc Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Jan 21 17:15:25 2015 +0100 utilisation d'une classe helper pour chaque entite Summary of changes: .../fr/ifremer/echobase/EchoBaseFunctions.java | 371 --------------------- .../fr/ifremer/echobase/EchoBasePredicates.java | 190 ----------- .../fr/ifremer/echobase/entities/ImportLogs.java | 26 ++ .../fr/ifremer/echobase/entities/data/Cells.java | 68 ++++ .../echobase/entities/data/DataProcessings.java | 18 + .../ifremer/echobase/entities/data/Echotypes.java | 37 ++ .../ifremer/echobase/entities/data/Operations.java | 47 +++ .../fr/ifremer/echobase/entities/data/Results.java | 18 + .../ifremer/echobase/entities/data/Transects.java | 19 ++ .../ifremer/echobase/entities/data/VoyageImpl.java | 8 +- .../fr/ifremer/echobase/entities/data/Voyages.java | 18 + .../entities/references/AcousticInstruments.java | 26 ++ .../entities/references/AgeCategories.java | 18 + .../entities/references/AreaOfOperations.java | 18 + .../echobase/entities/references/CellMethods.java | 18 + .../echobase/entities/references/CellTypes.java | 80 +++++ .../entities/references/DataMetadatas.java | 18 + .../entities/references/DataQualities.java | 25 ++ .../echobase/entities/references/DataTypes.java | 18 + .../entities/references/DepthStratums.java | 18 + .../entities/references/EchotypeCategories.java | 18 + .../entities/references/GearMetadatas.java | 18 + .../echobase/entities/references/Gears.java | 21 ++ .../echobase/entities/references/Missions.java | 18 + .../entities/references/OperationEvents.java | 18 + .../entities/references/OperationMetadatas.java | 18 + .../entities/references/ReferenceDatumTypes.java | 18 + .../entities/references/ReferenceDatums.java | 18 + .../entities/references/SampleDataTypes.java | 25 ++ .../entities/references/SexCategories.java | 18 + .../entities/references/SizeCategories.java | 27 ++ .../echobase/entities/references/Species2.java | 8 + .../entities/references/SpeciesCategories.java | 29 ++ .../echobase/entities/references/Stratas.java | 18 + .../echobase/entities/references/VesselTypes.java | 18 + .../echobase/entities/references/Vessels.java | 18 + .../echobase/services/service/CoserIndicators.java | 32 ++ .../services/service/UserDbPersistenceService.java | 86 ++++- .../service/importdata/AcousticImportService.java | 13 +- .../service/importdata/CatchesImportService.java | 21 +- .../service/importdata/CommonAllImportService.java | 4 +- .../importdata/CommonTransectImportService.java | 7 +- .../importdata/CommonTransitImportService.java | 4 +- .../service/importdata/OperationImportService.java | 19 +- .../importdata/ResultsEsduCellImportService.java | 25 +- .../ResultsMapFishCellImportService.java | 19 +- .../ResultsMapOtherCellImportService.java | 10 +- .../importdata/ResultsRegionCellImportService.java | 31 +- .../importdata/ResultsVoyageImportService.java | 20 +- .../importdata/AbstractImportDataServiceIT.java | 4 +- .../echobase/ui/actions/dbeditor/GetEntities.java | 4 +- .../echobase/ui/actions/exportCoser/Configure.java | 45 +-- .../GetAvailableIndicatorsForMission.java | 78 +++++ .../main/resources/config/struts-exportCoser.xml | 6 + .../webapp/WEB-INF/jsp/exportCoser/configure.jsp | 7 + echobase-ui/src/main/webapp/js/gridHelper.js | 68 +++- 56 files changed, 1186 insertions(+), 684 deletions(-) delete mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/EchoBaseFunctions.java delete mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/EchoBasePredicates.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/ImportLogs.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Cells.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/DataProcessings.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Echotypes.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Operations.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Results.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Transects.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Voyages.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/AcousticInstruments.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/AgeCategories.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/AreaOfOperations.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/CellMethods.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/CellTypes.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/DataMetadatas.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/DataQualities.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/DataTypes.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/DepthStratums.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/EchotypeCategories.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/GearMetadatas.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Gears.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Missions.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/OperationEvents.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/OperationMetadatas.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/ReferenceDatumTypes.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/ReferenceDatums.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SampleDataTypes.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SexCategories.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SizeCategories.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SpeciesCategories.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Stratas.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/VesselTypes.java create mode 100644 echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Vessels.java create mode 100644 echobase-services/src/main/java/fr/ifremer/echobase/services/service/CoserIndicators.java create mode 100644 echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/exportCoser/GetAvailableIndicatorsForMission.java -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository echobase. See http://git.codelutin.com/echobase.git commit 514f408b63a8ce30bbd4a34d3576d45de7486adc Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Jan 21 17:15:25 2015 +0100 utilisation d'une classe helper pour chaque entite --- .../fr/ifremer/echobase/EchoBaseFunctions.java | 371 --------------------- .../fr/ifremer/echobase/EchoBasePredicates.java | 190 ----------- .../fr/ifremer/echobase/entities/ImportLogs.java | 26 ++ .../fr/ifremer/echobase/entities/data/Cells.java | 68 ++++ .../echobase/entities/data/DataProcessings.java | 18 + .../ifremer/echobase/entities/data/Echotypes.java | 37 ++ .../ifremer/echobase/entities/data/Operations.java | 47 +++ .../fr/ifremer/echobase/entities/data/Results.java | 18 + .../ifremer/echobase/entities/data/Transects.java | 19 ++ .../ifremer/echobase/entities/data/VoyageImpl.java | 8 +- .../fr/ifremer/echobase/entities/data/Voyages.java | 18 + .../entities/references/AcousticInstruments.java | 26 ++ .../entities/references/AgeCategories.java | 18 + .../entities/references/AreaOfOperations.java | 18 + .../echobase/entities/references/CellMethods.java | 18 + .../echobase/entities/references/CellTypes.java | 80 +++++ .../entities/references/DataMetadatas.java | 18 + .../entities/references/DataQualities.java | 25 ++ .../echobase/entities/references/DataTypes.java | 18 + .../entities/references/DepthStratums.java | 18 + .../entities/references/EchotypeCategories.java | 18 + .../entities/references/GearMetadatas.java | 18 + .../echobase/entities/references/Gears.java | 21 ++ .../echobase/entities/references/Missions.java | 18 + .../entities/references/OperationEvents.java | 18 + .../entities/references/OperationMetadatas.java | 18 + .../entities/references/ReferenceDatumTypes.java | 18 + .../entities/references/ReferenceDatums.java | 18 + .../entities/references/SampleDataTypes.java | 25 ++ .../entities/references/SexCategories.java | 18 + .../entities/references/SizeCategories.java | 27 ++ .../echobase/entities/references/Species2.java | 8 + .../entities/references/SpeciesCategories.java | 29 ++ .../echobase/entities/references/Stratas.java | 18 + .../echobase/entities/references/VesselTypes.java | 18 + .../echobase/entities/references/Vessels.java | 18 + 36 files changed, 801 insertions(+), 566 deletions(-) diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/EchoBaseFunctions.java b/echobase-domain/src/main/java/fr/ifremer/echobase/EchoBaseFunctions.java deleted file mode 100644 index c0f32b6..0000000 --- a/echobase-domain/src/main/java/fr/ifremer/echobase/EchoBaseFunctions.java +++ /dev/null @@ -1,371 +0,0 @@ -/* - * #%L - * EchoBase :: Domain - * %% - * Copyright (C) 2011 Ifremer, Codelutin - * %% - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - * #L% - */ -package fr.ifremer.echobase; - -import com.google.common.base.Function; -import fr.ifremer.echobase.entities.ImportLog; -import fr.ifremer.echobase.entities.ImportType; -import fr.ifremer.echobase.entities.data.Cell; -import fr.ifremer.echobase.entities.data.DataProcessing; -import fr.ifremer.echobase.entities.data.Echotype; -import fr.ifremer.echobase.entities.data.Operation; -import fr.ifremer.echobase.entities.data.Result; -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; -import fr.ifremer.echobase.entities.references.DataMetadata; -import fr.ifremer.echobase.entities.references.DataQuality; -import fr.ifremer.echobase.entities.references.DataType; -import fr.ifremer.echobase.entities.references.DepthStratum; -import fr.ifremer.echobase.entities.references.EchotypeCategory; -import fr.ifremer.echobase.entities.references.Gear; -import fr.ifremer.echobase.entities.references.GearMetadata; -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.ReferenceDatum; -import fr.ifremer.echobase.entities.references.ReferenceDatumType; -import fr.ifremer.echobase.entities.references.SampleDataType; -import fr.ifremer.echobase.entities.references.SexCategory; -import fr.ifremer.echobase.entities.references.SizeCategory; -import fr.ifremer.echobase.entities.references.Species; -import fr.ifremer.echobase.entities.references.SpeciesCategory; -import fr.ifremer.echobase.entities.references.Strata; -import fr.ifremer.echobase.entities.references.Vessel; -import fr.ifremer.echobase.entities.references.VesselType; - -import java.io.File; -import java.util.Map; - -/** - * Define some usefull function used by application. - * - * @author tchemit <chemit@codelutin.com> - * @see Function - * @since 0.2 - */ -public class EchoBaseFunctions { - - public static final Function<Voyage, String> VOYAGE_NAME = new Function<Voyage, String>() { - @Override - public String apply(Voyage input) { - return input.getName(); - } - }; - - public static final Function<Species, String> SPECIES_BARACOUDA_CODE = new Function<Species, String>() { - @Override - public String apply(Species input) { - return input.getBaracoudaCode(); - } - }; - - public static final Function<Vessel, String> VESSEL_NAME = new Function<Vessel, String>() { - @Override - public String apply(Vessel input) { - return input.getName(); - } - }; - - public static final Function<VesselType, String> VESSEL_TYPE_NAME = new Function<VesselType, String>() { - @Override - public String apply(VesselType input) { - return input.getName(); - } - }; - - public static final Function<AcousticInstrument, String> ACOUSTIC_INSTRUMENT_ID = new Function<AcousticInstrument, String>() { - @Override - public String apply(AcousticInstrument input) { - return input.getId(); - } - }; - - public static final Function<CellType, String> CELL_TYPE_ID = new Function<CellType, String>() { - @Override - public String apply(CellType input) { - return input.getId(); - } - }; - - public static final Function<DepthStratum, String> DEPTH_STRATUM_ID = new Function<DepthStratum, String>() { - @Override - public String apply(DepthStratum input) { - return input.getId(); - } - }; - - public static final Function<EchotypeCategory, String> ECHO_TYPE_CATEGORY_NAME = new Function<EchotypeCategory, String>() { - @Override - public String apply(EchotypeCategory input) { - return input.getName(); - } - }; - - public static final Function<ReferenceDatumType, String> REFERENCE_DATUM_TYPE_NAME = new Function<ReferenceDatumType, String>() { - @Override - public String apply(ReferenceDatumType input) { - return input.getName(); - } - }; - - public static final Function<ReferenceDatum, String> REFERENCE_DATUM_ID = new Function<ReferenceDatum, String>() { - @Override - public String apply(ReferenceDatum input) { - return input.getId(); - } - }; - - public static final Function<Result, Cell> RESULT_CELL = new Function<Result, Cell>() { - @Override - public Cell apply(Result input) { - return input.getCell(); - } - }; - - public static final Function<Mission, String> MISSION_NAME = new Function<Mission, String>() { - @Override - public String apply(Mission input) { - return input.getName(); - } - }; - - public static final Function<AreaOfOperation, String> AREA_OF_OPERATION_NAME = new Function<AreaOfOperation, String>() { - @Override - public String apply(AreaOfOperation input) { - return input.getName(); - } - }; - - public static final Function<DataType, String> DATA_TYPE_NAME = new Function<DataType, String>() { - @Override - public String apply(DataType input) { - return input.getName(); - } - }; - - public static final Function<CellMethod, String> CELL_METHOD_NAME = new Function<CellMethod, String>() { - @Override - public String apply(CellMethod input) { - return input.getName(); - } - }; - - public static final Function<DataProcessing, String> DATA_PROCESSING_ID = new Function<DataProcessing, String>() { - @Override - public String apply(DataProcessing input) { - return input.getId(); - } - }; - - public static final Function<DataQuality, Integer> DATA_QUALITY_ID = new Function<DataQuality, Integer>() { - @Override - public Integer apply(DataQuality input) { - return input.getQualityDataFlagValues(); - } - }; - - public static final Function<File, String> FILE_NAME = new Function<File, String>() { - @Override - public String apply(File input) { - return input.getName(); - } - }; - - public static final Function<SampleDataType, String> SAMPLE_DATA_TYPE_RAPTRI_CODE = new Function<SampleDataType, String>() { - @Override - public String apply(SampleDataType input) { - return String.valueOf(input.getRaptriBiometryDataType()); - } - }; - - public static final Function<SampleDataType, String> SAMPLE_DATA_TYPE_NAME = new Function<SampleDataType, String>() { - @Override - public String apply(SampleDataType input) { - return String.valueOf(input.getName()); - } - }; - - public static final Function<OperationEvent, String> OPERATION_EVENT_NAME = new Function<OperationEvent, String>() { - @Override - public String apply(OperationEvent input) { - return input.getName(); - } - }; - - public static final Function<Gear, String> GEAR_CASINO_GEAR_NAME = new Function<Gear, String>() { - @Override - public String apply(Gear input) { - //FIXME : Remove the dummy test when all gear in db have a casino name - String casinoGearName = input.getCasinoGearName(); -// return StringUtils.isEmpty(casinoGearName) ? input.getName() : casinoGearName; - return casinoGearName; - } - }; - - public static final Function<Operation, String> OPERATION_ID = new Function<Operation, String>() { - @Override - public String apply(Operation input) { - return input.getId(); - } - }; - - public static final Function<SizeCategory, String> SIZE_CATEGORY_NAME = new Function<SizeCategory, String>() { - @Override - public String apply(SizeCategory input) { - return input.getName(); - } - }; - - public static final Function<SpeciesCategory, String> SPECIES_CATEGORY_KEY = new Function<SpeciesCategory, String>() { - @Override - public String apply(SpeciesCategory input) { - return getSpeciesCategoryKey(input.getSpecies(), input.getSizeCategory(), input.getSexCategory()); - } - }; - - public static final Function<SexCategory, String> SEX_CATEGORY_NAME = new Function<SexCategory, String>() { - @Override - public String apply(SexCategory input) { - return input.getName(); - } - }; - - public static final Function<DataMetadata, String> DATA_METADATA_NAME = new Function<DataMetadata, String>() { - @Override - public String apply(DataMetadata input) { - return input.getName(); - } - }; - - public static final Function<Strata, String> STRATA_BY_NAME = new Function<Strata, String>() { - @Override - public String apply(Strata input) { - return input.getName(); - } - }; - - public static final Function<OperationMetadata, String> OPERATION_METADATA_NAME = new Function<OperationMetadata, String>() { - @Override - public String apply(OperationMetadata input) { - return input.getName(); - } - }; - - public static final Function<GearMetadata, String> GEAR_METADATA_NAME = new Function<GearMetadata, String>() { - @Override - public String apply(GearMetadata input) { - return input.getName(); - } - }; - - public static final Function<Transect, Vessel> TRANSECT_BY_VESSEL = new Function<Transect, Vessel>() { - @Override - public Vessel apply(Transect input) { - return input.getVessel(); - } - }; - - public static final Function<Echotype, String> ECHOTYPE_NAME = new Function<Echotype, String>() { - @Override - public String apply(Echotype input) { - return input.getName(); - } - }; - - public static final Function<AgeCategory, String> AGE_CATEGORY_NAME = new Function<AgeCategory, String>() { - @Override - public String apply(AgeCategory input) { - return input.getName(); - } - }; - - public static final Function<Cell, String> CELL_BY_NAME = new Function<Cell, String>() { - @Override - public String apply(Cell input) { - return input.getName(); - } - }; - - public static final Function<DataQuality, String> DATA_QUALITY_NAME = new Function<DataQuality, String>() { - @Override - public String apply(DataQuality input) { - return String.valueOf(input.getQualityDataFlagValues()); - } - }; - - public static final Function<ImportLog, String> IMPORT_LOG_VOYAGE_ID = new Function<ImportLog, String>() { - @Override - public String apply(ImportLog input) { - return input.getVoyageId(); - } - }; - - public static final Function<ImportLog, ImportType> IMPORT_LOG_IMPORT_TYPE= new Function<ImportLog, ImportType>() { - @Override - public ImportType apply(ImportLog input) { - return input.getImportType(); - } - }; - - public static String getSpeciesCategoryKey(Species species, SizeCategory sizeCategory, SexCategory sexCategory) { - String key = species.getBaracoudaCode(); - if (sizeCategory != null) { - key += "_" + sizeCategory.getName(); - } - if (sexCategory != null) { - key += "_" + sexCategory.getName(); - } - return key; - } - - public static Function<Map<String, Object>, String> newRowFunction(final String key) { - - return new Function<Map<String, Object>, String>() { - - @Override - public String apply(Map<String, Object> input) { - String id = input.get(key).toString(); - return id; - } - }; - } - - public static Function<Map<String, Object>, Integer> newRowIntegerFunction(final String key) { - - return new Function<Map<String, Object>, Integer>() { - - @Override - public Integer apply(Map<String, Object> input) { - Integer id = (Integer) input.get(key); - return id; - } - }; - } - - protected EchoBaseFunctions() { - // helper don't need to be instanciate - } -} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/EchoBasePredicates.java b/echobase-domain/src/main/java/fr/ifremer/echobase/EchoBasePredicates.java deleted file mode 100644 index 0a1f140..0000000 --- a/echobase-domain/src/main/java/fr/ifremer/echobase/EchoBasePredicates.java +++ /dev/null @@ -1,190 +0,0 @@ -/* - * #%L - * EchoBase :: Domain - * %% - * 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; - -import com.google.common.base.Predicate; -import com.google.common.base.Predicates; -import com.google.common.collect.Sets; -import fr.ifremer.echobase.entities.data.Cell; -import fr.ifremer.echobase.entities.data.Echotype; -import fr.ifremer.echobase.entities.data.Operation; -import fr.ifremer.echobase.entities.data.Sample; -import fr.ifremer.echobase.entities.references.AcousticInstrument; -import fr.ifremer.echobase.entities.references.CellType; -import fr.ifremer.echobase.entities.references.CellTypeImpl; -import fr.ifremer.echobase.entities.references.SampleTypeImpl; -import fr.ifremer.echobase.entities.references.SizeCategory; -import org.apache.commons.collections4.CollectionUtils; - -import java.util.Collection; -import java.util.Set; - -/** - * Keep usefull precidates on model. - * - * @author tchemit <chemit@codelutin.com> - * @since 0.3 - */ -public class EchoBasePredicates { - - public static final Predicate<AcousticInstrument> IS_ACOUSTIC_INSTRUMENT_ME70 = new Predicate<AcousticInstrument>() { - @Override - public boolean apply(AcousticInstrument input) { - return input.getId().toUpperCase().contains("MEBS"); - } - }; - - public static final Predicate<SizeCategory> IS_HORS_VRAC = new Predicate<SizeCategory>() { - @Override - public boolean apply(SizeCategory input) { - return input.getName().toUpperCase().equals("H"); - } - }; - - public static final Predicate<CellType> IS_ESDU_CELL_TYPE = new Predicate<CellType>() { - - @Override - public boolean apply(CellType input) { - boolean result = CellTypeImpl.ESDU.equals(input.getId().toLowerCase()); - return result; - } - }; - - public static final Predicate<CellType> IS_ELEMENTARY_CELL_TYPE = new Predicate<CellType>() { - - @Override - public boolean apply(CellType input) { - boolean result = CellTypeImpl.ELEMENTARY.equals(input.getId().toLowerCase()); - return result; - } - }; - - public static final Predicate<CellType> IS_MAP_CELL_TYPE = new Predicate<CellType>() { - - public final Set<String> acceptedNames = Sets.newHashSet( - CellTypeImpl.MAP - ); - - @Override - public boolean apply(CellType input) { - boolean result = acceptedNames.contains(input.getId()); - return result; - } - }; - - public static final Predicate<CellType> IS_SHOAL_CELL_TYPE = new Predicate<CellType>() { - - public final Set<String> acceptedNames = Sets.newHashSet( - CellTypeImpl.SHOAL - ); - - @Override - public boolean apply(CellType input) { - boolean result = acceptedNames.contains(input.getId()); - return result; - } - }; - - public static final Predicate<CellType> IS_REGION_CELL_TYPE = Predicates.not(Predicates.and( - IS_ESDU_CELL_TYPE, - IS_ELEMENTARY_CELL_TYPE, - IS_SHOAL_CELL_TYPE, - IS_MAP_CELL_TYPE)); - - public static final Predicate<Cell> IS_REGION_CELL = new Predicate<Cell>() { - @Override - public boolean apply(Cell input) { - CellType cellType = input.getCellType(); - boolean result = cellType != null && - IS_REGION_CELL_TYPE.apply(cellType); - return result; - } - }; - - public static final Predicate<Cell> IS_MAP_CELL = new Predicate<Cell>() { - @Override - public boolean apply(Cell input) { - CellType cellType = input.getCellType(); - boolean result = cellType != null && - IS_MAP_CELL_TYPE.apply(cellType); - return result; - } - }; - - public static final Predicate<Cell> IS_ELEMENTARY_CELL = new Predicate<Cell>() { - @Override - public boolean apply(Cell input) { - CellType cellType = input.getCellType(); - boolean result = cellType != null && - IS_ELEMENTARY_CELL_TYPE.apply(cellType); - return result; - } - }; - - public static final Predicate<Cell> IS_ESDU_CELL = new Predicate<Cell>() { - @Override - public boolean apply(Cell input) { - CellType cellType = input.getCellType(); - boolean result = cellType != null && - IS_ESDU_CELL_TYPE.apply(cellType); - return result; - } - }; - - public static final Predicate<Cell> IS_POINT_CELL = Predicates.or(IS_ELEMENTARY_CELL, IS_ESDU_CELL); - - public static final Predicate<Operation> OPERATION_WITH_TOTAL_OR_UNSORTED_SAMPLE = new Predicate<Operation>() { - @Override - public boolean apply(Operation input) { - Collection<Sample> samples = input.getSample(); - - Set<String> acceptedTypes = Sets.newHashSet(SampleTypeImpl.TOTAL_SAMPLE_TYPE, SampleTypeImpl.UNSORTED_SAMPLE_TYPE); - boolean result = false; - if (CollectionUtils.isNotEmpty(samples)) { - for (Sample sample : samples) { - String sampleType = sample.getSampleType().getName(); - if (acceptedTypes.contains(sampleType)) { - result = true; - break; - } - } - } - return result; - } - }; - - public static Predicate<Echotype> newEchotypeByNamePredicate(String name) { - return new EchotypeByNamePredicate(name); - } - - public static class EchotypeByNamePredicate implements Predicate<Echotype> { - private final String echotypeName; - - public EchotypeByNamePredicate(String echotypeName) { - this.echotypeName = echotypeName; - } - - @Override - public boolean apply(Echotype input) { - return echotypeName.equals(input.getName()); - } - } -} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/ImportLogs.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/ImportLogs.java new file mode 100644 index 0000000..44c32ae --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/ImportLogs.java @@ -0,0 +1,26 @@ +package fr.ifremer.echobase.entities; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class ImportLogs { + + public static final Function<ImportLog, String> IMPORT_LOG_VOYAGE_ID = new Function<ImportLog, String>() { + @Override + public String apply(ImportLog input) { + return input.getVoyageId(); + } + }; + + public static final Function<ImportLog, ImportType> IMPORT_LOG_IMPORT_TYPE = new Function<ImportLog, ImportType>() { + @Override + public ImportType apply(ImportLog input) { + return input.getImportType(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Cells.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Cells.java new file mode 100644 index 0000000..2292ad5 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Cells.java @@ -0,0 +1,68 @@ +package fr.ifremer.echobase.entities.data; + +import com.google.common.base.Function; +import com.google.common.base.Predicate; +import com.google.common.base.Predicates; +import fr.ifremer.echobase.entities.data.Cell; +import fr.ifremer.echobase.entities.references.CellType; +import fr.ifremer.echobase.entities.references.CellTypes; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class Cells { + + + public static final Predicate<Cell> IS_REGION_CELL = new Predicate<Cell>() { + + @Override + public boolean apply(Cell input) { + CellType cellType = input.getCellType(); + boolean result = cellType != null && + CellTypes.IS_REGION_CELL_TYPE.apply(cellType); + return result; + } + }; + + public static final Predicate<Cell> IS_MAP_CELL = new Predicate<Cell>() { + @Override + public boolean apply(Cell input) { + CellType cellType = input.getCellType(); + boolean result = cellType != null && + CellTypes.IS_MAP_CELL_TYPE.apply(cellType); + return result; + } + }; + + public static final Predicate<Cell> IS_ELEMENTARY_CELL = new Predicate<Cell>() { + @Override + public boolean apply(Cell input) { + CellType cellType = input.getCellType(); + boolean result = cellType != null && + CellTypes.IS_ELEMENTARY_CELL_TYPE.apply(cellType); + return result; + } + }; + + public static final Predicate<Cell> IS_ESDU_CELL = new Predicate<Cell>() { + @Override + public boolean apply(Cell input) { + CellType cellType = input.getCellType(); + boolean result = cellType != null && + CellTypes.IS_ESDU_CELL_TYPE.apply(cellType); + return result; + } + }; + + public static final Predicate<Cell> IS_POINT_CELL = Predicates.or(IS_ELEMENTARY_CELL, IS_ESDU_CELL); + + public static final Function<Cell, String> CELL_BY_NAME = new Function<Cell, String>() { + @Override + public String apply(Cell input) { + return input.getName(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/DataProcessings.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/DataProcessings.java new file mode 100644 index 0000000..eaeb28f --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/DataProcessings.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.data; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class DataProcessings { + public static final Function<DataProcessing, String> DATA_PROCESSING_ID = new Function<DataProcessing, String>() { + @Override + public String apply(DataProcessing input) { + return input.getId(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Echotypes.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Echotypes.java new file mode 100644 index 0000000..eaaf870 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Echotypes.java @@ -0,0 +1,37 @@ +package fr.ifremer.echobase.entities.data; + +import com.google.common.base.Function; +import com.google.common.base.Predicate; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class Echotypes { + + public static final Function<Echotype, String> ECHOTYPE_NAME = new Function<Echotype, String>() { + @Override + public String apply(Echotype input) { + return input.getName(); + } + }; + + public static Predicate<Echotype> newEchotypeByNamePredicate(String name) { + return new EchotypeByNamePredicate(name); + } + + public static class EchotypeByNamePredicate implements Predicate<Echotype> { + private final String echotypeName; + + public EchotypeByNamePredicate(String echotypeName) { + this.echotypeName = echotypeName; + } + + @Override + public boolean apply(Echotype input) { + return echotypeName.equals(input.getName()); + } + } +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Operations.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Operations.java new file mode 100644 index 0000000..732266d --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Operations.java @@ -0,0 +1,47 @@ +package fr.ifremer.echobase.entities.data; + +import com.google.common.base.Function; +import com.google.common.base.Predicate; +import com.google.common.collect.Sets; +import fr.ifremer.echobase.entities.data.Operation; +import fr.ifremer.echobase.entities.data.Sample; +import fr.ifremer.echobase.entities.references.SampleTypeImpl; +import org.apache.commons.collections4.CollectionUtils; + +import java.util.Collection; +import java.util.Set; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class Operations { + public static final Predicate<Operation> OPERATION_WITH_TOTAL_OR_UNSORTED_SAMPLE = new Predicate<Operation>() { + @Override + public boolean apply(Operation input) { + Collection<Sample> samples = input.getSample(); + + Set<String> acceptedTypes = Sets.newHashSet(SampleTypeImpl.TOTAL_SAMPLE_TYPE, SampleTypeImpl.UNSORTED_SAMPLE_TYPE); + boolean result = false; + if (CollectionUtils.isNotEmpty(samples)) { + for (Sample sample : samples) { + String sampleType = sample.getSampleType().getName(); + if (acceptedTypes.contains(sampleType)) { + result = true; + break; + } + } + } + return result; + } + }; + + public static final Function<Operation, String> OPERATION_ID = new Function<Operation, String>() { + @Override + public String apply(Operation input) { + return input.getId(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Results.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Results.java new file mode 100644 index 0000000..f5d5cc8 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Results.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.data; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class Results { + public static final Function<Result, Cell> RESULT_CELL = new Function<Result, Cell>() { + @Override + public Cell apply(Result input) { + return input.getCell(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Transects.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Transects.java new file mode 100644 index 0000000..637c183 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Transects.java @@ -0,0 +1,19 @@ +package fr.ifremer.echobase.entities.data; + +import com.google.common.base.Function; +import fr.ifremer.echobase.entities.references.Vessel; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class Transects { + public static final Function<Transect, Vessel> TRANSECT_BY_VESSEL = new Function<Transect, Vessel>() { + @Override + public Vessel apply(Transect input) { + return input.getVessel(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/VoyageImpl.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/VoyageImpl.java index ff8619b..35caf77 100644 --- a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/VoyageImpl.java +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/VoyageImpl.java @@ -24,8 +24,6 @@ import com.google.common.base.Preconditions; import com.google.common.collect.Collections2; import com.google.common.collect.Lists; import com.google.common.collect.Sets; -import fr.ifremer.echobase.EchoBaseFunctions; -import fr.ifremer.echobase.EchoBasePredicates; import fr.ifremer.echobase.entities.references.Vessel; import java.util.Collection; @@ -102,7 +100,7 @@ public class VoyageImpl extends VoyageAbstract { Collection<Vessel> vesselsOfTransit = Collections2.transform( transit.getTransect(), - EchoBaseFunctions.TRANSECT_BY_VESSEL); + Transects.TRANSECT_BY_VESSEL); result.addAll(vesselsOfTransit); } } @@ -151,7 +149,7 @@ public class VoyageImpl extends VoyageAbstract { result = Lists.newArrayList(); } else { result = Collections2.filter(getPostCell(), - EchoBasePredicates.IS_REGION_CELL); + Cells.IS_REGION_CELL); } return result; } @@ -163,7 +161,7 @@ public class VoyageImpl extends VoyageAbstract { result = Lists.newArrayList(); } else { result = Collections2.filter(getPostCell(), - EchoBasePredicates.IS_MAP_CELL); + Cells.IS_MAP_CELL); } return result; } diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Voyages.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Voyages.java new file mode 100644 index 0000000..4cef79e --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/data/Voyages.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.data; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class Voyages { + public static final Function<Voyage, String> VOYAGE_NAME = new Function<Voyage, String>() { + @Override + public String apply(Voyage input) { + return input.getName(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/AcousticInstruments.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/AcousticInstruments.java new file mode 100644 index 0000000..f5ae207 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/AcousticInstruments.java @@ -0,0 +1,26 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; +import com.google.common.base.Predicate; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class AcousticInstruments { + public static final Predicate<AcousticInstrument> IS_ACOUSTIC_INSTRUMENT_ME70 = new Predicate<AcousticInstrument>() { + @Override + public boolean apply(AcousticInstrument input) { + return input.getId().toUpperCase().contains("MEBS"); + } + }; + + public static final Function<AcousticInstrument, String> ACOUSTIC_INSTRUMENT_ID = new Function<AcousticInstrument, String>() { + @Override + public String apply(AcousticInstrument input) { + return input.getId(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/AgeCategories.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/AgeCategories.java new file mode 100644 index 0000000..e8821c0 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/AgeCategories.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since XXX + */ +public class AgeCategories { + public static final Function<AgeCategory, String> AGE_CATEGORY_NAME = new Function<AgeCategory, String>() { + @Override + public String apply(AgeCategory input) { + return input.getName(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/AreaOfOperations.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/AreaOfOperations.java new file mode 100644 index 0000000..4b9c6e5 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/AreaOfOperations.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class AreaOfOperations { + public static final Function<AreaOfOperation, String> AREA_OF_OPERATION_NAME = new Function<AreaOfOperation, String>() { + @Override + public String apply(AreaOfOperation input) { + return input.getName(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/CellMethods.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/CellMethods.java new file mode 100644 index 0000000..ffe3166 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/CellMethods.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class CellMethods { + public static final Function<CellMethod, String> CELL_METHOD_NAME = new Function<CellMethod, String>() { + @Override + public String apply(CellMethod input) { + return input.getName(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/CellTypes.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/CellTypes.java new file mode 100644 index 0000000..9f844d4 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/CellTypes.java @@ -0,0 +1,80 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; +import com.google.common.base.Predicate; +import com.google.common.collect.Sets; + +import java.util.Set; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class CellTypes { + + + public static final Predicate<CellType> IS_ESDU_CELL_TYPE = new Predicate<CellType>() { + + @Override + public boolean apply(CellType input) { + boolean result = CellTypeImpl.ESDU.equals(input.getId().toLowerCase()); + return result; + } + }; + + public static final Predicate<CellType> IS_ELEMENTARY_CELL_TYPE = new Predicate<CellType>() { + + @Override + public boolean apply(CellType input) { + boolean result = CellTypeImpl.ELEMENTARY.equals(input.getId().toLowerCase()); + return result; + } + }; + + public static final Predicate<CellType> IS_SHOAL_CELL_TYPE = new Predicate<CellType>() { + + public final Set<String> acceptedNames = Sets.newHashSet( + CellTypeImpl.SHOAL + ); + + @Override + public boolean apply(CellType input) { + boolean result = acceptedNames.contains(input.getId()); + return result; + } + }; + + public static final Predicate<CellType> IS_REGION_CELL_TYPE = new Predicate<CellType>() { + + public final Set<String> acceptedNames = Sets.newHashSet( + CellTypeImpl.REGION, CellTypeImpl.REGION_SURF, CellTypeImpl.REGION_CLAS); + + @Override + public boolean apply(CellType input) { + boolean result = acceptedNames.contains(input.getId()); + return result; + } + }; + + public static final Predicate<CellType> IS_MAP_CELL_TYPE = new Predicate<CellType>() { + + public final Set<String> acceptedNames = Sets.newHashSet( + CellTypeImpl.MAP + ); + + @Override + public boolean apply(CellType input) { + boolean result = acceptedNames.contains(input.getId()); + return result; + } + }; + + public static final Function<CellType, String> CELL_TYPE_ID = new Function<CellType, String>() { + @Override + public String apply(CellType input) { + return input.getId(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/DataMetadatas.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/DataMetadatas.java new file mode 100644 index 0000000..ff94ca5 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/DataMetadatas.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since XXX + */ +public class DataMetadatas { + public static final Function<DataMetadata, String> DATA_METADATA_NAME = new Function<DataMetadata, String>() { + @Override + public String apply(DataMetadata input) { + return input.getName(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/DataQualities.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/DataQualities.java new file mode 100644 index 0000000..9cdbc4e --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/DataQualities.java @@ -0,0 +1,25 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since XXX + */ +public class DataQualities { + public static final Function<DataQuality, String> DATA_QUALITY_NAME = new Function<DataQuality, String>() { + @Override + public String apply(DataQuality input) { + return String.valueOf(input.getQualityDataFlagValues()); + } + }; + + public static final Function<DataQuality, Integer> DATA_QUALITY_ID = new Function<DataQuality, Integer>() { + @Override + public Integer apply(DataQuality input) { + return input.getQualityDataFlagValues(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/DataTypes.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/DataTypes.java new file mode 100644 index 0000000..971ffb3 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/DataTypes.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class DataTypes { + public static final Function<DataType, String> DATA_TYPE_NAME = new Function<DataType, String>() { + @Override + public String apply(DataType input) { + return input.getName(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/DepthStratums.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/DepthStratums.java new file mode 100644 index 0000000..08056ea --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/DepthStratums.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class DepthStratums { + public static final Function<DepthStratum, String> DEPTH_STRATUM_ID = new Function<DepthStratum, String>() { + @Override + public String apply(DepthStratum input) { + return input.getId(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/EchotypeCategories.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/EchotypeCategories.java new file mode 100644 index 0000000..d90faf0 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/EchotypeCategories.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class EchotypeCategories { + public static final Function<EchotypeCategory, String> ECHO_TYPE_CATEGORY_NAME = new Function<EchotypeCategory, String>() { + @Override + public String apply(EchotypeCategory input) { + return input.getName(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/GearMetadatas.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/GearMetadatas.java new file mode 100644 index 0000000..424e2e8 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/GearMetadatas.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class GearMetadatas { + public static final Function<GearMetadata, String> GEAR_METADATA_NAME = new Function<GearMetadata, String>() { + @Override + public String apply(GearMetadata input) { + return input.getName(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Gears.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Gears.java new file mode 100644 index 0000000..f79c3ad --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Gears.java @@ -0,0 +1,21 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since XXX + */ +public class Gears { + public static final Function<Gear, String> GEAR_CASINO_GEAR_NAME = new Function<Gear, String>() { + @Override + public String apply(Gear input) { + //FIXME : Remove the dummy test when all gear in db have a casino name + String casinoGearName = input.getCasinoGearName(); +// return StringUtils.isEmpty(casinoGearName) ? input.getName() : casinoGearName; + return casinoGearName; + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Missions.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Missions.java new file mode 100644 index 0000000..81745f7 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Missions.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class Missions { + public static final Function<Mission, String> MISSION_NAME = new Function<Mission, String>() { + @Override + public String apply(Mission input) { + return input.getName(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/OperationEvents.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/OperationEvents.java new file mode 100644 index 0000000..ce7a168 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/OperationEvents.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since XXX + */ +public class OperationEvents { + public static final Function<OperationEvent, String> OPERATION_EVENT_NAME = new Function<OperationEvent, String>() { + @Override + public String apply(OperationEvent input) { + return input.getName(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/OperationMetadatas.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/OperationMetadatas.java new file mode 100644 index 0000000..90c0dc2 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/OperationMetadatas.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class OperationMetadatas { + public static final Function<OperationMetadata, String> OPERATION_METADATA_NAME = new Function<OperationMetadata, String>() { + @Override + public String apply(OperationMetadata input) { + return input.getName(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/ReferenceDatumTypes.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/ReferenceDatumTypes.java new file mode 100644 index 0000000..d034340 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/ReferenceDatumTypes.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class ReferenceDatumTypes { + public static final Function<ReferenceDatumType, String> REFERENCE_DATUM_TYPE_NAME = new Function<ReferenceDatumType, String>() { + @Override + public String apply(ReferenceDatumType input) { + return input.getName(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/ReferenceDatums.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/ReferenceDatums.java new file mode 100644 index 0000000..1e7e089 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/ReferenceDatums.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class ReferenceDatums { + public static final Function<ReferenceDatum, String> REFERENCE_DATUM_ID = new Function<ReferenceDatum, String>() { + @Override + public String apply(ReferenceDatum input) { + return input.getId(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SampleDataTypes.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SampleDataTypes.java new file mode 100644 index 0000000..26dbffc --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SampleDataTypes.java @@ -0,0 +1,25 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class SampleDataTypes { + public static final Function<SampleDataType, String> SAMPLE_DATA_TYPE_RAPTRI_CODE = new Function<SampleDataType, String>() { + @Override + public String apply(SampleDataType input) { + return String.valueOf(input.getRaptriBiometryDataType()); + } + }; + + public static final Function<SampleDataType, String> SAMPLE_DATA_TYPE_NAME = new Function<SampleDataType, String>() { + @Override + public String apply(SampleDataType input) { + return String.valueOf(input.getName()); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SexCategories.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SexCategories.java new file mode 100644 index 0000000..6663a20 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SexCategories.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class SexCategories { + public static final Function<SexCategory, String> SEX_CATEGORY_NAME = new Function<SexCategory, String>() { + @Override + public String apply(SexCategory input) { + return input.getName(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SizeCategories.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SizeCategories.java new file mode 100644 index 0000000..0e6f750 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SizeCategories.java @@ -0,0 +1,27 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; +import com.google.common.base.Predicate; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class SizeCategories { + + public static final Predicate<SizeCategory> IS_HORS_VRAC = new Predicate<SizeCategory>() { + @Override + public boolean apply(SizeCategory input) { + return input.getName().toUpperCase().equals("H"); + } + }; + + public static final Function<SizeCategory, String> SIZE_CATEGORY_NAME = new Function<SizeCategory, String>() { + @Override + public String apply(SizeCategory input) { + return input.getName(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Species2.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Species2.java index 6ac801a..d519eb7 100644 --- a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Species2.java +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Species2.java @@ -21,6 +21,7 @@ package fr.ifremer.echobase.entities.references; * #L% */ +import com.google.common.base.Function; import com.google.common.base.Predicate; /** @@ -31,6 +32,13 @@ import com.google.common.base.Predicate; */ public class Species2 { + public static final Function<Species, String> SPECIES_BARACOUDA_CODE = new Function<Species, String>() { + @Override + public String apply(Species input) { + return input.getBaracoudaCode(); + } + }; + public static Predicate<Species> newCommunityIndicatorSpeciesPredicate() { return new Predicate<Species>() { @Override diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SpeciesCategories.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SpeciesCategories.java new file mode 100644 index 0000000..ad2e0f5 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/SpeciesCategories.java @@ -0,0 +1,29 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class SpeciesCategories { + public static final Function<SpeciesCategory, String> SPECIES_CATEGORY_KEY = new Function<SpeciesCategory, String>() { + @Override + public String apply(SpeciesCategory input) { + return getSpeciesCategoryKey(input.getSpecies(), input.getSizeCategory(), input.getSexCategory()); + } + }; + + public static String getSpeciesCategoryKey(Species species, SizeCategory sizeCategory, SexCategory sexCategory) { + String key = species.getBaracoudaCode(); + if (sizeCategory != null) { + key += "_" + sizeCategory.getName(); + } + if (sexCategory != null) { + key += "_" + sexCategory.getName(); + } + return key; + } +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Stratas.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Stratas.java new file mode 100644 index 0000000..d5d0b95 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Stratas.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class Stratas { + public static final Function<Strata, String> STRATA_BY_NAME = new Function<Strata, String>() { + @Override + public String apply(Strata input) { + return input.getName(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/VesselTypes.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/VesselTypes.java new file mode 100644 index 0000000..416605e --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/VesselTypes.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class VesselTypes { + public static final Function<VesselType, String> VESSEL_TYPE_NAME = new Function<VesselType, String>() { + @Override + public String apply(VesselType input) { + return input.getName(); + } + }; +} diff --git a/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Vessels.java b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Vessels.java new file mode 100644 index 0000000..1adbec0 --- /dev/null +++ b/echobase-domain/src/main/java/fr/ifremer/echobase/entities/references/Vessels.java @@ -0,0 +1,18 @@ +package fr.ifremer.echobase.entities.references; + +import com.google.common.base.Function; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since XXX + */ +public class Vessels { + public static final Function<Vessel, String> VESSEL_NAME = new Function<Vessel, String>() { + @Override + public String apply(Vessel input) { + return input.getName(); + } + }; +} -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository echobase. See http://git.codelutin.com/echobase.git commit 0a55d6167f1ba35fea568974370a0c7521da87b5 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Jan 21 17:16:03 2015 +0100 mis en place filtrage des indicateurs a exporter par voyage --- .../services/service/UserDbPersistenceService.java | 107 ++++++++++++++++++++- .../echobase/ui/actions/dbeditor/GetEntities.java | 4 +- .../echobase/ui/actions/exportCoser/Configure.java | 24 +---- .../GetAvailableIndicatorsForMission.java | 77 +++++++++++++++ .../main/resources/config/struts-exportCoser.xml | 6 ++ .../webapp/WEB-INF/jsp/exportCoser/configure.jsp | 7 ++ echobase-ui/src/main/webapp/js/gridHelper.js | 69 ++++++++++++- 7 files changed, 267 insertions(+), 27 deletions(-) diff --git a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/UserDbPersistenceService.java b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/UserDbPersistenceService.java index 8498c6c..9d7f942 100644 --- a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/UserDbPersistenceService.java +++ b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/UserDbPersistenceService.java @@ -55,6 +55,7 @@ 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.CellType; +import fr.ifremer.echobase.entities.references.CellTypes; import fr.ifremer.echobase.entities.references.DataMetadata; import fr.ifremer.echobase.entities.references.Mission; import fr.ifremer.echobase.entities.references.SampleDataType; @@ -62,11 +63,14 @@ import fr.ifremer.echobase.entities.references.SampleType; import fr.ifremer.echobase.entities.references.SexCategory; import fr.ifremer.echobase.entities.references.SizeCategory; import fr.ifremer.echobase.entities.references.Species; +import fr.ifremer.echobase.entities.references.Species2; import fr.ifremer.echobase.entities.references.SpeciesCategory; import fr.ifremer.echobase.entities.references.Vessel; import fr.ifremer.echobase.io.InputFile; import fr.ifremer.echobase.services.EchoBaseServiceSupport; import org.apache.commons.io.IOUtils; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; import org.nuiton.csv.ValueParser; import org.nuiton.topia.persistence.TopiaDao; import org.nuiton.topia.persistence.TopiaEntity; @@ -86,8 +90,10 @@ import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; +import java.util.ArrayList; import java.util.Collection; import java.util.Date; +import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; @@ -249,7 +255,7 @@ public class UserDbPersistenceService extends EchoBaseServiceSupport { public Set<CellType> getRegionCellTypes() { List<CellType> cellTypes = persistenceContext.getCellTypeDao().findAll(); - return Sets.newHashSet(Iterables.filter(cellTypes, fr.ifremer.echobase.EchoBasePredicates.IS_REGION_CELL_TYPE)); + return Sets.newHashSet(Iterables.filter(cellTypes, CellTypes.IS_REGION_CELL_TYPE)); } public CellType getCellType(String id) { @@ -875,6 +881,103 @@ public class UserDbPersistenceService extends EchoBaseServiceSupport { } + public static class RegionIndicators { + + final List<DataMetadata> communityDataMetadatasList; + + final List<DataMetadata> populationDataMetadatasList; + + public RegionIndicators(List<DataMetadata> communityDataMetadatasList, List<DataMetadata> populationDataMetadatasList) { + this.communityDataMetadatasList = communityDataMetadatasList; + this.populationDataMetadatasList = populationDataMetadatasList; + } + + public List<DataMetadata> getCommunityDataMetadatasList() { + return communityDataMetadatasList; + } + + public List<DataMetadata> getPopulationDataMetadatasList() { + return populationDataMetadatasList; + } + + } + + /** Logger. */ + private static final Log log = LogFactory.getLog(UserDbPersistenceService.class); + + public RegionIndicators getRegionIndicators(String missionId, List<DataMetadata> dataMetadatas) { + + if (log.isInfoEnabled()) { + for (DataMetadata dataMetadata : dataMetadatas) { + log.info("Possible indicator: " + dataMetadata.getName()); + } + } + + Predicate<Species> communityIndicatorSpeciesPredicate = Species2.newCommunityIndicatorSpeciesPredicate(); + Predicate<Species> populationIndicatorSpeciesPredicate = Species2.newPopulationIndicatorSpeciesPredicate(); + + Set<DataMetadata> communityDataMetadatasSet = new HashSet<>(); + Set<DataMetadata> populationDataMetadatasSet = new HashSet<>(); + + Mission mission = getMission(missionId); + List<Voyage> voyagesForMission = getVoyagesForMission(mission); + + for (Voyage voyage : voyagesForMission) { + + if (log.isInfoEnabled()) { + log.info("Scan voyage: " + voyage.getName()); + } + + for (Cell cell : voyage.getRegionCells()) { + + for (Result result : cell.getResult()) { + + Species species = result.getCategory().getSpeciesCategory().getSpecies(); + + if (communityIndicatorSpeciesPredicate.apply(species)) { + + communityDataMetadatasSet.add(result.getDataMetadata()); + + } else if (populationIndicatorSpeciesPredicate.apply(species)) { + + populationDataMetadatasSet.add(result.getDataMetadata()); + + } + + } + } + } + + List<DataMetadata> communityDataMetadatasList = new ArrayList<>(communityDataMetadatasSet); + if (log.isInfoEnabled()) { + for (DataMetadata dataMetadata : communityDataMetadatasList) { + boolean willUse = dataMetadatas.contains(dataMetadata); + if (willUse) { + log.info("Community indicator accepted: " + dataMetadata.getName()); + } else { + log.info("Community indicator rejected: " + dataMetadata.getName()); + } + } + } + communityDataMetadatasList.retainAll(dataMetadatas); + + List<DataMetadata> populationDataMetadatasList = new ArrayList<>(populationDataMetadatasSet); + if (log.isInfoEnabled()) { + for (DataMetadata dataMetadata : populationDataMetadatasList) { + boolean willUse = dataMetadatas.contains(dataMetadata); + if (willUse) { + log.info("Population indicator accepted: " + dataMetadata.getName()); + } else { + log.info("Population indicator rejected: " + dataMetadata.getName()); + } + } + } + populationDataMetadatasList.retainAll(dataMetadatas); + + return new RegionIndicators(communityDataMetadatasList, populationDataMetadatasList); + + } + private static class CountTableRows extends TopiaSqlQuery<Long> { public final String tableName; @@ -885,7 +988,7 @@ public class UserDbPersistenceService extends EchoBaseServiceSupport { @Override public PreparedStatement prepareQuery(Connection connection) throws SQLException { - String hql = "SELECT count(*) FROM "+tableName; + String hql = "SELECT count(*) FROM " + tableName; PreparedStatement result = connection.prepareStatement(hql); return result; } diff --git a/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/dbeditor/GetEntities.java b/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/dbeditor/GetEntities.java index 7702e6f..bf3b693 100644 --- a/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/dbeditor/GetEntities.java +++ b/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/dbeditor/GetEntities.java @@ -24,9 +24,9 @@ import com.google.common.collect.ArrayListMultimap; import com.google.common.collect.Maps; import com.google.common.collect.Multimap; import com.google.common.collect.Multimaps; -import fr.ifremer.echobase.EchoBaseFunctions; import fr.ifremer.echobase.entities.EchoBaseUserEntityEnum; import fr.ifremer.echobase.entities.ImportLog; +import fr.ifremer.echobase.entities.ImportLogs; import fr.ifremer.echobase.entities.ImportType; import fr.ifremer.echobase.entities.data.Voyage; import fr.ifremer.echobase.services.service.DbEditorService; @@ -146,7 +146,7 @@ public class GetEntities extends AbstractJSONPaginedAction { Multimap<String, ImportLog> importLogsByVoyage = Multimaps.index( userDbPersistenceService.getImportLogs(), - EchoBaseFunctions.IMPORT_LOG_VOYAGE_ID); + ImportLogs.IMPORT_LOG_VOYAGE_ID); for (Map row : datas) { diff --git a/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/exportCoser/Configure.java b/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/exportCoser/Configure.java index 286046d..a9d37c0 100644 --- a/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/exportCoser/Configure.java +++ b/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/exportCoser/Configure.java @@ -23,7 +23,6 @@ package fr.ifremer.echobase.ui.actions.exportCoser; import com.google.common.collect.Maps; import fr.ifremer.echobase.EchoBaseTechnicalException; -import fr.ifremer.echobase.entities.references.DataMetadata; import fr.ifremer.echobase.entities.references.Mission; import fr.ifremer.echobase.persistence.JdbcConfiguration; import fr.ifremer.echobase.services.service.CoserApiService; @@ -39,9 +38,8 @@ import org.nuiton.util.FileUtil; import javax.inject.Inject; import java.io.File; import java.io.IOException; -import java.util.List; +import java.util.Collections; import java.util.Map; -import java.util.Set; /** * Created on 3/1/14. @@ -65,16 +63,6 @@ public class Configure extends AbstractConfigureAction<ExportCoserConfiguration> protected Map<String, String> missions; /** - * Universe of population indicators. - */ - protected Map<String, String> populationIndicators; - - /** - * Universe of community indicators. - */ - protected Map<String, String> communityIndicators; - - /** * Universe of facades (coming from Coser). */ protected Map<String, String> facades; @@ -107,11 +95,11 @@ public class Configure extends AbstractConfigureAction<ExportCoserConfiguration> } public Map<String, String> getPopulationIndicators() { - return populationIndicators; + return Collections.emptyMap(); } public Map<String, String> getCommunityIndicators() { - return communityIndicators; + return Collections.emptyMap(); } public boolean isCoserUnreachable() { @@ -181,11 +169,5 @@ public class Configure extends AbstractConfigureAction<ExportCoserConfiguration> zones = Maps.newHashMap(); } - // Get indicators names from Coser - Set<String> indicatorNames = coserApiService.getIndicators(); - - List<DataMetadata> dataMetadatas = userDbPersistenceService.getDataMetadatasInName(indicatorNames); - populationIndicators = decoratorService.sortAndDecorate(dataMetadatas, null); - communityIndicators = decoratorService.sortAndDecorate(dataMetadatas, null); } } diff --git a/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/exportCoser/GetAvailableIndicatorsForMission.java b/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/exportCoser/GetAvailableIndicatorsForMission.java new file mode 100644 index 0000000..0458637 --- /dev/null +++ b/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/exportCoser/GetAvailableIndicatorsForMission.java @@ -0,0 +1,77 @@ +package fr.ifremer.echobase.ui.actions.exportCoser; + +import fr.ifremer.echobase.entities.references.DataMetadata; +import fr.ifremer.echobase.services.service.CoserApiService; +import fr.ifremer.echobase.services.service.DecoratorService; +import fr.ifremer.echobase.services.service.UserDbPersistenceService; +import fr.ifremer.echobase.ui.actions.EchoBaseActionSupport; +import org.apache.commons.lang3.StringUtils; + +import javax.inject.Inject; +import java.util.Collections; +import java.util.List; +import java.util.Map; +import java.util.Set; + +/** + * Created on 1/21/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 2.9 + */ +public class GetAvailableIndicatorsForMission extends EchoBaseActionSupport { + + private static final long serialVersionUID = 1L; + + @Inject + protected transient UserDbPersistenceService userDbPersistenceService; + + @Inject + private transient CoserApiService coserApiService; + + @Inject + protected transient DecoratorService decoratorService; + + protected Map<String, String> communityIndicators; + + protected Map<String, String> populationIndicators; + + protected String missionId; + + public void setMissionId(String missionId) { + this.missionId = missionId; + } + + public Map<String, String> getCommunityIndicators() { + return communityIndicators; + } + + public Map<String, String> getPopulationIndicators() { + return populationIndicators; + } + + @Override + public String execute() throws Exception { + + if (StringUtils.isBlank(missionId)) { + + this.communityIndicators = Collections.emptyMap(); + this.populationIndicators = Collections.emptyMap(); + + } else { + + Set<String> indicatorNames = coserApiService.getIndicators(); + + List<DataMetadata> dataMetadatas = userDbPersistenceService.getDataMetadatasInName(indicatorNames); + + UserDbPersistenceService.RegionIndicators regionIndicators = userDbPersistenceService.getRegionIndicators(missionId, dataMetadatas); + + this.communityIndicators = decoratorService.sortAndDecorate(regionIndicators.getCommunityDataMetadatasList(), null); + this.populationIndicators = decoratorService.sortAndDecorate(regionIndicators.getPopulationDataMetadatasList(), null); + + } + + return super.execute(); + + } +} \ No newline at end of file diff --git a/echobase-ui/src/main/resources/config/struts-exportCoser.xml b/echobase-ui/src/main/resources/config/struts-exportCoser.xml index 6307d95..ee92572 100644 --- a/echobase-ui/src/main/resources/config/struts-exportCoser.xml +++ b/echobase-ui/src/main/resources/config/struts-exportCoser.xml @@ -77,6 +77,12 @@ <result type="json"/> </action> + <!-- Get available indicators for a given mission --> + <action name="getAvailableIndicatorsForMission" + class="fr.ifremer.echobase.ui.actions.exportCoser.GetAvailableIndicatorsForMission"> + <result type="json"/> + </action> + </package> </struts> diff --git a/echobase-ui/src/main/webapp/WEB-INF/jsp/exportCoser/configure.jsp b/echobase-ui/src/main/webapp/WEB-INF/jsp/exportCoser/configure.jsp index 3b08ed7..44b9cc3 100644 --- a/echobase-ui/src/main/webapp/WEB-INF/jsp/exportCoser/configure.jsp +++ b/echobase-ui/src/main/webapp/WEB-INF/jsp/exportCoser/configure.jsp @@ -62,6 +62,13 @@ '<s:property value="model.zone"/>' ); + $.autoSelectRegionIndicators( + $('#missionField'), + $('#communityIndicator'), + $('#populationIndicator'), + '<s:url action="getAvailableIndicatorsForMission" namespace="/exportCoser"/>', + '<s:property value="model.missionId"/>'); + var communityChangefunction = function () { changeExtractIndicator('#extractCommunityIndicator', 'communityIndicator'); }; $('#extractCommunityIndicator').change(communityChangefunction); communityChangefunction(); diff --git a/echobase-ui/src/main/webapp/js/gridHelper.js b/echobase-ui/src/main/webapp/js/gridHelper.js index 2afa7bd..55a8468 100644 --- a/echobase-ui/src/main/webapp/js/gridHelper.js +++ b/echobase-ui/src/main/webapp/js/gridHelper.js @@ -148,8 +148,35 @@ // call url to obtain datas to inject in target select box jQuery.getJSON(url, params, function (result) { + $.fillSelectBox(result, jsonTarget, target, true, callback); + + //// will contains selectBox html code + //var html = "<option/>"; + // + //// iterate on found datas (each data gives a select option) + //$.each(result[jsonTarget], function (propertyName, value) { + // html += '<option value="' + propertyName + '">' + value + '</option>' + //}); + // + //// change the target html code + //target.html(html); + // + //// calback + //if (callback) { + // callback(); + //} + }); + }, + + fillSelectBox: function (result, jsonTarget, target,addEmptyEntry, callback) { + // will contains selectBox html code - var html = "<option/>"; + var html = ""; + + if (addEmptyEntry) { + + html += "<option/>"; + } // iterate on found datas (each data gives a select option) $.each(result[jsonTarget], function (propertyName, value) { @@ -163,7 +190,6 @@ if (callback) { callback(); } - }); }, // Ajoute les classes even et odd à tous les tableaux de la page @@ -267,6 +293,39 @@ } ); } + }, + // auto-selection des indices (pour une mission donnee) + autoSelectRegionIndicators: function (missionSelectBox, communityIndicatorSelectBox, populationIndicatorSelectBox, getUrl, missionId) { + + missionSelectBox.change({communityIndicatorSelectBox: communityIndicatorSelectBox, + populationIndicatorSelectBox: populationIndicatorSelectBox, + getUrl: getUrl}, function (event) { + + // call url to obtain datas to inject in target select box + jQuery.getJSON(event.data.getUrl, {missionId: this.value}, function (result) { + + + $.fillSelectBox(result, 'communityIndicators', event.data.communityIndicatorSelectBox, false); + $.fillSelectBox(result, 'populationIndicators', event.data.populationIndicatorSelectBox, false); + + }); + + }); + + if (missionId) { + + missionSelectBox.change(missionId); + + // call url to obtain datas to inject in target select box + jQuery.getJSON(event.data.getUrl, event.data, function (result) { + + + $.fillSelectBox(result, 'communityIndicator', event.data.communityIndicatorSelectBox); + $.fillSelectBox(result, 'populationIndicator', event.data.populationIndicatorSelectBox); + + }); + + } } }); @@ -303,6 +362,9 @@ updateSelectBoxContent: function (url, params, jsonTarget, target, callback) { return $(document).updateSelectBoxContent(url, params, jsonTarget, target, callback); }, + fillSelectBox: function (result, jsonTarget, target, callback) { + return $(document).fillSelectBox(result, jsonTarget, target, callback); + }, addEvenAndOddClasses: function (gridId) { return $(document).addEvenAndOddClasses(gridId); }, @@ -314,6 +376,9 @@ }, autoSelectZones: function (facadeSelectBox, zoneSelectBox, getUrl, facadeId, zoneId) { return $(document).autoSelectZones(facadeSelectBox, zoneSelectBox, getUrl, facadeId, zoneId); + }, + autoSelectRegionIndicators: function (missionSelectBox, communityIndicatorSelectBox, populationIndicatorSelectBox, getUrl, missionId) { + return $(document).autoSelectRegionIndicators(missionSelectBox, communityIndicatorSelectBox, populationIndicatorSelectBox, getUrl, missionId); } }); })(jQuery); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository echobase. See http://git.codelutin.com/echobase.git commit 2a331301d0436f43c416a9213a1fd7a0432e0363 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Jan 21 17:16:17 2015 +0100 utilisation des nouveau helper d'entities --- .../service/importdata/AcousticImportService.java | 13 ++++----- .../service/importdata/CatchesImportService.java | 21 ++++++++------- .../service/importdata/CommonAllImportService.java | 4 +-- .../importdata/CommonTransectImportService.java | 7 ++--- .../importdata/CommonTransitImportService.java | 4 +-- .../service/importdata/OperationImportService.java | 19 ++++++++----- .../importdata/ResultsEsduCellImportService.java | 25 ++++++++++------- .../ResultsMapFishCellImportService.java | 19 ++++++++----- .../ResultsMapOtherCellImportService.java | 10 ++++--- .../importdata/ResultsRegionCellImportService.java | 31 +++++++++++++--------- .../importdata/ResultsVoyageImportService.java | 20 ++++++++------ .../importdata/AbstractImportDataServiceIT.java | 4 +-- 12 files changed, 106 insertions(+), 71 deletions(-) diff --git a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/AcousticImportService.java b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/AcousticImportService.java index 4a7e008..878f9b8 100644 --- a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/AcousticImportService.java +++ b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/AcousticImportService.java @@ -23,8 +23,6 @@ package fr.ifremer.echobase.services.service.importdata; import com.google.common.base.Joiner; import com.google.common.collect.Lists; import com.google.common.collect.Sets; -import fr.ifremer.echobase.EchoBaseFunctions; -import fr.ifremer.echobase.EchoBasePredicates; import fr.ifremer.echobase.csv.EchoBaseCsvUtil; import fr.ifremer.echobase.entities.EchoBaseUser; import fr.ifremer.echobase.entities.EchoBaseUserEntityEnum; @@ -35,9 +33,12 @@ import fr.ifremer.echobase.entities.data.Transect; import fr.ifremer.echobase.entities.data.Transit; import fr.ifremer.echobase.entities.data.Voyage; import fr.ifremer.echobase.entities.references.AcousticInstrument; +import fr.ifremer.echobase.entities.references.AcousticInstruments; import fr.ifremer.echobase.entities.references.CellType; import fr.ifremer.echobase.entities.references.CellTypeImpl; import fr.ifremer.echobase.entities.references.DataMetadata; +import fr.ifremer.echobase.entities.references.DataMetadatas; +import fr.ifremer.echobase.entities.references.DataQualities; import fr.ifremer.echobase.entities.references.DataQuality; import fr.ifremer.echobase.entities.references.Vessel; import fr.ifremer.echobase.io.InputFile; @@ -144,13 +145,13 @@ public class AcousticImportService extends AbstractImportDataService<AcousticImp Map<String, AcousticInstrument> instrumentsById = persistenceService.getEntitiesMap(AcousticInstrument.class, - EchoBaseFunctions.ACOUSTIC_INSTRUMENT_ID); + AcousticInstruments.ACOUSTIC_INSTRUMENT_ID); Map<String, DataMetadata> dataMetadatasByName = persistenceService.getEntitiesMap( - DataMetadata.class, EchoBaseFunctions.DATA_METADATA_NAME); + DataMetadata.class, DataMetadatas.DATA_METADATA_NAME); Map<String, DataQuality> dataQualityMap = persistenceService.getEntitiesMap( - DataQuality.class, EchoBaseFunctions.DATA_QUALITY_NAME); + DataQuality.class, DataQualities.DATA_QUALITY_NAME); AcousticImportModel csvModel = new AcousticImportModel( getCsvSeparator(), instrumentsById, dataQualityMap); @@ -220,7 +221,7 @@ public class AcousticImportService extends AbstractImportDataService<AcousticImp AcousticInstrument instrument = row.getAcousticInstrument(); boolean isME70 = - EchoBasePredicates.IS_ACOUSTIC_INSTRUMENT_ME70.apply(instrument); + AcousticInstruments.IS_ACOUSTIC_INSTRUMENT_ME70.apply(instrument); if (dataAcquisition == null || !instrument.equals(dataAcquisition.getAcousticInstrument())) { diff --git a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/CatchesImportService.java b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/CatchesImportService.java index 57aa7a8..3a97890 100644 --- a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/CatchesImportService.java +++ b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/CatchesImportService.java @@ -23,21 +23,24 @@ package fr.ifremer.echobase.services.service.importdata; import com.google.common.base.Preconditions; import com.google.common.collect.Collections2; import com.google.common.collect.Maps; -import fr.ifremer.echobase.EchoBaseFunctions; -import fr.ifremer.echobase.EchoBasePredicates; import fr.ifremer.echobase.entities.EchoBaseUser; import fr.ifremer.echobase.entities.EchoBaseUserEntityEnum; import fr.ifremer.echobase.entities.data.Operation; import fr.ifremer.echobase.entities.data.Sample; import fr.ifremer.echobase.entities.data.SampleData; import fr.ifremer.echobase.entities.data.Voyage; +import fr.ifremer.echobase.entities.data.Operations; import fr.ifremer.echobase.entities.references.SampleDataType; import fr.ifremer.echobase.entities.references.SampleDataTypeImpl; +import fr.ifremer.echobase.entities.references.SampleDataTypes; import fr.ifremer.echobase.entities.references.SampleType; import fr.ifremer.echobase.entities.references.SampleTypeImpl; +import fr.ifremer.echobase.entities.references.SexCategories; import fr.ifremer.echobase.entities.references.SexCategory; +import fr.ifremer.echobase.entities.references.SizeCategories; import fr.ifremer.echobase.entities.references.SizeCategory; import fr.ifremer.echobase.entities.references.Species; +import fr.ifremer.echobase.entities.references.Species2; import fr.ifremer.echobase.entities.references.SpeciesCategory; import fr.ifremer.echobase.io.InputFile; import fr.ifremer.echobase.services.service.importdata.csv.BiometrySampleImportModel; @@ -82,15 +85,15 @@ public class CatchesImportService extends AbstractImportDataService<CatchesImpor // split them by operation Id Map<String, Operation> operationMap = Maps.uniqueIndex( - operations, EchoBaseFunctions.OPERATION_ID); + operations, Operations.OPERATION_ID); Map<String, Species> speciesMap = persistenceService.getEntitiesMap( Species.class, - EchoBaseFunctions.SPECIES_BARACOUDA_CODE); + Species2.SPECIES_BARACOUDA_CODE); Map<String, SizeCategory> sizeCategoryMap = persistenceService.getEntitiesMap( SizeCategory.class, - EchoBaseFunctions.SIZE_CATEGORY_NAME); + SizeCategories.SIZE_CATEGORY_NAME); InputFile inputFile; @@ -114,7 +117,7 @@ public class CatchesImportService extends AbstractImportDataService<CatchesImpor Collection<Operation> operationWithTotalOrUnsortedSample = Collections2.filter( operations, - EchoBasePredicates.OPERATION_WITH_TOTAL_OR_UNSORTED_SAMPLE); + Operations.OPERATION_WITH_TOTAL_OR_UNSORTED_SAMPLE); inputFile = configuration.getSubSampleFile(); if (inputFile.hasFile()) { @@ -196,7 +199,7 @@ public class CatchesImportService extends AbstractImportDataService<CatchesImpor SampleType sampleType; - if (EchoBasePredicates.IS_HORS_VRAC.apply(sizeCategory)) { + if (SizeCategories.IS_HORS_VRAC.apply(sizeCategory)) { // hors vrac case sampleType = sampleTypeUnsorted; @@ -294,7 +297,7 @@ public class CatchesImportService extends AbstractImportDataService<CatchesImpor Map<String, SexCategory> sexCategoryMap = persistenceService.getEntitiesMap( SexCategory.class, - EchoBaseFunctions.SEX_CATEGORY_NAME); + SexCategories.SEX_CATEGORY_NAME); EchoBaseCsvFileImportResult importResult = newImportResult(inputFile); @@ -420,7 +423,7 @@ public class CatchesImportService extends AbstractImportDataService<CatchesImpor Map<String, SampleDataType> sampleDataTypeMap = persistenceService.getEntitiesMap( SampleDataType.class, - EchoBaseFunctions.SAMPLE_DATA_TYPE_NAME); + SampleDataTypes.SAMPLE_DATA_TYPE_NAME); EchoBaseCsvFileImportResult importResult = newImportResult(inputFile); diff --git a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/CommonAllImportService.java b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/CommonAllImportService.java index 3b3cd2e..fa45965 100644 --- a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/CommonAllImportService.java +++ b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/CommonAllImportService.java @@ -20,9 +20,9 @@ */ package fr.ifremer.echobase.services.service.importdata; -import fr.ifremer.echobase.EchoBaseFunctions; import fr.ifremer.echobase.entities.EchoBaseUser; import fr.ifremer.echobase.entities.references.Vessel; +import fr.ifremer.echobase.entities.references.Vessels; import javax.inject.Inject; import java.util.Map; @@ -50,7 +50,7 @@ public class CommonAllImportService extends AbstractImportDataService<CommonImpo // get usable vessels Map<String, Vessel> vesselMap = persistenceService.getEntitiesMap( - Vessel.class, EchoBaseFunctions.VESSEL_NAME); + Vessel.class, Vessels.VESSEL_NAME); EchoBaseCsvFileImportResult importResult; diff --git a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/CommonTransectImportService.java b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/CommonTransectImportService.java index 358d337..58f3800 100644 --- a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/CommonTransectImportService.java +++ b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/CommonTransectImportService.java @@ -21,13 +21,14 @@ package fr.ifremer.echobase.services.service.importdata; import com.google.common.collect.Maps; -import fr.ifremer.echobase.EchoBaseFunctions; import fr.ifremer.echobase.entities.EchoBaseUser; import fr.ifremer.echobase.entities.EchoBaseUserEntityEnum; import fr.ifremer.echobase.entities.data.Transect; import fr.ifremer.echobase.entities.data.Transit; import fr.ifremer.echobase.entities.data.Voyage; +import fr.ifremer.echobase.entities.data.Voyages; import fr.ifremer.echobase.entities.references.Vessel; +import fr.ifremer.echobase.entities.references.Vessels; import fr.ifremer.echobase.io.InputFile; import fr.ifremer.echobase.services.service.importdata.csv.TransectImportModel; import fr.ifremer.echobase.services.service.importdata.csv.TransectImportRow; @@ -62,7 +63,7 @@ public class CommonTransectImportService extends AbstractImportDataService<Commo // get usable vessels Map<String, Vessel> vesselMap = persistenceService.getEntitiesMap( - Vessel.class, EchoBaseFunctions.VESSEL_NAME); + Vessel.class, Vessels.VESSEL_NAME); EchoBaseCsvFileImportResult importResult; @@ -90,7 +91,7 @@ public class CommonTransectImportService extends AbstractImportDataService<Commo // restrict voyage to use to this voyage Map<String, Voyage> voyageMap = Maps.uniqueIndex( - Arrays.asList(voyage), EchoBaseFunctions.VOYAGE_NAME); + Arrays.asList(voyage), Voyages.VOYAGE_NAME); String datum = configuration.getDatum(); String license = configuration.getTransectLicence(); diff --git a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/CommonTransitImportService.java b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/CommonTransitImportService.java index 71cfe62..7e71d76 100644 --- a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/CommonTransitImportService.java +++ b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/CommonTransitImportService.java @@ -22,11 +22,11 @@ package fr.ifremer.echobase.services.service.importdata; */ import com.google.common.collect.Maps; -import fr.ifremer.echobase.EchoBaseFunctions; import fr.ifremer.echobase.entities.EchoBaseUser; import fr.ifremer.echobase.entities.EchoBaseUserEntityEnum; import fr.ifremer.echobase.entities.data.Transit; import fr.ifremer.echobase.entities.data.Voyage; +import fr.ifremer.echobase.entities.data.Voyages; import fr.ifremer.echobase.io.InputFile; import fr.ifremer.echobase.services.service.importdata.csv.TransitImportModel; import fr.ifremer.echobase.services.service.importdata.csv.TransitImportRow; @@ -79,7 +79,7 @@ public class CommonTransitImportService extends AbstractImportDataService<Common // restrict voyage to use to this voyage Map<String, Voyage> voyageMap = Maps.uniqueIndex( - Arrays.asList(voyage), EchoBaseFunctions.VOYAGE_NAME); + Arrays.asList(voyage), Voyages.VOYAGE_NAME); String relatedActivity = configuration.getTransitRelatedActivity(); diff --git a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/OperationImportService.java b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/OperationImportService.java index 6f90a22..6941a55 100644 --- a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/OperationImportService.java +++ b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/OperationImportService.java @@ -21,20 +21,25 @@ package fr.ifremer.echobase.services.service.importdata; import com.google.common.collect.Maps; -import fr.ifremer.echobase.EchoBaseFunctions; import fr.ifremer.echobase.entities.EchoBaseUser; import fr.ifremer.echobase.entities.EchoBaseUserEntityEnum; import fr.ifremer.echobase.entities.data.GearMetadataValue; import fr.ifremer.echobase.entities.data.Operation; import fr.ifremer.echobase.entities.data.OperationMetadataValue; +import fr.ifremer.echobase.entities.data.Operations; import fr.ifremer.echobase.entities.data.Transect; import fr.ifremer.echobase.entities.data.Transit; import fr.ifremer.echobase.entities.data.Voyage; import fr.ifremer.echobase.entities.references.DepthStratum; +import fr.ifremer.echobase.entities.references.DepthStratums; import fr.ifremer.echobase.entities.references.Gear; import fr.ifremer.echobase.entities.references.GearMetadata; +import fr.ifremer.echobase.entities.references.GearMetadatas; +import fr.ifremer.echobase.entities.references.Gears; import fr.ifremer.echobase.entities.references.OperationMetadata; +import fr.ifremer.echobase.entities.references.OperationMetadatas; import fr.ifremer.echobase.entities.references.Vessel; +import fr.ifremer.echobase.entities.references.Vessels; import fr.ifremer.echobase.io.InputFile; import fr.ifremer.echobase.services.service.importdata.csv.GearMetadataValueImportModel; import fr.ifremer.echobase.services.service.importdata.csv.GearMetadataValueImportRow; @@ -75,11 +80,11 @@ public class OperationImportService extends AbstractImportDataService<OperationI // get usable vessels from the voyage by their name Map<String, Vessel> vesselMap = Maps.uniqueIndex( - voyage.getAllVessels(), EchoBaseFunctions.VESSEL_NAME); + voyage.getAllVessels(), Vessels.VESSEL_NAME); // get usable gears by their casino gear name Map<String, Gear> gearMap = persistenceService.getEntitiesMap( - Gear.class, EchoBaseFunctions.GEAR_CASINO_GEAR_NAME); + Gear.class, Gears.GEAR_CASINO_GEAR_NAME); EchoBaseCsvFileImportResult importResult; @@ -94,7 +99,7 @@ public class OperationImportService extends AbstractImportDataService<OperationI // split them by operation Id Map<String, Operation> operationMap = Maps.uniqueIndex( - operations, EchoBaseFunctions.OPERATION_ID); + operations, Operations.OPERATION_ID); importResult = importOperationMetadataFile(configuration, vesselMap, @@ -125,7 +130,7 @@ public class OperationImportService extends AbstractImportDataService<OperationI EchoBaseCsvFileImportResult importResult = newImportResult(inputFile); Map<String, DepthStratum> depthStratumMap = persistenceService.getEntitiesMap( - DepthStratum.class, EchoBaseFunctions.DEPTH_STRATUM_ID); + DepthStratum.class, DepthStratums.DEPTH_STRATUM_ID); OperationImportModel csvModel = new OperationImportModel(getCsvSeparator(), @@ -187,7 +192,7 @@ public class OperationImportService extends AbstractImportDataService<OperationI Map<String, OperationMetadata> operationMetadatasByName = persistenceService.getEntitiesMap(OperationMetadata.class, - EchoBaseFunctions.OPERATION_METADATA_NAME); + OperationMetadatas.OPERATION_METADATA_NAME); OperationMetadataValueImportModel csvModel = new OperationMetadataValueImportModel(getCsvSeparator(), @@ -240,7 +245,7 @@ public class OperationImportService extends AbstractImportDataService<OperationI Map<String, GearMetadata> gearMetadatasByType = persistenceService.getEntitiesMap(GearMetadata.class, - EchoBaseFunctions.GEAR_METADATA_NAME); + GearMetadatas.GEAR_METADATA_NAME); GearMetadataValueImportModel csvModel = new GearMetadataValueImportModel(getCsvSeparator(), diff --git a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsEsduCellImportService.java b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsEsduCellImportService.java index b04e6af..e0d6212 100644 --- a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsEsduCellImportService.java +++ b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsEsduCellImportService.java @@ -21,19 +21,26 @@ package fr.ifremer.echobase.services.service.importdata; import com.google.common.collect.Maps; -import fr.ifremer.echobase.EchoBaseFunctions; import fr.ifremer.echobase.entities.EchoBaseUser; import fr.ifremer.echobase.entities.EchoBaseUserEntityEnum; import fr.ifremer.echobase.entities.data.Category; import fr.ifremer.echobase.entities.data.Cell; +import fr.ifremer.echobase.entities.data.Cells; import fr.ifremer.echobase.entities.data.DataProcessing; import fr.ifremer.echobase.entities.data.Echotype; +import fr.ifremer.echobase.entities.data.Echotypes; import fr.ifremer.echobase.entities.data.Voyage; +import fr.ifremer.echobase.entities.data.Voyages; +import fr.ifremer.echobase.entities.references.AgeCategories; import fr.ifremer.echobase.entities.references.AgeCategory; import fr.ifremer.echobase.entities.references.DataMetadata; +import fr.ifremer.echobase.entities.references.DataMetadatas; +import fr.ifremer.echobase.entities.references.DataQualities; import fr.ifremer.echobase.entities.references.DataQuality; +import fr.ifremer.echobase.entities.references.SizeCategories; import fr.ifremer.echobase.entities.references.SizeCategory; import fr.ifremer.echobase.entities.references.Species; +import fr.ifremer.echobase.entities.references.Species2; import fr.ifremer.echobase.io.InputFile; import fr.ifremer.echobase.services.service.importdata.csv.EsduResultByEchotypeAndSpeciesCategoryImportModel; import fr.ifremer.echobase.services.service.importdata.csv.EsduResultByEchotypeAndSpeciesCategoryImportRow; @@ -72,21 +79,21 @@ public class ResultsEsduCellImportService extends AbstractImportDataService<Resu EchoBaseUser user) throws ImportException { Map<String, Species> speciesMap = persistenceService.getEntitiesMap( - Species.class, EchoBaseFunctions.SPECIES_BARACOUDA_CODE); + Species.class, Species2.SPECIES_BARACOUDA_CODE); Map<String, SizeCategory> sizeCategoryMap = Maps.newTreeMap(); sizeCategoryMap.putAll(persistenceService.getEntitiesMap( - SizeCategory.class, EchoBaseFunctions.SIZE_CATEGORY_NAME)); + SizeCategory.class, SizeCategories.SIZE_CATEGORY_NAME)); Map<String, AgeCategory> ageCategoryMap = Maps.newTreeMap(); ageCategoryMap.putAll(persistenceService.getEntitiesMap( - AgeCategory.class, EchoBaseFunctions.AGE_CATEGORY_NAME)); + AgeCategory.class, AgeCategories.AGE_CATEGORY_NAME)); Map<String, DataMetadata> dataMetadataMap = persistenceService.getEntitiesMap( - DataMetadata.class, EchoBaseFunctions.DATA_METADATA_NAME); + DataMetadata.class, DataMetadatas.DATA_METADATA_NAME); Map<String, DataQuality> dataQualityMap = persistenceService.getEntitiesMap( - DataQuality.class, EchoBaseFunctions.DATA_QUALITY_NAME); + DataQuality.class, DataQualities.DATA_QUALITY_NAME); // get selected voyage Voyage voyage = persistenceService.getVoyage( @@ -98,15 +105,15 @@ public class ResultsEsduCellImportService extends AbstractImportDataService<Resu // authorize only the selected voyage to be imported Map<String, Voyage> voyageMap = Maps.uniqueIndex(Arrays.asList( - voyage), EchoBaseFunctions.VOYAGE_NAME); + voyage), Voyages.VOYAGE_NAME); // get esdu cells usables Map<String, Cell> esduCellMap = Maps.uniqueIndex( - dataProcessing.getCell(), EchoBaseFunctions.CELL_BY_NAME); + dataProcessing.getCell(), Cells.CELL_BY_NAME); // index all echotypes of this voyage Map<String, Echotype> echotypeMap = Maps.uniqueIndex( - voyage.getEchotype(), EchoBaseFunctions.ECHOTYPE_NAME); + voyage.getEchotype(), Echotypes.ECHOTYPE_NAME); InputFile inputFile; EchoBaseCsvFileImportResult importResult; diff --git a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsMapFishCellImportService.java b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsMapFishCellImportService.java index 754cd20..46961c5 100644 --- a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsMapFishCellImportService.java +++ b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsMapFishCellImportService.java @@ -21,20 +21,25 @@ package fr.ifremer.echobase.services.service.importdata; import com.google.common.collect.Maps; -import fr.ifremer.echobase.EchoBaseFunctions; import fr.ifremer.echobase.entities.EchoBaseUser; import fr.ifremer.echobase.entities.EchoBaseUserEntityEnum; import fr.ifremer.echobase.entities.data.Category; import fr.ifremer.echobase.entities.data.Cell; import fr.ifremer.echobase.entities.data.Voyage; +import fr.ifremer.echobase.entities.data.Voyages; +import fr.ifremer.echobase.entities.references.AgeCategories; import fr.ifremer.echobase.entities.references.AgeCategory; import fr.ifremer.echobase.entities.references.CellType; import fr.ifremer.echobase.entities.references.CellTypeImpl; import fr.ifremer.echobase.entities.references.DataMetadata; import fr.ifremer.echobase.entities.references.DataMetadataImpl; +import fr.ifremer.echobase.entities.references.DataMetadatas; +import fr.ifremer.echobase.entities.references.DataQualities; import fr.ifremer.echobase.entities.references.DataQuality; +import fr.ifremer.echobase.entities.references.SizeCategories; import fr.ifremer.echobase.entities.references.SizeCategory; import fr.ifremer.echobase.entities.references.Species; +import fr.ifremer.echobase.entities.references.Species2; import fr.ifremer.echobase.io.InputFile; import fr.ifremer.echobase.services.service.importdata.csv.MapCellImportModel; import fr.ifremer.echobase.services.service.importdata.csv.MapCellImportRow; @@ -104,24 +109,24 @@ public class ResultsMapFishCellImportService extends AbstractImportDataService<R // authorize only the selected voyage to be imported Map<String, Voyage> voyageMap = Maps.uniqueIndex(Arrays.asList( - voyage), EchoBaseFunctions.VOYAGE_NAME); + voyage), Voyages.VOYAGE_NAME); Map<String, Species> speciesMap = persistenceService.getEntitiesMap( - Species.class, EchoBaseFunctions.SPECIES_BARACOUDA_CODE); + Species.class, Species2.SPECIES_BARACOUDA_CODE); Map<String, SizeCategory> sizeCategoryMap = Maps.newTreeMap(); sizeCategoryMap.putAll(persistenceService.getEntitiesMap( - SizeCategory.class, EchoBaseFunctions.SIZE_CATEGORY_NAME)); + SizeCategory.class, SizeCategories.SIZE_CATEGORY_NAME)); Map<String, AgeCategory> ageCategoryMap = Maps.newTreeMap(); ageCategoryMap.putAll(persistenceService.getEntitiesMap( - AgeCategory.class, EchoBaseFunctions.AGE_CATEGORY_NAME)); + AgeCategory.class, AgeCategories.AGE_CATEGORY_NAME)); Map<String, DataMetadata> dataMetadataMap = persistenceService.getEntitiesMap( - DataMetadata.class, EchoBaseFunctions.DATA_METADATA_NAME); + DataMetadata.class, DataMetadatas.DATA_METADATA_NAME); Map<String, DataQuality> dataQualityMap = persistenceService.getEntitiesMap( - DataQuality.class, EchoBaseFunctions.DATA_QUALITY_NAME); + DataQuality.class, DataQualities.DATA_QUALITY_NAME); // first get header of file to detect which results to import String[] header = CsvReaders.getHeader(inputFile.getFile(), diff --git a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsMapOtherCellImportService.java b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsMapOtherCellImportService.java index f89d858..0b654c4 100644 --- a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsMapOtherCellImportService.java +++ b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsMapOtherCellImportService.java @@ -22,15 +22,17 @@ package fr.ifremer.echobase.services.service.importdata; */ import com.google.common.collect.Maps; -import fr.ifremer.echobase.EchoBaseFunctions; import fr.ifremer.echobase.entities.EchoBaseUser; import fr.ifremer.echobase.entities.EchoBaseUserEntityEnum; import fr.ifremer.echobase.entities.data.Cell; import fr.ifremer.echobase.entities.data.Voyage; +import fr.ifremer.echobase.entities.data.Voyages; import fr.ifremer.echobase.entities.references.CellType; import fr.ifremer.echobase.entities.references.CellTypeImpl; import fr.ifremer.echobase.entities.references.DataMetadata; import fr.ifremer.echobase.entities.references.DataMetadataImpl; +import fr.ifremer.echobase.entities.references.DataMetadatas; +import fr.ifremer.echobase.entities.references.DataQualities; import fr.ifremer.echobase.entities.references.DataQuality; import fr.ifremer.echobase.io.InputFile; import fr.ifremer.echobase.services.service.importdata.csv.MapCellImportModel; @@ -100,13 +102,13 @@ public class ResultsMapOtherCellImportService extends AbstractImportDataService< // authorize only the selected voyage to be imported Map<String, Voyage> voyageMap = Maps.uniqueIndex(Arrays.asList( - voyage), EchoBaseFunctions.VOYAGE_NAME); + voyage), Voyages.VOYAGE_NAME); Map<String, DataMetadata> dataMetadataMap = persistenceService.getEntitiesMap( - DataMetadata.class, EchoBaseFunctions.DATA_METADATA_NAME); + DataMetadata.class, DataMetadatas.DATA_METADATA_NAME); Map<String, DataQuality> dataQualityMap = persistenceService.getEntitiesMap( - DataQuality.class, EchoBaseFunctions.DATA_QUALITY_NAME); + DataQuality.class, DataQualities.DATA_QUALITY_NAME); // first get header of file to detect which results to import String[] header = CsvReaders.getHeader(inputFile.getFile(), diff --git a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsRegionCellImportService.java b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsRegionCellImportService.java index dd258d9..75cd81d 100644 --- a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsRegionCellImportService.java +++ b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsRegionCellImportService.java @@ -21,19 +21,26 @@ package fr.ifremer.echobase.services.service.importdata; import com.google.common.collect.Maps; -import fr.ifremer.echobase.EchoBaseFunctions; import fr.ifremer.echobase.entities.EchoBaseUser; import fr.ifremer.echobase.entities.EchoBaseUserEntityEnum; import fr.ifremer.echobase.entities.data.Category; import fr.ifremer.echobase.entities.data.Cell; +import fr.ifremer.echobase.entities.data.Cells; import fr.ifremer.echobase.entities.data.Echotype; +import fr.ifremer.echobase.entities.data.Echotypes; import fr.ifremer.echobase.entities.data.Voyage; +import fr.ifremer.echobase.entities.data.Voyages; import fr.ifremer.echobase.entities.references.CellType; +import fr.ifremer.echobase.entities.references.CellTypes; import fr.ifremer.echobase.entities.references.DataMetadata; import fr.ifremer.echobase.entities.references.DataMetadataImpl; +import fr.ifremer.echobase.entities.references.DataMetadatas; +import fr.ifremer.echobase.entities.references.DataQualities; import fr.ifremer.echobase.entities.references.DataQuality; +import fr.ifremer.echobase.entities.references.SizeCategories; import fr.ifremer.echobase.entities.references.SizeCategory; import fr.ifremer.echobase.entities.references.Species; +import fr.ifremer.echobase.entities.references.Species2; import fr.ifremer.echobase.io.InputFile; import fr.ifremer.echobase.services.service.importdata.csv.RegionCellAssociationImportModel; import fr.ifremer.echobase.services.service.importdata.csv.RegionCellAssociationImportRow; @@ -74,7 +81,7 @@ public class ResultsRegionCellImportService extends AbstractImportDataService<Re configuration.getVoyageId()); Map<String, DataQuality> dataQualityMap = persistenceService.getEntitiesMap( - DataQuality.class, EchoBaseFunctions.DATA_QUALITY_NAME); + DataQuality.class, DataQualities.DATA_QUALITY_NAME); EchoBaseCsvFileImportResult importResult; @@ -103,12 +110,12 @@ public class ResultsRegionCellImportService extends AbstractImportDataService<Re // authorize only the selected voyage to be imported Map<String, Voyage> voyageMap = Maps.uniqueIndex(Arrays.asList( - voyage), EchoBaseFunctions.VOYAGE_NAME); + voyage), Voyages.VOYAGE_NAME); // authorize only to use region* cell types Map<String, CellType> cellTypeMap = Maps.uniqueIndex( allCellTypes, - EchoBaseFunctions.CELL_TYPE_ID); + CellTypes.CELL_TYPE_ID); RegionCellImportModel csvModel = new RegionCellImportModel( getCsvSeparator(), @@ -181,10 +188,10 @@ public class ResultsRegionCellImportService extends AbstractImportDataService<Re // authorize only the selected voyage to be imported Map<String, Voyage> voyageMap = Maps.uniqueIndex(Arrays.asList( - voyage), EchoBaseFunctions.VOYAGE_NAME); + voyage), Voyages.VOYAGE_NAME); Map<String, Cell> regionsMap = Maps.uniqueIndex( - voyage.getRegionCells(), EchoBaseFunctions.CELL_BY_NAME); + voyage.getRegionCells(), Cells.CELL_BY_NAME); RegionCellAssociationImportModel csvModel = new RegionCellAssociationImportModel( getCsvSeparator(), @@ -233,25 +240,25 @@ public class ResultsRegionCellImportService extends AbstractImportDataService<Re // authorize only the selected voyage to be imported Map<String, Voyage> voyageMap = Maps.uniqueIndex(Arrays.asList( - voyage), EchoBaseFunctions.VOYAGE_NAME); + voyage), Voyages.VOYAGE_NAME); // index regions of the voyage Map<String, Cell> regionsMap = Maps.uniqueIndex( - voyage.getRegionCells(), EchoBaseFunctions.CELL_BY_NAME); + voyage.getRegionCells(), Cells.CELL_BY_NAME); // index all echotypes of thi voyage Map<String, Echotype> echotypeMap = Maps.uniqueIndex( - voyage.getEchotype(), EchoBaseFunctions.ECHOTYPE_NAME); + voyage.getEchotype(), Echotypes.ECHOTYPE_NAME); Map<String, Species> speciesMap = persistenceService.getEntitiesMap( - Species.class, EchoBaseFunctions.SPECIES_BARACOUDA_CODE); + Species.class, Species2.SPECIES_BARACOUDA_CODE); Map<String, SizeCategory> sizeCategoryMap = Maps.newTreeMap(); sizeCategoryMap.putAll(persistenceService.getEntitiesMap( - SizeCategory.class, EchoBaseFunctions.SIZE_CATEGORY_NAME)); + SizeCategory.class, SizeCategories.SIZE_CATEGORY_NAME)); Map<String, DataMetadata> dataMetadataMap = persistenceService.getEntitiesMap( - DataMetadata.class, EchoBaseFunctions.DATA_METADATA_NAME); + DataMetadata.class, DataMetadatas.DATA_METADATA_NAME); // first get header of file to detect which results to import String[] header = CsvReaders.getHeader(inputFile.getFile(), diff --git a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsVoyageImportService.java b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsVoyageImportService.java index 3dd07d5..d30c53f 100644 --- a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsVoyageImportService.java +++ b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/importdata/ResultsVoyageImportService.java @@ -23,19 +23,23 @@ package fr.ifremer.echobase.services.service.importdata; import com.google.common.base.Predicate; import com.google.common.collect.Iterables; import com.google.common.collect.Maps; -import fr.ifremer.echobase.EchoBaseFunctions; -import fr.ifremer.echobase.EchoBasePredicates; import fr.ifremer.echobase.entities.EchoBaseUser; import fr.ifremer.echobase.entities.EchoBaseUserEntityEnum; import fr.ifremer.echobase.entities.data.Echotype; +import fr.ifremer.echobase.entities.data.Echotypes; import fr.ifremer.echobase.entities.data.LengthAgeKey; import fr.ifremer.echobase.entities.data.LengthWeightKey; import fr.ifremer.echobase.entities.data.Voyage; +import fr.ifremer.echobase.entities.data.Voyages; import fr.ifremer.echobase.entities.references.DepthStratum; +import fr.ifremer.echobase.entities.references.DepthStratums; +import fr.ifremer.echobase.entities.references.SizeCategories; import fr.ifremer.echobase.entities.references.SizeCategory; import fr.ifremer.echobase.entities.references.Species; +import fr.ifremer.echobase.entities.references.Species2; import fr.ifremer.echobase.entities.references.SpeciesCategory; import fr.ifremer.echobase.entities.references.Strata; +import fr.ifremer.echobase.entities.references.Stratas; import fr.ifremer.echobase.io.InputFile; import fr.ifremer.echobase.services.service.importdata.csv.EchotypeImportModel; import fr.ifremer.echobase.services.service.importdata.csv.EchotypeImportRow; @@ -71,10 +75,10 @@ public class ResultsVoyageImportService extends AbstractImportDataService<Result Map<String, Species> speciesMap = persistenceService.getEntitiesMap( Species.class, - EchoBaseFunctions.SPECIES_BARACOUDA_CODE); + Species2.SPECIES_BARACOUDA_CODE); Map<String, Strata> strataMap = persistenceService.getEntitiesMap( - Strata.class, EchoBaseFunctions.STRATA_BY_NAME); + Strata.class, Stratas.STRATA_BY_NAME); // get selected voyage Voyage voyage = persistenceService.getVoyage( @@ -82,7 +86,7 @@ public class ResultsVoyageImportService extends AbstractImportDataService<Result // authorize only the selected voyage to be imported Map<String, Voyage> voyageMap = Maps.uniqueIndex(Arrays.asList( - voyage), EchoBaseFunctions.VOYAGE_NAME); + voyage), Voyages.VOYAGE_NAME); InputFile inputFile; @@ -144,7 +148,7 @@ public class ResultsVoyageImportService extends AbstractImportDataService<Result Map<String, SizeCategory> sizeCategoryMap = persistenceService.getEntitiesMap( SizeCategory.class, - EchoBaseFunctions.SIZE_CATEGORY_NAME); + SizeCategories.SIZE_CATEGORY_NAME); LengthWeightKeyImportModel csvModel = new LengthWeightKeyImportModel( getCsvSeparator(), @@ -266,7 +270,7 @@ public class ResultsVoyageImportService extends AbstractImportDataService<Result Map<String, DepthStratum> depthStratumMap = persistenceService.getEntitiesMap( DepthStratum.class, - EchoBaseFunctions.DEPTH_STRATUM_ID); + DepthStratums.DEPTH_STRATUM_ID); EchotypeImportModel csvModel = new EchotypeImportModel( getCsvSeparator(), @@ -299,7 +303,7 @@ public class ResultsVoyageImportService extends AbstractImportDataService<Result Collection<Echotype> echotypes = voyage.getEchotype(); Predicate<Echotype> predicate = - EchoBasePredicates.newEchotypeByNamePredicate( + Echotypes.newEchotypeByNamePredicate( echotypeName); echotype = Iterables.find(echotypes, predicate, null); diff --git a/echobase-services/src/test/java/fr/ifremer/echobase/services/service/importdata/AbstractImportDataServiceIT.java b/echobase-services/src/test/java/fr/ifremer/echobase/services/service/importdata/AbstractImportDataServiceIT.java index 026f292..0852c93 100644 --- a/echobase-services/src/test/java/fr/ifremer/echobase/services/service/importdata/AbstractImportDataServiceIT.java +++ b/echobase-services/src/test/java/fr/ifremer/echobase/services/service/importdata/AbstractImportDataServiceIT.java @@ -22,11 +22,11 @@ package fr.ifremer.echobase.services.service.importdata; import com.google.common.collect.Collections2; import com.google.common.collect.Sets; -import fr.ifremer.echobase.EchoBaseFunctions; import fr.ifremer.echobase.csv.EchoBaseCsvUtil; import fr.ifremer.echobase.entities.EchoBaseUser; import fr.ifremer.echobase.entities.data.Cell; import fr.ifremer.echobase.entities.data.CellTopiaDao; +import fr.ifremer.echobase.entities.data.Cells; import fr.ifremer.echobase.entities.data.Data; import fr.ifremer.echobase.entities.data.DataAcquisition; import fr.ifremer.echobase.entities.data.DataProcessing; @@ -208,7 +208,7 @@ public abstract class AbstractImportDataServiceIT extends EchoBaseTestServiceSup cellsNames = Sets.newHashSet(); } else { cellsNames = Sets.newHashSet(Collections2.transform( - dataProcessing.getCell(), EchoBaseFunctions.CELL_BY_NAME)); + dataProcessing.getCell(), Cells.CELL_BY_NAME)); } ResultEdsuImportMockImportModel csvModel = new ResultEdsuImportMockImportModel( -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository echobase. See http://git.codelutin.com/echobase.git commit bee747698d8a1fd8bd9f906ca926ffa0a5b3bc4f Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Jan 21 18:03:47 2015 +0100 pas de calcul de zone au depart --- .../echobase/ui/actions/exportCoser/Configure.java | 21 +-------------------- 1 file changed, 1 insertion(+), 20 deletions(-) diff --git a/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/exportCoser/Configure.java b/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/exportCoser/Configure.java index a9d37c0..d599329 100644 --- a/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/exportCoser/Configure.java +++ b/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/exportCoser/Configure.java @@ -21,7 +21,6 @@ package fr.ifremer.echobase.ui.actions.exportCoser; * #L% */ -import com.google.common.collect.Maps; import fr.ifremer.echobase.EchoBaseTechnicalException; import fr.ifremer.echobase.entities.references.Mission; import fr.ifremer.echobase.persistence.JdbcConfiguration; @@ -30,7 +29,6 @@ import fr.ifremer.echobase.services.service.exportCoser.ExportCoserConfiguration import fr.ifremer.echobase.ui.EchoBaseSession; import fr.ifremer.echobase.ui.actions.AbstractConfigureAction; import org.apache.commons.io.FileUtils; -import org.apache.commons.lang3.StringUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.nuiton.util.FileUtil; @@ -68,12 +66,6 @@ public class Configure extends AbstractConfigureAction<ExportCoserConfiguration> protected Map<String, String> facades; /** - * Universe of zones (coming from Coser) - * for a given facade. - */ - protected Map<String, String> zones; - - /** * If coser services are not reachable. */ protected boolean coserUnreachable; @@ -91,7 +83,7 @@ public class Configure extends AbstractConfigureAction<ExportCoserConfiguration> } public Map<String, String> getZones() { - return zones; + return Collections.emptyMap(); } public Map<String, String> getPopulationIndicators() { @@ -156,17 +148,6 @@ public class Configure extends AbstractConfigureAction<ExportCoserConfiguration> log.error(e); } coserUnreachable = true; - return; - } - - // Get Zones from Coser - if (StringUtils.isNotEmpty(getModel().getFacade())) { - - zones = coserApiService.getZonesForFacade(getModel().getFacade()); - } else { - - // No zone to display - zones = Maps.newHashMap(); } } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository echobase. See http://git.codelutin.com/echobase.git commit 6309fb7481f61a43114a85795385efd8cc0e0252 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Jan 21 18:04:06 2015 +0100 amelioration code --- .../echobase/services/service/CoserIndicators.java | 32 ++++ .../services/service/UserDbPersistenceService.java | 173 +++++++++------------ 2 files changed, 108 insertions(+), 97 deletions(-) diff --git a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/CoserIndicators.java b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/CoserIndicators.java new file mode 100644 index 0000000..de4edfb --- /dev/null +++ b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/CoserIndicators.java @@ -0,0 +1,32 @@ +package fr.ifremer.echobase.services.service; + +import fr.ifremer.echobase.entities.references.DataMetadata; + +import java.util.List; + +/** +* Created on 1/21/15. +* +* @author Tony Chemit - chemit@codelutin.com +* @since 2.9 +*/ +public class CoserIndicators { + + final List<DataMetadata> communityDataMetadatasList; + + final List<DataMetadata> populationDataMetadatasList; + + public CoserIndicators(List<DataMetadata> communityDataMetadatasList, List<DataMetadata> populationDataMetadatasList) { + this.communityDataMetadatasList = communityDataMetadatasList; + this.populationDataMetadatasList = populationDataMetadatasList; + } + + public List<DataMetadata> getCommunityDataMetadatasList() { + return communityDataMetadatasList; + } + + public List<DataMetadata> getPopulationDataMetadatasList() { + return populationDataMetadatasList; + } + +} diff --git a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/UserDbPersistenceService.java b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/UserDbPersistenceService.java index 9d7f942..7e4939d 100644 --- a/echobase-services/src/main/java/fr/ifremer/echobase/services/service/UserDbPersistenceService.java +++ b/echobase-services/src/main/java/fr/ifremer/echobase/services/service/UserDbPersistenceService.java @@ -107,6 +107,9 @@ import java.util.zip.GZIPOutputStream; */ public class UserDbPersistenceService extends EchoBaseServiceSupport { + /** Logger. */ + private static final Log log = LogFactory.getLog(UserDbPersistenceService.class); + @Inject private EchoBaseUserPersistenceContext persistenceContext; @@ -326,6 +329,79 @@ public class UserDbPersistenceService extends EchoBaseServiceSupport { return persistenceContext.getDataMetadataDao().forNameIn(names).findAll(); } + public CoserIndicators getRegionIndicators(String missionId, List<DataMetadata> dataMetadatas) { + + if (log.isInfoEnabled()) { + for (DataMetadata dataMetadata : dataMetadatas) { + log.info("Possible indicator: " + dataMetadata.getName()); + } + } + + Predicate<Species> communityIndicatorSpeciesPredicate = Species2.newCommunityIndicatorSpeciesPredicate(); + Predicate<Species> populationIndicatorSpeciesPredicate = Species2.newPopulationIndicatorSpeciesPredicate(); + + Set<DataMetadata> communityDataMetadatasSet = new HashSet<>(); + Set<DataMetadata> populationDataMetadatasSet = new HashSet<>(); + + Mission mission = getMission(missionId); + List<Voyage> voyagesForMission = getVoyagesForMission(mission); + + for (Voyage voyage : voyagesForMission) { + + if (log.isInfoEnabled()) { + log.info("Scan voyage: " + voyage.getName()); + } + + for (Cell cell : voyage.getRegionCells()) { + + for (Result result : cell.getResult()) { + + Species species = result.getCategory().getSpeciesCategory().getSpecies(); + + if (communityIndicatorSpeciesPredicate.apply(species)) { + + communityDataMetadatasSet.add(result.getDataMetadata()); + + } else if (populationIndicatorSpeciesPredicate.apply(species)) { + + populationDataMetadatasSet.add(result.getDataMetadata()); + + } + + } + } + } + + List<DataMetadata> communityDataMetadatasList = new ArrayList<>(communityDataMetadatasSet); + if (log.isInfoEnabled()) { + for (DataMetadata dataMetadata : communityDataMetadatasList) { + boolean willUse = dataMetadatas.contains(dataMetadata); + if (willUse) { + log.info("Community indicator accepted: " + dataMetadata.getName()); + } else { + log.info("Community indicator rejected: " + dataMetadata.getName()); + } + } + } + communityDataMetadatasList.retainAll(dataMetadatas); + + List<DataMetadata> populationDataMetadatasList = new ArrayList<>(populationDataMetadatasSet); + if (log.isInfoEnabled()) { + for (DataMetadata dataMetadata : populationDataMetadatasList) { + boolean willUse = dataMetadatas.contains(dataMetadata); + if (willUse) { + log.info("Population indicator accepted: " + dataMetadata.getName()); + } else { + log.info("Population indicator rejected: " + dataMetadata.getName()); + } + } + } + populationDataMetadatasList.retainAll(dataMetadatas); + + return new CoserIndicators(communityDataMetadatasList, populationDataMetadatasList); + + } + //------------------------------------------------------------------------// //--- DataProcessing -----------------------------------------------------// //------------------------------------------------------------------------// @@ -881,103 +957,6 @@ public class UserDbPersistenceService extends EchoBaseServiceSupport { } - public static class RegionIndicators { - - final List<DataMetadata> communityDataMetadatasList; - - final List<DataMetadata> populationDataMetadatasList; - - public RegionIndicators(List<DataMetadata> communityDataMetadatasList, List<DataMetadata> populationDataMetadatasList) { - this.communityDataMetadatasList = communityDataMetadatasList; - this.populationDataMetadatasList = populationDataMetadatasList; - } - - public List<DataMetadata> getCommunityDataMetadatasList() { - return communityDataMetadatasList; - } - - public List<DataMetadata> getPopulationDataMetadatasList() { - return populationDataMetadatasList; - } - - } - - /** Logger. */ - private static final Log log = LogFactory.getLog(UserDbPersistenceService.class); - - public RegionIndicators getRegionIndicators(String missionId, List<DataMetadata> dataMetadatas) { - - if (log.isInfoEnabled()) { - for (DataMetadata dataMetadata : dataMetadatas) { - log.info("Possible indicator: " + dataMetadata.getName()); - } - } - - Predicate<Species> communityIndicatorSpeciesPredicate = Species2.newCommunityIndicatorSpeciesPredicate(); - Predicate<Species> populationIndicatorSpeciesPredicate = Species2.newPopulationIndicatorSpeciesPredicate(); - - Set<DataMetadata> communityDataMetadatasSet = new HashSet<>(); - Set<DataMetadata> populationDataMetadatasSet = new HashSet<>(); - - Mission mission = getMission(missionId); - List<Voyage> voyagesForMission = getVoyagesForMission(mission); - - for (Voyage voyage : voyagesForMission) { - - if (log.isInfoEnabled()) { - log.info("Scan voyage: " + voyage.getName()); - } - - for (Cell cell : voyage.getRegionCells()) { - - for (Result result : cell.getResult()) { - - Species species = result.getCategory().getSpeciesCategory().getSpecies(); - - if (communityIndicatorSpeciesPredicate.apply(species)) { - - communityDataMetadatasSet.add(result.getDataMetadata()); - - } else if (populationIndicatorSpeciesPredicate.apply(species)) { - - populationDataMetadatasSet.add(result.getDataMetadata()); - - } - - } - } - } - - List<DataMetadata> communityDataMetadatasList = new ArrayList<>(communityDataMetadatasSet); - if (log.isInfoEnabled()) { - for (DataMetadata dataMetadata : communityDataMetadatasList) { - boolean willUse = dataMetadatas.contains(dataMetadata); - if (willUse) { - log.info("Community indicator accepted: " + dataMetadata.getName()); - } else { - log.info("Community indicator rejected: " + dataMetadata.getName()); - } - } - } - communityDataMetadatasList.retainAll(dataMetadatas); - - List<DataMetadata> populationDataMetadatasList = new ArrayList<>(populationDataMetadatasSet); - if (log.isInfoEnabled()) { - for (DataMetadata dataMetadata : populationDataMetadatasList) { - boolean willUse = dataMetadatas.contains(dataMetadata); - if (willUse) { - log.info("Population indicator accepted: " + dataMetadata.getName()); - } else { - log.info("Population indicator rejected: " + dataMetadata.getName()); - } - } - } - populationDataMetadatasList.retainAll(dataMetadatas); - - return new RegionIndicators(communityDataMetadatasList, populationDataMetadatasList); - - } - private static class CountTableRows extends TopiaSqlQuery<Long> { public final String tableName; -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository echobase. See http://git.codelutin.com/echobase.git commit 7bd2f31d8698c5dd910ca5da416bc44b11678306 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Jan 21 18:05:47 2015 +0100 correction javascript --- echobase-ui/src/main/webapp/js/gridHelper.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/echobase-ui/src/main/webapp/js/gridHelper.js b/echobase-ui/src/main/webapp/js/gridHelper.js index 55a8468..7b06a79 100644 --- a/echobase-ui/src/main/webapp/js/gridHelper.js +++ b/echobase-ui/src/main/webapp/js/gridHelper.js @@ -317,11 +317,10 @@ missionSelectBox.change(missionId); // call url to obtain datas to inject in target select box - jQuery.getJSON(event.data.getUrl, event.data, function (result) { + jQuery.getJSON(getUrl, {missionId: missionId}, function (result) { - - $.fillSelectBox(result, 'communityIndicator', event.data.communityIndicatorSelectBox); - $.fillSelectBox(result, 'populationIndicator', event.data.populationIndicatorSelectBox); + $.fillSelectBox(result, 'communityIndicators', communityIndicatorSelectBox); + $.fillSelectBox(result, 'populationIndicators', populationIndicatorSelectBox); }); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository echobase. See http://git.codelutin.com/echobase.git commit 41a5a73b17fcf48791ac6735f5f403481df7e824 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Jan 21 18:08:04 2015 +0100 fix api --- .../ui/actions/exportCoser/GetAvailableIndicatorsForMission.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/exportCoser/GetAvailableIndicatorsForMission.java b/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/exportCoser/GetAvailableIndicatorsForMission.java index 0458637..edfac60 100644 --- a/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/exportCoser/GetAvailableIndicatorsForMission.java +++ b/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/exportCoser/GetAvailableIndicatorsForMission.java @@ -2,6 +2,7 @@ package fr.ifremer.echobase.ui.actions.exportCoser; import fr.ifremer.echobase.entities.references.DataMetadata; import fr.ifremer.echobase.services.service.CoserApiService; +import fr.ifremer.echobase.services.service.CoserIndicators; import fr.ifremer.echobase.services.service.DecoratorService; import fr.ifremer.echobase.services.service.UserDbPersistenceService; import fr.ifremer.echobase.ui.actions.EchoBaseActionSupport; @@ -64,10 +65,10 @@ public class GetAvailableIndicatorsForMission extends EchoBaseActionSupport { List<DataMetadata> dataMetadatas = userDbPersistenceService.getDataMetadatasInName(indicatorNames); - UserDbPersistenceService.RegionIndicators regionIndicators = userDbPersistenceService.getRegionIndicators(missionId, dataMetadatas); + CoserIndicators coserIndicators = userDbPersistenceService.getRegionIndicators(missionId, dataMetadatas); - this.communityIndicators = decoratorService.sortAndDecorate(regionIndicators.getCommunityDataMetadatasList(), null); - this.populationIndicators = decoratorService.sortAndDecorate(regionIndicators.getPopulationDataMetadatasList(), null); + this.communityIndicators = decoratorService.sortAndDecorate(coserIndicators.getCommunityDataMetadatasList(), null); + this.populationIndicators = decoratorService.sortAndDecorate(coserIndicators.getPopulationDataMetadatasList(), null); } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository echobase. See http://git.codelutin.com/echobase.git commit b81ab5bc6f4d48f48e71e24ff92b777377eaef06 Merge: cdde5a7 41a5a73 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Jan 21 18:08:23 2015 +0100 fixes #6513 .../fr/ifremer/echobase/EchoBaseFunctions.java | 371 --------------------- .../fr/ifremer/echobase/EchoBasePredicates.java | 190 ----------- .../fr/ifremer/echobase/entities/ImportLogs.java | 26 ++ .../fr/ifremer/echobase/entities/data/Cells.java | 68 ++++ .../echobase/entities/data/DataProcessings.java | 18 + .../ifremer/echobase/entities/data/Echotypes.java | 37 ++ .../ifremer/echobase/entities/data/Operations.java | 47 +++ .../fr/ifremer/echobase/entities/data/Results.java | 18 + .../ifremer/echobase/entities/data/Transects.java | 19 ++ .../ifremer/echobase/entities/data/VoyageImpl.java | 8 +- .../fr/ifremer/echobase/entities/data/Voyages.java | 18 + .../entities/references/AcousticInstruments.java | 26 ++ .../entities/references/AgeCategories.java | 18 + .../entities/references/AreaOfOperations.java | 18 + .../echobase/entities/references/CellMethods.java | 18 + .../echobase/entities/references/CellTypes.java | 80 +++++ .../entities/references/DataMetadatas.java | 18 + .../entities/references/DataQualities.java | 25 ++ .../echobase/entities/references/DataTypes.java | 18 + .../entities/references/DepthStratums.java | 18 + .../entities/references/EchotypeCategories.java | 18 + .../entities/references/GearMetadatas.java | 18 + .../echobase/entities/references/Gears.java | 21 ++ .../echobase/entities/references/Missions.java | 18 + .../entities/references/OperationEvents.java | 18 + .../entities/references/OperationMetadatas.java | 18 + .../entities/references/ReferenceDatumTypes.java | 18 + .../entities/references/ReferenceDatums.java | 18 + .../entities/references/SampleDataTypes.java | 25 ++ .../entities/references/SexCategories.java | 18 + .../entities/references/SizeCategories.java | 27 ++ .../echobase/entities/references/Species2.java | 8 + .../entities/references/SpeciesCategories.java | 29 ++ .../echobase/entities/references/Stratas.java | 18 + .../echobase/entities/references/VesselTypes.java | 18 + .../echobase/entities/references/Vessels.java | 18 + .../echobase/services/service/CoserIndicators.java | 32 ++ .../services/service/UserDbPersistenceService.java | 86 ++++- .../service/importdata/AcousticImportService.java | 13 +- .../service/importdata/CatchesImportService.java | 21 +- .../service/importdata/CommonAllImportService.java | 4 +- .../importdata/CommonTransectImportService.java | 7 +- .../importdata/CommonTransitImportService.java | 4 +- .../service/importdata/OperationImportService.java | 19 +- .../importdata/ResultsEsduCellImportService.java | 25 +- .../ResultsMapFishCellImportService.java | 19 +- .../ResultsMapOtherCellImportService.java | 10 +- .../importdata/ResultsRegionCellImportService.java | 31 +- .../importdata/ResultsVoyageImportService.java | 20 +- .../importdata/AbstractImportDataServiceIT.java | 4 +- .../echobase/ui/actions/dbeditor/GetEntities.java | 4 +- .../echobase/ui/actions/exportCoser/Configure.java | 45 +-- .../GetAvailableIndicatorsForMission.java | 78 +++++ .../main/resources/config/struts-exportCoser.xml | 6 + .../webapp/WEB-INF/jsp/exportCoser/configure.jsp | 7 + echobase-ui/src/main/webapp/js/gridHelper.js | 68 +++- 56 files changed, 1186 insertions(+), 684 deletions(-) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm