Spec-Zone.ru › OpenJDK 8

Интерфейс Relation

Все известные подинтерфейсы:
RelationSupportMBean
Все известные реализующие классы:
RelationSupport

public interface Relation

Этот интерфейс должен быть реализован любым классом MBean, ожидаемым для представления отношения, управляемого службой Relation Service.

Простые отношения, т.е. содержащие только роли, без свойств или методов, могут быть созданы непосредственно службой Relation Service (представлены как объекты RelationSupport, внутренне обрабатываемые службой Relation Service).

Если пользователь хочет представить более сложные отношения, включающие свойства и/или методы, он должен предоставить собственный класс, реализующий интерфейс Relation. Это можно сделать, унаследовавшись от класса RelationSupport или реализовав интерфейс (полностью или делегированием объекту члена RelationSupport).

Указание такого пользовательского класса Relation предназначено для введения свойств и/или методов. Они должны быть доступны для удаленного управления. Поэтому любой пользовательский класс Relation должен быть классом MBean.

С тех пор:
1.5

Методы

Модификатор и тип Метод и описание
RoleResult getAllRoles()

Возвращает все роли, присутствующие в отношении.

Map<ObjectName,List<String>> getReferencedMBeans()

Получает MBean, ссылающиеся на различные роли отношения.

String getRelationId()

Возвращает идентификатор отношения (используется для уникальной идентификации отношения внутри Relation Service).

ObjectName getRelationServiceName()

Возвращает ObjectName службы Relation Service, обрабатывающей отношение.

String getRelationTypeName()

Возвращает имя связанного типа отношения.

List<ObjectName> getRole(String roleName)

Получает значение роли для данного имени роли.

Integer getRoleCardinality(String roleName)

Возвращает количество MBean, в настоящее время ссылающихся на заданную роль.

RoleResult getRoles(String[] roleNameArray)

Получает значения ролей с заданными именами.

void handleMBeanUnregistration(ObjectName objectName, String roleName)

Обратный вызов, используемый службой Relation Service, когда MBean, ссылающийся на роль, снят с регистрации.

RoleList retrieveAllRoles()

Возвращает все роли в отношении без проверки режима чтения.

void setRole(Role role)

Устанавливает заданную роль.

RoleResult setRoles(RoleList roleList)

Устанавливает заданные роли.

Методы

getRole

List<ObjectName> getRole(String roleName)
                  throws IllegalArgumentException,
                         RoleNotFoundException,
                         RelationServiceNotRegisteredException

Получает значение роли для данного имени роли.

Проверяет, существует ли роль и доступна для чтения в соответствии с типом отношения.

Параметры:
roleName - имя роли
Возвращает:
список ObjectName объектов, представляющих значение роли
Исключения:
IllegalArgumentException - если имя роли null
RoleNotFoundException - если:

- нет роли с заданным именем

- роль недоступна для чтения.

RelationServiceNotRegisteredException - если служба Relation Service не зарегистрирована в MBean Server
См. также:
setRole(javax.management.relation.Role)

getRoles

RoleResult getRoles(String[] roleNameArray)
             throws IllegalArgumentException,
                    RelationServiceNotRegisteredException

Получает значения ролей с заданными именами.

Проверяет для каждой роли, существует ли она и доступна для чтения в соответствии с типом отношения.

Параметры:
roleNameArray - массив имен ролей для получения
Возвращает:
объект RoleResult, включающий RoleList (для успешно полученных ролей) и RoleUnresolvedList (для ролей, не полученных).
Исключения:
IllegalArgumentException - если имя роли null
RelationServiceNotRegisteredException - если служба Relation Service не зарегистрирована в MBean Server
См. также:
setRoles(javax.management.relation.RoleList)

getRoleCardinality

Integer getRoleCardinality(String roleName)
                    throws IllegalArgumentException,
                           RoleNotFoundException

Возвращает количество MBean, в настоящее время ссылающихся на заданную роль.

Параметры:
roleName - имя роли
Возвращает:
количество MBean, ссылающихся на эту роль
Исключения:
IllegalArgumentException - если имя роли null
RoleNotFoundException - если нет роли с заданным именем

getAllRoles

RoleResult getAllRoles()
                throws RelationServiceNotRegisteredException

Возвращает все роли, присутствующие в отношении.

Возвращает:
объект RoleResult, включающий RoleList (для успешно полученных ролей) и RoleUnresolvedList (для ролей, недоступных для чтения).
Исключения:
RelationServiceNotRegisteredException - если служба Relation Service не зарегистрирована в MBean Server

retrieveAllRoles

RoleList retrieveAllRoles()

Возвращает все роли в отношении без проверки режима чтения.

Возвращает:
RoleList.

setRole

void setRole(Role role)
      throws IllegalArgumentException,
             RoleNotFoundException,
             RelationTypeNotFoundException,
             InvalidRoleValueException,
             RelationServiceNotRegisteredException,
             RelationNotFoundException

Устанавливает заданную роль.

Проверит роль в соответствии с её определением в типе отношения.

Отправит уведомление (RelationNotification с типом RELATION_BASIC_UPDATE или RELATION_MBEAN_UPDATE в зависимости от того, является ли отношение MBean).

Параметры:
role - роль для установки (имя и новое значение)
Исключения:
IllegalArgumentException - если роль null
RoleNotFoundException - если нет роли с заданным именем или роль не доступна для записи (проверка на доступ для записи при инициализации роли не выполняется)
InvalidRoleValueException - если предоставленное значение для роли неверно:

- количество MBean, ссылающихся на данное значение, меньше ожидаемого минимального степени

- количество MBean, ссылающихся на предоставленное значение, превышает ожидаемую максимальную степень

- один MBean в значении не является объектом класса MBean, ожидаемого для данной роли

- MBean, указанный для этой роли, не существует.

RelationServiceNotRegisteredException - если Relation Service не зарегистрирован в MBean Server
RelationTypeNotFoundException - если тип отношения не объявлен в Relation Service.
RelationNotFoundException - если отношение не добавлено в Relation Service.
См. также:
getRole(java.lang.String)

setRoles

RoleResult setRoles(RoleList roleList)
             throws IllegalArgumentException,
                    RelationServiceNotRegisteredException,
                    RelationTypeNotFoundException,
                    RelationNotFoundException

Устанавливает заданные роли.

Проверит роль в соответствии с её определением в типе отношения.

Отправит по одному уведомлению (RelationNotification с типом RELATION_BASIC_UPDATE или RELATION_MBEAN_UPDATE, в зависимости от того, является ли отношение MBean) на обновляемую роль.

Параметры:
roleList - список ролей для установки
Возвращает:
объект RoleResult, включающий RoleList (для успешно установленных ролей) и RoleUnresolvedList (для ролей, не установленных).
Исключения:
IllegalArgumentException - если список ролей null
RelationServiceNotRegisteredException - если Relation Service не зарегистрирован в MBean Server
RelationTypeNotFoundException - если тип отношения не объявлен в Relation Service.
RelationNotFoundException - если MBean отношения не добавлен в Relation Service.
См. также:
getRoles(java.lang.String[])

handleMBeanUnregistration

void handleMBeanUnregistration(ObjectName objectName,
                               String roleName)
                        throws IllegalArgumentException,
                               RoleNotFoundException,
                               InvalidRoleValueException,
                               RelationServiceNotRegisteredException,
                               RelationTypeNotFoundException,
                               RelationNotFoundException

Обратный вызов, используемый службой Relation Service, когда MBean, ссылающийся на роль, снят с регистрации.

Служба Relation Service вызовет этот метод, чтобы позволить отношению выполнить действия для отражения последствий такого снятия с регистрации.

ВНИМАНИЕ. Пользователь не должен вызывать этот метод.

Текущая реализация заключается в установке роли с её текущим значением (список ObjectName ссылающихся на MBean) без снятого с регистрации.

Параметры:
objectName - ObjectName снятого с регистрации MBean
roleName - имя роли, в которой ссылается MBean
Исключения:
IllegalArgumentException - если параметр null
RoleNotFoundException - если роль не существует в отношении или не доступна для записи
InvalidRoleValueException - если значение роли не соответствует связанной информации о роли (это никогда не произойдет при вызове из Relation Service)
RelationServiceNotRegisteredException - если Relation Service не зарегистрирован в MBean Server
RelationTypeNotFoundException - если тип отношения не объявлен в Relation Service.
RelationNotFoundException - если этот метод вызывается для MBean отношения, не добавленного в Relation Service.

getReferencedMBeans

Map<ObjectName,List<String>> getReferencedMBeans()

Получает MBean, ссылающиеся на различные роли отношения.

Возвращает:
HashMap, сопоставляющая:

ObjectName -> ArrayList имён ролей

getRelationTypeName

String getRelationTypeName()

Возвращает имя связанного типа отношения.

Возвращает:
имя типа отношения.

getRelationServiceName

ObjectName getRelationServiceName()

Возвращает ObjectName службы Relation Service, обрабатывающей отношение.

Возвращает:
ObjectName службы Relation Service.

getRelationId

String getRelationId()

Возвращает идентификатор отношения (используется для уникальной идентификации отношения внутри Relation Service).

Возвращает:
идентификатор отношения.

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

Spec-Zone.ru

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