protected PostfixedApplicationResource()

in tiles-request-api/src/main/java/org/apache/tiles/request/locale/PostfixedApplicationResource.java [64:93]


    protected PostfixedApplicationResource(String localePath) {
        int prefixIndex = localePath.indexOf('_', localePath.lastIndexOf("/"));
        int suffixIndex = localePath.lastIndexOf('.');
        if (suffixIndex < 0) {
            suffix = "";
            suffixIndex = localePath.length();
        } else {
            suffix = localePath.substring(suffixIndex);
        }
        if (prefixIndex < 0) {
            pathPrefix = localePath.substring(0, suffixIndex);
            locale = Locale.ROOT;
        } else {
            pathPrefix = localePath.substring(0, prefixIndex);
            String localeString = localePath.substring(prefixIndex + 1, suffixIndex);
            Locale found = localeFrom(localeString);
            locale = validateLocale(found);
            if (Locale.ROOT.equals(locale)) {
                pathPrefix = suffixIndex < 0 ? localePath : localePath.substring(0, suffixIndex);

                LOG.warn("No supported matching language for locale \"" + localeString + "\". Using "
                        + getPath() + " as a non-localized resource path. see TILES-571");

            } else if (!localeString.equalsIgnoreCase(getPostfix(locale).substring(1))) {
                LOG.warn("For resource " + localePath
                        + " the closest supported matching locale to \"" + localeString + "\" is \"" + locale
                        + "\". Using " + getPath() + " as resource path. see TILES-571");
            }
        }
    }