org.nuiton.i18n.bundle
Enum I18nBundleScope

java.lang.Object
  extended by java.lang.Enum<I18nBundleScope>
      extended by org.nuiton.i18n.bundle.I18nBundleScope
All Implemented Interfaces:
Serializable, Comparable<I18nBundleScope>

public enum I18nBundleScope
extends Enum<I18nBundleScope>

The enumaration defines the scope of a bundle entry.

There is three scope possible:

We define a order relation, from general to full scope :

GENERAL < LANGUAGE < FULL

Scopes are inclusives, in a search of entries, eg the search of en_GB will include en scope...

The patternAll is the searching pattern of bundle of the scope.

The method getMatcher(String) obtain from the patternAll the matcher for a bundle path.

The method getLocale(Matcher) obtain from the patternAll matched in a bundle path, the corresponding locale.

The class offer also a static method valueOf(Locale) to obtain the scope of a locale.

Author:
tchemit

Enum Constant Summary
FULL
          full scope : language + country
GENERAL
          default scope (with no language, nor country information)
LANGUAGE
          language scope (no country information)
 
Method Summary
 String getBundlePrefix(Matcher matcher)
           
abstract  Locale getLocale(Matcher matcher)
          get the locale for a given matcher.
 Matcher getMatcher(String path)
          get a matcher fro the given path for this scope
static I18nBundleScope valueOf(Locale locale)
          Obtain the scope of a given locale.
static I18nBundleScope valueOf(String name)
          Returns the enum constant of this type with the specified name.
static I18nBundleScope[] values()
          Returns an array containing the constants of this enum type, in the order they are declared.
 
Methods inherited from class java.lang.Enum
clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Enum Constant Detail

GENERAL

public static final I18nBundleScope GENERAL
default scope (with no language, nor country information)


LANGUAGE

public static final I18nBundleScope LANGUAGE
language scope (no country information)


FULL

public static final I18nBundleScope FULL
full scope : language + country

Method Detail

values

public static I18nBundleScope[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
for (I18nBundleScope c : I18nBundleScope.values())
    System.out.println(c);

Returns:
an array containing the constants of this enum type, in the order they are declared

valueOf

public static I18nBundleScope valueOf(String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

Parameters:
name - the name of the enum constant to be returned.
Returns:
the enum constant with the specified name
Throws:
IllegalArgumentException - if this enum type has no constant with the specified name
NullPointerException - if the argument is null

valueOf

public static I18nBundleScope valueOf(Locale locale)
Obtain the scope of a given locale.

The given locale can be null, which means GENERAL scope.

Parameters:
locale - given locale to convert
Returns:
the scope of given locale

getMatcher

public Matcher getMatcher(String path)
get a matcher fro the given path for this scope

Parameters:
path - the path to treate
Returns:
the bunle detect matcher

getLocale

public abstract Locale getLocale(Matcher matcher)
get the locale for a given matcher.

Parameters:
matcher - the scope matcher to use
Returns:
the locale

getBundlePrefix

public String getBundlePrefix(Matcher matcher)
Parameters:
matcher - the scope matcher to use
Returns:
the prefix of the bundle


Copyright © 2004-2011 CodeLutin. All Rights Reserved.