モジュール java.desktop
パッケージ javax.imageio.spi

クラスIIORegistry


  • public final class IIORegistry
    extends ServiceRegistry
    Image I/Oサービス・プロバイダ・インスタンス用のレジストリ。 サービス・プロバイダ・クラスは、ServiceLoaderに記載されているメカニズムによって、実行時に発見される可能性があります。 その目的は、使用可能なすべてのImage I/Oサービス・プロバイダ・クラスをロードして検査することは比較的安価です。 これらのクラスを使用して、実際の作業を実行するより多くの重量クラス、この場合はImageReaderImageWriterImageTranscoderImageInputStream、およびImageOutputStreamの位置を特定し、インスタンス化することができます。 Javaランタイムに含まれるサービス・プロバイダは、このクラスがインスタンス化されるとすぐに自動的にロードされます。

    registerApplicationClasspathSpisメソッドが呼び出されると、追加のサービス・プロバイダ・インスタンスがServiceLoaderを使用して検出されます。

    自動的に検出されないサービス・プロバイダを手動で追加することも、ServiceRegistryクラスのインタフェースを使用するサービス・プロバイダを削除することもできます。 したがって、アプリケーションでレジストリの内容を必要に応じてカスタマイズできます。

    サービス・プロバイダの作成方法とデプロイ方法については、ServiceLoaderのドキュメントを参照してください。

    • メソッドの詳細

      • getDefaultInstance

        public static IIORegistry getDefaultInstance()
        イメージ入出力APIで使用されるデフォルトのIIORegistryインスタンスを返します。 このインスタンスはすべてのレジストリ関数で使用されます。

        ThreadGroupは独自のインスタンスを受け取ります。これにより、たとえば同じブラウザの別のAppletがそれぞれ独自のレジストリを持つことができます。

        戻り値:
        現在のThreadGroupのデフォルト・レジストリ。
      • registerApplicationClasspathSpis

        public void registerApplicationClasspathSpis()
        アプリケーションのクラス・パスで検出されたすべての使用可能サービス・プロバイダを、デフォルトのClassLoaderを使用して登録します。 このメソッドは通常ImageIO.scanForPluginsメソッドから呼び出されます。
        関連項目:
        ImageIO.scanForPlugins(), ClassLoader.getResources(java.lang.String)