r01f.locale
Class I18NResourceBundleControl

java.lang.Object
  extended by java.util.ResourceBundle.Control
      extended by r01f.locale.I18NResourceBundleControl

public class I18NResourceBundleControl
extends java.util.ResourceBundle.Control

Se utiliza para obtener un resource bundle pesonalizado que permita: - Utilizar la implementación de ResourcesLoader de R01F - Utilizar la recarga de recursos de R01F Para crear el ResourceBundle, basta con hacer lo siguiente: ResourceBundle rb = ResourceBundle.getBundle(baseName,locale, new I18NResourceBundleControl(resLoaderDef,resLoaderFactory); ... obviamente la factoría de loaders de recursos ResourcesLoaderFactory y la definición del loader de recursos ResourcesLoaderDef han de ser inyectados en el constructor


Field Summary
private  ResourcesReloadControl _reloadControl
           
private  ResourcesLoader _resourcesLoader
           
 
Fields inherited from class java.util.ResourceBundle.Control
FORMAT_CLASS, FORMAT_DEFAULT, FORMAT_PROPERTIES, TTL_DONT_CACHE, TTL_NO_EXPIRATION_CONTROL
 
Constructor Summary
I18NResourceBundleControl(ResourcesLoaderFactory resLoaderFactory, ResourcesLoaderDef resLoaderDef)
          Constructor en base a la factoría de ResourcesLoader y a la definición de un ResourcesLoader ( ResourcesLoaderDef )
I18NResourceBundleControl(ResourcesLoader resLoader, ResourcesReloadControl resReloadControl)
          Constructor en base a un ResourcesLoader y a un ResourcesReloadControl
 
Method Summary
 java.util.List<java.lang.String> getFormats(java.lang.String baseName)
           
 long getTimeToLive(java.lang.String baseName, java.util.Locale locale)
           
 boolean needsReload(java.lang.String baseName, java.util.Locale locale, java.lang.String format, java.lang.ClassLoader loader, java.util.ResourceBundle bundle, long loadTime)
           
 java.util.ResourceBundle newBundle(java.lang.String baseName, java.util.Locale locale, java.lang.String format, java.lang.ClassLoader loader, boolean reload)
           
 
Methods inherited from class java.util.ResourceBundle.Control
getCandidateLocales, getControl, getFallbackLocale, getNoFallbackControl, toBundleName, toResourceName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_resourcesLoader

private ResourcesLoader _resourcesLoader

_reloadControl

private ResourcesReloadControl _reloadControl
Constructor Detail

I18NResourceBundleControl

public I18NResourceBundleControl(ResourcesLoaderFactory resLoaderFactory,
                                 ResourcesLoaderDef resLoaderDef)
Constructor en base a la factoría de ResourcesLoader y a la definición de un ResourcesLoader ( ResourcesLoaderDef )

Parameters:
resLoaderFactory - factoría
resLoaderDef - definición

I18NResourceBundleControl

public I18NResourceBundleControl(ResourcesLoader resLoader,
                                 ResourcesReloadControl resReloadControl)
Constructor en base a un ResourcesLoader y a un ResourcesReloadControl

Parameters:
resReloadControl - cargador de recursos
resControl - controlador de la recarga de recursos
Method Detail

getFormats

public java.util.List<java.lang.String> getFormats(java.lang.String baseName)
Overrides:
getFormats in class java.util.ResourceBundle.Control

newBundle

public java.util.ResourceBundle newBundle(java.lang.String baseName,
                                          java.util.Locale locale,
                                          java.lang.String format,
                                          java.lang.ClassLoader loader,
                                          boolean reload)
                                   throws java.lang.IllegalAccessException,
                                          java.lang.InstantiationException,
                                          java.io.IOException
Overrides:
newBundle in class java.util.ResourceBundle.Control
Throws:
java.lang.IllegalAccessException
java.lang.InstantiationException
java.io.IOException

getTimeToLive

public long getTimeToLive(java.lang.String baseName,
                          java.util.Locale locale)
Overrides:
getTimeToLive in class java.util.ResourceBundle.Control

needsReload

public boolean needsReload(java.lang.String baseName,
                           java.util.Locale locale,
                           java.lang.String format,
                           java.lang.ClassLoader loader,
                           java.util.ResourceBundle bundle,
                           long loadTime)
Overrides:
needsReload in class java.util.ResourceBundle.Control