Класс ImageOutputStreamSpi

Все реализованные интерфейсы:
RegisterableService
public abstract class ImageOutputStreamSpi
extends IIOServiceProvider

Интерфейс поставщика сервисов (SPI) для ImageOutputStream. Для получения дополнительной информации о интерфейсах поставщиков сервисов, см. комментарий к классу IIORegistry.

Этот интерфейс позволяет произвольным объектам быть "обёрнутыми" экземплярами ImageOutputStream. Например, определённый ImageOutputStreamSpi может позволить использовать общий OutputStream в качестве пункта назначения; другой может выводить данные в File или на устройство, такое как последовательный порт.

Обращая создание ImageOutputStream в качестве подключаемого сервиса, становится возможным обрабатывать будущие пункты назначения вывода без изменения API. Кроме того, высокопроизводительные реализации ImageOutputStream (например, нативные реализации для определённой платформы) могут быть установлены и использованы приложениями прозрачно.

См. также:
IIORegistry, ImageOutputStream

Поля

Модификатор и типПолеОписание
protected Class<?>outputClass

Объект Class, указывающий допустимый тип объекта для использования методом createInputStreamInstance.

Поля, объявленные в классе javax.imageio.spi.IIOServiceProvider

vendorName, version

Краткое описание конструкторов

МодификаторКонструкторОписание
protected ImageOutputStreamSpi()

Создаёт пустой ImageOutputStreamSpi.

ImageOutputStreamSpi​(String vendorName, String version, Class<?> outputClass)

Создаёт ImageOutputStreamSpi с заданными значениями.

Краткое описание методов

Модификатор и типМетодОписание
booleancanUseCacheFile()

Возвращает true, если реализация ImageOutputStream связанная с этим поставщиком сервисов, может в необязательном порядке использовать кэш File для повышения производительности и/или снижения потребления памяти.

ImageOutputStreamcreateOutputStreamInstance​(Object output)

Возвращает экземпляр реализации ImageOutputStream связанной с этим поставщиком сервисов.

abstract ImageOutputStreamcreateOutputStreamInstance​(Object output, boolean useCache, File cacheDir)

Возвращает экземпляр реализации ImageOutputStream связанной с этим поставщиком сервисов.

Class<?>getOutputClass()

Возвращает объект Class представляющий тип класса или интерфейса, который должен быть реализован объектом пункта назначения вывода для того, чтобы быть "обёрнутым" в ImageOutputStream с помощью метода createOutputStreamInstance.

booleanneedsCacheFile()

Возвращает true, если реализация ImageOutputStream связанная с этим поставщиком сервисов, требует использования кэша File.

Методы, объявленные в классе 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

Объект 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.
См. также:
createOutputStreamInstance(Object, boolean, File)

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 - логическое значение, указывающее, следует ли использовать кэш-файл, в случаях, когда это необязательно.
cacheDir - объект File, указывающий, где должен быть создан кэш-файл, или null для использования системного каталога.
Возвращает:
экземпляр ImageOutputStream.
Исключения:
IllegalArgumentException - если output не является экземпляром соответствующего класса или является null.
IllegalArgumentException - если кэш-файл необходим, но cacheDir не пуст и не является каталогом.
IOException - если кэш-файл необходим, но не может быть создан.
См. также:
getOutputClass()

createOutputStreamInstance

public ImageOutputStream createOutputStreamInstance(Object output)
                                             throws IOException

Возвращает экземпляр реализации ImageOutputStream связанной с этим поставщиком сервисов. Кэш-файл будет создан в системно-зависимом каталоге временных файлов по умолчанию, если это необходимо.

Параметры:
output - объект типа класса, возвращённого методом getOutputClass.
Возвращает:
экземпляр ImageOutputStream.
Исключения:
IllegalArgumentException - если output не является экземпляром соответствующего класса или является null.
IOException - если кэш-файл необходим, но не может быть создан.
См. также:
getOutputClass()

© 1993, 2020, 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/11/docs/api/java.desktop/javax/imageio/spi/ImageOutputStreamSpi.html

Spec-Zone .ru
спецификации, руководства, описания, API