fix #9617 rename ICNB to ICNP in cdmlib
[cdmlib.git] / cdmlib-io / src / main / java / eu / etaxonomy / cdm / io / taxonx2013 / TaxonXTreatmentExtractor.java
index 1c194b90d6679cdb8bf78fea7111cb16d7a9ed04..17be14a2c5e0847c88ba4739ffbe3bf5f7582829 100644 (file)
@@ -12,7 +12,6 @@ import java.io.BufferedWriter;
 import java.io.File;
 import java.io.FileWriter;
 import java.io.IOException;
-import java.net.URI;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.HashMap;
@@ -35,16 +34,14 @@ import com.ibm.lsid.MalformedLSIDException;
 
 import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
 import eu.etaxonomy.cdm.api.service.pager.Pager;
+import eu.etaxonomy.cdm.common.URI;
 import eu.etaxonomy.cdm.model.agent.AgentBase;
 import eu.etaxonomy.cdm.model.agent.Person;
 import eu.etaxonomy.cdm.model.common.CdmBase;
 import eu.etaxonomy.cdm.model.common.IdentifiableSource;
 import eu.etaxonomy.cdm.model.common.LSID;
 import eu.etaxonomy.cdm.model.common.Language;
-import eu.etaxonomy.cdm.model.common.OriginalSourceType;
 import eu.etaxonomy.cdm.model.description.Feature;
-import eu.etaxonomy.cdm.model.description.FeatureNode;
-import eu.etaxonomy.cdm.model.description.FeatureTree;
 import eu.etaxonomy.cdm.model.description.IndividualsAssociation;
 import eu.etaxonomy.cdm.model.description.TaxonDescription;
 import eu.etaxonomy.cdm.model.description.TaxonNameDescription;
@@ -57,6 +54,7 @@ import eu.etaxonomy.cdm.model.name.Rank;
 import eu.etaxonomy.cdm.model.name.TaxonName;
 import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
+import eu.etaxonomy.cdm.model.reference.OriginalSourceType;
 import eu.etaxonomy.cdm.model.reference.Reference;
 import eu.etaxonomy.cdm.model.reference.ReferenceFactory;
 import eu.etaxonomy.cdm.model.taxon.Classification;
@@ -65,6 +63,8 @@ import eu.etaxonomy.cdm.model.taxon.SynonymType;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.cdm.model.taxon.TaxonBase;
 import eu.etaxonomy.cdm.model.taxon.TaxonNode;
+import eu.etaxonomy.cdm.model.term.TermNode;
+import eu.etaxonomy.cdm.model.term.TermTree;
 import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;
 import eu.etaxonomy.cdm.persistence.query.MatchMode;
 import eu.etaxonomy.cdm.strategy.exceptions.UnknownCdmTypeException;
@@ -94,7 +94,7 @@ public class TaxonXTreatmentExtractor extends TaxonXExtractor{
 
     private  String treatmentMainName,originalTreatmentName;
 
-    private final HashMap<String,Map<String,String>> namesMap = new HashMap<String, Map<String,String>>();
+    private final HashMap<String,Map<String,String>> namesMap = new HashMap<>();
 
 
     private final Pattern keypattern = Pattern.compile("^(\\d+.*|-\\d+.*)");
@@ -142,7 +142,7 @@ public class TaxonXTreatmentExtractor extends TaxonXExtractor{
     @SuppressWarnings({ "rawtypes", "unused" })
 
     protected void extractTreatment(Node treatmentnode, Reference refMods, URI sourceName) {        logger.info("extractTreatment");
-        List<TaxonName> namesToSave = new ArrayList<TaxonName>();
+        List<TaxonName> namesToSave = new ArrayList<>();
         NodeList children = treatmentnode.getChildNodes();
         Taxon acceptedTaxon =null;
         boolean hasRefgroup=false;
@@ -304,25 +304,25 @@ public class TaxonXTreatmentExtractor extends TaxonXExtractor{
      */
     private void buildFeatureTree() {
         logger.info("buildFeatureTree");
-        FeatureTree proibiospheretree = importer.getFeatureTreeService().find(proIbioTreeUUID);
+        TermTree proibiospheretree = importer.getFeatureTreeService().find(proIbioTreeUUID);
         if (proibiospheretree == null){
-            List<FeatureTree> trees = importer.getFeatureTreeService().list(FeatureTree.class, null, null, null, null);
+            List<TermTree> trees = importer.getFeatureTreeService().list(TermTree.class, null, null, null, null);
             if (trees.size()==1) {
-                FeatureTree ft = trees.get(0);
+                TermTree<Feature> ft = trees.get(0);
                 if (featuresMap==null) {
-                    featuresMap=new HashMap<String, Feature>();
+                    featuresMap=new HashMap<>();
                 }
-                for (Feature feature: ft.getDistinctFeatures()){
+                for (Feature feature: ft.getDistinctTerms()){
                     if(feature!=null) {
                         featuresMap.put(feature.getTitleCache(), feature);
                     }
                 }
             }
-            proibiospheretree = FeatureTree.NewInstance();
+            proibiospheretree = TermTree.NewFeatureInstance();
             proibiospheretree.setUuid(proIbioTreeUUID);
         }
-        //        FeatureNode root = proibiospheretree.getRoot();
-        FeatureNode root2 = proibiospheretree.getRoot();
+
+        TermNode root2 = proibiospheretree.getRoot();
         if (root2 != null){
             int nbChildren = root2.getChildCount()-1;
             while (nbChildren>-1){
@@ -335,7 +335,7 @@ public class TaxonXTreatmentExtractor extends TaxonXExtractor{
         }
 
         for (Feature feature:featuresMap.values()) {
-            root2.addChild(FeatureNode.NewInstance(feature));
+            root2.addChild(feature);
         }
         importer.getFeatureTreeService().saveOrUpdate(proibiospheretree);
 
@@ -550,8 +550,8 @@ public class TaxonXTreatmentExtractor extends TaxonXExtractor{
         logger.info("extractDistribution");
         //        logger.info("acceptedTaxon: "+acceptedTaxon);
         NodeList children = distribution.getChildNodes();
-        Map<Integer,List<MySpecimenOrObservation>> specimenOrObservations = new HashMap<Integer, List<MySpecimenOrObservation>>();
-        Map<Integer,String> descriptionsFulltext = new HashMap<Integer,String>();
+        Map<Integer,List<MySpecimenOrObservation>> specimenOrObservations = new HashMap<>();
+        Map<Integer,String> descriptionsFulltext = new HashMap<>();
 
         for (int i=0;i<children.getLength();i++){
             if (children.item(i).getNodeName().equalsIgnoreCase("tax:p")){
@@ -1099,7 +1099,7 @@ public class TaxonXTreatmentExtractor extends TaxonXExtractor{
      * @param refMods: the current reference extracted from the MODS
      * @param featureName: the feature name
      */
-    @SuppressWarnings({ "unused", "rawtypes" })
+    @SuppressWarnings({ "unused"})
     private String extractSpecificFeatureNotStructured(Node description, Taxon acceptedTaxon, Taxon defaultTaxon,
             List<TaxonName> nameToSave, Reference refMods, String featureName ) {
         logger.info("extractSpecificFeatureNotStructured " + featureName);
@@ -1169,10 +1169,7 @@ public class TaxonXTreatmentExtractor extends TaxonXExtractor{
      * @param nametosave
      * @param refMods
      * @param insideNodes
-     * @param blabla
-     * @param j
      */
-    @SuppressWarnings({ "rawtypes" })
     private String getInlineTextForName(List<TaxonName> nametosave, Reference refMods, Node insideNode) {
         if (true){
                NodeList children = insideNode.getChildNodes();
@@ -1972,7 +1969,7 @@ public class TaxonXTreatmentExtractor extends TaxonXExtractor{
             if (nomenclaturalCode.equals(NomenclaturalCode.ICZN)){
                 nameTBF = TaxonNameFactory.NewZoologicalInstance(null);
             }
-            if (nomenclaturalCode.equals(NomenclaturalCode.ICNB)){
+            if (nomenclaturalCode.equals(NomenclaturalCode.ICNP)){
                 nameTBF= TaxonNameFactory.NewBacterialInstance(null);
             }
             parser.parseReferencedName(nameTBF, fullname, rank, false);
@@ -2004,7 +2001,7 @@ public class TaxonXTreatmentExtractor extends TaxonXExtractor{
                     if (nomenclaturalCode.equals(NomenclaturalCode.ICZN)) {
                         ((ZoologicalName) nameTBF).setAuthorshipCache(currentMyName.getAuthor());
                     }
-                    if (nomenclaturalCode.equals(NomenclaturalCode.ICNB)) {
+                    if (nomenclaturalCode.equals(NomenclaturalCode.ICNP)) {
                         ((BacterialName) nameTBF).setAuthorshipCache(currentMyName.getAuthor());
                     }
                 }
@@ -2145,7 +2142,7 @@ public class TaxonXTreatmentExtractor extends TaxonXExtractor{
                                     //System.out.println("NEW ACCEPTED HERE "+nameToBeFilled);
                                 }
                                 else {
-                                    acceptedTaxon= Taxon.NewInstance(nameToBeFilled,(Reference) nameToBeFilled.getNomenclaturalReference() );//TODO TOFIX reference
+                                    acceptedTaxon= Taxon.NewInstance(nameToBeFilled,nameToBeFilled.getNomenclaturalReference() );//TODO TOFIX reference
                                     //System.out.println("NEW ACCEPTED HERE2 "+nameToBeFilled);
                                 }
 
@@ -2305,7 +2302,7 @@ public class TaxonXTreatmentExtractor extends TaxonXExtractor{
                     if (nomenclaturalCode.equals(NomenclaturalCode.ICZN)){
                         nameToBeFilled = TaxonNameFactory.NewZoologicalInstance(null);
                     }
-                    if (nomenclaturalCode.equals(NomenclaturalCode.ICNB)){
+                    if (nomenclaturalCode.equals(NomenclaturalCode.ICNP)){
                         nameToBeFilled = TaxonNameFactory.NewBacterialInstance(null);
                     }
                     nameToBeFilled.setTitleCache(s, true);
@@ -2352,7 +2349,7 @@ public class TaxonXTreatmentExtractor extends TaxonXExtractor{
         String fullName = "";
         String newName="";
         String identifier="";
-        HashMap<String, String> atomisedMap = new HashMap<String, String>();
+        HashMap<String, String> atomisedMap = new HashMap<>();
         List<String> atomisedName= new ArrayList<String>();
 
         String rankStr = "";
@@ -2498,8 +2495,8 @@ public class TaxonXTreatmentExtractor extends TaxonXExtractor{
         String fullName = "";
         String newName = "";
         String identifier = "";
-        HashMap<String, String> atomisedMap = new HashMap<String, String>();
-        List<String> atomisedNameList= new ArrayList<String>();
+        HashMap<String, String> atomisedMap = new HashMap<>();
+        List<String> atomisedNameList= new ArrayList<>();
 
         String status= extractStatus(children);
 
@@ -3667,7 +3664,7 @@ public class TaxonXTreatmentExtractor extends TaxonXExtractor{
                             classification.addChildTaxon((Taxon)tmpTaxonBase, refMods, null);
                         }
                     } else{
-                        hierarchy = new HashMap<Rank, Taxon>();
+                        hierarchy = new HashMap<>();
                         //System.out.println("LOOK FOR PARENT "+taxonname.toString()+", "+tmptaxonbase.toString());
                         if (!isSynonym){
                             lookForParentNode(taxonName,(Taxon)tmpTaxonBase, refMods,this);
@@ -4931,7 +4928,7 @@ public class TaxonXTreatmentExtractor extends TaxonXExtractor{
         return costs[s2.length()];
     }
 
-    Map<Rank, Taxon> hierarchy = new HashMap<Rank, Taxon>();
+    Map<Rank, Taxon> hierarchy = new HashMap<>();
     /**
      * @param taxonName
      */