Spec-Zone.ru › OpenJDK 8

Класс ModelMBeanInfoSupport

  • java.lang.Object
    • javax.management.MBeanInfo
      • javax.management.modelmbean.ModelMBeanInfoSupport
Все реализованные интерфейсы:
Serializable, Cloneable, DescriptorRead, ModelMBeanInfo

public class ModelMBeanInfoSupport
extends MBeanInfo
implements ModelMBeanInfo

Этот класс представляет метаданные для ModelMBeans. Дескрипторы были добавлены к объектам метаданных.

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(ModelMBeanInfo mbi)

Создаёт ModelMBeanInfoSupport, являющийся дубликатом заданного ModelMBeanInfo.

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 с предоставленной информацией и дескриптором, заданным в параметре.

Методы

Модификатор и тип Метод и описание
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)

Возвращает дескриптор, запрошенный по имени и типу дескриптора.

Descriptor[] getDescriptors(String inDescriptorType)

Возвращает массив дескрипторов, состоящий из всех дескрипторов для ModelMBeanInfo заданного типа.

Descriptor getMBeanDescriptor()

Возвращает дескриптор ModelMBean, содержащий политики на уровне MBean.

ModelMBeanNotificationInfo getNotification(String inName)

Возвращает ModelMBeanNotificationInfo, запрошенный по имени.

ModelMBeanOperationInfo getOperation(String inName)

Возвращает ModelMBeanOperationInfo, запрошенный по имени.

void setDescriptor(Descriptor inDescriptor, String inDescriptorType)

Устанавливает дескрипторы в массиве info типа inDescriptorType для ModelMBean.

void setDescriptors(Descriptor[] inDescriptors)

Добавляет или заменяет дескрипторы в ModelMBeanInfo.

void setMBeanDescriptor(Descriptor inMBeanDescriptor)

Устанавливает дескриптор ModelMBean.

Методы, унаследованные от класса javax.management.MBeanInfo

equals, getAttributes, getClassName, getConstructors, getDescription, getNotifications, getOperations, hashCode, toString

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

finalize, getClass, notify, notifyAll, wait, wait, wait

Методы, унаследованные от интерфейса javax.management.modelmbean.ModelMBeanInfo

getAttributes, getClassName, getConstructors, getDescription, getNotifications, getOperations

Конструкторы

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 для недопустимого дескриптора, переданного в параметре. (см. getMBeanDescriptor для определения допустимого дескриптора MBean.)

Методы

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, состоящий из всех 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(javax.management.Descriptor[])

setDescriptors

public void setDescriptors(Descriptor[] inDescriptors)
                    throws MBeanException,
                           RuntimeOperationsException

Описание скопировано из интерфейса: ModelMBeanInfo

Добавляет или заменяет дескрипторы в ModelMBeanInfo.

Указано в:
setDescriptors в интерфейсе ModelMBeanInfo
Параметры:
inDescriptors - Дескрипторы, которые должны быть установлены в ModelMBeanInfo. Нулевые элементы списка будут игнорироваться. Все дескрипторы должны иметь поля name и descriptorType.
Исключения:
MBeanException - Оборачивает исключение распределенной коммуникации.
RuntimeOperationsException - Оборачивает IllegalArgumentException для нулевого или недопустимого дескриптора.
См. также:
ModelMBeanInfo.getDescriptors(java.lang.String)

getDescriptor

public Descriptor getDescriptor(String inDescriptorName)
                         throws MBeanException,
                                RuntimeOperationsException

Возвращает Descriptor, запрошенный по имени.

Параметры:
inDescriptorName - Имя дескриптора.
Возвращает:
Descriptor, содержащий дескриптор для ModelMBean с тем же именем. Если дескриптор не найден, возвращается null.
Исключения:
MBeanException - Оборачивает исключение распределенной коммуникации.
RuntimeOperationsException - Оборачивает IllegalArgumentException для нулевого имени.
См. также:
setDescriptor(javax.management.Descriptor, java.lang.String)

getDescriptor

public Descriptor getDescriptor(String inDescriptorName,
                                String inDescriptorType)
                         throws MBeanException,
                                RuntimeOperationsException

Описание скопировано из интерфейса: ModelMBeanInfo

Возвращает Descriptor, запрошенный по имени и descriptorType.

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

setDescriptor

public void setDescriptor(Descriptor inDescriptor,
                          String inDescriptorType)
                   throws MBeanException,
                          RuntimeOperationsException

Описание скопировано из интерфейса: ModelMBeanInfo

Устанавливает дескрипторы в массиве info типа inDescriptorType для ModelMBean. Метод setDescriptor соответствующего ModelMBean*Info будет вызван для установки указанного дескриптора.

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

getAttribute

public ModelMBeanAttributeInfo getAttribute(String inName)
                                     throws MBeanException,
                                            RuntimeOperationsException

Описание скопировано из интерфейса: ModelMBeanInfo

Возвращает ModelMBeanAttributeInfo, запрошенный по имени.

Указано в:
getAttribute в интерфейсе ModelMBeanInfo
Параметры:
inName - Имя ModelMBeanAttributeInfo для получения. Если для этого имени не существует ModelMBeanAttributeInfo, возвращается null.
Возвращает:
информацию об атрибуте для указанного атрибута или null, если такого нет.
Исключения:
MBeanException - Оборачивает исключение распределенной коммуникации.
RuntimeOperationsException - Оборачивает IllegalArgumentException для нулевого имени атрибута.

getOperation

public ModelMBeanOperationInfo getOperation(String inName)
                                     throws MBeanException,
                                            RuntimeOperationsException

Описание скопировано из интерфейса: ModelMBeanInfo

Возвращает ModelMBeanOperationInfo, запрошенный по имени.

Указано в:
getOperation в интерфейсе ModelMBeanInfo
Параметры:
inName - Имя ModelMBeanOperationInfo для получения. Если для этого имени не существует ModelMBeanOperationInfo, возвращается null.
Возвращает:
информацию об операции для указанной операции или null, если такой нет.
Исключения:
MBeanException - Оборачивает исключение распределенной коммуникации.
RuntimeOperationsException - Оборачивает IllegalArgumentException для нулевого имени операции.

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 и стандартные политики сохранения и кэширования.

Поля в дескрипторе определены, но не ограничиваются следующими. Обратите внимание, что когда Тип в этой таблице — Число, можно также использовать строку, представляющую десятичную запись Long.

Имя Тип Значение
name Строка Имя MBean.
descriptorType Строка Должно быть "mbean".
displayName Строка Имя MBean для использования в отображениях.
persistPolicy Строка Одно из: OnUpdate|OnTimer|NoMoreOftenThan|OnUnregister|Always|Never. См. раздел "Поля дескриптора MBean" в документе спецификации JMX.
persistLocation Строка Полное имя каталога, в котором должен храниться MBean (при необходимости).
persistFile Строка Имя файла, в который должен храниться MBean.
persistPeriod Число Частота цикла сохранения в секундах для политик OnTime и NoMoreOftenThan.
currencyTimeLimit Число Сколько времени кэшированное значение является действительным: <0 никогда, =0 всегда, >0 секунд.
log Строка t: логировать все уведомления, f: не логировать уведомления.
logfile Строка Полное имя файла для записи событий.
visibility Число 1-4, где 1: всегда видимый, 4: редко видимый.
export Строка Имя для экспорта/экспонирования этого MBean, чтобы его можно было найти другими JMX агентами.
presentationString Строка Строка в формате XML для отображения данных, связанных с MBean.

Стандартный дескриптор: name=className,descriptorType="mbean", displayName=className, persistPolicy="never",log="F",visibility="1" Если дескриптор не содержит все эти поля, они будут добавлены со значениями по умолчанию.

Примечание: из-за несоответствий в предыдущих версиях спецификации рекомендуется не использовать отрицательные или нулевые значения для currencyTimeLimit. Чтобы указать, что кэшированное значение никогда не является действительным, опустите поле currencyTimeLimit. Чтобы указать, что оно всегда действительное, используйте очень большое число для этого поля.

Определено в:
getMBeanDescriptor в интерфейсе ModelMBeanInfo
Возвращает:
дескриптор MBean.
Исключение:
MBeanException - Оборачивает исключение распределённой связи.
См. также:
ModelMBeanInfo.setMBeanDescriptor(javax.management.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()

© 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