# com.bea.netuix.servlets.l10n
L10nResourceManager Class

public class L10nResourceManager
extends `Object`

The `L10nResourceManager` helps resolve resources (such as JSP pages, static resources such as HTML files, images etc.) based on a given locale.

Given a resource path in the form `[dir]/[name]` where `[dir]` is the directory ("/" separated, relative to the web app root) and `[name]` is the name of the resource, this class resolves the path to a localized version, if available.

For resolving a resource to a localized version, this class expects the locale to be present in the path structure as a sub-directory.

For instance, the following localized resources are considered valid for a resource "/portlets/news/flash.jsp":

- /en_US/portlets/news/flash.jsp
- /fr_FR/portlets/news/flash.jsp
- /portlets/en_US/news/flash.jsp
- /portlets/fr_FR/news/flash.jsp
- /portlets/news/en_US/flash.jsp
- /portlets/news/fr_FR/flash.jsp

This class resolves a localized version of in the following search order:

- language_country_variant version
- language_country version
- language_variant version
- language version
- country_variant version
- country version
- Non-localized version

In order to enable this class to recognize newly added or deleted resources after server startup, enable hot deployment for classes via the WebLogic Server admin console.

Hierarchy
  `Object`
  `L10nResourceManager`

## Constructor Summary

L10nResourceManager(`ServletContext` context) Constructs an instance of `L10nResourceManager` for the given context.

## Method Summary

`public void` | `ensureReloaded`() Ensures that the cached resources are fresh.
`public static `L10nResourceManager`` | `getInstance`(`ServletContext` context) Returns an instance of `L10nResourceManager`.
`public `Enumeration`` | `getPreferredLocales`(`ServletRequest` request) Accessor for getting an Enumeration of preferred locales based on both the request and the setting of the internal localeProvider object, which is optionally overrideable by developers.
`public `ArrayList`` | `getPreferredLocalesAsList`(`ServletRequest` request) Accessor for getting an ordered collection of preferred locales.
`public `String`` | `resolve`(`String` path, `ServletRequest` request) Resolves the given path per the given locales to a localized resource.
`public `String`` | `resolve`(`String` path, `ServletRequest` request, `ResolvedLocale` resolvedLocale) Resolves the given path per the given locales to a localized resource.
`public `String`` | `resolve`(`String` path, `Enumeration` locales) Resolves the given path per the given locales to a localized resource.
`public `String`` | `resolve`(`String` path, `Enumeration` locales, `ResolvedLocale` resolvedLocale) Resolves the given path per the given locales to a localized resource.

Methods from class `java.lang.`Object``
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Detail

### L10nResourceManager

    protected L10nResourceManager(ServletContext context)

  Constructs an instance of `L10nResourceManager` for the given context.

## Method Detail

### ensureReloaded() Method

    public void ensureReloaded()

Ensures that the cached resources are fresh.

### getInstance(ServletContext) Method

    public static L10nResourceManager getInstance(ServletContext context)

Returns an instance of `L10nResourceManager`.

#### Parameters

context
  servlet context

#### Returns

the singleton instance of L10nResourceManager

### getPreferredLocales(ServletRequest) Method

    public Enumeration getPreferredLocales(ServletRequest request)

Accessor for getting an Enumeration of preferred locales based on both the request and the setting of the internal localeProvider object, which is optionally overrideable by developers.

#### Parameters

request
  current `ServletRequest`

#### Returns

Enumeration containing preferred `Locale` objects as determined from the request by the configured `LocaleProvider`

### getPreferredLocalesAsList(ServletRequest) Method

    public ArrayList getPreferredLocalesAsList(ServletRequest request)

Accessor for getting an ordered collection of preferred locales. Used in places where l10nManager cannot be used directly, but where a collection may be passed to a consumer of locales.

#### Parameters

request
  current `ServletRequest`

#### Returns

`ArrayList` containing `Locale` objects

### resolve(String, ServletRequest) Method

    public String resolve(String path,
                          ServletRequest request)

Resolves the given path per the given locales to a localized resource. Applications may use this method to resolve resources such as JSP pages, or other static resources to locales.

#### Parameters

path
  path to the resource

request
  current `ServletRequest`

#### Returns

the localized path to the resource if present, otherwise returns the default path to the resource.

### resolve(String, ServletRequest, ResolvedLocale) Method

    public String resolve(String path,
                          ServletRequest request,
                          ResolvedLocale resolvedLocale)

Resolves the given path per the given locales to a localized resource. Applications may use this method to resolve resources such as JSP pages, or other static resources to locales.

This version of resolve accepts an out argument that is populated with extra resolution information.

#### Parameters

path
  path to the resource

request
  current `ServletRequest`

resolvedLocale
  `ResolvedLocale` object to populate with resolution information

#### Returns

the localized path to the resource if present, otherwise returns the default path to the resource.

### resolve(String, Enumeration) Method

    public String resolve(String path,
                          Enumeration locales)

Resolves the given path per the given locales to a localized resource. Applications may use this method to resolve resources such as JSP pages, or other static resources to locales.

#### Parameters

path
  path to the resource

locales
  preferred `Locales` to use for resolution

#### Returns

the localized path to the resource if present, otherwise returns the default path to the resource.

### resolve(String, Enumeration, ResolvedLocale) Method

    public String resolve(String path,
                          Enumeration locales,
                          ResolvedLocale resolvedLocale)

Resolves the given path per the given locales to a localized resource. Applications may use this method to resolve resources such as JSP pages, or other static resources to locales.

This version of resolve accepts an out argument that is populated with extra resolution information.

#### Parameters

path
  path to the resource

locales
  preferred `Locales` to use for resolution

resolvedLocale
  `ResolvedLocale` object to populate with resolution information

#### Returns

the localized path to the resource if present, otherwise returns the default path to the resource.