public abstract class ImageOutputStreamSpi extends IIOServiceProvider
ImageOutputStream秒。
有关服务提供商界面的更多信息,请参阅IIORegistry类的类注释。
该接口允许任意对象由ImageOutputStream的ImageOutputStream “包装”。 例如,特定的ImageOutputStreamSpi可能允许使用通用的OutputStream作为目的地; 另一个可能输出到一个File或一个设备,如串口。
通过将ImageOutputStream s创建为可插拔服务,可以在不更改API的情况下处理未来的输出目的地。 此外,ImageOutputStream的ImageOutputStream (例如,特定平台的本机实现)可以由应用程序透明地安装和使用。
IIORegistry , ImageOutputStream
| Modifier and Type | Field and Description |
|---|---|
protected 类<?> |
outputClass
一个
类对象,指示
createInputStreamInstance方法使用的合法对象类型。
|
vendorName, version| Modifier | Constructor and Description |
|---|---|
protected |
ImageOutputStreamSpi()
构造一个空白
ImageOutputStreamSpi 。
|
|
ImageOutputStreamSpi(String vendorName, String version, 类<?> outputClass)
构造具有给定值的
ImageOutputStreamSpi 。
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
canUseCacheFile()
返回
true如果
ImageOutputStream与此服务提供者关联实现可选择使用缓存
File ,以提高性能和/或内存占用。
|
ImageOutputStream |
createOutputStreamInstance(Object output)
返回与此服务提供商
ImageOutputStream ImageOutputStream实现的实例。
|
abstract ImageOutputStream |
createOutputStreamInstance(Object output, boolean useCache, File cacheDir)
返回与此服务提供商
ImageOutputStream ImageOutputStream实现的实例。
|
类<?> |
getOutputClass()
返回一个
类对象,表示必须由输出目的地实现的类或接口类型,以便通过
createOutputStreamInstance方法“包装”在
ImageOutputStream中。
|
boolean |
needsCacheFile()
返回
true如果
ImageOutputStream与此服务提供相关的实施需要使用一个缓存
File 。
|
getDescription, getVendorName, getVersion, onDeregistration, onRegistrationprotected 类<?> outputClass
类对象,指示
createInputStreamInstance方法使用的合法对象类型。
protected ImageOutputStreamSpi()
ImageOutputStreamSpi 。
初始化实例变量和/或覆盖方法实现的子类是为了提供所有方法的工作版本。
public ImageOutputStreamSpi(String vendorName, String version, 类<?> outputClass)
ImageOutputStreamSpi 。
vendorName - 供应商名称。
version - 版本标识符。
outputClass - 一个
类对象,指示
createOutputStreamInstance方法使用的合法对象类型。
IllegalArgumentException - 如果
vendorName是
null 。
IllegalArgumentException - 如果
version是
null 。
public 类<?> getOutputClass()
类对象,表示必须由输出目的地实现的类或接口类型,以便通过createOutputStreamInstance方法“包装”在ImageOutputStream中。
典型的返回值可能包括OutputStream.class或File.class ,但可以使用任何类。
类变量。
createOutputStreamInstance(Object, boolean, File)
public boolean canUseCacheFile()
true如果ImageOutputStream与此服务提供者关联实现可选择使用缓存File ,以提高性能和/或内存占用。
如果false ,该值cacheFile参数createOutputStreamInstance将被忽略。
默认实现返回false 。
true如果由该服务提供商创建的输出流可以使用缓存文件。
public boolean needsCacheFile()
true如果ImageOutputStream与此服务提供相关的实施需要使用一个缓存File 。
默认实现返回false 。
true如果此服务提供商创建的输出流需要缓存文件。
public abstract ImageOutputStream createOutputStreamInstance(Object output, boolean useCache, File cacheDir) throws IOException
ImageOutputStream ImageOutputStream实现的实例。
如果使用缓存文件是可选的,则将useCache 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 ImageOutputStream实现的实例。
如果需要,系统相关的默认临时文件目录中将创建缓存文件。
output -通过返回的类类型的对象
getOutputClass 。
ImageOutputStream例子。
IllegalArgumentException - 如果
output不是正确类的实例,或者是
null 。
IOException - 如果需要缓存文件但无法创建。
getOutputClass()
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.