Compartir a través de


ResourceBundle.Control Clase

Definición

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes.

[Android.Runtime.Register("java/util/ResourceBundle$Control", DoNotGenerateAcw=true)]
public class ResourceBundle.Control : Java.Lang.Object
[<Android.Runtime.Register("java/util/ResourceBundle$Control", DoNotGenerateAcw=true)>]
type ResourceBundle.Control = class
    inherit Object
Herencia
ResourceBundle.Control
Atributos

Comentarios

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes. Es decir, colabora ResourceBundle.Control con los métodos de fábrica para cargar agrupaciones de recursos. La implementación predeterminada de los métodos de devolución de llamada proporciona la información necesaria para que los métodos de fábrica realicen el comportamiento predeterminado.

Además de los métodos de devolución de llamada, los #toBundleName(String, Locale) toBundleName métodos y #toResourceName(String, String) toResourceName se definen principalmente para mayor comodidad al implementar los métodos de devolución de llamada. Sin embargo, el toBundleName método se podría invalidar para proporcionar convenciones diferentes en la organización y empaquetado de recursos localizados. El toResourceName método es final evitar el uso de separadores de nombre de clase y recursos incorrectos.

Dos métodos de fábrica, #getControl(List) y #getNoFallbackControl(List), proporcionan ResourceBundle.Control instancias que implementan variaciones comunes del proceso de carga de agrupación predeterminado.

Los formatos devueltos por el método y las Control#getFormats(String) getFormats configuraciones regionales candidatas devueltos por el ResourceBundle.Control#getCandidateLocales(String, Locale) getCandidateLocales método deben ser coherentes en todas las ResourceBundle.getBundle invocaciones para la misma agrupación base. De lo contrario, los ResourceBundle.getBundle métodos pueden devolver paquetes no deseados. Por ejemplo, si solo "java.class" devuelve el getFormats método para la primera llamada a ResourceBundle.getBundle y solo "java.properties" para la segunda llamada, la segunda llamada devolverá la clase basada en clase que se ha almacenado en caché durante la primera llamada.

Una ResourceBundle.Control instancia debe ser segura para subprocesos si se usa simultáneamente en varios subprocesos. ResourceBundle.getBundle no se sincroniza para llamar a los ResourceBundle.Control métodos. Las implementaciones predeterminadas de los métodos son seguras para subprocesos.

Las aplicaciones pueden especificar ResourceBundle.Control instancias devueltas por los getControl métodos de fábrica o creadas a partir de una subclase de para personalizar el proceso de ResourceBundle.Control carga de paquetes. A continuación se muestran ejemplos de cómo cambiar el proceso de carga de agrupación predeterminado.

<b>Ejemplo 1</b>

El código siguiente permite ResourceBundle.getBundle buscar solo recursos basados en propiedades.

import java.util.*;
            import static java.util.ResourceBundle.Control.*;
            ...
            ResourceBundle bundle =
              ResourceBundle.getBundle("MyResources", new Locale("fr", "CH"),
                                       ResourceBundle.Control.getControl(FORMAT_PROPERTIES));

Dadas las agrupaciones de recursos del ejemplo de la ResourceBundle.getBundle descripción, esta ResourceBundle.getBundle llamada carga MyResources_fr_CH.properties cuyo elemento primario es MyResources_fr.properties cuyo elemento primario es MyResources.properties. (MyResources_fr_CH.properties no está oculto, pero MyResources_fr_CH.class es).

<b>Ejemplo 2</b>

A continuación se muestra un ejemplo de carga de agrupaciones basadas en XML mediante Properties#loadFromXML(java.io.InputStream) Properties.loadFromXML.

ResourceBundle rb = ResourceBundle.getBundle("Messages",
                new ResourceBundle.Control() {
                    public List&lt;String&gt; getFormats(String baseName) {
                        if (baseName == null)
                            throw new NullPointerException();
                        return Arrays.asList("xml");
                    }
                    public ResourceBundle newBundle(String baseName,
                                                    Locale locale,
                                                    String format,
                                                    ClassLoader loader,
                                                    boolean reload)
                                     throws IllegalAccessException,
                                            InstantiationException,
                                            IOException {
                        if (baseName == null || locale == null
                              || format == null || loader == null)
                            throw new NullPointerException();
                        ResourceBundle bundle = null;
                        if (format.equals("xml")) {
                            String bundleName = toBundleName(baseName, locale);
                            String resourceName = toResourceName(bundleName, format);
                            InputStream stream = null;
                            if (reload) {
                                URL url = loader.getResource(resourceName);
                                if (url != null) {
                                    URLConnection connection = url.openConnection();
                                    if (connection != null) {
                                        // Disable caches to get fresh data for
                                        // reloading.
                                        connection.setUseCaches(false);
                                        stream = connection.getInputStream();
                                    }
                                }
                            } else {
                                stream = loader.getResourceAsStream(resourceName);
                            }
                            if (stream != null) {
                                BufferedInputStream bis = new BufferedInputStream(stream);
                                bundle = new XMLResourceBundle(bis);
                                bis.close();
                            }
                        }
                        return bundle;
                    }
                });

            ...

            private static class XMLResourceBundle extends ResourceBundle {
                private Properties props;
                XMLResourceBundle(InputStream stream) throws IOException {
                    props = new Properties();
                    props.loadFromXML(stream);
                }
                protected Object handleGetObject(String key) {
                    return props.getProperty(key);
                }
                public Enumeration&lt;String&gt; getKeys() {
                    ...
                }
            }

Agregado en la versión 1.6.

Documentación de Java para java.util.ResourceBundle.Control.

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.

Constructores

ResourceBundle.Control()

Constructor único.

ResourceBundle.Control(IntPtr, JniHandleOwnership)

Constructor utilizado al crear representaciones administradas de objetos JNI; llamado por el tiempo de ejecución.

Campos

TtlDontCache

Constante de período de vida para no almacenar en caché instancias de agrupación de recursos cargadas.

TtlNoExpirationControl

Constante de período de vida para deshabilitar el control de expiración para las instancias de agrupación de recursos cargadas en la memoria caché.

Propiedades

Class

Devuelve la clase en tiempo de ejecución de este Objectobjeto .

(Heredado de Object)
FormatClass

Formato de solo List clase que contiene "java.class".

FormatDefault

El formato Listpredeterminado , que contiene las cadenas "java.class" y "java.properties", en este orden.

FormatProperties

Formato de solo List propiedades que contiene "java.properties".

Handle

Identificador de la instancia de Android subyacente.

(Heredado de Object)
JniIdentityHashCode

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes.

(Heredado de Object)
JniPeerMembers

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes.

PeerReference

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes.

(Heredado de Object)
ThresholdClass

Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código.

ThresholdType

Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código.

Métodos

Clone()

Crea y devuelve una copia de este objeto.

(Heredado de Object)
Dispose()

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes.

(Heredado de Object)
Dispose(Boolean)

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes.

(Heredado de Object)
Equals(Object)

Indica si algún otro objeto es "igual a" este.

(Heredado de Object)
GetCandidateLocales(String, Locale)

Devuelve un List de Locales como configuraciones regionales candidatas para baseName y locale.

GetControl(IList<String>)

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes.

GetFallbackLocale(String, Locale)

Devuelve un Locale objeto que se va a usar como configuración regional de reserva para realizar búsquedas adicionales de agrupación de recursos mediante el método de ResourceBundle.getBundle fábrica.

GetFormats(String)

Devuelve un List de Stringlos formatos que contienen que se usarán para cargar agrupaciones de recursos para el especificado baseName.

GetHashCode()

Devuelve un valor de código hash del objeto.

(Heredado de Object)
GetNoFallbackControl(IList<String>)

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes.

GetTimeToLive(String, Locale)

Devuelve el valor de período de vida (TTL) para los conjuntos de recursos que se cargan en este ResourceBundle.Control.

JavaFinalize()

Lo llama el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto .

(Heredado de Object)
NeedsReload(String, Locale, String, ClassLoader, ResourceBundle, Int64)

Determina si es necesario volver a cargar el tiempo de carga expirado bundle en la memoria caché según el tiempo de carga proporcionado por loadTime o algún otro criterio.

NewBundle(String, Locale, String, ClassLoader, Boolean)

Crea una instancia de un lote de recursos para el nombre de lote especificado del formato y la configuración regional especificados, mediante el cargador de clases especificado si es necesario.

Notify()

Activa un único subproceso que está esperando en el monitor de este objeto.

(Heredado de Object)
NotifyAll()

Activa todos los subprocesos que están esperando en el monitor de este objeto.

(Heredado de Object)
SetHandle(IntPtr, JniHandleOwnership)

Establece la propiedad Handle.

(Heredado de Object)
ToArray<T>()

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes.

(Heredado de Object)
ToBundleName(String, Locale)

Convierte el objeto especificado baseName y locale en el nombre del lote.

ToResourceName(String, String)

Convierte el especificado bundleName en el formulario requerido por el ClassLoader#getResource ClassLoader.getResource método reemplazando todas las apariciones de '.' en bundleName por '/' y anexando un '.' y el archivo suffixespecificado .

ToString()

Devuelve una representación de cadena del objeto.

(Heredado de Object)
UnregisterFromRuntime()

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes.

(Heredado de Object)
Wait()

Hace que el subproceso actual espere hasta que se despierta, normalmente por ser em notificado/em> o <em>interrumpido</em>.<><

(Heredado de Object)
Wait(Int64, Int32)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

(Heredado de Object)
Wait(Int64)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

(Heredado de Object)

Implementaciones de interfaz explícitas

IJavaPeerable.Disposed()

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes.

(Heredado de Object)
IJavaPeerable.DisposeUnlessReferenced()

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes.

(Heredado de Object)
IJavaPeerable.Finalized()

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes.

(Heredado de Object)
IJavaPeerable.JniManagedPeerState

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes.

(Heredado de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes.

(Heredado de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes.

(Heredado de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes.

(Heredado de Object)

Métodos de extensión

JavaCast<TResult>(IJavaObject)

Realiza una conversión de tipos comprobados en tiempo de ejecución de Android.

JavaCast<TResult>(IJavaObject)

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes.

GetJniTypeName(IJavaPeerable)

ResourceBundle.Control define un conjunto de métodos de devolución de llamada invocados por los ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle métodos de fábrica durante el proceso de carga de paquetes.

Se aplica a