java.lang.Object
javax.imageio.spi.IIOServiceProvider
javax.imageio.spi.ImageOutputStreamSpi
- すべての実装されたインタフェース:
RegisterableService
public abstract class ImageOutputStreamSpi extends IIOServiceProvider
ImageOutputStream
のサービス・プロバイダ・インタフェース(SPI)です。 サービス・プロバイダ・インタフェースの詳細は、IIORegistry
クラスのクラス・コメントを参照してください。
このインタフェースを使用すると、任意のオブジェクトをImageOutputStream
のインスタンスで「ラップ」できるようになります。 たとえば、あるImageOutputStreamSpi
はジェネリックOutputStream
を宛先として使用可能であり、別のものはFile
またはシリアル・ポートなどのデバイスへの出力が可能です。
ImageOutputStream
の作成をプラガブルなサービスとして扱うことにより、APIを変更せずに将来の出力先に対応することが可能になります。 また、特定プラットフォームのネイティブ実装など、パフォーマンスに優れたImageOutputStream
実装をインストールして、アプリケーションで透過的に使用できます。
- 関連項目:
-
フィールドのサマリー
クラス javax.imageio.spi.IIOServiceProviderで宣言されたフィールド
vendorName, version
-
コンストラクタのサマリー
修飾子コンストラクタ説明protected
空白のImageOutputStreamSpi
を構築します。ImageOutputStreamSpi
(String vendorName, String version, Class<?> outputClass) 指定された値セットを使用してImageOutputStreamSpi
を構築します。 -
メソッドのサマリー
修飾子と型メソッド説明boolean
このサービス・プロバイダに関連するImageOutputStream
実装が、パフォーマンスやメモリー消費を改善するために必要に応じてキャッシュFile
を使用できる場合、true
を返します。createOutputStreamInstance
(Object output) このサービス・プロバイダに関連するImageOutputStream
実装のインスタンスを返します。abstract ImageOutputStream
createOutputStreamInstance
(Object output, boolean useCache, File cacheDir) このサービス・プロバイダに関連するImageOutputStream
実装のインスタンスを返します。Class<?>
createOutputStreamInstance
メソッドを使用してImageOutputStream
に「ラップ」するため、出力先が実装する必要のあるクラスまたはインタフェースの型を表すClass
オブジェクトを返します。boolean
このサービス・プロバイダに関連するImageOutputStream
実装が、キャッシュFile
を使用する必要がある場合、true
を返します。クラス javax.imageio.spi.IIOServiceProviderで宣言されたメソッド
getDescription, getVendorName, getVersion, onDeregistration, onRegistration
-
フィールド詳細
-
outputClass
protected Class<?> outputClasscreateInputStreamInstance
メソッドで使用される正当なオブジェクト型を示すClass
オブジェクトです。
-
-
コンストラクタの詳細
-
ImageOutputStreamSpi
protected ImageOutputStreamSpi()空白のImageOutputStreamSpi
を構築します。 すべてのメソッドの作業バージョンを提供するための、インスタンス変数の初期化やメソッド実装のオーバーライドは、サブクラスで行う必要があります。 -
ImageOutputStreamSpi
指定された値セットを使用してImageOutputStreamSpi
を構築します。- パラメータ:
vendorName
- ベンダー名。version
- バージョン識別子。outputClass
-createOutputStreamInstance
メソッドで使用される正当なオブジェクト型を示すClass
オブジェクト。- 例外:
IllegalArgumentException
-vendorName
がnull
の場合。IllegalArgumentException
-version
がnull
の場合。
-
-
メソッドの詳細
-
getOutputClass
public Class<?> getOutputClass()createOutputStreamInstance
メソッドを使用してImageOutputStream
に「ラップ」するため、出力先が実装する必要のあるクラスまたはインタフェースの型を表すClass
オブジェクトを返します。戻り値には通常
OutputStream.class
かFile.class
が含まれますが、任意のクラスを使用できます。- 戻り値:
Class
変数。- 関連項目:
-
canUseCacheFile
public boolean canUseCacheFile()このサービス・プロバイダに関連するImageOutputStream
実装が、パフォーマンスやメモリー消費を改善するために必要に応じてキャッシュFile
を使用できる場合、true
を返します。false
の場合、createOutputStreamInstance
の引数cacheFile
の値は無視されます。デフォルトの実装では
false
を返します。- 戻り値:
- このサービス・プロバイダで作成される出力ストリームでキャッシュ・ファイルを使用可能な場合は
true
。
-
needsCacheFile
public boolean needsCacheFile()このサービス・プロバイダに関連するImageOutputStream
実装が、キャッシュFile
を使用する必要がある場合、true
を返します。デフォルトの実装では
false
を返します。- 戻り値:
- このサービス・プロバイダにより作成される出力ストリームがキャッシュ・ファイルを必要とする場合は
true
。
-
createOutputStreamInstance
public abstract ImageOutputStream createOutputStreamInstance(Object output, boolean useCache, File cacheDir) throws IOException このサービス・プロバイダに関連するImageOutputStream
実装のインスタンスを返します。 キャッシュ・ファイルの使用がオプションの場合、useCache
パラメータが参照されます。 キャッシュが必須、または適用できない場合は、useCache
の値は無視されます。- パラメータ:
output
-getOutputClass
から返されるクラス型のオブジェクト。useCache
- オプションとなっている場合に、キャッシュ・ファイルが使用できるかどうかを示すboolean
。cacheDir
- キャッシュ・ファイルが作成される場所を示すFile
。システム・ディレクトリを使用する場合はnull
。- 戻り値:
ImageOutputStream
インスタンス。- 例外:
IllegalArgumentException
-output
が適正なクラスのインスタンスでないか、null
の場合。IllegalArgumentException
- キャッシュ・ファイルが必要であるが、cacheDir
がnull
ではなく、ディレクトリでもない場合。IOException
- キャッシュ・ファイルが必要であるが作成できない場合。- 関連項目:
-
createOutputStreamInstance
public ImageOutputStream createOutputStreamInstance(Object output) throws IOException このサービス・プロバイダに関連するImageOutputStream
実装のインスタンスを返します。 必要に応じて、キャッシュ・ファイルがシステム固有のデフォルト一時ファイル・ディレクトリに作成されます。- パラメータ:
output
-getOutputClass
から返されるクラス型のオブジェクト。- 戻り値:
ImageOutputStream
インスタンス。- 例外:
IllegalArgumentException
-output
が適正なクラスのインスタンスでないか、null
の場合。IOException
- キャッシュ・ファイルが必要であるが作成できない場合。- 関連項目:
-