|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
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
充当输入源;另一个可能使用来自 URL
的输入。
通过将 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
- 如果vendorName
为null
。 -
IllegalArgumentException
- 如果version
为null
。
方法详细信息 |
---|
getInputClass
public Class<?> getInputClass()
-
返回表示必须由输入源实现(以便使用
createInputStreamInstance
方法在ImageInputStream
中“包装”)的类或接口的类型的Class
对象。通常的返回值可能包含
InputStream.class
或URL.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
- 如果需要缓存文件但cacheDir
为非null
并且也不是一个目录。 -
IOException
- 如果需要缓存文件但无法创建。 - 另请参见:
-
getInputClass()
,canUseCacheFile()
,needsCacheFile()
createInputStreamInstance
public ImageInputStream createInputStreamInstance(Object input) throws IOException
-
返回与此服务提供程序关联的
ImageInputStream
实现的实例。如果需要,将在系统相应的默认临时文件目录中创建缓存文件。 -
- 参数:
-
input
- 一个由getInputClass
返回的类类型的对象。 - 返回:
-
一个
ImageInputStream
实例。 - 抛出:
-
IllegalArgumentException
- 如果input
不是一个正确的类的实例,或者为null
。 -
IOException
- 如果需要缓存文件但无法创建。 - 另请参见:
-
getInputClass()
所有类
|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |