JavaTM 2
Platform
Std. Ed. v1.4.0

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 を入力ソースとして使用でき、別の ImageInputStreamSpiURL からの入力が可能です。

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 から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

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 変数
関連項目:
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()

JavaTM 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.