JavaTM 2 Platform
Standard Ed. 5.0

javax.imageio.spi
クラス ImageInputStreamSpi

java.lang.Object
  上位を拡張 javax.imageio.spi.IIOServiceProvider
      上位を拡張 javax.imageio.spi.ImageInputStreamSpi
すべての実装されたインタフェース:
RegisterableService

public abstract class ImageInputStreamSpi
extends IIOServiceProvider

ImageInputStream のサービスプロバイダインタフェース (SPI) です。サービスプロバイダインタフェースの詳細は、IIORegistry クラスのクラスコメントを参照してください。

このインタフェースにより、任意のオブジェクトを ImageInputStream のインスタンスで「ラップ」できます。たとえば、ある ImageInputStreamSpi は汎用の InputStream を入力ソースとして使用でき、別の ImageInputStreamSpiURL からの入力が可能です。

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

関連項目:
IIORegistry, ImageInputStream

フィールドの概要
protected  Class<?> inputClass
          createInputStreamInstance メソッドで使用される正当なオブジェクト型を示す Class オブジェクトです。
 
クラス javax.imageio.spi.IIOServiceProvider から継承されたフィールド
vendorName, version
 
コンストラクタの概要
protected ImageInputStreamSpi()
          空白の ImageInputStreamSpi を構築します。
  ImageInputStreamSpi(String vendorName, String version, Class<?> inputClass)
          指定された値セットを使用して ImageInputStreamSpi を構築します。
 
メソッドの概要
 boolean canUseCacheFile()
          このサービスプロバイダに関連する ImageInputStream 実装が、パフォーマンスやメモリ消費を改善するためにキャッシュファイルを必要に応じて使用できる場合、true を返します。
 ImageInputStream createInputStreamInstance(Object input)
          このサービスプロバイダに関連する ImageInputStream 実装のインスタンスを返します。
abstract  ImageInputStream createInputStreamInstance(Object input, boolean useCache, File cacheDir)
          このサービスプロバイダに関連する ImageInputStream 実装のインスタンスを返します。
 Class<?> getInputClass()
          createInputStreamInstance メソッドを使用してImageInputStream 内に「ラップ」するため、入力ソースが実装する必要のあるクラスまたはインタフェースの型を表す Class オブジェクトを返します。
 boolean needsCacheFile()
          このサービスプロバイダに関連する ImageInputStream 実装がキャッシュ 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
 

フィールドの詳細

inputClass

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

コンストラクタの詳細

ImageInputStreamSpi

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


ImageInputStreamSpi

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

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

getInputClass

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

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

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

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

createInputStreamInstance

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

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

JavaTM 2 Platform
Standard Ed. 5.0

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

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