クラスImageOutputStreamSpi
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 ImageOutputStreamcreateOutputStreamInstance(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- キャッシュ・ファイルが必要であるが作成できない場合。- 関連項目:
-