org.nuiton.i18n.bundle
Class I18nBundleUtil

java.lang.Object
  extended by org.nuiton.i18n.bundle.I18nBundleUtil
Direct Known Subclasses:
I18nBundleFactory

public class I18nBundleUtil
extends Object

Usefull methods on bundles.

Note: Replace the previous class org.nuiton.i18n.bundle.I18nBundleFactory.

Since:
1.1
Author:
tchemit

Field Summary
static String DIRECTORY_SEARCH_BUNDLE_PATTERN
           
static URL[] EMPTY_URL_ARRAY
           
static String SEARCH_BUNDLE_PATTERN
           
 
Constructor Summary
I18nBundleUtil()
           
 
Method Summary
protected static I18nBundle addBundle(String bundleName, List<String> bundleNames, List<I18nBundle> bundles)
           
protected static boolean addBundleEntry(URL url, I18nBundleScope scope, List<String> bundleNames, List<I18nBundle> bundles)
           
static List<I18nBundle> detectBundles(URL... urls)
          Detecte les bundles i18n a partir des urls des fichiers de traduction donnes.
static I18nBundleEntry[] getBundleEntries(I18nBundle... bundles)
          Récupération de toutes les entrées de bundles pour les bundles données.
static I18nBundleEntry[] getBundleEntries(Locale l, Locale defaultLocale, boolean promuteGeneral, I18nBundle... bundles)
          Filtrage des entrées de bundles pour une locale donnée.
static I18nBundleEntry[] getBundleEntries(Locale l, Locale defaultLocale, I18nBundle... bundles)
          Filtrage des entrées de bundles pour une locale donnée.
static String[] getBundleNames(I18nBundle... bundles)
          Récuperation des noms de bundle par un ensemble de bundles.
static I18nBundle[] getBundles(Locale l, I18nBundle... bundles)
          Filtrage des bundles qui correspondante à la locale donnée.
static Locale[] getLocales(I18nBundle... bundles)
          Récuperation de toutes les locales connus par un ensemble de bundles.
static URL[] getURLs(URL... urls)
          Recherche la liste des url de toutes les resources i18n, i.e les urls des fichiers de traduction.
protected static List<URL> getURLsFromDirectory(URL incomingURL, File repository)
           
protected static List<URL> getURLsFromJar(URL incomingURL, File jarfile)
           
static boolean isEmpty(I18nBundle... bundles)
          Teste si un ensemble de bundles contient au moins une entrée.
protected static I18nBundleEntry[] promuteBundle(I18nBundle bundle, Locale l, Locale defaultLocale, boolean promuteGeneral)
          Obtain some rescue entries for a given locale.
protected static void promuteFull(I18nBundle bundle, Locale locale, Locale defaultLocale, List<I18nBundleEntry> result, boolean promuteGeneral)
           
protected static void promuteGeneral(I18nBundle bundle, Locale locale, Locale defaultLocale, List<I18nBundleEntry> result)
           
protected static void promuteLanguage(I18nBundle bundle, Locale locale, Locale defaultLocale, List<I18nBundleEntry> result, boolean promuteGeneral)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DIRECTORY_SEARCH_BUNDLE_PATTERN

public static final String DIRECTORY_SEARCH_BUNDLE_PATTERN
See Also:
Constant Field Values

SEARCH_BUNDLE_PATTERN

public static final String SEARCH_BUNDLE_PATTERN
See Also:
Constant Field Values

EMPTY_URL_ARRAY

public static final URL[] EMPTY_URL_ARRAY
Constructor Detail

I18nBundleUtil

public I18nBundleUtil()
Method Detail

getLocales

public static Locale[] getLocales(I18nBundle... bundles)
Récuperation de toutes les locales connus par un ensemble de bundles.

Parameters:
bundles - les bundles a parcourir
Returns:
la liste des locales rencontrées

getBundleNames

public static String[] getBundleNames(I18nBundle... bundles)
Récuperation des noms de bundle par un ensemble de bundles.

Parameters:
bundles - les bundles a parcourir
Returns:
la liste des noms de bundle rencontrées

getBundles

public static I18nBundle[] getBundles(Locale l,
                                      I18nBundle... bundles)
Filtrage des bundles qui correspondante à la locale donnée.

Parameters:
l - la locale à filtrer
bundles - les bundles a parcourir
Returns:
les bundles qui correspondent à la locale donnée.

getBundleEntries

public static I18nBundleEntry[] getBundleEntries(I18nBundle... bundles)
Récupération de toutes les entrées de bundles pour les bundles données.

Parameters:
bundles - les bundles a parcourir
Returns:
toutes les entrées de bundles.

getBundleEntries

public static I18nBundleEntry[] getBundleEntries(Locale l,
                                                 Locale defaultLocale,
                                                 I18nBundle... bundles)
Filtrage des entrées de bundles pour une locale donnée.

On essaye de trouver les meilleurs entrées possibles (possibilité de promotion).

Note: Cette méthode doit être utilisé pour trouver toutes les entrées à charger par le système i18n pour une locale donnée.

Note: Par defaut, on n'effectue pas les promotions générales (getBundleEntries(Locale, Locale, boolean, I18nBundle...)

Parameters:
l - la locale à filtrer
defaultLocale - la locale à utiliser pour les promotions
bundles - les bundles a parcourir
Returns:
les entrées de bundles filtrés.

getBundleEntries

public static I18nBundleEntry[] getBundleEntries(Locale l,
                                                 Locale defaultLocale,
                                                 boolean promuteGeneral,
                                                 I18nBundle... bundles)
Filtrage des entrées de bundles pour une locale donnée.

On essaye de trouver les meilleurs entrées possibles (possibilité de promotion).

Note: Cette méthode doit être utilisé pour trouver toutes les entrées à charger par le système i18n pour une locale donnée.

Parameters:
l - la locale à filtrer
defaultLocale - la locale à utiliser pour les promotions
promuteGeneral - un drapeau pour indiquer si l'on autorise le chargement de la locale par defaut si pour un bundle donne on a pas trouve de traductions pour la locale donnee.
bundles - les bundles a parcourir
Returns:
les entrées de bundles filtrés.

getURLs

public static URL[] getURLs(URL... urls)
Recherche la liste des url de toutes les resources i18n, i.e les urls des fichiers de traduction.

Parameters:
urls - les urls à inspecter pour trouver des resources i18n
Returns:
la liste des urls de bundle i18n

isEmpty

public static boolean isEmpty(I18nBundle... bundles)
Teste si un ensemble de bundles contient au moins une entrée.

Parameters:
bundles - les bundles a parcourir
Returns:
true si aucune entree trouvee, false autrement.

detectBundles

public static List<I18nBundle> detectBundles(URL... urls)
Detecte les bundles i18n a partir des urls des fichiers de traduction donnes.

Tous les entrées de bundles sont triees dans l'ordre des scopes i18n.

Parameters:
urls - les urls des fichiers de traductions
Returns:
la liste des bundle i18n construits à partir des fichiers de traduction donnes.

addBundleEntry

protected static boolean addBundleEntry(URL url,
                                        I18nBundleScope scope,
                                        List<String> bundleNames,
                                        List<I18nBundle> bundles)

addBundle

protected static I18nBundle addBundle(String bundleName,
                                      List<String> bundleNames,
                                      List<I18nBundle> bundles)

promuteBundle

protected static I18nBundleEntry[] promuteBundle(I18nBundle bundle,
                                                 Locale l,
                                                 Locale defaultLocale,
                                                 boolean promuteGeneral)
Obtain some rescue entries for a given locale.

Note: Calling this method implies there is no entry matched by the common method getBundleEntries(Locale, Locale, I18nBundle...) returns a empty array.

Parameters:
bundle - the bundle to promute
l - the locale required
defaultLocale - the default locale to used for promotion
promuteGeneral - a flag to authorize promotion to default locale
Returns:
the table of entries promuted for the given locale

promuteFull

protected static void promuteFull(I18nBundle bundle,
                                  Locale locale,
                                  Locale defaultLocale,
                                  List<I18nBundleEntry> result,
                                  boolean promuteGeneral)

promuteLanguage

protected static void promuteLanguage(I18nBundle bundle,
                                      Locale locale,
                                      Locale defaultLocale,
                                      List<I18nBundleEntry> result,
                                      boolean promuteGeneral)

promuteGeneral

protected static void promuteGeneral(I18nBundle bundle,
                                     Locale locale,
                                     Locale defaultLocale,
                                     List<I18nBundleEntry> result)

getURLsFromJar

protected static List<URL> getURLsFromJar(URL incomingURL,
                                          File jarfile)

getURLsFromDirectory

protected static List<URL> getURLsFromDirectory(URL incomingURL,
                                                File repository)


Copyright © 2004-2010 CodeLutin. All Rights Reserved.