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

クラスImageInputStreamSpi

java.lang.Object
javax.imageio.spi.IIOServiceProvider
javax.imageio.spi.ImageInputStreamSpi
すべての実装されたインタフェース:
RegisterableService

public abstract class ImageInputStreamSpi
extends IIOServiceProvider
ImageInputStreamのサービス・プロバイダ・インタフェース(SPI)です。 サービス・プロバイダ・インタフェースの詳細は、IIORegistryクラスのクラス・コメントを参照してください。

このインタフェースを使用すると、任意のオブジェクトをImageInputStreamのインスタンスで「ラップ」できるようになります。 たとえば、あるImageInputStreamSpiはジェネリックInputStreamを入力ソースとして使用でき、別のものはURLからの入力が可能です。

ImageInputStreamの作成をプラガブルなサービスとして扱うことにより、APIを変更せずに将来の入力ソースに対処することが可能になります。 また、特定プラットフォームのネイティブ実装など、パフォーマンスに優れたImageInputStream実装をインストールして、アプリケーションで透過的に使用できます。

関連項目:
IIORegistry, ImageInputStream
  • フィールドのサマリー

    フィールド 
    修飾子と型 フィールド 説明
    protected Class<?> inputClass
    createInputStreamInstanceメソッドで使用される正当なオブジェクト型を示すClassオブジェクトです。

    クラス javax.imageio.spi.IIOServiceProviderで宣言されたフィールド

    vendorName, version
  • コンストラクタのサマリー

    コンストラクタ 
    修飾子 コンストラクタ 説明
    protected ImageInputStreamSpi()
    空白のImageInputStreamSpiを構築します。
      ImageInputStreamSpi​(String vendorName, String version, Class<?> inputClass)
    指定された値セットを使用してImageInputStreamSpiを構築します。
  • メソッドのサマリー

    修飾子と型 メソッド 説明
    boolean canUseCacheFile()
    このサービス・プロバイダに関連するImageInputStream実装が、パフォーマンスやメモリー消費を改善するためにキャッシュ・ファイルを必要に応じて使用できる場合、trueを返します。
    ImageInputStream createInputStreamInstance​(Object input)
    このサービス・プロバイダに関連するImageInputStream実装のインスタンスを返します。
    abstract ImageInputStream createInputStreamInstance​(Object input, boolean useCache, File cacheDir)
    このサービス・プロバイダに関連するImageInputStream実装のインスタンスを返します。
    Class<?> getInputClass()
    createInputStreamInstanceメソッドを使用してImageInputStream内に「ラップ」するため、入力ソースが実装する必要のあるクラスまたはインタフェースの型を表すClassオブジェクトを返します。
    boolean needsCacheFile()
    このサービス・プロバイダに関連するImageInputStream実装が、キャッシュFileを使用する必要がある場合、trueを返します。

    クラス javax.imageio.spi.IIOServiceProviderで宣言されたメソッド

    getDescription, getVendorName, getVersion, onDeregistration, onRegistration

    クラス java.lang.Objectで宣言されたメソッド

    cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait
  • フィールド詳細

    • inputClass

      protected クラス<?> inputClass
      createInputStreamInstanceメソッドで使用される正当なオブジェクト型を示すClassオブジェクトです。
  • コンストラクタの詳細

    • ImageInputStreamSpi

      protected ImageInputStreamSpi()
      空白のImageInputStreamSpiを構築します。 すべてのメソッドの作業バージョンを提供するための、インスタンス変数の初期化やメソッド実装のオーバーライドは、サブクラスで行う必要があります。
    • ImageInputStreamSpi

      public ImageInputStreamSpi​(String vendorName, String version, Class<?> inputClass)
      指定された値セットを使用してImageInputStreamSpiを構築します。
      パラメータ:
      vendorName - ベンダー名。
      version - バージョン識別子。
      inputClass - createInputStreamInstanceメソッドで使用される正当なオブジェクト型を示すClassオブジェクト。
      例外:
      IllegalArgumentException - vendorNamenullの場合。
      IllegalArgumentException - versionnullの場合。
  • メソッドの詳細

    • getInputClass

      public Class<?> getInputClass()
      createInputStreamInstanceメソッドを使用してImageInputStream内に「ラップ」するため、入力ソースが実装する必要のあるクラスまたはインタフェースの型を表すClassオブジェクトを返します。

      戻り値には通常InputStream.classURL.classが含まれますが、任意のクラスを使用できます。

      戻り値:
      Class変数。
      関連項目:
      createInputStreamInstance(Object, boolean, File)
    • canUseCacheFile

      public boolean canUseCacheFile()
      このサービス・プロバイダに関連するImageInputStream実装が、パフォーマンスやメモリー消費を改善するためにキャッシュ・ファイルを必要に応じて使用できる場合、trueを返します。 falseの場合、createInputStreamInstanceの引数useCacheの値は無視されます。

      デフォルトの実装ではfalseを返します。

      戻り値:
      このサービス・プロバイダで作成される入力ストリームでキャッシュ・ファイルを使用可能な場合はtrue
    • needsCacheFile

      public boolean needsCacheFile()
      このサービス・プロバイダに関連するImageInputStream実装が、キャッシュFileを使用する必要がある場合、trueを返します。 trueの場合、createInputStreamInstanceの引数useCacheの値は無視されます。

      デフォルトの実装ではfalseを返します。

      戻り値:
      このサービス・プロバイダにより作成される入力ストリームがキャッシュ・ファイルを必要とする場合はtrue
    • createInputStreamInstance

      public abstract ImageInputStream createInputStreamInstance​(Object input, boolean useCache, File cacheDir) throws IOException
      このサービス・プロバイダに関連するImageInputStream実装のインスタンスを返します。 キャッシュ・ファイルの使用がオプションの場合、useCacheパラメータが参照されます。 キャッシュが必須、または適用できない場合は、useCacheの値は無視されます。
      パラメータ:
      input - getInputClassから返されるクラス型のオブジェクト。
      useCache - オプションとなっている場合に、キャッシュ・ファイルが使用できるかどうかを示すboolean
      cacheDir - キャッシュ・ファイルが作成される場所を示すFile。システム・ディレクトリを使用する場合はnull
      戻り値:
      ImageInputStreamインスタンス。
      例外:
      IllegalArgumentException - inputが適正なクラスのインスタンスでないか、nullの場合。
      IllegalArgumentException - キャッシュ・ファイルが必要であるが、cacheDirnullではなく、ディレクトリでもない場合。
      IOException - キャッシュ・ファイルが必要であるが作成できない場合。
      関連項目:
      getInputClass(), canUseCacheFile(), needsCacheFile()
    • createInputStreamInstance

      public ImageInputStream createInputStreamInstance​(Object input) throws IOException
      このサービス・プロバイダに関連するImageInputStream実装のインスタンスを返します。 必要に応じて、キャッシュ・ファイルがシステム固有のデフォルト一時ファイル・ディレクトリに作成されます。
      パラメータ:
      input - getInputClassから返されるクラス型のオブジェクト。
      戻り値:
      ImageInputStreamインスタンス。
      例外:
      IllegalArgumentException - inputが適正なクラスのインスタンスでないか、nullの場合。
      IOException - キャッシュ・ファイルが必要であるが作成できない場合。
      関連項目:
      getInputClass()