Spec-Zone.ru › OpenJDK 17

Класс ServiceUIFactory

java.lang.Object
javax.print.ServiceUIFactory
public abstract class ServiceUIFactory extends Object
Сервисы могут по желанию предоставлять пользовательские интерфейсы (UI), которые позволяют использовать различные стили взаимодействия в разных ролях. Одна роль может быть просмотром конечным пользователем и настройкой параметров печати. Другая роль может быть администрированием службы печати.

Хотя API службы печати в настоящее время не предоставляет стандартизированной поддержки администрирования службы печати, мониторинг службы печати возможен, и UI может предоставить механизмы частных обновлений.

Основная цель проектирования заключается в том, чтобы приложения могли лениво находить и инициализировать сервисы только при необходимости без каких-либо зависимостей от API, за исключением среды, в которой они используются.

Предпочтение отдается UI на основе Swing, поскольку они обеспечивают более согласованный вид и могут поддерживать API доступности.

Пример использования:

  ServiceUIFactory factory = printService.getServiceUIFactory();
  if (factory != null) {
      JComponent swingui = (JComponent)factory.getUI(
                                         ServiceUIFactory.MAIN_UIROLE,
                                         ServiceUIFactory.JCOMPONENT_UI);
      if (swingui != null) {
          tabbedpane.add("Custom UI", swingui);
      }
  }
 

Краткое описание полей

Модификатор и тип Поле Описание
static final int ABOUT_UIROLE
Обозначает UI, выполняющий роль «О программе».
static final int ADMIN_UIROLE
Обозначает UI, выполняющий административную роль.
static final String DIALOG_UI
Обозначает UI, реализованный как диалоговое окно AWT.
static final String JCOMPONENT_UI
Обозначает UI, реализованный как компонент Swing.
static final String JDIALOG_UI
Обозначает UI, реализованный как диалоговое окно Swing.
static final int MAIN_UIROLE
Обозначает UI, выполняющий обычную роль конечного пользователя.
static final String PANEL_UI
Обозначает UI, реализованный как панель AWT.
static final int RESERVED_UIROLE
Не является допустимой ролью, но идентификаторы ролей, большие чем это значение, могут использоваться для частных ролей, поддерживаемых сервисом.

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

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

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

Модификатор и тип Метод Описание
abstract Object getUI(int role, String ui)
Получение объекта UI, который может быть приведён к нужному типу UI приложением и использован в его пользовательском интерфейсе.
abstract String[] getUIClassNamesForRole(int role)
При заданной роли UI, полученной от этого фабричного объекта, получение типов UI, доступных от этого фабричного объекта, которые реализуют эту роль.

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание полей

JCOMPONENT_UI

public static final String JCOMPONENT_UI
Обозначает UI, реализованный как компонент Swing. Значение строки — полностью квалифицированное имя класса: "javax.swing.JComponent".
См. также:
  • Значения константных полей

PANEL_UI

public static final String PANEL_UI
Обозначает UI, реализованный как панель AWT. Значение строки — полностью квалифицированное имя класса: "java.awt.Panel"
См. также:
  • Значения константных полей

DIALOG_UI

public static final String DIALOG_UI
Обозначает UI, реализованный как диалоговое окно AWT. Значение строки — полностью квалифицированное имя класса: "java.awt.Dialog"
См. также:
  • Значения константных полей

JDIALOG_UI

public static final String JDIALOG_UI
Обозначает UI, реализованный как диалоговое окно Swing. Значение строки — полностью квалифицированное имя класса: "javax.swing.JDialog"
См. также:
  • Значения константных полей

ABOUT_UIROLE

public static final int ABOUT_UIROLE
Обозначает UI, выполняющий роль «О программе».
См. также:
  • Значения константных полей

ADMIN_UIROLE

public static final int ADMIN_UIROLE
Обозначает UI, выполняющий административную роль.
См. также:
  • Значения константных полей

MAIN_UIROLE

public static final int MAIN_UIROLE
Обозначает UI, выполняющий обычную роль конечного пользователя.
См. также:
  • Значения константных полей

RESERVED_UIROLE

public static final int RESERVED_UIROLE
Не является допустимой ролью, но идентификаторы ролей, большие чем это значение, могут использоваться для частных ролей, поддерживаемых сервисом. Знание выполняемой этой ролью функции необходимо для правильного её использования.
См. также:
  • Значения константных полей

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

ServiceUIFactory

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

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

getUI

public abstract Object getUI(int role, String ui)
Получение объекта UI, который может быть приведён к нужному типу UI приложением и использован в его пользовательском интерфейсе.
Параметры:
role - запрашиваемый. Должен быть одной из стандартных ролей или частной ролью, поддерживаемой этим фабричным объектом.
ui - тип, в котором запрашивается роль
Возвращает:
роль UI или null если запрашиваемая роль UI недоступна от этого фабричного объекта
Исключения:
IllegalArgumentException - если роль или UI не являются ни одной из стандартных, ни частной, поддерживаемой фабрикой

getUIClassNamesForRole

public abstract String[] getUIClassNamesForRole(int role)
При заданной роли UI, полученной от этого фабричного объекта, получение типов UI, доступных от этого фабричного объекта, которые реализуют эту роль. Возвращаемые Strings должны ссылаться на статические переменные, определённые в этом классе, чтобы приложения могли использовать равенство ссылок ("==").
Параметры:
role - для поиска
Возвращает:
типы UI, поддерживаемые этим классом для заданной роли, null если UI недоступны для роли
Исключения:
IllegalArgumentException - если роль является нестандартной ролью, не поддерживаемой этим фабричным объектом

© 1993, 2021, 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/17/docs/api/java.desktop/javax/print/ServiceUIFactory.html

Spec-Zone.ru

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