JavaTM Platform
Standard Ed. 6

javax.imageio.spi
クラス 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 を宛先として使用可能であり、別の ImageOutputStreamSpiFile またはシリアルポートなどのデバイスへの出力が可能です。

ImageOutputStream の作成をプラグイン可能なサービスとして扱うことにより、API を変更せずに将来の出力先に対応することが可能になります。また、特定プラットフォームのネイティブ実装など、パフォーマンスに優れた ImageOutputStream 実装をインストールして、アプリケーションで透過的に使用できます。

関連項目:
IIORegistry, ImageOutputStream

フィールドの概要
protected  Class<?> outputClass
          createInputStreamInstance メソッドで使用される正当なオブジェクト型を示す Class オブジェクトです。
 
クラス javax.imageio.spi.IIOServiceProvider から継承されたフィールド
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 を返します。
 
クラス javax.imageio.spi.IIOServiceProvider から継承されたメソッド
getDescription, getVendorName, getVersion, onDeregistration, onRegistration
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

outputClass

protected Class<?> outputClass
createInputStreamInstance メソッドで使用される正当なオブジェクト型を示す Class オブジェクトです。

コンストラクタの詳細

ImageOutputStreamSpi

protected ImageOutputStreamSpi()
空白の ImageOutputStreamSpi を構築します。すべてのメソッドの作業バージョンを提供するためのインスタンス変数の初期化やメソッド実装のオーバーライドは、サブクラスで行う必要があります。


ImageOutputStreamSpi

public ImageOutputStreamSpi(String vendorName,
                            String version,
                            Class<?> outputClass)
指定された値セットを使用して ImageOutputStreamSpi を構築します。

パラメータ:
vendorName - ベンダー名
version - バージョン識別子
outputClass - createOutputStreamInstance メソッドで 使用される正当なオブジェクト型を示す Class オブジェクト
例外:
IllegalArgumentException - vendorNamenull の場合
IllegalArgumentException - versionnull の場合
メソッドの詳細

getOutputClass

public Class<?> getOutputClass()
createOutputStreamInstance メソッドを使用してImageOutputStream に「ラップ」するため、出力先が実装する必要のあるクラスまたはインタフェースの型を表す Class オブジェクトを返します。

通常、戻り値には OutputStream.class または File.class が含まれますが、任意のクラスを使用できます。

戻り値:
Class 変数
関連項目:
createOutputStreamInstance(Object, boolean, File)

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 - キャッシュファイルが必要であるが、 cacheDirnull ではなく、 ディレクトリでもない場合
IOException - キャッシュファイルが必要であるが 作成できない場合
関連項目:
getOutputClass()

createOutputStreamInstance

public ImageOutputStream createOutputStreamInstance(Object output)
                                             throws IOException
このサービスプロバイダに関連する ImageOutputStream 実装のインスタンスを返します。必要に応じて、キャッシュファイルがシステム固有のデフォルト一時ファイルディレクトリに作成されます。

パラメータ:
output - getOutputClass から 返されるクラス型のオブジェクト
戻り値:
ImageOutputStream インスタンス
例外:
IllegalArgumentException - output が、 適正なクラスのインスタンスでないか、null の場合
IOException - キャッシュファイルが必要であるが 作成できない場合
関連項目:
getOutputClass()

JavaTM Platform
Standard Ed. 6

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

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。