Spec-Zone.ru › OpenJDK 25

Класс 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

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

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, 2025, 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.
https://docs.oracle.com/en/java/javase/25/docs/api/java.desktop/javax/print/PrintServiceLookup.html

Spec-Zone.ru

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