This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository tutti. See http://git.codelutin.com/tutti.git commit ed01b4fb5bfdcd55efec872e7c27361fcddb513e Author: Tony CHEMIT <chemit@codelutin.com> Date: Sat Apr 18 10:03:05 2015 +0200 refs #6990 utilisation aussi de la translation via referenceTaxonId lors du reste de l'import --- .../tutti/service/csv/SpeciesParserFormatter.java | 22 +++++++++++++++------- .../GenericFormatImportEntityParserFactory.java | 2 +- .../GenericFormatReferentialImportResult.java | 2 +- 3 files changed, 17 insertions(+), 9 deletions(-) diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/csv/SpeciesParserFormatter.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/csv/SpeciesParserFormatter.java index fe4de4f..3224d4d 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/csv/SpeciesParserFormatter.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/csv/SpeciesParserFormatter.java @@ -27,6 +27,7 @@ package fr.ifremer.tutti.service.csv; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.persistence.entities.referential.Speciess; import fr.ifremer.tutti.service.PersistenceService; +import org.nuiton.csv.ImportRuntimeException; import java.util.List; import java.util.Map; @@ -47,18 +48,18 @@ public class SpeciesParserFormatter extends EntityParserFormatterSupport<Species return new SpeciesParserFormatter(true, null, null); } - public static SpeciesParserFormatter newParser(PersistenceService persistenceService, Map<String, String> idTranslationMap) { - return new SpeciesParserFormatter(true, persistenceService, idTranslationMap); + public static SpeciesParserFormatter newParser(PersistenceService persistenceService, Map<Integer, Integer> referenceTaxonIdTranslationMap) { + return new SpeciesParserFormatter(true, persistenceService, referenceTaxonIdTranslationMap); } private final PersistenceService persistenceService; - private final Map<String, String> idTranslationMap; + private final Map<Integer, Integer> referenceTaxonIdTranslationMap; - protected SpeciesParserFormatter(boolean technical, PersistenceService persistenceService, Map<String, String> idTranslationMap) { + protected SpeciesParserFormatter(boolean technical, PersistenceService persistenceService, Map<Integer, Integer> referenceTaxonIdTranslationMap) { super("", technical, Species.class); this.persistenceService = persistenceService; - this.idTranslationMap = idTranslationMap; + this.referenceTaxonIdTranslationMap = referenceTaxonIdTranslationMap; } @Override @@ -89,8 +90,15 @@ public class SpeciesParserFormatter extends EntityParserFormatterSupport<Species @Override protected Species parseNotBlankValue(String value) { - if (idTranslationMap.containsKey(value)) { - value = idTranslationMap.get(value); + Integer referenceTaxonId; + try { + referenceTaxonId = Integer.valueOf(value); + } catch (NumberFormatException e) { + throw new ImportRuntimeException("Le format du Code taxon n'est pas valide, cela devrait ĂȘtre un entier: " + value); + } + + if (referenceTaxonIdTranslationMap.containsKey(referenceTaxonId)) { + value = String.valueOf(referenceTaxonIdTranslationMap.get(referenceTaxonId)); } return super.parseNotBlankValue(value); diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GenericFormatImportEntityParserFactory.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GenericFormatImportEntityParserFactory.java index e07d9b5..f798dda 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GenericFormatImportEntityParserFactory.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GenericFormatImportEntityParserFactory.java @@ -196,7 +196,7 @@ public class GenericFormatImportEntityParserFactory { public SpeciesParserFormatter getSpeciesParser() { if (speciesParser == null) { - speciesParser = SpeciesParserFormatter.newParser(persistenceService, importContext.getReferentialTemporarySpeciesFileResult().getIdTranslationMap()); + speciesParser = SpeciesParserFormatter.newParser(persistenceService, importContext.getReferentialTemporarySpeciesFileResult().getReferenceTaxonIdTranslationMap()); } return speciesParser; } diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GenericFormatReferentialImportResult.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GenericFormatReferentialImportResult.java index 3ca3317..ef42a8e 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GenericFormatReferentialImportResult.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GenericFormatReferentialImportResult.java @@ -160,7 +160,7 @@ public class GenericFormatReferentialImportResult<E extends TuttiReferentialEnti for (Map.Entry<String, String> entry : idTranslationMap.entrySet()) { String originalId = entry.getKey(); String targetId = entry.getValue(); - if (map.containsKey(targetId)) { + if (map.containsKey(originalId)) { list.add(String.format("original id: %s -> persist id: %s", originalId, targetId)); } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.