public final class IIORegistry extends ServiceRegistry
ImageReader、ImageWriter、ImageTranscoder、ImageInputStream、および ImageOutputStream のインスタンスになります。
システムのクラスパス (たとえば、Sun の JDK 実装では jre/lib/ext ディレクトリ) で検出されたサービスプロバイダが、このクラスがインスタンス化されるとすぐに自動的にロードされます。
registerApplicationClasspathSpis メソッドが呼び出されると、アプリケーションのクラスパスの JAR ファイルのメタ情報セクションで宣言されたサービスプロバイダインスタンスがロードされます。サービスプロバイダを宣言するために、services サブディレクトリが各 JAR ファイルに存在する META-INF ディレクトリ内に配置されます。このディレクトリには、JAR ファイルに 1 つまたは複数の実装クラスを保持する各サービスプロバイダインタフェースに対して 1 つのファイルが含まれます。たとえば、JAR ファイルに ImageReaderSpi インタフェースを実装する com.mycompany.imageio.MyFormatReaderSpi というクラスが含まれる場合、JAR には次の名前のファイルが含まれます。
META-INF/services/javax.imageio.spi.ImageReaderSpiまた、次の行が含まれます。
com.mycompany.imageio.MyFormatReaderSpi
サービスプロバイダクラスの特性は、軽量で迅速なロードが可能であることです。これらのインタフェースの実装は、ほかのクラスやネイティブコードに複雑に依存しないようにする必要があります。
自動的に検出されないサービスプロバイダを手動で追加することも、ServiceRegistry クラスのインタフェースを使用するサービスプロバイダを削除することもできます。したがって、アプリケーションでレジストリの内容を必要に応じてカスタマイズできます。
サービスプロバイダ宣言の詳細および JAR 形式全般については、「JAR ファイルの仕様」を参照してください。
ServiceRegistry.Filter| 修飾子と型 | メソッドと説明 |
|---|---|
static IIORegistry |
getDefaultInstance()
イメージ入出力 API で使用されるデフォルトの
IIORegistry インスタンスを返します。 |
void |
registerApplicationClasspathSpis()
アプリケーションのクラスパスで検出されたすべての使用可能サービスプロバイダを、デフォルトの
ClassLoader を使用して登録します。 |
contains, deregisterAll, deregisterAll, deregisterServiceProvider, deregisterServiceProvider, finalize, getCategories, getServiceProviderByClass, getServiceProviders, getServiceProviders, lookupProviders, lookupProviders, registerServiceProvider, registerServiceProvider, registerServiceProviders, setOrdering, unsetOrderingpublic static IIORegistry getDefaultInstance()
IIORegistry インスタンスを返します。このインスタンスはすべてのレジストリ関数で使用されます。
各 ThreadGroup は独自のインスタンスを受け取ります。これにより、たとえば同じブラウザの別の Applet がそれぞれ独自のレジストリを持つことができます。
ThreadGroup のデフォルトレジストリ。public void registerApplicationClasspathSpis()
ClassLoader を使用して登録します。このメソッドは通常 ImageIO.scanForPlugins メソッドから呼び出されます。 バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.