Freigeben über


ResourceBundle.Control Klasse

Definition

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden.

[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
Vererbung
ResourceBundle.Control
Attribute

Hinweise

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden. Mit anderen Worten, eine ResourceBundle.Control Zusammenarbeit mit den Factorymethoden zum Laden von Ressourcenbündeln. Die Standardimplementierung der Rückrufmethoden stellt die informationen bereit, die für die Factorymethoden erforderlich sind, um das Standardverhalten auszuführen.

Zusätzlich zu den Rückrufmethoden werden die #toBundleName(String, Locale) toBundleName Methoden und #toResourceName(String, String) toResourceName Methoden in erster Linie zur Vereinfachung der Implementierung der Rückrufmethoden definiert. Die Methode kann jedoch außer Kraft gesetzt werden, toBundleName um unterschiedliche Konventionen in der Organisation und verpackung lokalisierter Ressourcen bereitzustellen. Die toResourceName Methode besteht final darin, falsche Ressourcen- und Klassennamentrennzeichen zu vermeiden.

Zwei Factorymethoden und #getNoFallbackControl(List), stellen Instanzen bereitResourceBundle.Control, #getControl(List) die allgemeine Variationen des Standardpaketladevorgangs implementieren.

Die von der Control#getFormats(String) getFormats Methode zurückgegebenen Formate und kandidatengebietsschemas, die von der ResourceBundle.Control#getCandidateLocales(String, Locale) getCandidateLocales Methode zurückgegeben werden, müssen in allen ResourceBundle.getBundle Aufrufen für dasselbe Basispaket konsistent sein. Andernfalls geben die ResourceBundle.getBundle Methoden möglicherweise unbeabsichtigte Bündel zurück. Wenn beispielsweise nur "java.class" die getFormats Methode für den ersten Aufruf ResourceBundle.getBundle und nur "java.properties" für den zweiten Aufruf zurückgegeben wird, gibt der zweite Aufruf den klassenbasierten Aufruf zurück, der während des ersten Aufrufs zwischengespeichert wurde.

Eine ResourceBundle.Control Instanz muss threadsicher sein, wenn sie von mehreren Threads gleichzeitig verwendet wird. ResourceBundle.getBundle wird nicht synchronisiert, um die ResourceBundle.Control Methoden aufzurufen. Die Standardimplementierungen der Methoden sind threadsicher.

Anwendungen können Instanzen angeben ResourceBundle.Control , die von den getControl Factorymethoden zurückgegeben oder aus einer Unterklasse ResourceBundle.Control zum Anpassen des Bundleladevorgangs erstellt wurden. Im Folgenden sind Beispiele zum Ändern des Standardmäßigen Ladevorgangs des Bundles aufgeführt.

<b>Beispiel 1</b>

Mit dem folgenden Code können ResourceBundle.getBundle nur eigenschaftenbasierte Ressourcen nachschlagen.

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

Angesichts der Ressourcenbündel im Beispiel in der ResourceBundle.getBundle Beschreibung lädt MyResources_fr_CH.properties dieser ResourceBundle.getBundle Aufruf, dessen übergeordnetes Element das übergeordnete Element istMyResources.propertiesMyResources_fr.properties. (MyResources_fr_CH.properties ist nicht ausgeblendet, aber MyResources_fr_CH.class ist.)

<b>Beispiel 2</b>

Im Folgenden sehen Sie ein Beispiel für das Laden von XML-basierten Bündeln mithilfe Properties#loadFromXML(java.io.InputStream) Properties.loadFromXMLvon .

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() {
                    ...
                }
            }

In 1.6 hinzugefügt.

Java-Dokumentation für java.util.ResourceBundle.Control.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Konstruktoren

ResourceBundle.Control()

Alleiniger Konstruktor.

ResourceBundle.Control(IntPtr, JniHandleOwnership)

Ein Konstruktor, der beim Erstellen verwalteter Darstellungen von JNI-Objekten verwendet wird; wird von der Laufzeit aufgerufen.

Felder

TtlDontCache

Die Zeit-zu-Live-Konstante für nicht zwischenspeichern geladene Ressourcenbundleinstanzen.

TtlNoExpirationControl

Die Zeit-zu-Live-Konstante zum Deaktivieren des Ablaufsteuerelements für geladene Ressourcenbundleinstanzen im Cache.

Eigenschaften

Class

Gibt die Laufzeitklasse dieses Werts Objectzurück.

(Geerbt von Object)
FormatClass

Das Nur-Klassenformat List , das "java.class".

FormatDefault

Das Standardformat List, das die Zeichenfolgen "java.class" und "java.properties"in dieser Reihenfolge enthält.

FormatProperties

Das Nur-Eigenschaften-Format List mit "java.properties".

Handle

Das Handle für die zugrunde liegende Android-Instanz.

(Geerbt von Object)
JniIdentityHashCode

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden.

(Geerbt von Object)
JniPeerMembers

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden.

PeerReference

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden.

(Geerbt von Object)
ThresholdClass

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

ThresholdType

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

Methoden

Clone()

Erstellt und gibt eine Kopie dieses Objekts zurück.

(Geerbt von Object)
Dispose()

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden.

(Geerbt von Object)
Dispose(Boolean)

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden.

(Geerbt von Object)
Equals(Object)

Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist.

(Geerbt von Object)
GetCandidateLocales(String, Locale)

Gibt eins List von Locales als Kandidatengebietsschemas für baseName und locale.

GetControl(IList<String>)

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden.

GetFallbackLocale(String, Locale)

Gibt ein Locale , das als Fallbackgebietsschema für weitere Ressourcenbündelsuchen durch die ResourceBundle.getBundle Factorymethode verwendet werden soll.

GetFormats(String)

Gibt einen List von s mit Formaten zurück, die zum Laden von StringRessourcenbündeln für das angegebene Element baseNameverwendet werden sollen.

GetHashCode()

Gibt einen Hashcodewert für das Objekt zurück.

(Geerbt von Object)
GetNoFallbackControl(IList<String>)

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden.

GetTimeToLive(String, Locale)

Gibt den Time-to-Live-Wert (TTL) für Ressourcenbündel zurück, die unter diesem ResourceBundle.ControlGeladen werden.

JavaFinalize()

Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection bestimmt, dass keine weiteren Verweise auf das Objekt vorhanden sind.

(Geerbt von Object)
NeedsReload(String, Locale, String, ClassLoader, ResourceBundle, Int64)

Bestimmt, ob der abgelaufene bundle Cache basierend auf der Ladezeit loadTime oder anderen Kriterien neu geladen werden muss.

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

Instanziiert ein Ressourcenbundle für den angegebenen Bündelnamen des angegebenen Formats und Gebietsschemas, wobei das angegebene Klassenladeprogramm bei Bedarf verwendet wird.

Notify()

Aktiviert einen einzelnen Thread, der auf dem Monitor dieses Objekts wartet.

(Geerbt von Object)
NotifyAll()

Aktiviert alle Threads, die auf dem Monitor dieses Objekts warten.

(Geerbt von Object)
SetHandle(IntPtr, JniHandleOwnership)

Legt die Handle-Eigenschaft fest.

(Geerbt von Object)
ToArray<T>()

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden.

(Geerbt von Object)
ToBundleName(String, Locale)

Wandelt den angegebenen baseName namen und locale in den Bundlenamen um.

ToResourceName(String, String)

Konvertiert das angegebene bundleName Formular in das formular, das von der ClassLoader#getResource ClassLoader.getResource Methode benötigt wird, indem alle Vorkommen des bundleName'.' Ins durch '/' und Anfügen einer '.' und der angegebenen Datei suffixersetzt werden.

ToString()

Gibt eine Zeichenfolgendarstellung des Objekts zurück.

(Geerbt von Object)
UnregisterFromRuntime()

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden.

(Geerbt von Object)
Wait()

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch em benachrichtigt/em> oder <em>unterbrochen</em>.<><

(Geerbt von Object)
Wait(Int64)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)
Wait(Int64, Int32)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

IJavaPeerable.Disposed()

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden.

(Geerbt von Object)
IJavaPeerable.DisposeUnlessReferenced()

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden.

(Geerbt von Object)
IJavaPeerable.Finalized()

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden.

(Geerbt von Object)
IJavaPeerable.JniManagedPeerState

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden.

(Geerbt von Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden.

(Geerbt von Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden.

(Geerbt von Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden.

(Geerbt von Object)

Erweiterungsmethoden

JavaCast<TResult>(IJavaObject)

Führt eine android-laufzeitgecheckte Typkonvertierung aus.

JavaCast<TResult>(IJavaObject)

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden.

GetJniTypeName(IJavaPeerable)

ResourceBundle.Control definiert eine Reihe von Rückrufmethoden, die während des Ladens des Bundles von den ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle Factorymethoden aufgerufen werden.

Gilt für: