public final class IIORegistry extends ServiceRegistry
ImageReader
、ImageWriter
、ImageTranscoder
、ImageInputStream
、およびImageOutputStream
のインスタンスになります。
システムのクラス・パス(通常はJavaインストール・ディレクトリの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, unsetOrdering
public static IIORegistry getDefaultInstance()
IIORegistry
インスタンスを返します。このインスタンスはすべてのレジストリ関数で使用されます。
各ThreadGroup
は独自のインスタンスを受け取ります。これにより、たとえば同じブラウザの別のApplet
がそれぞれ独自のレジストリを持つことができます。
ThreadGroup
のデフォルト・レジストリ。public void registerApplicationClasspathSpis()
ClassLoader
を使用して登録します。このメソッドは通常ImageIO.scanForPlugins
メソッドから呼び出されます。 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.