public abstract class ImageOutputStreamSpi extends IIOServiceProvider
ImageOutputStream
のサービス・プロバイダ・インタフェース(SPI)です。サービス・プロバイダ・インタフェースの詳細は、IIORegistry
クラスのクラス・コメントを参照してください。
このインタフェースを使用すると、任意のオブジェクトをImageOutputStream
のインスタンスで「ラップ」できるようになります。たとえば、あるImageOutputStreamSpi
はジェネリックOutputStream
を宛先として使用可能であり、別のものはFile
またはシリアル・ポートなどのデバイスへの出力が可能です。
ImageOutputStream
の作成をプラガブルなサービスとして扱うことにより、APIを変更せずに将来の出力先に対応することが可能になります。また、特定プラットフォームのネイティブ実装など、パフォーマンスに優れたImageOutputStream
実装をインストールして、アプリケーションで透過的に使用できます。
IIORegistry
, ImageOutputStream
修飾子と型 | フィールドと説明 |
---|---|
protected Class<?> |
outputClass
createInputStreamInstance メソッドで使用される正当なオブジェクト型を示すClass オブジェクトです。 |
vendorName, version
修飾子 | コンストラクタと説明 |
---|---|
protected |
ImageOutputStreamSpi()
空白の
ImageOutputStreamSpi を構築します。 |
|
ImageOutputStreamSpi(String vendorName, String version, Class<?> outputClass)
指定された値セットを使用して
ImageOutputStreamSpi を構築します。 |
修飾子と型 | メソッドと説明 |
---|---|
boolean |
canUseCacheFile()
このサービス・プロバイダに関連する
ImageOutputStream 実装が、パフォーマンスやメモリー消費を改善するために必要に応じてキャッシュFile を使用できる場合、true を返します。 |
ImageOutputStream |
createOutputStreamInstance(Object output)
このサービス・プロバイダに関連する
ImageOutputStream 実装のインスタンスを返します。 |
abstract ImageOutputStream |
createOutputStreamInstance(Object output, boolean useCache, File cacheDir)
このサービス・プロバイダに関連する
ImageOutputStream 実装のインスタンスを返します。 |
Class<?> |
getOutputClass()
createOutputStreamInstance メソッドを使用してImageOutputStream に「ラップ」するため、出力先が実装する必要のあるクラスまたはインタフェースの型を表すClass オブジェクトを返します。 |
boolean |
needsCacheFile()
このサービス・プロバイダに関連する
ImageOutputStream 実装が、キャッシュFile を使用する必要がある場合、true を返します。 |
getDescription, getVendorName, getVersion, onDeregistration, onRegistration
protected Class<?> outputClass
createInputStreamInstance
メソッドで使用される正当なオブジェクト型を示すClass
オブジェクトです。protected ImageOutputStreamSpi()
ImageOutputStreamSpi
を構築します。すべてのメソッドの作業バージョンを提供するための、インスタンス変数の初期化やメソッド実装のオーバーライドは、サブクラスで行う必要があります。public ImageOutputStreamSpi(String vendorName, String version, Class<?> outputClass)
ImageOutputStreamSpi
を構築します。vendorName
- ベンダー名。version
- バージョン識別子。outputClass
- createOutputStreamInstance
メソッドで使用される正当なオブジェクト型を示すClass
オブジェクト。IllegalArgumentException
- vendorName
がnull
の場合。IllegalArgumentException
- version
がnull
の場合。public Class<?> getOutputClass()
createOutputStreamInstance
メソッドを使用してImageOutputStream
に「ラップ」するため、出力先が実装する必要のあるクラスまたはインタフェースの型を表すClass
オブジェクトを返します。
戻り値には通常OutputStream.class
かFile.class
が含まれますが、任意のクラスを使用できます。
Class
変数。createOutputStreamInstance(Object, boolean, File)
public boolean canUseCacheFile()
ImageOutputStream
実装が、パフォーマンスやメモリー消費を改善するために必要に応じてキャッシュFile
を使用できる場合、true
を返します。false
の場合、createOutputStreamInstance
の引数cacheFile
の値は無視されます。
デフォルトの実装ではfalse
を返します。
true
。public boolean needsCacheFile()
ImageOutputStream
実装が、キャッシュFile
を使用する必要がある場合、true
を返します。
デフォルトの実装ではfalse
を返します。
true
。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
- キャッシュ・ファイルが必要であるが作成できない場合。getOutputClass()
public ImageOutputStream createOutputStreamInstance(Object output) throws IOException
ImageOutputStream
実装のインスタンスを返します。必要に応じて、キャッシュ・ファイルがシステム固有のデフォルト一時ファイル・ディレクトリに作成されます。output
- getOutputClass
から返されるクラス型のオブジェクト。ImageOutputStream
インスタンス。IllegalArgumentException
- output
が適正なクラスのインスタンスでないか、null
の場合。IOException
- キャッシュ・ファイルが必要であるが作成できない場合。getOutputClass()
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.