JavaTM 2 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 充當目標位置;另一個可能輸出到一個 File 或類似串行埠號的設備。

通過將 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.classFile.class,但可能使用任何類別。

返回:
一個 Class 變數。
另請參見:
createOutputStreamInstance(Object, boolean, File)

canUseCacheFile

public boolean canUseCacheFile()
如果與此服務提供者關聯的 ImageOutputStream 實作可選擇利用快取記憶體 File 改善性能和/或記憶體佔用,則返回 true。如果為 false,將忽略 createOutputStreamInstancecacheFile 參數的值。

預設實作返回 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 - 如果需要快取記憶體檔案但無法創建。
另請參見:
getOutputClass()

createOutputStreamInstance

public ImageOutputStream createOutputStreamInstance(Object output)
                                             throws IOException
返回與此服務提供者關聯的 ImageOutputStream 實作的實例。如果需要,將在系統相應的預設臨時檔案目錄中創建快取記憶體檔案。

參數:
output - 一個由 getOutputClass 返回的類別型別的物件。
返回:
一個 ImageOutputStream 實例。
拋出:
IllegalArgumentException - 如果 output 不是一個正確的類別的實例,或者為 null
IOException - 如果需要快取記憶體檔案但無法創建。
另請參見:
getOutputClass()

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only