Spec-Zone.ru › OpenJDK 27

Класс ModelMBeanInfoSupport

java.lang.Object
javax.management.MBeanInfo
javax.management.modelmbean.ModelMBeanInfoSupport
Все реализуемые интерфейсы:
Serializable, Cloneable, DescriptorRead, ModelMBeanInfo
public class ModelMBeanInfoSupport extends MBeanInfo implements ModelMBeanInfo
Этот класс представляет метаданные для ModelMBean. К объектам метаданных добавлены дескрипторы.

Ресурсы Java, которыми необходимо управлять, создают экземпляр ModelMBean с помощью метода createMBean сервера MBeanServer. Затем ресурс задаёт ModelMBeanInfo и дескрипторы для экземпляра ModelMBean. Атрибуты и операции, предоставляемые через ModelMBeanInfo для ModelMBean, доступны из MBeans, коннекторов/адаптеров, как и другие MBeans. С помощью дескрипторов можно определять значения и методы управляемого приложения и сопоставлять их с атрибутами и операциями ModelMBean. Это сопоставление можно задать во время разработки в файле или динамически и программно во время выполнения.

Каждый экземпляр ModelMBean, созданный в MBeanServer, становится управляемым: его атрибуты и операции становятся удалённо доступными через коннекторы/адаптеры, подключённые к этому MBeanServer. Объект Java нельзя зарегистрировать в MBeanServer, если он не является совместимым с JMX MBean. Создание экземпляра ModelMBean гарантирует, что ресурс будет представлен допустимым MBean. Каждый открытый метод должен выбрасывать MBeanException и RuntimeOperationsException. Это позволяет оборачивать исключения, возникающие при распределённом взаимодействии (RMI, EJB и т. д.).

serialVersionUID этого класса равен -1935722590756516193L.

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

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

Конструктор Описание
ModelMBeanInfoSupport(String className, String description, ModelMBeanAttributeInfo[] attributes, ModelMBeanConstructorInfo[] constructors, ModelMBeanOperationInfo[] operations, ModelMBeanNotificationInfo[] notifications)
Создаёт ModelMBeanInfoSupport с предоставленной информацией, используя дескриптор по умолчанию.
ModelMBeanInfoSupport(String className, String description, ModelMBeanAttributeInfo[] attributes, ModelMBeanConstructorInfo[] constructors, ModelMBeanOperationInfo[] operations, ModelMBeanNotificationInfo[] notifications, Descriptor mbeandescriptor)
Создаёт ModelMBeanInfoSupport с предоставленной информацией и дескриптором, указанным в параметре.
ModelMBeanInfoSupport(ModelMBeanInfo mbi)
Создаёт ModelMBeanInfoSupport, являющийся копией указанного ModelMBeanInfo.

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

Модификатор и тип Метод Описание
Object clone()
Возвращает неполную копию этого экземпляра.
ModelMBeanAttributeInfo getAttribute(String inName)
Возвращает ModelMBeanAttributeInfo, запрошенный по имени.
ModelMBeanConstructorInfo getConstructor(String inName)
Возвращает ModelMBeanConstructorInfo, запрошенный по имени.
Descriptor getDescriptor()
Получает дескриптор этого MBeanInfo.
Descriptor getDescriptor(String inDescriptorName)
Возвращает дескриптор, запрошенный по имени.
Descriptor getDescriptor(String inDescriptorName, String inDescriptorType)
Возвращает дескриптор, запрошенный по имени и descriptorType.
Descriptor[] getDescriptors(String inDescriptorType)
Возвращает массив дескрипторов, содержащий все дескрипторы ModelMBeanInfo типа inDescriptorType.
Descriptor getMBeanDescriptor()
Возвращает дескриптор ModelMBean, содержащий политики для всего MBean.
ModelMBeanNotificationInfo getNotification(String inName)
Возвращает ModelMBeanNotificationInfo, запрошенный по имени.
ModelMBeanOperationInfo getOperation(String inName)
Возвращает ModelMBeanOperationInfo, запрошенный по имени.
void setDescriptor(Descriptor inDescriptor, String inDescriptorType)
Задаёт дескрипторы в массиве сведений типа inDescriptorType для ModelMBean.
void setDescriptors(Descriptor[] inDescriptors)
Добавляет или заменяет дескрипторы в ModelMBeanInfo.
void setMBeanDescriptor(Descriptor inMBeanDescriptor)
Задаёт дескриптор ModelMBean.

Методы, объявленные в классе MBeanInfo

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

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

finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected void finalize()
Устарело, будет удалено: этот элемент API подлежит удалению в будущей версии.
Финализация объявлена устаревшей и будет удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно после получения уведомления или прерывания.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно после получения уведомления или прерывания, либо до истечения определённого промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно после получения уведомления или прерывания, либо до истечения определённого промежутка реального времени.

Методы, объявленные в интерфейсе ModelMBeanInfo

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

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

ModelMBeanInfoSupport

public ModelMBeanInfoSupport(ModelMBeanInfo mbi)
Создает ModelMBeanInfoSupport, являющийся копией указанного ModelMBeanInfo. Возвращаемый объект представляет собой поверхностную копию указанного объекта. Ни Descriptor, ни содержащиеся в нем массивы (ModelMBeanAttributeInfo[] и т. д.) не клонируются. Этот метод представляет интерес главным образом для изменения Descriptor возвращенного экземпляра с помощью setDescriptor без влияния на Descriptor исходного объекта.
Параметры:
mbi — экземпляр ModelMBeanInfo, на основе которого инициализируется создаваемый ModelMBeanInfo.

ModelMBeanInfoSupport

public ModelMBeanInfoSupport(String className, String description, ModelMBeanAttributeInfo[] attributes, ModelMBeanConstructorInfo[] constructors, ModelMBeanOperationInfo[] operations, ModelMBeanNotificationInfo[] notifications)
Создает ModelMBeanInfoSupport с указанной информацией, но с дескриптором по умолчанию. Дескриптор по умолчанию: name=className, descriptorType="mbean", displayName=className, persistPolicy="never", log="F", visibility="1"
Параметры:
className — имя класса MBean
description — понятное человеку описание ModelMBean
attributes — массив объектов ModelMBeanAttributeInfo с дескрипторами
constructors — массив объектов ModelMBeanConstructorInfo с дескрипторами
operations — массив объектов ModelMBeanOperationInfo с дескрипторами
notifications — массив объектов ModelMBeanNotificationInfo с дескрипторами

ModelMBeanInfoSupport

public ModelMBeanInfoSupport(String className, String description, ModelMBeanAttributeInfo[] attributes, ModelMBeanConstructorInfo[] constructors, ModelMBeanOperationInfo[] operations, ModelMBeanNotificationInfo[] notifications, Descriptor mbeandescriptor)
Создает ModelMBeanInfoSupport с указанной информацией и дескриптором, переданным в параметре.
Параметры:
className — имя класса MBean
description — понятное человеку описание ModelMBean
attributes — массив объектов ModelMBeanAttributeInfo с дескрипторами
constructors — массив объектов ModelMBeanConstructorInfo с дескрипторами
operations — массив объектов ModelMBeanOperationInfo с дескрипторами
notifications — массив объектов ModelMBeanNotificationInfo с дескрипторами
mbeandescriptor — дескриптор, используемый как MBeanDescriptor, содержащий политики для всего MBean. Если дескриптор равен null, будет создан дескриптор по умолчанию. Дескриптор по умолчанию: name=className, descriptorType="mbean", displayName=className, persistPolicy="never", log="F", visibility="1". Если дескриптор не содержит все эти поля, отсутствующие поля добавляются со значениями по умолчанию.
Исключения:
RuntimeOperationsException — оборачивает IllegalArgumentException, вызванное недопустимым дескриптором, переданным в параметре. (Определение допустимого дескриптора MBean см. в getMBeanDescriptor.)

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

clone

public Object clone()
Возвращает поверхностный клон этого экземпляра. Ни Descriptor, ни содержащиеся в нем массивы (ModelMBeanAttributeInfo[] и т. д.) не клонируются. Этот метод представляет интерес главным образом для изменения Descriptor клона с помощью setDescriptor без влияния на Descriptor исходного объекта.
Определено в:
clone в интерфейсе ModelMBeanInfo
Переопределяет:
clone в классе MBeanInfo
Возвращает:
поверхностный клон этого экземпляра.
См. также:
  • Cloneable

getDescriptors

public Descriptor[] getDescriptors(String inDescriptorType) throws MBeanException, RuntimeOperationsException
Описание скопировано из интерфейса: ModelMBeanInfo
Возвращает массив Descriptor, содержащий все дескрипторы для ModelMBeanInfo типа inDescriptorType.
Определено в:
getDescriptors в интерфейсе ModelMBeanInfo
Параметры:
inDescriptorType — значение поля descriptorType, которое должно быть задано для возвращаемого дескриптора. Должно быть равно "mbean", "attribute", "operation", "constructor" или "notification". Если значение равно null или пусто, будут возвращены все типы.
Возвращает:
массив Descriptor, содержащий все дескрипторы для ModelMBean указанного типа inDescriptorType.
Исключения:
MBeanException — оборачивает исключение распределенного взаимодействия.
RuntimeOperationsException — оборачивает IllegalArgumentException, если descriptorType в параметре не равно одному из значений: "mbean", "attribute", "operation", "constructor", "notification", пустая строка или null.
См. также:
  • ModelMBeanInfo.setDescriptors(Descriptor[])

setDescriptors

public void setDescriptors(Descriptor[] inDescriptors) throws MBeanException, RuntimeOperationsException
Описание скопировано из интерфейса: ModelMBeanInfo
Добавляет или заменяет дескрипторы в ModelMBeanInfo.
Определено в:
setDescriptors в интерфейсе ModelMBeanInfo
Параметры:
inDescriptors — дескрипторы, которые нужно задать в ModelMBeanInfo. Элементы списка со значением null игнорируются. Все дескрипторы должны содержать поля name и descriptorType.
Исключения:
MBeanException — оборачивает исключение распределенного взаимодействия.
RuntimeOperationsException — оборачивает IllegalArgumentException для дескриптора со значением null или недопустимого дескриптора.
См. также:
  • ModelMBeanInfo.getDescriptors(String)

getDescriptor

public Descriptor getDescriptor(String inDescriptorName) throws MBeanException, RuntimeOperationsException
Возвращает дескриптор, запрошенный по имени.
Параметры:
inDescriptorName — имя дескриптора.
Возвращает:
Descriptor, содержащий дескриптор ModelMBean с тем же именем. Если дескриптор не найден, возвращается null.
Исключения:
MBeanException — оборачивает исключение распределенного взаимодействия.
RuntimeOperationsException — оборачивает IllegalArgumentException для имени со значением null.
См. также:
  • setDescriptor(Descriptor, String)

getDescriptor

public Descriptor getDescriptor(String inDescriptorName, String inDescriptorType) throws MBeanException, RuntimeOperationsException
Описание скопировано из интерфейса: ModelMBeanInfo
Возвращает дескриптор, запрошенный по имени и descriptorType.
Определено в:
getDescriptor в интерфейсе ModelMBeanInfo
Параметры:
inDescriptorName — имя дескриптора.
inDescriptorType — тип запрашиваемого дескриптора. Если значение равно null или пусто, выполняется поиск по всем типам. Допустимые типы: 'mbean', 'attribute', 'constructor', 'operation' и 'notification'. Это значение будет совпадать с полем 'descriptorType' возвращаемого дескриптора.
Возвращает:
Descriptor, содержащий дескриптор ModelMBean с теми же именем и descriptorType. Если дескриптор не найден, возвращается null.
Исключения:
MBeanException — оборачивает исключение распределенного взаимодействия.
RuntimeOperationsException — оборачивает IllegalArgumentException для имени дескриптора со значением null либо для типа со значением null или недопустимого типа. Тип должен быть "mbean", "attribute", "constructor", "operation" или "notification".
См. также:
  • ModelMBeanInfo.setDescriptor(Descriptor, String)

setDescriptor

public void setDescriptor(Descriptor inDescriptor, String inDescriptorType) throws MBeanException, RuntimeOperationsException
Описание скопировано из интерфейса: ModelMBeanInfo
Задает дескрипторы в массиве сведений типа inDescriptorType для ModelMBean. Для задания указанного дескриптора будет вызван метод setDescriptor соответствующего ModelMBean*Info.
Определено в:
setDescriptor в интерфейсе ModelMBeanInfo
Параметры:
inDescriptor — дескриптор, который нужно задать в ModelMBean. Он НЕ должен быть равен null. Все дескрипторы должны содержать поля name и descriptorType.
inDescriptorType — тип задаваемого дескриптора. Если значение равно null, используется поле descriptorType дескриптора. Если значение указано, оно должно быть задано в поле descriptorType дескриптора. Должно быть равно "mbean", "attribute", "constructor", "operation" или "notification".
Исключения:
MBeanException — оборачивает исключение распределенного взаимодействия.
RuntimeOperationsException — оборачивает IllegalArgumentException для недопустимых аргументов или аргументов со значением null, а также если поле name дескриптора не найдено в соответствующем MBeanAttributeInfo, MBeanConstructorInfo, MBeanNotificationInfo или MBeanOperationInfo.
См. также:
  • ModelMBeanInfo.getDescriptor(String, String)

getAttribute

public ModelMBeanAttributeInfo getAttribute(String inName) throws MBeanException, RuntimeOperationsException
Описание скопировано из интерфейса: ModelMBeanInfo
Возвращает ModelMBeanAttributeInfo, запрошенный по имени.
Определено в:
getAttribute в интерфейсе ModelMBeanInfo
Параметры:
inName — имя ModelMBeanAttributeInfo, который нужно получить. Если ModelMBeanAttributeInfo с таким именем не существует, возвращается null.
Возвращает:
сведения об именованном атрибуте или null, если такой атрибут отсутствует.
Исключения:
MBeanException — оборачивает исключение распределенного взаимодействия.
RuntimeOperationsException — оборачивает IllegalArgumentException для имени атрибута со значением null.

getOperation

public ModelMBeanOperationInfo getOperation(String inName) throws MBeanException, RuntimeOperationsException
Описание скопировано из интерфейса: ModelMBeanInfo
Возвращает ModelMBeanOperationInfo, запрошенный по имени.
Определено в:
getOperation в интерфейсе ModelMBeanInfo
Параметры:
inName — имя ModelMBeanOperationInfo, который нужно получить. Если ModelMBeanOperationInfo с таким именем не существует, возвращается null.
Возвращает:
сведения об именованной операции или null, если такая операция отсутствует.
Исключения:
MBeanException — оборачивает исключение распределенного взаимодействия.
RuntimeOperationsException — оборачивает IllegalArgumentException для имени операции со значением null.

getConstructor

public ModelMBeanConstructorInfo getConstructor(String inName) throws MBeanException, RuntimeOperationsException
Возвращает ModelMBeanConstructorInfo, запрошенный по имени. Если ModelMBeanConstructorInfo с таким именем не существует, возвращается null.
Параметры:
inName — имя конструктора.
Возвращает:
сведения об именованном конструкторе или null, если такой конструктор отсутствует.
Исключения:
MBeanException — оборачивает исключение распределенного взаимодействия.
RuntimeOperationsException — оборачивает IllegalArgumentException для имени конструктора со значением null.

getNotification

public ModelMBeanNotificationInfo getNotification(String inName) throws MBeanException, RuntimeOperationsException
Описание скопировано из интерфейса: ModelMBeanInfo
Возвращает ModelMBeanNotificationInfo, запрошенный по имени.
Определено в:
getNotification в интерфейсе ModelMBeanInfo
Параметры:
inName — имя ModelMBeanNotificationInfo, который нужно получить. Если ModelMBeanNotificationInfo с таким именем не существует, возвращается null.
Возвращает:
сведения об именованном уведомлении или null, если такое уведомление отсутствует.
Исключения:
MBeanException — оборачивает исключение распределенного взаимодействия.
RuntimeOperationsException — оборачивает IllegalArgumentException для имени уведомления со значением null.

getDescriptor

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

getMBeanDescriptor

public Descriptor getMBeanDescriptor() throws MBeanException
Описание скопировано из интерфейса: ModelMBeanInfo

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

Поля дескриптора определены следующим образом, но этот список не является исчерпывающим. Обратите внимание: если в столбце Type указано Number, также можно использовать строку с десятичным представлением Long.

Поля ModelMBean
Имя Тип Значение
name String Имя MBean.
descriptorType String Должно быть равно "mbean".
displayName String Имя MBean, используемое для отображения.
persistPolicy String Одно из значений: OnUpdate|OnTimer|NoMoreOftenThan|OnUnregister|Always|Never. См. раздел "MBean Descriptor Fields" в спецификации JMX.
persistLocation String Полный путь к каталогу, в котором следует сохранять MBean (если это применимо).
persistFile String Имя файла, в который следует сохранять MBean.
persistPeriod Number Частота циклов сохранения в секундах для политик PersistPolicy OnTime и NoMoreOftenThan.
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 — оборачивает исключение распределенного взаимодействия.
См. также:
  • ModelMBeanInfo.setMBeanDescriptor(Descriptor)

setMBeanDescriptor

public void setMBeanDescriptor(Descriptor inMBeanDescriptor) throws MBeanException, RuntimeOperationsException
Описание скопировано из интерфейса: ModelMBeanInfo
Задает дескриптор ModelMBean. Этот дескриптор содержит метаданные MBean по умолчанию, общие для всего MBean, а также политики по умолчанию для сохранения и кэширования. Эта операция полностью заменяет дескриптор; слияние не выполняется. Если задаваемый дескриптор равен null, будет создан дескриптор по умолчанию. Дескриптор по умолчанию: name=className,descriptorType="mbean", displayName=className, persistPolicy="never",log="F",visibility="1". Если дескриптор не содержит все эти поля, они будут добавлены со значениями по умолчанию. Описание допустимых имен полей см. в документации Javadoc метода getMBeanDescriptor.
Определено в:
setMBeanDescriptor в интерфейсе ModelMBeanInfo
Параметры:
inMBeanDescriptor — дескриптор, который нужно задать.
Исключения:
MBeanException — оборачивает исключение распределенного взаимодействия.
RuntimeOperationsException — оборачивает IllegalArgumentException для недопустимого дескриптора.
См. также:
  • ModelMBeanInfo.getMBeanDescriptor()

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе документации Java SE, которая содержит более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

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

Spec-Zone.ru

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