Spec-Zone.ru › OpenJDK 24

Класс MBeanInfo

java.lang.Object
javax.management.MBeanInfo
Все реализованные интерфейсы:
Serializable, Cloneable, DescriptorRead
Прямые известные подклассы:
ModelMBeanInfoSupport, OpenMBeanInfoSupport
public class MBeanInfo extends Object implements Cloneable, Serializable, DescriptorRead

Описывает интерфейс управления, предоставляемый MBean; то есть, набор атрибутов и операций, доступных для операций управления. Экземпляры этого класса неизменяемы. Подклассы могут быть изменяемыми, но это не рекомендуется.

Обычно MBeanInfo для любого данного MBean не изменяется на протяжении всего срока существования этого MBean. Динамические MBeans могут изменять свои MBeanInfo и в этом случае рекомендуется, чтобы они излучали Notification с типом "jmx.mbean.info.changed" и userData, которая является новым MBeanInfo. Это необязательно, но предоставляет стандартный способ для клиентов MBean обнаруживать изменения. См. также поля immutableInfo и infoTimeout в MBeanInfo Descriptor.

Содержимое MBeanInfo для динамического MBean определяется его методом getMBeanInfo(). Это включает Open MBeans и Model MBeans, которые являются видами динамических MBeans.

Содержимое MBeanInfo для стандартного MBean определяется сервером MBean следующим образом:

  • getClassName() возвращает имя Java-класса объекта MBean;
  • getConstructors() возвращает список всех публичных конструкторов в этом объекте;
  • getAttributes() возвращает список всех атрибутов, существование которых выводится из наличия в интерфейсе MBean метода getName, isName или setName, соответствующего соглашениям для стандартных MBeans;
  • getOperations() возвращает список всех методов в интерфейсе MBean, которые не представляют атрибуты;
  • getNotifications() возвращает пустой массив, если MBean не реализует интерфейс NotificationBroadcaster, иначе результат вызова NotificationBroadcaster.getNotificationInfo() на нём;
  • getDescriptor() возвращает дескриптор, содержащий содержимое любых аннотаций дескриптора в интерфейсе MBean (см. @DescriptorKey).

Описание, возвращаемое getDescription(), и описания содержащихся атрибутов и операций не определены.

Остальные детали MBeanInfo для стандартного MBean не определены. Это включает описание любых содержащихся конструкторов и уведомлений; имена параметров конструкторов и операций; и описания параметров конструкторов.

Since:
1.5
См. также:
  • Сериализованная форма

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

Конструктор Описание
MBeanInfo(String className, String description, MBeanAttributeInfo[] attributes, MBeanConstructorInfo[] constructors, MBeanOperationInfo[] operations, MBeanNotificationInfo[] notifications)
Конструирует MBeanInfo.
MBeanInfo(String className, String description, MBeanAttributeInfo[] attributes, MBeanConstructorInfo[] constructors, MBeanOperationInfo[] operations, MBeanNotificationInfo[] notifications, Descriptor descriptor)
Конструирует MBeanInfo.

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

Модификатор и тип Метод Описание
Object clone()
Возвращает неглубокую копию этого экземпляра.
boolean equals(Object o)
Сравнивает этот MBeanInfo с другим.
MBeanAttributeInfo[] getAttributes()
Возвращает список атрибутов, доступных для управления.
String getClassName()
Возвращает имя Java-класса MBean, описываемого этим MBeanInfo.
MBeanConstructorInfo[] getConstructors()
Возвращает список публичных конструкторов MBean.
String getDescription()
Возвращает удобочитаемое описание MBean.
Descriptor getDescriptor()
Получить дескриптор этого MBeanInfo.
MBeanNotificationInfo[] getNotifications()
Возвращает список уведомлений, излучаемых MBean.
MBeanOperationInfo[] getOperations()
Возвращает список операций MBean.

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

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

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

MBeanInfo

public MBeanInfo(String className, String description, MBeanAttributeInfo[] attributes, MBeanConstructorInfo[] constructors, MBeanOperationInfo[] operations, MBeanNotificationInfo[] notifications) throws IllegalArgumentException
Создаёт MBeanInfo.
Параметры:
className - Имя Java-класса управляемого объекта (MBean), описываемого этим MBeanInfo. Это значение может быть любым синтаксически корректным именем Java-класса. Необязательно, чтобы этот Java-класс был известен серверу MBean или загрузчику классов MBean. Если это Java-класс, известный загрузчику классов MBean, рекомендуется, но не обязательно, чтобы публичные методы класса включали те, которые появляются в стандартном управляемом объекте (Standard MBean), реализующем атрибуты и операции в этом MBeanInfo.
description - Читабельное описание управляемого объекта (MBean) (необязательно).
attributes - Список открытых атрибутов управляемого объекта (MBean). Может быть null, что эквивалентно массиву нулевой длины.
constructors - Список публичных конструкторов управляемого объекта (MBean). Может быть null, что эквивалентно массиву нулевой длины.
operations - Список операций управляемого объекта (MBean). Может быть null, что эквивалентно массиву нулевой длины.
notifications - Список уведомлений, которые испускаются. Может быть null, что эквивалентно массиву нулевой длины.
Исключение:
IllegalArgumentException

MBeanInfo

public MBeanInfo(String className, String description, MBeanAttributeInfo[] attributes, MBeanConstructorInfo[] constructors, MBeanOperationInfo[] operations, MBeanNotificationInfo[] notifications, Descriptor descriptor) throws IllegalArgumentException
Создаёт MBeanInfo.
Параметры:
className - Имя Java-класса управляемого объекта (MBean), описываемого этим MBeanInfo. Это значение может быть любым синтаксически корректным именем Java-класса. Необязательно, чтобы этот Java-класс был известен серверу MBean или загрузчику классов MBean. Если это Java-класс, известный загрузчику классов MBean, рекомендуется, но не обязательно, чтобы публичные методы класса включали те, которые появляются в стандартном управляемом объекте (Standard MBean), реализующем атрибуты и операции в этом MBeanInfo.
description - Читабельное описание управляемого объекта (MBean) (необязательно).
attributes - Список открытых атрибутов управляемого объекта (MBean). Может быть null, что эквивалентно массиву нулевой длины.
constructors - Список публичных конструкторов управляемого объекта (MBean). Может быть null, что эквивалентно массиву нулевой длины.
operations - Список операций управляемого объекта (MBean). Может быть null, что эквивалентно массиву нулевой длины.
notifications - Список уведомлений, которые испускаются. Может быть null, что эквивалентно массиву нулевой длины.
descriptor - Дескриптор управляемого объекта (MBean). Может быть null, что эквивалентно пустому дескриптору.
Исключение:
IllegalArgumentException
См. также:
1.6

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

clone

public Object clone()

Возвращает неглубокую копию этого экземпляра. Копия получается простым вызовом super.clone(), вызывая, таким образом, встроенный механизм неглубокого клонирования, реализованный в Object.clone(). Более глубокое клонирование внутренних полей не выполняется.

Поскольку этот класс неизменяемый, метод clone в первую очередь интересен для подклассов.

Переопределяет:
clone в классе Object
Возвращает:
копию этого экземпляра.
См. также:
  • Cloneable

getClassName

public String getClassName()
Возвращает имя Java-класса управляемого объекта (MBean), описываемого этим MBeanInfo.
Возвращает:
имя класса.

getDescription

public String getDescription()
Возвращает читабельное описание управляемого объекта (MBean).
Возвращает:
описание.

getAttributes

public MBeanAttributeInfo[] getAttributes()
Возвращает список атрибутов, доступных для управления. Каждый атрибут описывается объектом MBeanAttributeInfo. Возвращаемый массив — неглубокая копия внутреннего массива, что означает, что это копия внутреннего массива ссылок на объекты MBeanAttributeInfo, но каждый из ссылающихся объектов MBeanAttributeInfo не копируется.
Возвращает:
Массив объектов MBeanAttributeInfo.

getOperations

public MBeanOperationInfo[] getOperations()
Возвращает список операций управляемого объекта (MBean). Каждая операция описывается объектом MBeanOperationInfo. Возвращаемый массив — неглубокая копия внутреннего массива, что означает, что это копия внутреннего массива ссылок на объекты MBeanOperationInfo, но каждый из ссылающихся объектов MBeanOperationInfo не копируется.
Возвращает:
Массив объектов MBeanOperationInfo.

getConstructors

public MBeanConstructorInfo[] getConstructors()

Возвращает список публичных конструкторов управляемого объекта (MBean). Каждый конструктор описывается объектом MBeanConstructorInfo.

Возвращаемый массив — неглубокая копия внутреннего массива, что означает, что это копия внутреннего массива ссылок на объекты MBeanConstructorInfo, но каждый из ссылающихся объектов MBeanConstructorInfo не копируется.

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

Возвращает:
Массив объектов MBeanConstructorInfo.

getNotifications

public MBeanNotificationInfo[] getNotifications()
Возвращает список уведомлений, испускаемых управляемым объектом (MBean). Каждое уведомление описывается объектом MBeanNotificationInfo. Возвращаемый массив — неглубокая копия внутреннего массива, что означает, что это копия внутреннего массива ссылок на объекты MBeanNotificationInfo, но каждый из ссылающихся объектов MBeanNotificationInfo не копируется.
Возвращает:
Массив объектов MBeanNotificationInfo.

getDescriptor

public Descriptor getDescriptor()
Получает дескриптор этого MBeanInfo. Изменение возвращаемого значения не повлияет на исходный дескриптор.
Определено в:
getDescriptor в интерфейсе DescriptorRead
Возвращает:
дескриптор, который либо неизменяемый, либо копия исходного.
См. также:
1.6

equals

public boolean equals(Object o)

Сравнивает этот MBeanInfo с другим. Два объекта MBeanInfo равны тогда и только тогда, когда они возвращают равные значения для getClassName(), для getDescription() и для getDescriptor(), а массивы, возвращаемые двумя объектами для getAttributes(), getOperations(), getConstructors() и getNotifications(), попарно равны. Здесь "равно" означает Object.equals(Object), а не идентичность.

Если два объекта MBeanInfo возвращают одинаковые значения в одном из своих массивов, но в разном порядке, то они не равны.

Переопределяет:
equals в классе Object
Параметры:
o - объект для сравнения.
Возвращает:
true, если и только если o — это MBeanInfo, равный этому объекту в соответствии с вышеуказанными правилами.
См. также:
  • Object.hashCode()
  • HashMap

© 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.management/javax/management/MBeanInfo.html

Spec-Zone.ru

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