Update of /var/cvs/src/org/mmbase/core
In directory james.mmbase.org:/tmp/cvs-serv17951

Modified Files:
        AbstractDescriptor.java 
Log Message:
simplified a bit, making sure that the localized strings are simple never null


See also: http://cvs.mmbase.org/viewcvs/src/org/mmbase/core


Index: AbstractDescriptor.java
===================================================================
RCS file: /var/cvs/src/org/mmbase/core/AbstractDescriptor.java,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- AbstractDescriptor.java     29 Apr 2009 07:39:07 -0000      1.14
+++ AbstractDescriptor.java     30 Apr 2009 19:54:39 -0000      1.15
@@ -20,13 +20,14 @@
  *
  * @author Pierre van Rooden
  * @since  MMBase-1.8
- * @version $Id: AbstractDescriptor.java,v 1.14 2009/04/29 07:39:07 michiel 
Exp $
+ * @version $Id: AbstractDescriptor.java,v 1.15 2009/04/30 19:54:39 michiel 
Exp $
  */
 
 abstract public class AbstractDescriptor implements Descriptor, 
PublicCloneable<AbstractDescriptor> {
 
-    protected String key;
-    protected LocalizedString description;
+    protected String key; // clone sucks
+
+    protected LocalizedString description; // clone sucks. so it cannot be 
final
     protected LocalizedString guiName;
 
     protected AbstractDescriptor() {}
@@ -37,8 +38,8 @@
      */
     protected AbstractDescriptor(String name) {
         key = name;
-        setGUIName(name);
-        setDescription("");
+        guiName = new LocalizedString(key);
+        description = new LocalizedString(key);
     }
 
     /**
@@ -64,13 +65,13 @@
 
     /**
      * The locale which must be used if no locale is specified.
-     * The default implementation returns <code>null</code>.
+     * The default implementation returns {...@link LocalizedString#getDefault}
      * This method can be overriden if another more logical default is
      * available. E.g. in BasicField the locale of the current cloud is 
returned.
      * @since MMBase-1.8.1
      */
     protected Locale getDefaultLocale() {
-        return null;
+        return LocalizedString.getDefault();
     }
 
     /**
@@ -82,7 +83,6 @@
     }
 
     public String getDescription(Locale locale) {
-        if (description == null) description = new LocalizedString(key);
         return description.get(locale == null ? getDefaultLocale() : locale);
     }
 
@@ -93,13 +93,15 @@
     public LocalizedString getLocalizedDescription() {
         return description;
     }
-
     protected void setLocalizedDescription(LocalizedString description) {
         this.description = description;
     }
+    protected void setLocalizedGUIName(LocalizedString value) {
+        guiName = value;
+    }
+
 
     public void setDescription(String desc, Locale locale) {
-        if (description == null) description = new LocalizedString(key);
         description.set(desc, locale);
     }
 
@@ -115,7 +117,6 @@
      * @return the GUI Name
      */
     public String getGUIName(Locale locale) {
-        if (guiName == null) guiName = new LocalizedString(key);
         return guiName.get(locale == null ? getDefaultLocale() : locale);
     }
 
@@ -130,7 +131,6 @@
     }
 
     public void setGUIName(String g, Locale locale) {
-        if (guiName == null) guiName = new LocalizedString(key);
         guiName.set(g, locale);
     }
 
@@ -142,10 +142,6 @@
         return guiName;
     }
 
-    protected void setLocalizedGUIName(LocalizedString value) {
-        guiName = value;
-    }
-
     public String toString() {
         return key;
     }
_______________________________________________
Cvs mailing list
Cvs@lists.mmbase.org
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to