ResourceBundle.Control クラス

定義

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。

[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
継承
ResourceBundle.Control
属性

注釈

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。 言い換えると、 は ResourceBundle.Control 、リソース バンドルを読み込むファクトリ メソッドと連携します。 コールバック メソッドの既定の実装では、ファクトリ メソッドが既定の動作を実行するために必要な情報が提供されます。

コールバック メソッドに加えて、 #toBundleName(String, Locale) toBundleName メソッドと #toResourceName(String, String) toResourceName メソッドは、主にコールバック メソッドの実装に便利な目的で定義されます。 ただし、 メソッドをtoBundleNameオーバーライドして、ローカライズされたリソースのorganizationとパッケージ化でさまざまな規則を提供できます。 メソッドは toResourceNamefinal 間違ったリソースとクラス名の区切り記号を使用しないようにすることです。

2 つのファクトリ メソッド と #getNoFallbackControl(List)は、#getControl(List)既定のバンドル読み込みプロセスの一般的なバリエーションを実装するインスタンスを提供ResourceBundle.Controlします。

メソッドによって返される形式と、 メソッドによってControl#getFormats(String) getFormatsResourceBundle.Control#getCandidateLocales(String, Locale) getCandidateLocales返される候補ロケールは、同じ基本バンドルのすべてのResourceBundle.getBundle呼び出しで一貫性がある必要があります。 それ以外の場合、メソッドは ResourceBundle.getBundle 意図しないバンドルを返す可能性があります。 たとえば、 の最初の呼び出しと 2 番目の呼び出しResourceBundle.getBundleに対してのみ メソッドによってgetFormatsのみが"java.class""java.properties"返される場合、2 番目の呼び出しでは、最初の呼び出し中にキャッシュされたクラス ベースの呼び出しが返されます。

インスタンスが ResourceBundle.Control 複数のスレッドで同時に使用される場合は、スレッド セーフである必要があります。 ResourceBundle.getBundle は、メソッドを呼び出 ResourceBundle.Control すために同期しません。 メソッドの既定の実装はスレッド セーフです。

アプリケーションでは、ファクトリ メソッドによってgetControl返されるか、 のサブクラスResourceBundle.Controlから作成されたインスタンスを指定ResourceBundle.Controlして、バンドルの読み込みプロセスをカスタマイズできます。 既定のバンドル読み込みプロセスを変更する例を次に示します。

<b>例 1</b>

次のコードでは、プロパティベースのリソースのみを検索できます ResourceBundle.getBundle

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

説明の例ResourceBundle.getBundleのリソース バンドルを指定すると、このResourceBundle.getBundle呼び出しは、親が である親が MyResources_fr.propertiesMyResources.propertiesであるを読み込みますMyResources_fr_CH.properties。 (MyResources_fr_CH.properties は非表示ではありませんが、 MyResources_fr_CH.class は です)。

<b>例 2</b>

を使用して Properties#loadFromXML(java.io.InputStream) Properties.loadFromXMLXML ベースのバンドルを読み込む例を次に示します。

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

1.6 で追加されました。

の Java ドキュメント java.util.ResourceBundle.Control

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

コンストラクター

ResourceBundle.Control()

唯一のコンストラクター。

ResourceBundle.Control(IntPtr, JniHandleOwnership)

JNI オブジェクトのマネージド表現を作成するときに使用されるコンストラクター。ランタイムによって呼び出されます。

フィールド

TtlDontCache

読み込まれたリソース バンドル インスタンスをキャッシュしない場合の有効期間定数。

TtlNoExpirationControl

キャッシュに読み込まれたリソース バンドル インスタンスの有効期限コントロールを無効にするための有効期間定数。

プロパティ

Class

この Objectのランタイム クラスを返します。

(継承元 Object)
FormatClass

を含む"java.class"クラスのみの形式List

FormatDefault

文字列"java.class""java.properties"をこの順序で格納する既定の形式List

FormatProperties

を含む"java.properties"プロパティのみの形式List

Handle

基になる Android インスタンスへのハンドル。

(継承元 Object)
JniIdentityHashCode

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。

(継承元 Object)
JniPeerMembers

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。

PeerReference

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。

(継承元 Object)
ThresholdClass

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用することを意図したものではありません。

ThresholdType

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用することを意図したものではありません。

メソッド

Clone()

このオブジェクトのコピーを作成して返します。

(継承元 Object)
Dispose()

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。

(継承元 Object)
Dispose(Boolean)

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。

(継承元 Object)
Equals(Object)

他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。

(継承元 Object)
GetCandidateLocales(String, Locale)

localeList候補ロケールbaseNameとして、 の Localeを返します。

GetControl(IList<String>)

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。

GetFallbackLocale(String, Locale)

Localeファクトリ メソッドによるさらにリソース バンドル検索のフォールバック ロケールとして使用される をResourceBundle.getBundle返します。

GetFormats(String)

指定baseNameした ListStringリソース バンドルの読み込みに使用する形式を含む の を返します。

GetHashCode()

オブジェクトのハッシュ コード値を返します。

(継承元 Object)
GetNoFallbackControl(IList<String>)

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。

GetTimeToLive(String, Locale)

この ResourceBundle.Controlの下に読み込まれたリソース バンドルの Time-to-Live (TTL) 値を返します。

JavaFinalize()

ガベージ コレクションがオブジェクトへの参照がなくなったと判断したときに、オブジェクトのガベージ コレクターによって呼び出されます。

(継承元 Object)
NeedsReload(String, Locale, String, ClassLoader, ResourceBundle, Int64)

キャッシュ内で期限切れになった bundle を再読み込みする必要があるかどうかを、または他の条件によって指定された読み込み時間に loadTime 基づいて決定します。

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

必要に応じて、指定されたクラス ローダーを使用して、指定された形式とロケールの特定のバンドル名のリソース バンドルをインスタンス化します。

Notify()

このオブジェクトのモニターで待機している 1 つのスレッドをウェイクアップします。

(継承元 Object)
NotifyAll()

このオブジェクトのモニターで待機しているすべてのスレッドをウェイクアップします。

(継承元 Object)
SetHandle(IntPtr, JniHandleOwnership)

Handle プロパティを設定します。

(継承元 Object)
ToArray<T>()

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。

(継承元 Object)
ToBundleName(String, Locale)

指定 baseName された と locale をバンドル名に変換します。

ToResourceName(String, String)

でのすべてのbundleName出現'.'箇所を に置き換え、 と指定されたファイル suffix'.'追加して、 メソッドで'/'bundleName必要なClassLoader#getResource ClassLoader.getResourceフォームに指定された を変換します。

ToString()

オブジェクトの文字列形式を返します。

(継承元 Object)
UnregisterFromRuntime()

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。

(継承元 Object)
Wait()

現在のスレッドが起動するまで待機します。通常<>は、通知</em> または <em>割り込み</em によって待機します>。

(継承元 Object)
Wait(Int64)

現在のスレッドが起動するまで待機します。通常<>は、通知</em> または>< em 割り込み</em>、または一定のリアルタイムが経過するまで待機します。

(継承元 Object)
Wait(Int64, Int32)

現在のスレッドが起動するまで待機します。通常<>は、通知</em> または>< em 割り込み</em>、または一定のリアルタイムが経過するまで待機します。

(継承元 Object)

明示的なインターフェイスの実装

IJavaPeerable.Disposed()

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。

(継承元 Object)
IJavaPeerable.DisposeUnlessReferenced()

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。

(継承元 Object)
IJavaPeerable.Finalized()

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。

(継承元 Object)
IJavaPeerable.JniManagedPeerState

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。

(継承元 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。

(継承元 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。

(継承元 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。

(継承元 Object)

拡張メソッド

JavaCast<TResult>(IJavaObject)

Android ランタイムチェック型変換を実行します。

JavaCast<TResult>(IJavaObject)

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。

GetJniTypeName(IJavaPeerable)

ResourceBundle.Control は、バンドルの読み込みプロセス中にファクトリ メソッドによって ResourceBundle#getBundle(String, Locale, ClassLoader, Control) ResourceBundle.getBundle 呼び出されるコールバック メソッドのセットを定義します。

適用対象