package com.idega.util;
import java.util.Locale;
import com.idega.core.localisation.business.ICLocaleBusiness;
/**
* Title: idega Framework Description: Copyright: Copyright (c) 2001 Company:
* idega
*
* @author <a href=mailto:"tryggvi@idega.is">Tryggvi Larusson</a>
* @version 1.0
*/
public class LocaleUtil {
private static Locale icelandicLocale;
private static Locale swedishLocale;
private static final String ICELANDIC_IDENTIFIER = "is_IS";
private static final String ENGLISH_IDENTIFIER = "en";
private static final String US_IDENTIFIER = "en_US";
private static final String UK_IDENTIFIER = "en_UK";
private LocaleUtil() {
}
public static Locale getIcelandicLocale() {
if (icelandicLocale == null) {
icelandicLocale = new Locale("is", "IS");
}
return icelandicLocale;
}
public static Locale getSwedishLocale() {
if (swedishLocale == null) {
swedishLocale = new Locale("sv", "SE");
}
return swedishLocale;
}
public static Locale getLocale(String localeIdentifier) {
if (StringUtil.isEmpty(localeIdentifier))
return null;
if (localeIdentifier.equals(ICELANDIC_IDENTIFIER)) {
return getIcelandicLocale();
} else if (localeIdentifier.equals(ENGLISH_IDENTIFIER)) {
return Locale.ENGLISH;
} else if (localeIdentifier.equals(getSwedishLocale().toString())) {
return getSwedishLocale();
} else if (localeIdentifier.equals(US_IDENTIFIER)) {
return Locale.US;
} else if (localeIdentifier.equals(UK_IDENTIFIER)) {
return Locale.UK;
} else {
return ICLocaleBusiness.getLocaleFromLocaleString(localeIdentifier);
}
}
}