branch feature/7846_import_generique_et_taxon_obsoletes created (now d974af9)
This is an automated email from the git hooks/post-receive script. New change to branch feature/7846_import_generique_et_taxon_obsoletes in repository tutti. See http://git.codelutin.com/tutti.git at d974af9 Amélioration du code de dictionnaire des taxons obstolètes et importés This branch includes the following new commits: new 5492b28 Lors du chargement d'un protocol, on remplace les taxon referents obsoletes new d974af9 Amélioration du code de dictionnaire des taxons obstolètes et importés The 2 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 d974af9432922d7a46af8b2daf335193a1737170 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Jan 5 16:43:57 2016 +0100 Amélioration du code de dictionnaire des taxons obstolètes et importés commit 5492b284a8dff69a74bc0e9d2c3421d876763888 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Jan 5 16:42:58 2016 +0100 Lors du chargement d'un protocol, on remplace les taxon referents obsoletes -- 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 feature/7846_import_generique_et_taxon_obsoletes in repository tutti. See http://git.codelutin.com/tutti.git commit 5492b284a8dff69a74bc0e9d2c3421d876763888 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Jan 5 16:42:58 2016 +0100 Lors du chargement d'un protocol, on remplace les taxon referents obsoletes --- .../main/java/fr/ifremer/tutti/persistence/TuttiPersistenceImpl.java | 4 ++++ .../ifremer/tutti/persistence/entities/protocol/TuttiProtocols.java | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistenceImpl.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistenceImpl.java index 8951e86..cdb649b 100644 --- a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistenceImpl.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/TuttiPersistenceImpl.java @@ -997,6 +997,10 @@ public class TuttiPersistenceImpl implements TuttiPersistence { public TuttiProtocol getProtocol(String id) { TuttiProtocol protocol = getProtocolService().getProtocol(id); + // translate obsolete referent taxons (See https://forge.codelutin.com/issues/7846) + Map<Integer, Integer> allObsoleteReferentTaxons = getAllObsoleteReferentTaxons(); + TuttiProtocols.translateReferenceTaxonIds(protocol, allObsoleteReferentTaxons); + // sanity it (remove all bad species and benthos) // see http://forge.codelutin.com/issues/4154 diff --git a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/protocol/TuttiProtocols.java b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/protocol/TuttiProtocols.java index 540d59c..42145e0 100644 --- a/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/protocol/TuttiProtocols.java +++ b/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/entities/protocol/TuttiProtocols.java @@ -170,6 +170,10 @@ public class TuttiProtocols extends AbstractTuttiProtocols { Integer newSpeciesReferenceTaxonId = idTranslationMap.get(speciesReferenceTaxonId); speciesProtocol.setSpeciesReferenceTaxonId(newSpeciesReferenceTaxonId); + if (log.isInfoEnabled()) { + log.info("Translate reference taxon from " + speciesReferenceTaxonId + " to " + newSpeciesReferenceTaxonId); + } + } } } -- 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 feature/7846_import_generique_et_taxon_obsoletes in repository tutti. See http://git.codelutin.com/tutti.git commit d974af9432922d7a46af8b2daf335193a1737170 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Jan 5 16:43:57 2016 +0100 Amélioration du code de dictionnaire des taxons obstolètes et importés --- ...enericFormatReferentialSpeciesImportResult.java | 38 ++++++++++------------ .../ImportReferentialSpeciesAction.java | 2 +- 2 files changed, 18 insertions(+), 22 deletions(-) diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GenericFormatReferentialSpeciesImportResult.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GenericFormatReferentialSpeciesImportResult.java index ea226ec..38b9b58 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GenericFormatReferentialSpeciesImportResult.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/GenericFormatReferentialSpeciesImportResult.java @@ -24,9 +24,9 @@ package fr.ifremer.tutti.service.genericformat; * #L% */ +import com.google.common.collect.ImmutableMap; import fr.ifremer.tutti.persistence.entities.referential.Species; -import java.util.Collections; import java.util.Map; import java.util.TreeMap; @@ -40,17 +40,23 @@ public class GenericFormatReferentialSpeciesImportResult extends GenericFormatRe private static final long serialVersionUID = 1L; - private Map<Integer, Integer> referenceTaxonIdTranslationMap; + private ImmutableMap<Integer, Integer> referenceTaxonIdTranslationMap; public GenericFormatReferentialSpeciesImportResult(String filename, boolean found) { super(filename, found); - this.referenceTaxonIdTranslationMap = new TreeMap<>(); + this.referenceTaxonIdTranslationMap = ImmutableMap.of(); } public Map<Integer, Integer> getReferenceTaxonIdTranslationMap() { return referenceTaxonIdTranslationMap; } + public void flushObsoleteReferenceTaxonIds(Map<Integer, Integer> referenceTaxonIdById) { + + referenceTaxonIdTranslationMap = ImmutableMap.copyOf(referenceTaxonIdById); + + } + public void flushReferenceTaxonIds(Map<Integer, Integer> referenceTaxonIdById) { Map<Integer, Integer> referenceTaxonIdMap = new TreeMap<>(); @@ -63,29 +69,19 @@ public class GenericFormatReferentialSpeciesImportResult extends GenericFormatRe species = entitiesLinked.get(originalId); } - Integer newReferenceTaxonId; - Integer oldReferenceTaxonId; - if (species == null) { - - // il s'agit d'un taxon qui vient des referents taxon obsoletes - // et qui n'a pas été importé - - oldReferenceTaxonId = oldId; - newReferenceTaxonId = entry.getValue(); - - } else { - - // il s'agit d'un taxon importé, on effectue la correspondance - oldReferenceTaxonId = entry.getValue(); - newReferenceTaxonId = species.getReferenceTaxonId(); - } - + // il s'agit d'un taxon importé, on effectue la correspondance + Integer oldReferenceTaxonId = entry.getValue(); + Integer newReferenceTaxonId = species.getReferenceTaxonId(); referenceTaxonIdMap.put(oldReferenceTaxonId, newReferenceTaxonId); } - referenceTaxonIdTranslationMap = Collections.unmodifiableMap(referenceTaxonIdMap); + referenceTaxonIdTranslationMap = ImmutableMap + .<Integer, Integer>builder() + .putAll(referenceTaxonIdTranslationMap) + .putAll(referenceTaxonIdMap) + .build(); } diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/importactions/ImportReferentialSpeciesAction.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/importactions/ImportReferentialSpeciesAction.java index 2ec40fe..1306043 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/importactions/ImportReferentialSpeciesAction.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/genericformat/importactions/ImportReferentialSpeciesAction.java @@ -113,7 +113,7 @@ public class ImportReferentialSpeciesAction extends ImportActionSupport { importFileResult.flushResult(referentialImportRequest, referentialImportResult); // On ajoute aussi le dictionnaire de taxons référents obsolètes - referenceTaxonIdById.putAll(persistenceHelper.getAllObsoleteReferentTaxons()); + importFileResult.flushObsoleteReferenceTaxonIds(persistenceHelper.getAllObsoleteReferentTaxons()); importFileResult.flushReferenceTaxonIds(referenceTaxonIdById); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm