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
実装をインストールして、アプリケーションで透過的に使用できます。
- 関連項目:
-
フィールドのサマリー
フィールドクラス javax.imageio.spi.IIOServiceProviderで宣言されたフィールド
vendorName, version
-
コンストラクタのサマリー
コンストラクタ修飾子コンストラクタ説明protected
空白のImageInputStreamSpi
を構築します。ImageInputStreamSpi
(String vendorName, String version, Class<?> inputClass) 指定された値セットを使用してImageInputStreamSpi
を構築します。 -
メソッドのサマリー
修飾子と型メソッド説明boolean
このサービス・プロバイダに関連するImageInputStream
実装が、パフォーマンスやメモリー消費を改善するためにキャッシュ・ファイルを必要に応じて使用できる場合、true
を返します。createInputStreamInstance
(Object input) このサービス・プロバイダに関連するImageInputStream
実装のインスタンスを返します。abstract ImageInputStream
createInputStreamInstance
(Object input, boolean useCache, File cacheDir) このサービス・プロバイダに関連するImageInputStream
実装のインスタンスを返します。Class<?>
createInputStreamInstance
メソッドを使用してImageInputStream
内に「ラップ」するため、入力ソースが実装する必要のあるクラスまたはインタフェースの型を表すClass
オブジェクトを返します。boolean
このサービス・プロバイダに関連するImageInputStream
実装が、キャッシュFile
を使用する必要がある場合、true
を返します。クラス javax.imageio.spi.IIOServiceProviderで宣言されたメソッド
getDescription, getVendorName, getVersion, onDeregistration, onRegistration
-
フィールド詳細
-
inputClass
protected Class<?> inputClasscreateInputStreamInstance
メソッドで使用される正当なオブジェクト型を示すClass
オブジェクトです。
-
-
コンストラクタの詳細
-
ImageInputStreamSpi
protected ImageInputStreamSpi()空白のImageInputStreamSpi
を構築します。 すべてのメソッドの作業バージョンを提供するための、インスタンス変数の初期化やメソッド実装のオーバーライドは、サブクラスで行う必要があります。 -
ImageInputStreamSpi
指定された値セットを使用してImageInputStreamSpi
を構築します。- パラメータ:
vendorName
- ベンダー名。version
- バージョン識別子。inputClass
-createInputStreamInstance
メソッドで使用される正当なオブジェクト型を示すClass
オブジェクト。- 例外:
IllegalArgumentException
-vendorName
がnull
の場合。IllegalArgumentException
-version
がnull
の場合。
-
-
メソッドの詳細
-
getInputClass
public Class<?> getInputClass()createInputStreamInstance
メソッドを使用してImageInputStream
内に「ラップ」するため、入力ソースが実装する必要のあるクラスまたはインタフェースの型を表すClass
オブジェクトを返します。戻り値には通常
InputStream.class
かURL.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
- キャッシュ・ファイルが必要であるが、cacheDir
がnull
ではなく、ディレクトリでもない場合。IOException
- キャッシュ・ファイルが必要であるが作成できない場合。- 関連項目:
-
createInputStreamInstance
public ImageInputStream createInputStreamInstance(Object input) throws IOException このサービス・プロバイダに関連するImageInputStream
実装のインスタンスを返します。 必要に応じて、キャッシュ・ファイルがシステム固有のデフォルト一時ファイル・ディレクトリに作成されます。- パラメータ:
input
-getInputClass
から返されるクラス型のオブジェクト。- 戻り値:
ImageInputStream
インスタンス。- 例外:
IllegalArgumentException
-input
が適正なクラスのインスタンスでないか、null
の場合。IOException
- キャッシュ・ファイルが必要であるが作成できない場合。- 関連項目:
-