org.jaxen.function.ext

Class LocaleFunctionSupport

Implemented Interfaces:
Function
Known Direct Subclasses:
LowerFunction, UpperFunction

public abstract class LocaleFunctionSupport
extends java.lang.Object
implements Function

An abstract base class for Locale-specific extension functions. This class provides convenience methods that can be inherited, specifically to find a Locale from an XPath function argument value.
Author:
James Strachan

Method Summary

protected Locale
findLocale(String localeText)
Tries to find a Locale instance by name using RFC 3066 language tags such as 'en', 'en-US', 'en-US-Brooklyn'.
protected Locale
findLocaleForLanguage(String language)
Finds the locale with the given language name with no country or variant, such as Locale.ENGLISH or Locale.FRENCH
protected Locale
getLocale(Object value, Navigator navigator)
Attempts to convert the given function argument value into a Locale either via casting, extracting it from a List or looking up the named Locale using reflection.

Method Details

findLocale

protected Locale findLocale(String localeText)
Tries to find a Locale instance by name using RFC 3066 language tags such as 'en', 'en-US', 'en-US-Brooklyn'.
Parameters:
localeText - the RFC 3066 language tag
Returns:
the locale for the given text or null if one could not be found

findLocaleForLanguage

protected Locale findLocaleForLanguage(String language)
Finds the locale with the given language name with no country or variant, such as Locale.ENGLISH or Locale.FRENCH
Parameters:
language - the language code to look for
Returns:
the locale for the given language or null if one could not be found

getLocale

protected Locale getLocale(Object value,
                           Navigator navigator)
Attempts to convert the given function argument value into a Locale either via casting, extracting it from a List or looking up the named Locale using reflection.
Parameters:
value - is either a Locale, a List containing a Locale or a String containing the name of a Locale as defined by the Locale static members.
Returns:
the Locale for the value or null if one could not be deduced