Класс PrintServiceLookup
public abstract class PrintServiceLookup extends Object
Несколько реализаций могут быть установлены одновременно. Все реализации должны уметь описывать найденные принтеры как экземпляры PrintService. Обычно реализации этого класса службы автоматически располагаются в файлах JAR (см. спецификацию файла JAR SPI). Эти классы должны быть инициализируемы с использованием конструктора по умолчанию. В качестве альтернативы приложения могут явно регистрировать экземпляры во время выполнения.
Приложения используют только статические методы этого абстрактного класса. Методы экземпляра реализуются поставщиком услуг в подклассе, а объединение результатов со всех установленных классов поиска сообщается статическими методами этого класса при вызове приложением.
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Конструктор для вызова подклассами. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
abstract PrintService |
getDefaultPrintService() |
Не вызывается напрямую приложениями. |
abstract MultiDocPrintService[] |
getMultiDocPrintServices |
Не вызывается напрямую приложениями. |
abstract PrintService[] |
getPrintServices() |
Не вызывается напрямую приложениями. |
abstract PrintService[] |
getPrintServices |
Находит службы, которые могут подтвердить поддержку комбинации атрибутов и DocFlavors, указанных в спецификации. |
static final PrintService |
lookupDefaultPrintService() |
Находит стандартную службу печати для этой среды. |
static final MultiDocPrintService[] |
lookupMultiDocPrintServices |
Находит MultiDoc службу печати Services, способную печатать MultiDocs, содержащую все указанные типы документов. |
static final PrintService[] |
lookupPrintServices |
Находит службы печати, способные печатать указанные DocFlavor. |
static boolean |
registerService |
Позволяет приложению напрямую зарегистрировать экземпляр класса, который реализует службу печати. |
static boolean |
registerServiceProvider |
Позволяет приложению явно зарегистрировать класс, который реализует службы поиска. |
Подробное описание конструкторов
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.
© 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://download.java.net/java/early_access/jdk24/docs/api/java.desktop/javax/print/PrintServiceLookup.html