in doxia-integration-tools/src/main/java/org/apache/maven/doxia/tools/DefaultSiteTool.java [675:722]
public List<Locale> getSiteLocales(String locales) {
if (locales == null) {
return Collections.singletonList(DEFAULT_LOCALE);
}
String[] localesArray = StringUtils.split(locales, ",");
List<Locale> localesList = new ArrayList<>(localesArray.length);
List<Locale> availableLocales = Arrays.asList(Locale.getAvailableLocales());
for (String localeString : localesArray) {
Locale locale = codeToLocale(localeString);
if (locale == null) {
continue;
}
if (!availableLocales.contains(locale)) {
if (LOGGER.isWarnEnabled()) {
LOGGER.warn("The locale defined by '" + locale
+ "' is not available in this Java Virtual Machine ("
+ System.getProperty("java.version")
+ " from " + System.getProperty("java.vendor") + ") - IGNORING");
}
continue;
}
Locale bundleLocale = i18n.getBundle("site-tool", locale).getLocale();
if (!(bundleLocale.equals(locale) || bundleLocale.getLanguage().equals(locale.getLanguage()))) {
if (LOGGER.isWarnEnabled()) {
LOGGER.warn("The locale '" + locale + "' (" + locale.getDisplayName(Locale.ENGLISH)
+ ") is not currently supported by Maven Site - IGNORING."
+ System.lineSeparator() + "Contributions are welcome and greatly appreciated!"
+ System.lineSeparator() + "If you want to contribute a new translation, please visit "
+ "https://maven.apache.org/plugins/localization.html for detailed instructions.");
}
continue;
}
localesList.add(locale);
}
if (localesList.isEmpty()) {
localesList = Collections.singletonList(DEFAULT_LOCALE);
}
return localesList;
}