in doxia-integration-tools/src/main/java/org/apache/maven/doxia/tools/DefaultSiteTool.java [736:773]
private Locale codeToLocale(String localeCode) {
if (localeCode == null) {
return null;
}
if ("system".equalsIgnoreCase(localeCode)) {
return Locale.getDefault();
}
if ("default".equalsIgnoreCase(localeCode)) {
return SiteTool.DEFAULT_LOCALE;
}
String language = "";
String country = "";
String variant = "";
StringTokenizer tokenizer = new StringTokenizer(localeCode, "_");
final int maxTokens = 3;
if (tokenizer.countTokens() > maxTokens) {
if (LOGGER.isWarnEnabled()) {
LOGGER.warn("Invalid java.util.Locale format for '" + localeCode + "' entry - IGNORING");
}
return null;
}
if (tokenizer.hasMoreTokens()) {
language = tokenizer.nextToken();
if (tokenizer.hasMoreTokens()) {
country = tokenizer.nextToken();
if (tokenizer.hasMoreTokens()) {
variant = tokenizer.nextToken();
}
}
}
return new Locale(language, country, variant);
}