Author: michiel
Date: 2009-07-07 15:20:57 +0200 (Tue, 07 Jul 2009)
New Revision: 36616
Added:
mmbase/trunk/core/src/main/java/org/mmbase/util/LocaleLocalizedString.java
Modified:
mmbase/trunk/core/src/main/java/org/mmbase/util/LocalizedString.java
mmbase/trunk/core/src/main/java/org/mmbase/util/WrappedLocalizedString.java
Log:
added 'getReadonlyLocalizedString' which helps avoiding that these things are
repatedly wrapped
Added:
mmbase/trunk/core/src/main/java/org/mmbase/util/LocaleLocalizedString.java
===================================================================
--- mmbase/trunk/core/src/main/java/org/mmbase/util/LocaleLocalizedString.java
(rev 0)
+++ mmbase/trunk/core/src/main/java/org/mmbase/util/LocaleLocalizedString.java
2009-07-07 13:20:57 UTC (rev 36616)
@@ -0,0 +1,52 @@
+/*
+
+This software is OSI Certified Open Source Software.
+OSI Certified is a certification mark of the Open Source Initiative.
+
+The license (Mozilla version 1.0) can be read at the MMBase site.
+See http://www.MMBase.org/license
+
+*/
+package org.mmbase.util;
+
+import java.util.*;
+import org.mmbase.util.logging.*;
+
+/**
+
+ *
+ *
+ * @author Michiel Meeuwissen
+ * @version $Id: ReplacingLocalizedString.java 34936 2009-05-04 14:41:51Z
michiel $
+ * @since MMBase-1.9.2
+ */
+public class LocaleLocalizedString extends ReadonlyLocalizedString {
+ private static final long serialVersionUID = 0L;
+
+ private static final Logger log =
Logging.getLoggerInstance(LocaleLocalizedString.class);
+
+
+ private Locale defaultLocale = null;
+
+ public Locale setLocale(Locale loc) {
+ Locale prev = defaultLocale;
+ defaultLocale = loc;
+ return prev;
+ }
+ /**
+ * @param s The wrapped LocalizedString.
+ */
+ public LocaleLocalizedString(LocalizedString s) {
+ super(s);
+ }
+
+
+ @Override
+ public String get(Locale locale) {
+ if (locale == null) locale = defaultLocale;
+ return super.get(locale);
+ }
+
+
+
+}
Modified: mmbase/trunk/core/src/main/java/org/mmbase/util/LocalizedString.java
===================================================================
--- mmbase/trunk/core/src/main/java/org/mmbase/util/LocalizedString.java
2009-07-07 10:21:42 UTC (rev 36615)
+++ mmbase/trunk/core/src/main/java/org/mmbase/util/LocalizedString.java
2009-07-07 13:20:57 UTC (rev 36616)
@@ -76,7 +76,6 @@
}
private String key;
-
private Map<Locale, String> values = null;
private String bundle = null;
@@ -461,4 +460,12 @@
return result;
}
+
+ /**
+ * @since MMBase-1.9.2
+ */
+ public ReadonlyLocalizedString getReadonlyLocalizedString() {
+ return new ReadonlyLocalizedString(this);
+ }
+
}
Modified:
mmbase/trunk/core/src/main/java/org/mmbase/util/WrappedLocalizedString.java
===================================================================
--- mmbase/trunk/core/src/main/java/org/mmbase/util/WrappedLocalizedString.java
2009-07-07 10:21:42 UTC (rev 36615)
+++ mmbase/trunk/core/src/main/java/org/mmbase/util/WrappedLocalizedString.java
2009-07-07 13:20:57 UTC (rev 36616)
@@ -19,31 +19,26 @@
* @version $Id$
* @since MMBase-1.9
*/
-public class WrappedLocalizedString extends LocalizedString {
+public abstract class WrappedLocalizedString extends LocalizedString {
private static final long serialVersionUID = 0L;
private static final Logger log =
Logging.getLoggerInstance(WrappedLocalizedString.class);
protected final LocalizedString wrapped;
- private Locale defaultLocale = null;
/**
* @param s The wrapped LocalizedString.
*/
- public WrappedLocalizedString(LocalizedString s) {
+ protected WrappedLocalizedString(LocalizedString s) {
super("WRAPPED");
- if (s == null) s = new LocalizedString("NULL");
+ if (s == null) {
+ s = new LocalizedString("NULL");
+ }
wrapped = s;
}
- public Locale setLocale(Locale loc) {
- Locale prev = defaultLocale;
- defaultLocale = loc;
- return prev;
- }
-
@Override
public String getKey() {
return wrapped.getKey();
@@ -56,7 +51,6 @@
@Override
public String get(Locale locale) {
- if (locale == null) locale = defaultLocale;
return wrapped.get(locale);
}
@@ -96,6 +90,11 @@
return hash;
}
+ @Override
+ public ReadonlyLocalizedString getReadonlyLocalizedString() {
+ return wrapped.getReadonlyLocalizedString();
+ }
+
}
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs