Merge branch 'master' into noChecklistClone
[cdmlib-apps.git] / app-import / src / main / java / eu / etaxonomy / cdm / io / redlist / gefaesspflanzen / RedListUtil.java
index a123dc04359de4f870dbd629563e37f198d2e73b..fd3facbee132445db1288dd140af2a6344861094 100644 (file)
@@ -1,4 +1,3 @@
-// $Id$
 /**
 * Copyright (C) 2016 EDIT
 * European Distributed Institute of Taxonomy
@@ -45,10 +44,16 @@ public class RedListUtil {
     public static final UUID uuidClassificationO = UUID.fromString("e19bb2e6-d898-4793-8cd4-d866eeb1f872");
     public static final UUID uuidClassificationS = UUID.fromString("53e81162-5c2d-425b-bbe6-6e8d12e85790");
 
+    public static final UUID uuidRankCollectionSpecies = UUID.fromString("6056e143-4efe-4632-b532-27699ed62884");
+    public static final UUID uuidRankSubproles = UUID.fromString("47bd1439-c2ba-4c4e-994f-9c60853258f8");
+    public static final UUID uuidRankModification = UUID.fromString("1c6e16f5-f7a5-41a5-9cc4-53c1438478c9");
+    public static final UUID uuidRankLusus = UUID.fromString("4c8e12f6-2c16-4eda-a7d9-2fd247dcce789");
+    public static final UUID uuidRankSubspeciesPrincipes = UUID.fromString("b6b9351b-6beb-431d-8c7a-d30fe0cf3a90");
+    public static final UUID uuidRankCombination = UUID.fromString("ec2c580e-416a-4ecf-85df-d03641f3bd64");
+
     public static final String NAME_NAMESPACE = "name";
     public static final String AUTHOR_NAMESPACE = "author";
     public static final String TAXON_GESAMTLISTE_NAMESPACE = "taxon_gesamt_liste";
-    public static final String TAXON_CHECKLISTE_NAMESPACE = "taxon_checkliste";
     public static final String CLASSIFICATION_NAMESPACE_E = "classification_namespace_e";
     public static final String CLASSIFICATION_NAMESPACE_W = "classification_namespace_w";
     public static final String CLASSIFICATION_NAMESPACE_K = "classification_namespace_k";
@@ -57,6 +62,7 @@ public class RedListUtil {
     public static final String CLASSIFICATION_NAMESPACE_R = "classification_namespace_r";
     public static final String CLASSIFICATION_NAMESPACE_O = "classification_namespace_o";
     public static final String CLASSIFICATION_NAMESPACE_S = "classification_namespace_s";
+    public static final String FAMILY_NAMESPACE_GESAMTLISTE = "family_namespace_gesamtliste";
 
 
     //cell content
@@ -70,7 +76,6 @@ public class RedListUtil {
     public static final String HYB_XS = "xs";
     public static final String HYB_N = "n";
     public static final String HYB_G = "g";
-    public static final String HYB_NF = "nf";
     public static final String HYB_XU = "xu";
     public static final String HYB_GF = "gf";
 
@@ -78,9 +83,10 @@ public class RedListUtil {
 
 
     //column names
+    public static final String NAMNR = "NAMNR";
+    public static final String SEQNUM = "SEQNUM";
     public static final String GUELT = "GUELT";
     public static final String LOWER = "LOWER";
-    public static final String NAMNR = "NAMNR";
     public static final String AUTOR_BASI = "AUTOR_BASI";
     public static final String AUTOR_KOMB = "AUTOR_KOMB";
     public static final String ZUSATZ = "ZUSATZ";
@@ -88,6 +94,7 @@ public class RedListUtil {
     public static final String TAX_ZUSATZ = "TAX_ZUSATZ";
     public static final String NON = "NON";
     public static final String SENSU = "SENSU";
+    public static final String TRIVIAL = "TRIVIAL";
     public static final String EPI3 = "EPI3";
     public static final String EPI2 = "EPI2";
     public static final String EPI1 = "EPI1";
@@ -96,6 +103,15 @@ public class RedListUtil {
     public static final String AUTOR = "AUTOR";
     public static final String CL_TAXON = "CL_TAXON";
     public static final String HYB = "HYB";
+    public static final String FORMEL = "FORMEL";
+    public static final String FLOR = "FLOR";
+    public static final String ATLAS_IDX = "ATLAS_IDX";
+    public static final String KART = "KART";
+    public static final String RL2015 = "RL2015";
+    public static final String EHRD = "EHRD";
+    public static final String WISSK = "WISSK";
+
+    public static final String FAMILIE = "FAMILIE";
 
     public static final String E = "E";
     public static final String W = "W";
@@ -110,4 +126,24 @@ public class RedListUtil {
         logger.error(NAMNR+": "+id+" "+message);
     }
 
+    public static void logInfoMessage(long id, String message, Logger logger){
+        logger.info(NAMNR+": "+id+" "+message);
+    }
+
+    public static String getAuthorOfExAuthorshipString(String authorshipString){
+        return getAuthorOfExAuthorship(authorshipString, false);
+    }
+
+    public static String getExAuthorOfExAuthorshipString(String authorshipString){
+        return getAuthorOfExAuthorship(authorshipString, true);
+    }
+
+    private static String getAuthorOfExAuthorship(String authorshipString, boolean isExAuthor){
+        String[] split = authorshipString.split(EX);
+        if(split.length>0){
+            return isExAuthor?split[0].trim():split[split.length-1].trim();
+        }
+        return null;
+    }
+
 }