use OrderIndexComparator for distributionEditor
authorKatja Luther <k.luther@bgbm.org>
Mon, 11 Jan 2021 15:15:21 +0000 (16:15 +0100)
committerKatja Luther <k.luther@bgbm.org>
Mon, 11 Jan 2021 15:15:21 +0000 (16:15 +0100)
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/checklist/e4/TaxonDistributionDtoComparator.java

index 7d2c5e6ae18fba717063d81b2249d8ec9b04292c..7e60fc3c7e4dfed8db30c7e850e85ca4ef6ceaae 100755 (executable)
@@ -11,6 +11,7 @@ package eu.etaxonomy.taxeditor.editor.view.checklist.e4;
 import java.util.Comparator;
 
 import eu.etaxonomy.cdm.api.service.dto.TaxonDistributionDTO;
+import eu.etaxonomy.cdm.compare.OrderIndexComparator;
 
 /**
  * @author k.luther
@@ -32,19 +33,16 @@ public class TaxonDistributionDtoComparator implements Comparator<TaxonDistribut
         String name2 = arg1.getNameCache();
         Integer rankTax1 = arg0.getRankOrderIndex();
         Integer rankTax2 = arg1.getRankOrderIndex();
-//        String parentName1 = arg0.get
-        if (rankTax1 == null && rankTax2 != null){
-            return 1;
-        }else if(rankTax2 == null && rankTax1 != null){
-            return -1;
-        }else if (rankTax1 != null && rankTax1 == rankTax2) {
+
+        int rankOrder = OrderIndexComparator.instance().compare(rankTax1, rankTax2);
+
+        if (rankOrder == 0) {
             //same rank, order by name
             return name1.compareTo(name2);
-         }else if (rankTax1 == null && rankTax2 == null || rankTax1.equals(rankTax2)){
-             return -1;
-         }
+        }
+        return rankOrder;
+
 
-        return 0;
     }
 
 }