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();
}