From: Patrick Plitzner Date: Wed, 2 Sep 2015 09:08:05 +0000 (+0200) Subject: Enhance ABCD import report X-Git-Tag: 3.8.0^2~49 X-Git-Url: https://dev.e-taxonomy.eu/gitweb/cdmlib.git/commitdiff_plain/73bc3754e92a50f63beffb449a6988f194d71f7f Enhance ABCD import report --- diff --git a/cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/specimen/abcd206/in/Abcd206ImportReport.java b/cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/specimen/abcd206/in/Abcd206ImportReport.java index 1a4aa7a2ad..0c4226ec38 100644 --- a/cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/specimen/abcd206/in/Abcd206ImportReport.java +++ b/cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/specimen/abcd206/in/Abcd206ImportReport.java @@ -26,6 +26,7 @@ import org.apache.log4j.Logger; import eu.etaxonomy.cdm.model.name.TaxonNameBase; import eu.etaxonomy.cdm.model.occurrence.DerivedUnit; import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase; +import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType; import eu.etaxonomy.cdm.model.taxon.Taxon; import eu.etaxonomy.cdm.model.taxon.TaxonNode; @@ -118,16 +119,40 @@ public class Abcd206ImportReport { public void printReport(PrintStream out) { out.println("++++++++Import Report+++++++++"); + //all specimens + Set allSpecimens = new HashSet(); + Map specimenTypeToCount = new HashMap(); + for (Entry> entry : derivateMap.entrySet()) { + UnitIdSpecimen parentSpecimen = entry.getKey(); + incrementSpecimenTypeCount(specimenTypeToCount, parentSpecimen); + allSpecimens.add(parentSpecimen); + for (UnitIdSpecimen childSpecimen : entry.getValue()) { + incrementSpecimenTypeCount(specimenTypeToCount, childSpecimen); + allSpecimens.add(childSpecimen); + } + } + out.println("Specimens created: "+allSpecimens.size()); + for(Entry entry:specimenTypeToCount.entrySet()){ + SpecimenOrObservationType type = entry.getKey(); + out.println(type+": "+entry.getValue()); + } + out.println("\n"); + + //taxon name out.println("---Created Taxon Names ("+createdNames.size()+")---"); for (TaxonNameBase taxonName : createdNames) { out.println(taxonName.getTitleCache()); } out.println("\n"); + + //taxa out.println("---Created Taxa ("+createdTaxa.size()+")---"); for (Taxon taxon : createdTaxa) { out.println(taxon.getTitleCache()); } out.println("\n"); + + //taxon nodes out.println("---Created Taxon Nodes ("+createdTaxonNodes.size()+")---"); for (TaxonNode taxonNode : createdTaxonNodes) { String nodeString = taxonNode.toString(); @@ -143,6 +168,15 @@ public class Abcd206ImportReport { out.println(nodeString); } out.println("\n"); + + //not imported + out.println("---Already existing specimen (not imported)---"); + for(UnitIdSpecimen specimen:alreadyExistingSpecimens){ + out.println(formatSpecimen(specimen)); + } + out.println("\n"); + + //taxa with associated specimens out.println("---Taxa with associated specimens---"); for(Entry> entry:taxonToAssociatedSpecimens.entrySet()){ Taxon taxon = entry.getKey(); @@ -158,19 +192,8 @@ public class Abcd206ImportReport { } } out.println("\n"); - //all specimens - Set allSpecimens = new HashSet(); - for (Entry> entry : derivateMap.entrySet()) { - allSpecimens.add(entry.getKey()); - allSpecimens.addAll(entry.getValue()); - } - out.println("Specimens created: "+allSpecimens.size()); - out.println("\n"); - out.println("---Already existing specimen (not imported)---"); - for(UnitIdSpecimen specimen:alreadyExistingSpecimens){ - out.println(formatSpecimen(specimen)); - } out.println("\n"); + //info messages out.println("---Info messages---"); for(String message:infoMessages){ out.println(message); @@ -181,6 +204,19 @@ public class Abcd206ImportReport { } } + private void incrementSpecimenTypeCount(Map specimenTypeToCount, + UnitIdSpecimen specimen) { + SpecimenOrObservationType specimenType = specimen.getSpecimen().getRecordBasis(); + Integer count = specimenTypeToCount.get(specimenType); + if(count==null){ + count = 1; + } + else{ + count++; + } + specimenTypeToCount.put(specimenType, count); + } + private String formatSpecimen(UnitIdSpecimen specimen){ return "("+specimen.getUnitId()+") ["+specimen.getSpecimen().getRecordBasis()+"] "+specimen.getSpecimen().getTitleCache(); }