.
authorp.ciardelli <p.ciardelli@localhost>
Thu, 17 Sep 2009 15:37:54 +0000 (15:37 +0000)
committerp.ciardelli <p.ciardelli@localhost>
Thu, 17 Sep 2009 15:37:54 +0000 (15:37 +0000)
taxeditor-bulkeditor/src/main/java/eu/etaxonomy/taxeditor/annotatedlineeditor/IdentifiableEntityComparator.java
taxeditor-bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/BulkEditorLineDisplay.java
taxeditor-bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/BulkEditorSortMenuProvider.java
taxeditor-bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/NameCreator.java

index 5869f4ddd011965d509d5f20271b3c8b01878a2a..9ae956095bc3918af39ce03f590fdc1240108de2 100644 (file)
@@ -38,6 +38,15 @@ public class IdentifiableEntityComparator implements Comparator {
        public int compare(Object o1, Object o2) {\r
                String titleCache1 = getTitleCache(o1);\r
                String titleCache2 = getTitleCache(o2);\r
+               if (titleCache1 == null && titleCache2 == null) {\r
+                       return 0;\r
+               }\r
+               if (titleCache1 == null) {\r
+                       return -1;\r
+               }\r
+               if (titleCache2 == null) {\r
+                       return 1;\r
+               }                               \r
         return fIgnoreCase ? titleCache1.compareToIgnoreCase(titleCache2) : \r
                                                        titleCache1.compareTo(titleCache2);\r
        }\r
index 1f31b922615e69a9c7f13f47a2be8432bf55dd43..5033912a268e43efe82943afbcdd5a4be472169f 100644 (file)
@@ -85,12 +85,13 @@ public class BulkEditorLineDisplay implements ILineDisplayStrategy {
                        if (text == null) {\r
                                return "";\r
                        }\r
-                       TimePeriod datePublished = ((StrictReferenceBase) reference).getDatePublished();\r
-                                               \r
-                       String date = datePublished == null ? null : datePublished.toString();\r
-                       if (date != null) {\r
-                               text += " [" + date + "]";\r
-                       }\r
+                       // Nobody seems to like displaying the date\r
+//                     TimePeriod datePublished = ((StrictReferenceBase) reference).getDatePublished();\r
+//                                             \r
+//                     String date = datePublished == null ? null : datePublished.toString();\r
+//                     if (date != null) {\r
+//                             text += " [" + date + "]";\r
+//                     }\r
                        return text;\r
                }\r
                if (entity instanceof TaxonNameBase) {\r
index 3819d7a64b9bd6dd1eccb55bdb8f8a039eea798a..74559090d4be561f00d4e7fa0f83d127847c8e83 100644 (file)
@@ -42,6 +42,10 @@ public class BulkEditorSortMenuProvider implements IBulkEditorSortMenuProvider {
                if (input instanceof ReferenceEditorInput) {\r
                        addMenuItem(menu, "Year", new ReferenceYearComparator(), false);\r
                }\r
+\r
+               if (input instanceof ReferenceEditorInput) {\r
+                       addMenuItem(menu, "Reference Type", new ReferenceTypeComparator(), false);\r
+               }\r
                \r
                return menu;\r
        }\r
@@ -88,7 +92,39 @@ public class BulkEditorSortMenuProvider implements IBulkEditorSortMenuProvider {
                        if (yearString2 == null) {\r
                                return 1;\r
                        }\r
-            return yearString1.compareToIgnoreCase(yearString2);\r
+                       int returnVal = yearString1.compareToIgnoreCase(yearString2);\r
+                       if (returnVal == 0) {\r
+                               return new IdentifiableEntityComparator().compare(o1, 02);\r
+                       } else {\r
+                               return returnVal;\r
+                       }\r
+               }               \r
+       }\r
+       \r
+       class ReferenceTypeComparator implements Comparator {\r
+               \r
+               /* (non-Javadoc)\r
+                * @see java.util.Comparator#compare(java.lang.Object, java.lang.Object)\r
+                */\r
+               public int compare(Object o1, Object o2) {\r
+                       String typeString1 = o1.getClass().toString();\r
+                       String typeString2 = o2.getClass().toString();\r
+                       if (typeString1 == null) {\r
+                               if (typeString2 == null) {\r
+                                       return 0;\r
+                               } else {\r
+                                       return -1;\r
+                               }\r
+                       }\r
+                       if (typeString2 == null) {\r
+                               return 1;\r
+                       }\r
+                       int returnVal = typeString1.compareToIgnoreCase(typeString2);\r
+                       if (returnVal == 0) {\r
+                               return new IdentifiableEntityComparator().compare(o1, 02);\r
+                       } else {\r
+                               return returnVal;\r
+                       }\r
                }               \r
        }\r
 }
\ No newline at end of file
index 6b6884cca0470e7e0428927a928ef55e749c72bb..1ca9df6f16f099596ee1c1944706842840061356 100644 (file)
@@ -12,7 +12,7 @@ package eu.etaxonomy.taxeditor.bulkeditor;
 \r
 import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
 import eu.etaxonomy.taxeditor.annotatedlineeditor.IEntityCreator;\r
-import eu.etaxonomy.taxeditor.model.NomenclaturalCodeHelper;\r
+import eu.etaxonomy.taxeditor.preference.PreferencesUtil;\r
 \r
 /**\r
  * @author p.ciardelli\r
@@ -25,7 +25,7 @@ public class NameCreator implements IEntityCreator<TaxonNameBase> {
         * @see eu.etaxonomy.taxeditor.bulkeditor.IEntityCreator#createEntity(java.lang.String)\r
         */\r
        public TaxonNameBase createEntity(String text) {\r
-               TaxonNameBase name = NomenclaturalCodeHelper.getInstanceOfPreferredNameClass();\r
+               TaxonNameBase name = PreferencesUtil.getPreferredNomenclaturalCode().getNewTaxonNameInstance(null);\r
                name.setTitleCache(text);\r
                return name;\r
        }\r