クラス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実装をインストールして、アプリケーションで透過的に使用できます。

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

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

    クラスで宣言されたフィールド IIOServiceProvider

    vendorName, version
    修飾子と型
    フィールド
    説明
    protected String
    getVendorNameから返されるStringで、最初はnullです。
    protected String
    getVersionから返されるStringで、最初はnullです。
  • コンストラクタのサマリー

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

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

    クラスで宣言されたメソッド IIOServiceProvider

    getDescription, getVendorName, getVersion, onDeregistration, onRegistration
    修飾子と型
    メソッド
    説明
    abstract String
    このサービス・プロバイダとそれに関連する実装の、簡潔で判読可能な説明を返します。
    このサービス・プロバイダおよび関連する実装の構築を担当するベンダーの名前を返します。
    このサービス・プロバイダとそれに関連する実装のバージョン番号を表す文字列を返します。
    void
    onDeregistration(ServiceRegistry registry, Class<?> category)
    SpiクラスがServiceRegistryから登録解除されると常にコールバックが実行されます。
    void
    onRegistration(ServiceRegistry registry, Class<?> category)
    Spiクラスがインスタンス化されてServiceRegistryに登録されたあとで1回だけ呼び出されるコールバックです。

    クラスオブジェクトで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    修飾子と型
    メソッド
    説明
    protected Object
    このオブジェクトのコピーを作成して、返します。
    boolean
    このオブジェクトと他のオブジェクトが等しいかどうかを示します。
    protected void
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    最終決定は非推奨であり、将来のリリースで削除される可能性があります。
    final Class<?>
    このObjectの実行時クラスを返します。
    int
    このオブジェクトに対するハッシュ・コード値を返します。
    final void
    このオブジェクトのモニターで待機中のスレッドを1つ再開します。
    final void
    このオブジェクトのモニターで待機中のすべてのスレッドを再開します。
    オブジェクトの文字列表現を返します。
    final void
    現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。
    final void
    wait(long timeoutMillis)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
    final void
    wait(long timeoutMillis, int nanos)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
  • フィールド詳細

    • inputClass

      protected Class<?> 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変数。
      関連項目:
    • 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 - キャッシュ・ファイルが必要であるが作成できない場合。
      関連項目:
    • createInputStreamInstance

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