First commit after refactoring to new operations model. Not yet complete - only doing...
[taxeditor.git] / eclipseprojects / eu.etaxonomy.taxeditor / src / eu / etaxonomy / taxeditor / editor / name / Messages.java
index dfae5487d4342f8f111834ef923be81d32096913..63dd64741980648c2d90a7379d9820cc692f731d 100644 (file)
@@ -1,21 +1,63 @@
+/**\r
+ * Copyright (C) 2007 EDIT\r
+ * European Distributed Institute of Taxonomy \r
+ * http://www.e-taxonomy.eu\r
+ * \r
+ * The contents of this file are subject to the Mozilla Public License Version 1.1\r
+ * See LICENSE.TXT at the top of this package for the full license terms.\r
+ */\r
 package eu.etaxonomy.taxeditor.editor.name;\r
 \r
+import java.util.Locale;\r
 import java.util.MissingResourceException;\r
 import java.util.ResourceBundle;\r
 \r
+import org.apache.log4j.Logger;\r
+\r
+import eu.etaxonomy.cdm.model.name.BotanicalName;\r
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
+import eu.etaxonomy.cdm.model.name.ZoologicalName;\r
+import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
+import eu.etaxonomy.taxeditor.preference.PreferencesUtil;\r
+\r
+/**\r
+ * @author p.ciardelli\r
+ * @created 09.10.2008\r
+ * @version 1.0\r
+ */\r
 public class Messages {\r
+       private static final Logger logger = Logger.getLogger(Messages.class);\r
        private static final String BUNDLE_NAME = "eu.etaxonomy.taxeditor.editor.name.messages"; //$NON-NLS-1$\r
 \r
        private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle\r
-                       .getBundle(BUNDLE_NAME);\r
+                       .getBundle(BUNDLE_NAME, Locale.getDefault());\r
 \r
        private Messages() {\r
        }\r
 \r
        public static String getString(String key) {\r
+               try {\r
+                       return RESOURCE_BUNDLE.getString(PreferencesUtil.concatCodeMessageSuffix(key));\r
+               } catch (MissingResourceException e1) {\r
+                       try {\r
+                               return RESOURCE_BUNDLE.getString(key);\r
+                       } catch (MissingResourceException e2) {\r
+                               return '!' + key + '!';\r
+                       }       \r
+               }\r
+       }\r
+\r
+       public static String getString(String key, TaxonNameBase name) {\r
+               if (name instanceof BotanicalName) {\r
+                       key += "." + ITaxEditorConstants.CODE_PREFERENCE_ICBN;\r
+               } else if (name instanceof ZoologicalName) {\r
+                       key += "." + ITaxEditorConstants.CODE_PREFERENCE_ICZN;\r
+               } else {\r
+                       getString(key);\r
+               }\r
                try {\r
                        return RESOURCE_BUNDLE.getString(key);\r
-               } catch (MissingResourceException e) {\r
+               } catch (MissingResourceException e2) {\r
                        return '!' + key + '!';\r
                }\r
        }\r