クラスIIORegistry
java.lang.Object
javax.imageio.spi.ServiceRegistry
javax.imageio.spi.IIORegistry
public final class IIORegistry extends ServiceRegistry
Image I/Oサービス・プロバイダ・インスタンス用のレジストリ。 サービス・プロバイダ・クラスは、
ServiceLoaderに記載されているメカニズムによって実行時に検出されます。 その目的は、使用可能なすべてのImage I/Oサービス・プロバイダ・クラスをロードして検査することは比較的安価です。 これらのクラスは、実際の作業(この場合はImageReader, ImageWriter, ImageTranscoder, ImageInputStreamおよびImageOutputStream)を実行する、より重いクラスを特定してインスタンス化するために使用できます。 Javaランタイムに含まれるサービス・プロバイダは、このクラスがインスタンス化されるとすぐに自動的にロードされます。
registerApplicationClasspathSpisメソッドがコールされると、ServiceLoaderを使用して追加のサービス・プロバイダ・インスタンスが検出されます。
自動的に検出されないサービス・プロバイダを手動で追加することも、ServiceRegistryクラスのインタフェースを使用するサービス・プロバイダを削除することもできます。 したがって、アプリケーションでレジストリの内容を必要に応じてカスタマイズできます。
サービス・プロバイダの作成方法とデプロイ方法については、ServiceLoaderのドキュメントを参照してください。
-
ネストされたクラスのサマリー
クラスServiceRegistryで宣言されたネストされたクラス/インタフェース
ServiceRegistry.Filter修飾子と型クラス説明static interface任意の基準に一致するプロバイダを選択するためにServiceRegistry.getServiceProvidersで使用される単純なフィルタ・インタフェースです。 -
メソッドのサマリー
修飾子と型メソッド説明static IIORegistryイメージ入出力APIで使用されるデフォルトのIIORegistryインスタンスを返します。voidアプリケーションのクラス・パスで検出されたすべての使用可能サービス・プロバイダを、デフォルトのClassLoaderを使用して登録します。クラスで宣言されたメソッド ServiceRegistry
contains, deregisterAll, deregisterAll, deregisterServiceProvider, deregisterServiceProvider, getCategories, getServiceProviderByClass, getServiceProviders, getServiceProviders, lookupProviders, lookupProviders, registerServiceProvider, registerServiceProvider, registerServiceProviders, setOrdering, unsetOrdering修飾子と型メソッド説明booleanproviderが現在登録されている場合、trueを返します。void現在登録されているすべてのサービス・プロバイダ・オブジェクトを、すべてのカテゴリから登録解除します。voidderegisterAll(Class<?> category) 現在指定されたカテゴリに登録されているサービス・プロバイダ・オブジェクトをすべて登録解除します。voidderegisterServiceProvider(Object provider) サービス・プロバイダ・オブジェクトを、それを含むすべてのカテゴリから削除します。<T> booleanderegisterServiceProvider(T provider, Class<T> category) 指定されたカテゴリからサービス・プロバイダ・オブジェクトを削除します。現在のカテゴリ・セットを示すClassオブジェクトのIteratorを返します。<T> TgetServiceProviderByClass(Class<T> providerClass) 現在登録されている、指定されたクラス型のプロバイダ・オブジェクトを返します。<T> Iterator<T> getServiceProviders(Class<T> category, boolean useOrdering) 指定されたカテゴリ内の登録済みサービス・プロバイダをすべて含むIteratorを返します。<T> Iterator<T> getServiceProviders(Class<T> category, ServiceRegistry.Filter filter, boolean useOrdering) 指定されたServiceRegistry.Filterオブジェクトのfilterメソッドで設定された基準を満たす、指定されたカテゴリ内のサービス・プロバイダ・オブジェクトを含むIteratorを返します。static <T> Iterator<T> lookupProviders(Class<T> providerClass) コンテキスト・クラス・ローダーを使用して、指定されたサービスの使用可能なプロバイダを検出して段階的にインスタンス化します。static <T> Iterator<T> lookupProviders(Class<T> providerClass, ClassLoader loader) 指定されたクラス・ローダーを使用して特定のサービス・クラスの実装を検索します。voidregisterServiceProvider(Object provider) サービス・プロバイダ・オブジェクトをレジストリに追加します。<T> booleanregisterServiceProvider(T provider, Class<T> category) サービス・プロバイダ・オブジェクトをレジストリに追加します。voidregisterServiceProviders(Iterator<?> providers) Iteratorから取り込んだ一連のサービス・プロバイダ・オブジェクトをレジストリに追加します。<T> booleansetOrdering(Class<T> category, T firstProvider, T secondProvider) 指定されたカテゴリの2つのサービス・プロバイダ・オブジェクト間のペアの順序を設定します。<T> booleanunsetOrdering(Class<T> category, T firstProvider, T secondProvider) 指定されたカテゴリの2つのサービス・プロバイダ・オブジェクト間のペアの順序を設定します。クラスオブジェクトで宣言されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait修飾子と型メソッド説明protected Objectclone()このオブジェクトのコピーを作成して、返します。booleanこのオブジェクトと他のオブジェクトが等しいかどうかを示します。protected voidfinalize()削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。最終決定は非推奨であり、将来のリリースで削除される可能性があります。final Class<?> getClass()このObjectの実行時クラスを返します。inthashCode()このオブジェクトに対するハッシュ・コード値を返します。final voidnotify()このオブジェクトのモニターで待機中のスレッドを1つ再開します。final voidこのオブジェクトのモニターで待機中のすべてのスレッドを再開します。toString()オブジェクトの文字列表現を返します。final voidwait()現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。final voidwait(long timeoutMillis) 現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。final voidwait(long timeoutMillis, int nanos) 現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
-
メソッドの詳細
-
getDefaultInstance
public static IIORegistry getDefaultInstance()イメージ入出力APIで使用されるデフォルトのIIORegistryインスタンスを返します。 このインスタンスはすべてのレジストリ関数で使用されます。- 戻り値:
- イメージI/O APIのデフォルト・レジストリ
-
registerApplicationClasspathSpis
public void registerApplicationClasspathSpis()アプリケーションのクラス・パスで検出されたすべての使用可能サービス・プロバイダを、デフォルトのClassLoaderを使用して登録します。 このメソッドは通常ImageIO.scanForPluginsメソッドから呼び出されます。- 関連項目:
-