Класс ModelMBeanInfoSupport
- Все реализуемые интерфейсы:
-
Serializable,Cloneable,DescriptorRead,ModelMBeanInfo
public class ModelMBeanInfoSupport extends MBeanInfo implements ModelMBeanInfo
Java-ресурсы, желающие быть управляемыми, инициализируют ModelMBean с помощью метода createMBean сервера управления MBean. Ресурс затем устанавливает ModelMBeanInfo и Descriptors для экземпляра ModelMBean. Атрибуты и операции, экспонируемые через ModelMBeanInfo для ModelMBean, доступны из MBeans, коннекторов/адаптеров, как и других MBeans. С помощью Descriptors можно определить и сопоставить значения и методы в управляемом приложении с атрибутами и операциями ModelMBean. Это сопоставление можно определить во время разработки в файле или динамически и программно во время выполнения.
Каждый ModelMBean, который инициализирован в сервере управления MBean, становится управляемым: его атрибуты и операции становятся удаленно доступными через подключенные к этому серверу управления коннекторы/адаптеры. Объект Java не может быть зарегистрирован в сервере управления MBean, если он не является совместимым с JMX MBean. Инициализация ModelMBean гарантирует, что MBean является валидным. MBeanException и RuntimeOperationsException должны быть выброшены для каждого публичного метода. Это позволяет оборачивать исключения из распределенных коммуникаций (RMI, EJB и т.д.).
serialVersionUID этого класса равен -1935722590756516193L.
- С:
- 1.5
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
ModelMBeanInfoSupport |
Создаёт ModelMBeanInfoSupport с предоставленной информацией, но дескриптор является по умолчанию. |
ModelMBeanInfoSupport |
Создаёт ModelMBeanInfoSupport с предоставленной информацией и дескриптором, заданным в параметре. |
ModelMBeanInfoSupport |
Конструирует ModelMBeanInfoSupport, который является дубликатом заданного ModelMBeanInfo. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
Object |
clone() |
Возвращает неглубокую копию этого экземпляра. |
ModelMBeanAttributeInfo |
getAttribute |
Возвращает ModelMBeanAttributeInfo, запрошенный по имени. |
ModelMBeanConstructorInfo |
getConstructor |
Возвращает ModelMBeanConstructorInfo, запрошенный по имени. |
Descriptor |
getDescriptor() |
Получает дескриптор этого MBeanInfo. |
Descriptor |
getDescriptor |
Возвращает дескриптор, запрошенный по имени. |
Descriptor |
getDescriptor |
Возвращает дескриптор, запрошенный по имени и типу дескриптора. |
Descriptor[] |
getDescriptors |
Возвращает массив дескрипторов, содержащий все дескрипторы для ModelMBeanInfo типа inDescriptorType. |
Descriptor |
getMBeanDescriptor() |
Возвращает дескриптор ModelMBean, который содержит политики на уровне MBean. |
ModelMBeanNotificationInfo |
getNotification |
Возвращает ModelMBeanNotificationInfo, запрошенный по имени. |
ModelMBeanOperationInfo |
getOperation |
Возвращает ModelMBeanOperationInfo, запрошенный по имени. |
void |
setDescriptor |
Устанавливает дескрипторы в массиве info типа inDescriptorType для ModelMBean. |
void |
setDescriptors |
Добавляет или заменяет дескрипторы в ModelMBeanInfo. |
void |
setMBeanDescriptor |
Устанавливает дескриптор ModelMBean. |
Методы, объявленные в классе javax.management.MBeanInfo
equals, getAttributes, getClassName, getConstructors, getDescription, getNotifications, getOperations
Методы, объявленные в классе java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Методы, объявленные в интерфейсе javax.management.modelmbean.ModelMBeanInfo
getAttributes, getClassName, getConstructors, getDescription, getNotifications, getOperations
Подробное описание конструкторов
ModelMBeanInfoSupport
public ModelMBeanInfoSupport(ModelMBeanInfo mbi)
ModelMBeanAttributeInfo[] и т. д.) не клонируются. Этот метод, главным образом, интересен для изменения Descriptor возвращаемого экземпляра с помощью setDescriptor без изменения Descriptor исходного объекта.- Параметры:
-
mbi- экземпляр ModelMBeanInfo, на основе которого инициализируется создаваемый ModelMBeanInfo.
ModelMBeanInfoSupport
public ModelMBeanInfoSupport(String className, String description, ModelMBeanAttributeInfo[] attributes, ModelMBeanConstructorInfo[] constructors, ModelMBeanOperationInfo[] operations, ModelMBeanNotificationInfo[] notifications)
- Параметры:
-
className- имя класса MBean -
description- удобочитаемое описание ModelMBean -
attributes- массив объектов ModelMBeanAttributeInfo, имеющих descriptors -
constructors- массив объектов ModelMBeanConstructorInfo, имеющих descriptors -
operations- массив объектов ModelMBeanOperationInfo, имеющих descriptors -
notifications- массив объектов ModelMBeanNotificationInfo, имеющих descriptors
ModelMBeanInfoSupport
public ModelMBeanInfoSupport(String className, String description, ModelMBeanAttributeInfo[] attributes, ModelMBeanConstructorInfo[] constructors, ModelMBeanOperationInfo[] operations, ModelMBeanNotificationInfo[] notifications, Descriptor mbeandescriptor)
- Параметры:
-
className- имя класса MBean -
description- удобочитаемое описание ModelMBean -
attributes- массив объектов ModelMBeanAttributeInfo, имеющих descriptors -
constructors- массив объектов ModelMBeanConstructorInfo, имеющих descriptor -
operations- массив объектов ModelMBeanOperationInfo, имеющих descriptor -
notifications- массив объектов ModelMBeanNotificationInfo, имеющих descriptor -
mbeandescriptor- descriptor, используемый в качестве MBeanDescriptor, содержащего политику MBean. Если descriptor равен null, будет создан descriptor по умолчанию. Descriptor по умолчанию: name=className, descriptorType="mbean", displayName=className, persistPolicy="never", log="F", visibility="1". Если descriptor не содержит все эти поля, отсутствующие добавляются с этими значениями по умолчанию. - Исключения:
-
RuntimeOperationsException- Оборачивает IllegalArgumentException для некорректного descriptor, переданного в параметре. (см.getMBeanDescriptorдля определения корректного descriptor MBean.)
Подробное описание методов
clone
public Object clone()
ModelMBeanAttributeInfo[] и т. д.) не клонируются. Этот метод, главным образом, интересен для изменения Descriptor копии с помощью setDescriptor без изменения Descriptor исходного объекта.- Унаследованно от:
-
cloneв интерфейсеModelMBeanInfo - Переопределяет:
-
cloneв классеMBeanInfo - Возвращает:
- поверхностную копию этого экземпляра.
- См. также:
getDescriptors
public Descriptor[] getDescriptors(String inDescriptorType) throws MBeanException, RuntimeOperationsException
ModelMBeanInfo- Унаследованно от:
-
getDescriptorsв интерфейсеModelMBeanInfo - Параметры:
-
inDescriptorType- значение поля descriptorType, которое должно быть установлено для возвращаемого descriptor. Должно быть "mbean", "attribute", "operation", "constructor" или "notification". Если оно равно null или пустое, будут возвращены все типы. - Возвращает:
- массив Descriptors, содержащий все descriptors для ModelMBean, если тип inDescriptorType.
- Исключения:
-
MBeanException- Оборачивает исключение распределённой коммуникации. -
RuntimeOperationsException- Оборачивает IllegalArgumentException, когда descriptorType в параметре не является одним из: "mbean", "attribute", "operation", "constructor", "notification", пустым или null. - См. также:
setDescriptors
public void setDescriptors(Descriptor[] inDescriptors) throws MBeanException, RuntimeOperationsException
ModelMBeanInfo- Унаследованно от:
-
setDescriptorsв интерфейсеModelMBeanInfo - Параметры:
-
inDescriptors- Descriptors, которые должны быть установлены в ModelMBeanInfo. Нулевые элементы списка будут проигнорированы. Все descriptors должны иметь поля name и descriptorType. - Исключения:
-
MBeanException- Оборачивает исключение распределённой коммуникации. -
RuntimeOperationsException- Оборачивает IllegalArgumentException для null или некорректного descriptor. - См. также:
getDescriptor
public Descriptor getDescriptor(String inDescriptorName) throws MBeanException, RuntimeOperationsException
- Параметры:
-
inDescriptorName- имя descriptor. - Возвращает:
- Descriptor, содержащий descriptor для ModelMBean с тем же именем. Если descriptor не найден, возвращается null.
- Исключения:
-
MBeanException- Оборачивает исключение распределённой коммуникации. -
RuntimeOperationsException- Оборачивает IllegalArgumentException для null имени. - См. также:
getDescriptor
public Descriptor getDescriptor(String inDescriptorName, String inDescriptorType) throws MBeanException, RuntimeOperationsException
ModelMBeanInfo- Унаследованно от:
-
getDescriptorв интерфейсеModelMBeanInfo - Параметры:
-
inDescriptorName- имя descriptor. -
inDescriptorType- тип запрашиваемого descriptor. Если это null или пустая строка, ищутся все типы. Допустимые типы: 'mbean', 'attribute', 'constructor' 'operation' и 'notification'. Это значение будет равно полю 'descriptorType' в возвращаемом descriptor. - Возвращает:
- Descriptor, содержащий descriptor для ModelMBean с тем же именем и типом descriptor. Если descriptor не найден, возвращается null.
- Исключения:
-
MBeanException- Оборачивает исключение распределённой коммуникации. -
RuntimeOperationsException- Оборачивает IllegalArgumentException для null имени descriptor или null или некорректного типа. Тип должен быть "mbean","attribute", "constructor", "operation" или "notification". - См. также:
setDescriptor
public void setDescriptor(Descriptor inDescriptor, String inDescriptorType) throws MBeanException, RuntimeOperationsException
ModelMBeanInfo- Унаследованно от:
-
setDescriptorв интерфейсеModelMBeanInfo - Параметры:
-
inDescriptor- descriptor, который нужно установить в ModelMBean. Он НЕ должен быть null. Все descriptors должны иметь поля name и descriptorType. -
inDescriptorType- тип устанавливаемого descriptor. Если это null, используется поле descriptorType в descriptor. Если указано, это значение должно быть установлено в поле descriptorType в descriptor. Должно быть "mbean","attribute", "constructor", "operation" или "notification". - Исключения:
-
MBeanException- Оборачивает исключение распределённой коммуникации. -
RuntimeOperationsException- Оборачивает IllegalArgumentException для некорректных или null аргументов или если поле name descriptor не найдено в соответствующем MBeanAttributeInfo или MBeanConstructorInfo или MBeanNotificationInfo или MBeanOperationInfo. - См. также:
getAttribute
public ModelMBeanAttributeInfo getAttribute(String inName) throws MBeanException, RuntimeOperationsException
ModelMBeanInfo- Определено в:
-
getAttributeв интерфейсеModelMBeanInfo - Параметры:
-
inName- Имя ModelMBeanAttributeInfo для получения. Если для этого имени ModelMBeanAttributeInfo не существует, возвращается null. - Возвращает:
- информацию об атрибуте с заданным именем, или null, если её нет.
- Исключения:
-
MBeanException- Оборачивает исключение распределённой коммуникации. -
RuntimeOperationsException- Оборачивает IllegalArgumentException для имени атрибута null.
getOperation
public ModelMBeanOperationInfo getOperation(String inName) throws MBeanException, RuntimeOperationsException
ModelMBeanInfo- Определено в:
-
getOperationв интерфейсеModelMBeanInfo - Параметры:
-
inName- Имя ModelMBeanOperationInfo для получения. Если для этого имени ModelMBeanOperationInfo не существует, возвращается null. - Возвращает:
- информацию об операции с заданным именем, или null, если её нет.
- Исключения:
-
MBeanException- Оборачивает исключение распределённой коммуникации. -
RuntimeOperationsException- Оборачивает IllegalArgumentException для имени операции null.
getConstructor
public ModelMBeanConstructorInfo getConstructor(String inName) throws MBeanException, RuntimeOperationsException
- Параметры:
-
inName- имя конструктора. - Возвращает:
- информацию о конструкторе с заданным именем, или null, если её нет.
- Исключения:
-
MBeanException- Оборачивает исключение распределённой коммуникации. -
RuntimeOperationsException- Оборачивает IllegalArgumentException для имени конструктора null.
getNotification
public ModelMBeanNotificationInfo getNotification(String inName) throws MBeanException, RuntimeOperationsException
ModelMBeanInfo- Определено в:
-
getNotificationв интерфейсеModelMBeanInfo - Параметры:
-
inName- Имя ModelMBeanNotificationInfo для получения. Если для этого имени ModelMBeanNotificationInfo не существует, возвращается null. - Возвращает:
- информацию об уведомлении с заданным именем, или null, если её нет.
- Исключения:
-
MBeanException- Оборачивает исключение распределённой коммуникации. -
RuntimeOperationsException- Оборачивает IllegalArgumentException для имени уведомления null.
getDescriptor
public Descriptor getDescriptor()
MBeanInfo- Определено в:
-
getDescriptorв интерфейсеDescriptorRead - Переопределяет:
-
getDescriptorв классеMBeanInfo - Возвращает:
- дескриптор, который является неизменяемым или копией оригинала.
- С:
- 1.6
getMBeanDescriptor
public Descriptor getMBeanDescriptor() throws MBeanException
ModelMBeanInfoВозвращает дескриптор ModelMBean, содержащий политики для всего MBean. Этот дескриптор содержит метаданные о MBean и политики по умолчанию для сохранения и кеширования.
Поля в дескрипторе определены, но не ограничены следующими. Обратите внимание, что когда Тип в этой таблице — Число, строка, которая является десятичной записью Long, также может быть использована.
| Имя | Тип | Значение |
|---|---|---|
| name | String | Имя MBean. |
| descriptorType | String | Должно быть "mbean". |
| displayName | String | Имя MBean для использования в отображениях. |
| persistPolicy | String | Один из: OnUpdate|OnTimer|NoMoreOftenThan|OnUnregister|Always|Never. См. раздел "Поля дескриптора MBean" в документе спецификации JMX. |
| persistLocation | String | Полное имя каталога, где должен быть сохранён MBean (если применимо). |
| persistFile | String | Имя файла, в который должен быть сохранён MBean. |
| persistPeriod | Number | Частота цикла сохранения в секундах, для OnTime и NoMoreOftenThan PersistPolicy |
| currencyTimeLimit | Number | Сколько времени кэшированное значение действительно: <0 никогда, =0 всегда, >0 секунд. |
| log | String | t: регистрировать все уведомления, f: не регистрировать никаких уведомлений. |
| logfile | String | Полное имя файла для регистрации событий. |
| visibility | Number | 1-4, где 1: всегда видимый, 4: редко видимый. |
| export | String | Имя для экспорта/раскрытия этого MBean, чтобы его могли найти другие агенты JMX. |
| presentationString | String | XML-форматированная строка для предоставления данных, связанных с MBean. |
По умолчанию дескриптор: name=className,descriptorType="mbean", displayName=className, persistPolicy="never",log="F",visibility="1" Если дескриптор не содержит все эти поля, они будут добавлены со значениями по умолчанию.
Примечание: из-за несоответствий в предыдущих версиях этой спецификации рекомендуется не использовать отрицательные или нулевые значения для currencyTimeLimit. Чтобы указать, что кэшированное значение никогда недействительно, опустите поле currencyTimeLimit. Чтобы указать, что оно всегда действительно, используйте очень большое число для этого поля.
- Определено в:
-
getMBeanDescriptorв интерфейсеModelMBeanInfo - Возвращает:
- дескриптор MBean.
- Исключения:
-
MBeanException- Оборачивает исключение распределённой коммуникации. - См. также:
setMBeanDescriptor
public void setMBeanDescriptor(Descriptor inMBeanDescriptor) throws MBeanException, RuntimeOperationsException
ModelMBeanInfogetMBeanDescriptor для описания допустимых имён полей.- Определено в:
-
setMBeanDescriptorв интерфейсеModelMBeanInfo - Параметры:
-
inMBeanDescriptor- дескриптор для установки. - Исключения:
-
MBeanException- Оборачивает исключение распределённой коммуникации. -
RuntimeOperationsException- Оборачивает IllegalArgumentException для недопустимого дескриптора. - См. также:
© 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/modelmbean/ModelMBeanInfoSupport.html