Remove unused package.
[lgpl/argeo-commons.git] / org.argeo.cms / src / org / argeo / cms / i18n / LocaleUtils.java
index 6253e585beeb50b25420f967157fc6d0e92718f9..71a31413efb6086330020b1b7d5a92ee63753aa2 100644 (file)
@@ -1,69 +1,54 @@
 package org.argeo.cms.i18n;
 
-import java.util.ArrayList;
 import java.util.List;
 import java.util.Locale;
-import java.util.ResourceBundle;
 
-import org.argeo.eclipse.ui.specific.UiContext;
+import org.argeo.cms.auth.CurrentUser;
 
-/** Utilities simplifying the development of localization enums. */
+/**
+ * Utilities simplifying the development of localization enums.
+ * 
+ * @deprecated Use {@link org.argeo.cms.LocaleUtils}
+ */
+@Deprecated
 public class LocaleUtils {
        public static Object local(Enum<?> en) {
-               return local(en, getCurrentLocale(), "/OSGI-INF/l10n/bundle");
+               return org.argeo.cms.LocaleUtils.local(en);
        }
 
        public static Object local(Enum<?> en, Locale locale) {
-               return local(en, locale, "/OSGI-INF/l10n/bundle");
+               return org.argeo.cms.LocaleUtils.local(en, locale);
        }
 
        public static Object local(Enum<?> en, Locale locale, String resource) {
-               return local(en, locale, resource, en.getClass().getClassLoader());
+               return org.argeo.cms.LocaleUtils.local(en, locale, resource);
        }
 
-       public static Object local(Enum<?> en, Locale locale, String resource,
-                       ClassLoader classLoader) {
-               ResourceBundle rb = ResourceBundle.getBundle(resource, locale,
-                               classLoader);
-               return rb.getString(en.name());
+       public static Object local(Enum<?> en, Locale locale, String resource, ClassLoader classLoader) {
+               return org.argeo.cms.LocaleUtils.local(en, locale, resource, classLoader);
        }
 
        public static String lead(String raw, Locale locale) {
-               return raw.substring(0, 1).toUpperCase(locale) + raw.substring(1);
+               return org.argeo.cms.LocaleUtils.lead(raw, locale);
        }
 
        public static String lead(Localized localized) {
-               return lead(localized, getCurrentLocale());
+               return org.argeo.cms.LocaleUtils.lead(localized);
        }
 
        public static String lead(Localized localized, Locale locale) {
-               return lead(localized.local(locale).toString(), locale);
+               return org.argeo.cms.LocaleUtils.lead(localized, locale);
        }
 
        static Locale getCurrentLocale() {
-               return UiContext.getLocale();
+               return CurrentUser.locale();
+               // return UiContext.getLocale();
+               // FIXME look into Subject or settings
+               // return Locale.getDefault();
        }
 
        /** Returns null if argument is null. */
        public static List<Locale> asLocaleList(Object locales) {
-               if (locales == null)
-                       return null;
-               ArrayList<Locale> availableLocales = new ArrayList<Locale>();
-               String[] codes = locales.toString().split(",");
-               for (int i = 0; i < codes.length; i++) {
-                       String code = codes[i];
-                       // variant not supported
-                       int indexUnd = code.indexOf("_");
-                       Locale locale;
-                       if (indexUnd > 0) {
-                               String language = code.substring(0, indexUnd);
-                               String country = code.substring(indexUnd + 1);
-                               locale = new Locale(language, country);
-                       } else {
-                               locale = new Locale(code);
-                       }
-                       availableLocales.add(locale);
-               }
-               return availableLocales;
+               return org.argeo.cms.LocaleUtils.asLocaleList(locales);
        }
 }