Класс ImageOutputStreamSpi
- Все реализованные интерфейсы:
RegisterableService
public abstract class ImageOutputStreamSpi extends IIOServiceProvider
ImageOutputStreams. Дополнительные сведения об интерфейсах поставщиков служб см. в комментарии к классу IIORegistry. Этот интерфейс позволяет «оборачивать» произвольные объекты экземплярами ImageOutputStream. Например, определённый ImageOutputStreamSpi может позволять использовать универсальный OutputStream в качестве назначения; другой может выполнять вывод в File или на устройство, например последовательный порт.
Рассмотрение создания ImageOutputStreams в качестве подключаемой службы позволяет поддерживать будущие назначения вывода без изменения API. Кроме того, высокопроизводительные реализации ImageOutputStream (например, нативные реализации для определённой платформы) можно устанавливать и прозрачно использовать в приложениях.
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected Class |
outputClass |
Объект Class, указывающий допустимый тип объекта для использования методом createInputStreamInstance. |
Поля, объявленные в классе IIOServiceProvider
vendorName, version
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Создаёт пустой ImageOutputStreamSpi. |
|
| Создаёт ImageOutputStreamSpi с заданным набором значений. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
canUseCacheFile() |
Возвращает true, если реализация ImageOutputStream, связанная с этим поставщиком службы, может при необходимости использовать файл кэша File для повышения производительности и/или уменьшения объёма используемой памяти. |
ImageOutputStream |
createOutputStreamInstance |
Возвращает экземпляр реализации ImageOutputStream, связанной с этим поставщиком службы. |
abstract ImageOutputStream |
createOutputStreamInstance |
Возвращает экземпляр реализации ImageOutputStream, связанной с этим поставщиком службы. |
Class |
getOutputClass() |
Возвращает объект Class, представляющий тип класса или интерфейса, который должно реализовать назначение вывода, чтобы его можно было «обернуть» в ImageOutputStream с помощью метода createOutputStreamInstance. |
boolean |
needsCacheFile() |
Возвращает true, если реализация ImageOutputStream, связанная с этим поставщиком службы, требует использования файла кэша File. |
Методы, объявленные в классе IIOServiceProvider
getDescription, getVendorName, getVersion, onDeregistration, onRegistration
Подробное описание полей
outputClass
protected Class<?> outputClass
Class, указывающий допустимый тип объекта для использования методом createInputStreamInstance.Подробное описание конструкторов
ImageOutputStreamSpi
protected ImageOutputStreamSpi()
ImageOutputStreamSpi. Подкласс должен инициализировать переменные экземпляра и/или переопределить реализации методов, чтобы обеспечить работоспособные версии всех методов.ImageOutputStreamSpi
public ImageOutputStreamSpi(String vendorName, String version, Class<?> outputClass)
ImageOutputStreamSpi с заданным набором значений.- Параметры:
-
vendorName— имя поставщика. -
version— идентификатор версии. -
outputClass— объектClass, указывающий допустимый тип объекта для использования методомcreateOutputStreamInstance. - Исключения:
-
IllegalArgumentException— еслиvendorNameимеет значениеnull. -
IllegalArgumentException— еслиversionимеет значениеnull.
Подробное описание методов
getOutputClass
public Class<?> getOutputClass()
Class, представляющий тип класса или интерфейса, который должно реализовать назначение вывода, чтобы его можно было «обернуть» в ImageOutputStream с помощью метода createOutputStreamInstance. Типичными возвращаемыми значениями могут быть OutputStream.class или File.class, но можно использовать любой класс.
- Возвращает:
- переменную
Class. - См. также:
canUseCacheFile
public boolean canUseCacheFile()
true, если реализация ImageOutputStream, связанная с этим поставщиком службы, может при необходимости использовать файл кэша File для повышения производительности и/или уменьшения объёма используемой памяти. Если false, значение аргумента cacheFile метода createOutputStreamInstance будет проигнорировано. Реализация по умолчанию возвращает false.
- Возвращает:
-
true, если выходные потоки, созданные этим поставщиком службы, могут использовать файл кэша.
needsCacheFile
public boolean needsCacheFile()
true, если реализация ImageOutputStream, связанная с этим поставщиком службы, требует использования файла кэша File. Реализация по умолчанию возвращает 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— если файл кэша необходим, но его невозможно создать. - См. также:
createOutputStreamInstance
public ImageOutputStream createOutputStreamInstance(Object output) throws IOException
ImageOutputStream, связанной с этим поставщиком службы. При необходимости файл кэша будет создан в системном каталоге временных файлов по умолчанию.- Параметры:
-
output— объект типа класса, возвращаемого методомgetOutputClass. - Возвращает:
- экземпляр
ImageOutputStream. - Исключения:
-
IllegalArgumentException— еслиoutputне является экземпляром нужного класса или имеет значениеnull. -
IOException— если файл кэша необходим, но его невозможно создать. - См. также:
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.desktop/javax/imageio/spi/ImageOutputStreamSpi.html