Spec-Zone.ru › OpenJDK 27

Класс PrintServiceLookup

java.lang.Object
javax.print.PrintServiceLookup
public abstract class PrintServiceLookup extends Object
Реализации этого класса предоставляют службы поиска служб печати (обычно соответствующих принтерам) определённого типа.

Одновременно может быть установлено несколько реализаций. Все реализации должны уметь описывать найденные принтеры как экземпляры PrintService. Обычно реализации этого класса службы автоматически обнаруживаются в JAR-файлах (см. спецификацию SPI JAR-файла). Эти классы должны допускать создание экземпляров с помощью конструктора по умолчанию. Кроме того, приложения могут явно регистрировать экземпляры во время выполнения.

Приложения используют только статические методы этого абстрактного класса. Методы экземпляра реализуются поставщиком службы в подклассе, а статические методы этого класса при вызове приложением возвращают объединённые результаты всех установленных классов поиска.

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

PrintServiceLookup()
Модификатор Конструктор Описание
protected
Конструктор для вызова подклассами.

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

Модификатор и тип Метод Описание
abstract PrintService getDefaultPrintService()
Не вызывается непосредственно приложениями.
abstract MultiDocPrintService[] getMultiDocPrintServices(DocFlavor[] flavors, AttributeSet attributes)
Не вызывается непосредственно приложениями.
abstract PrintService[] getPrintServices()
Не вызывается непосредственно приложениями.
abstract PrintService[] getPrintServices(DocFlavor flavor, AttributeSet attributes)
Находит службы, для которых можно достоверно подтвердить поддержку указанного сочетания атрибутов и DocFlavors.
static final PrintService lookupDefaultPrintService()
Находит службу печати, используемую по умолчанию в этой среде.
static final MultiDocPrintService[] lookupMultiDocPrintServices(DocFlavor[] flavors, AttributeSet attributes)
Находит MultiDoc службы печати Services, способные печатать MultiDocs, содержащие все указанные типы документов.
static final PrintService[] lookupPrintServices(DocFlavor flavor, AttributeSet attributes)
Находит службы печати, способные печатать указанный DocFlavor.
static boolean registerService(PrintService service)
Позволяет приложению напрямую зарегистрировать экземпляр класса, реализующего службу печати.
static boolean registerServiceProvider(PrintServiceLookup sp)
Позволяет приложению явно зарегистрировать класс, реализующий службы поиска.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли этот объект какому-либо другому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API подлежит удалению в будущей версии.
Метод финализации устарел и подлежит удалению в одном из следующих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Приостанавливает текущий поток до его пробуждения, обычно в результате вызова notify или interrupt.
final void wait(long timeoutMillis)
Приостанавливает текущий поток до его пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Приостанавливает текущий поток до его пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.

Подробное описание конструкторов

PrintServiceLookup

protected PrintServiceLookup()
Конструктор для вызова подклассами.

Подробное описание методов

lookupPrintServices

public static final PrintService[] lookupPrintServices(DocFlavor flavor, AttributeSet attributes)
Находит службы печати, способные печатать указанный DocFlavor.
Параметры:
flavor — тип документа для печати. Если null, это ограничение не используется.
attributes — атрибуты, поддержку которых должна обеспечивать служба печати. Если null, это ограничение не используется.
Возвращает:
массив соответствующих объектов PrintService, представляющих службы печати, поддерживающие указанные атрибуты типа документа. Если подходящие службы не найдены, возвращается массив нулевой длины.

lookupMultiDocPrintServices

public static final MultiDocPrintService[] lookupMultiDocPrintServices(DocFlavor[] flavors, AttributeSet attributes)
Находит MultiDoc службы печати Services, способные печатать MultiDocs, содержащие все указанные типы документов.

Этот метод полезен для поиска службы, способной печатать MultiDoc, элементы которого могут иметь разные типы. Приложение может выполнить поиск самостоятельно, отдельно выполняя несколько поисков для каждого DocFlavor и объединяя результаты, однако служба поиска может сделать это эффективнее.

Параметры:
flavors — типы документов для печати. Если null или пусто, это ограничение не используется. В противном случае возвращаются только многодокументные службы печати, способные печатать все указанные типы документов.
attributes — атрибуты, поддержку которых должна обеспечивать служба печати. Если null, это ограничение не используется.
Возвращает:
массив соответствующих объектов MultiDocPrintService. Если подходящие службы не найдены, возвращается массив нулевой длины.

lookupDefaultPrintService

public static final PrintService lookupDefaultPrintService()
Находит службу печати, используемую по умолчанию в этой среде. Может быть возвращено значение null. Если несколько служб поиска указывают службу по умолчанию, способ её выбора точно не определён, однако обычно в качестве службы по умолчанию возвращается встроенная служба платформы, а не установленная служба. Если встроенную службу печати платформы по умолчанию невозможно однозначно определить, выбирается первая найденная служба; порядок зависит от реализации.

При этом могут использоваться любые API настроек, доступные в составе Java или собственной платформы. Этот алгоритм можно переопределить, задав свойство javax.print.defaultPrinter. Указанная служба должна быть обнаружена как действительная и доступная в данный момент, чтобы её можно было вернуть в качестве службы по умолчанию.

Возвращает:
службу печати по умолчанию PrintService

registerServiceProvider

public static boolean registerServiceProvider(PrintServiceLookup sp)
Позволяет приложению явно зарегистрировать класс, реализующий службы поиска. Регистрация не сохраняется при последующих запусках виртуальной машины. Это полезно, если приложению необходимо сделать доступной новую службу, не входящую в состав установки. Если служба поиска уже зарегистрирована или не может быть зарегистрирована, метод возвращает false.
Параметры:
sp — реализация службы поиска
Возвращает:
true, если новая служба поиска зарегистрирована; в противном случае — false

registerService

public static boolean registerService(PrintService service)
Позволяет приложению напрямую зарегистрировать экземпляр класса, реализующего службу печати. Поиск этой службы будет выполняться классом PrintServiceLookup с использованием значений и классов атрибутов, предоставляемых службой. Это может быть менее эффективно, чем использование службы поиска, оптимизированной для данной службы. Поэтому рекомендуется вместо этого регистрировать экземпляр PrintServiceLookup. Метод возвращает true, если эта служба ранее не была зарегистрирована и теперь успешно зарегистрирована. Не следует вызывать этот метод с экземплярами StreamPrintService. Их регистрация всегда завершается неудачей, и метод возвращает false.
Параметры:
service — реализация службы печати
Возвращает:
true, если служба зарегистрирована; в противном случае — false

getPrintServices

public abstract PrintService[] getPrintServices(DocFlavor flavor, AttributeSet attributes)
Находит службы, для которых можно достоверно подтвердить поддержку указанного сочетания атрибутов и DocFlavors. Этот метод не вызывается непосредственно приложениями.

Реализуется поставщиком службы и используется статическими методами этого класса.

Результаты должны совпадать с результатами получения всех PrintServices и отдельной проверки поддержки каждым из них указанных атрибутов и типов документов, однако использование возможностей служб поиска для служб печати может повысить эффективность этого процесса.

Параметры:
flavor — требуемый тип документа. Если null, параметр игнорируется.
attributes — атрибуты, поддержку которых необходимо обеспечить. Если null, это ограничение не используется.
Возвращает:
массив соответствующих объектов PrintServices. Если подходящие службы не найдены, возвращается массив нулевой длины.

getPrintServices

public abstract PrintService[] getPrintServices()
Не вызывается непосредственно приложениями. Реализуется поставщиком службы и используется статическими методами этого класса.
Возвращает:
массив всех объектов PrintServices, известных этому классу службы поиска. Если ничего не найдено, возвращается массив нулевой длины.

getMultiDocPrintServices

public abstract MultiDocPrintService[] getMultiDocPrintServices(DocFlavor[] flavors, AttributeSet attributes)
Не вызывается непосредственно приложениями.

Реализуется поставщиком службы и используется статическими методами этого класса.

Находит MultiDoc службы печати, для которых можно достоверно подтвердить поддержку указанного сочетания атрибутов и DocFlavors.

Параметры:
flavors — требуемые типы документов. Если null или пусто, параметр игнорируется.
attributes — атрибуты, поддержку которых необходимо обеспечить. Если null, это ограничение не используется.
Возвращает:
массив соответствующих объектов PrintServices. Если подходящие службы не найдены, возвращается массив нулевой длины.

getDefaultPrintService

public abstract PrintService getDefaultPrintService()
Не вызывается непосредственно приложениями. Реализуется поставщиком службы и вызывается службой поиска принтеров.
Возвращает:
службу печати по умолчанию PrintService. Если служба по умолчанию отсутствует, возвращает null.

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и работающие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2026, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API