Spec-Zone.ru › OpenJDK 25

Пакет javax.management.openmbean

package javax.management.openmbean

Предоставляет типы открытых данных и классы дескрипторов Open MBean. Open MBean — это MBean, в котором типы атрибутов, параметров операций и возвращаемых значений формируются с использованием небольшого набора предопределённых классов Java. Open MBean упрощают взаимодействие с удалёнными программами управления, которые не обязательно имеют доступ к типам, специфичным для приложения, в том числе к типам, используемым в программах не на Java.

Каждый MBean имеет MBeanInfo с информацией о самом MBean, его атрибутах, операциях, конструкторах и уведомлениях. В Open MBean этот MBeanInfo реализует интерфейс OpenMBeanInfo, обычно являясь экземпляром OpenMBeanInfoSupport.

Информация об атрибутах, возвращаемая методом MBeanInfo.getAttributes для Open MBean, представляет собой массив объектов, реализующих интерфейс OpenMBeanAttributeInfo, обычно экземпляров OpenMBeanAttributeInfoSupport. Помимо обычной информации об атрибутах, OpenMBeanAttributeInfo задаёт OpenType атрибута. Возможные значения OpenType предопределены, что гарантирует их понимание удалёнными диспетчерами.

Аналогичные замечания применимы к типам параметров операций и конструкторов, а также к типам возвращаемых значений операций.

Следует различать тип атрибута в языке Java, возвращаемый методом getType(), и его OpenType, возвращаемый методом getOpenType(). Например, если тип в языке Java — java.lang.String, то OpenType будет равен SimpleType.String. Если тип в языке Java — CompositeData, то OpenType будет представлять собой CompositeType, описывающий элементы экземпляров CompositeData этого атрибута.

Значения по умолчанию и ограничения

В Open MBean атрибуты и параметры могут иметь значения по умолчанию и/или связанные с ними ограничения, заданные в OpenMBeanAttributeInfo или OpenMBeanParameterInfo. Эти ограничения можно задать двумя способами. Значения можно указать непосредственно в качестве параметров одного из конструкторов OpenMBeanAttributeInfoSupport или OpenMBeanParameterInfoSupport, например OpenMBeanParameterInfoSupport(String, String, OpenType, Object, Object[]); либо указать их в Descriptor, переданном в качестве параметра одному из конструкторов.

Если используется Descriptor, интерес представляют следующие поля:

  • defaultValue определяет значение, возвращаемое методом getDefaultValue();
  • minValue определяет значение, возвращаемое методом getMinValue();
  • maxValue определяет значение, возвращаемое методом getMaxValue();
  • legalValues определяет значения, возвращаемые методом getLegalValues().

Для defaultValue, minValue и maxValue связанное значение должно иметь соответствующий тип Java для openType либо быть строкой, которую можно преобразовать в этот тип. Для преобразования используется статический метод valueOf(String), если он найден; в противном случае — конструктор с единственным параметром типа String, если он найден; иначе преобразование завершается неудачей.

Для legalValues связанное значение должно быть массивом или Set, а элементы массива или множества должны преобразовываться так, как описано для defaultValue и т. д.

Для этих полей должны выполняться следующие условия:

  • значения должны иметь соответствующий тип либо быть строками, которые можно преобразовать в соответствующий тип, как описано выше;
  • если задано legalValues, то minValue и maxValue не должны быть заданы;
  • если задано defaultValue, оно должно удовлетворять ограничениям, определяемым legalValues, minValue или maxValue, если задано любое из этих полей;
  • если одновременно заданы minValue и maxValue, то minValue не должно быть больше maxValue.
Начиная с версии:
1.5
См. также:
  • Спецификация JMX, версия 1.4
Пакет Описание
javax.management
Предоставляет основные классы для Java Management Extensions.
Класс Описание
ArrayType<T>
Класс ArrayType — это класс открытого типа, экземпляры которого описывают все значения открытых данных, представляющие собой n-мерные массивы значений открытых данных.
CompositeData
Интерфейс CompositeData определяет поведение объектов определённого сложного типа открытых данных, представляющих структуры составных данных.
CompositeDataInvocationHandler
InvocationHandler, который перенаправляет методы чтения в CompositeData.
CompositeDataSupport
Класс CompositeDataSupport — это класс открытых данных, реализующий интерфейс CompositeData.
CompositeDataView
Класс Java может реализовать этот интерфейс, чтобы указать, как платформа MXBean должна преобразовать его в CompositeData.
CompositeType
Класс CompositeType — это класс открытого типа, экземпляры которого описывают типы значений CompositeData.
InvalidKeyException
Это исключение времени выполнения выбрасывается, чтобы указать, что параметр метода, который должен был быть именем элемента составных данных или индексом строки табличных данных, недопустим.
InvalidOpenTypeException
Это исключение времени выполнения выбрасывается, чтобы указать, что открытый тип значения открытых данных не соответствует ожидаемому.
KeyAlreadyExistsException
Это исключение времени выполнения выбрасывается, чтобы указать, что индекс строки, которую требуется добавить в экземпляр табличных данных, уже используется для ссылки на другую строку в этом экземпляре табличных данных.
OpenDataException
Это проверяемое исключение выбрасывается, если не удалось создать экземпляр открытого типа, открытых данных или метаданных Open MBean, поскольку не выполнено одно или несколько требований корректности.
OpenMBeanAttributeInfo
Описывает атрибут Open MBean.
OpenMBeanAttributeInfoSupport
Описывает атрибут Open MBean.
OpenMBeanConstructorInfo
Описывает конструктор Open MBean.
OpenMBeanConstructorInfoSupport
Описывает конструктор Open MBean.
OpenMBeanInfo
Описывает Open MBean: Open MBean распознаётся как таковой, если его метод getMBeanInfo() возвращает экземпляр класса, реализующего интерфейс OpenMBeanInfo, обычно OpenMBeanInfoSupport.
OpenMBeanInfoSupport
Класс OpenMBeanInfoSupport описывает управленческую информацию об Open MBean: он является подклассом MBeanInfo и реализует интерфейс OpenMBeanInfo.
OpenMBeanOperationInfo
Описывает операцию Open MBean.
OpenMBeanOperationInfoSupport
Описывает операцию Open MBean.
OpenMBeanParameterInfo
Описывает параметр, используемый в одной или нескольких операциях либо конструкторах Open MBean.
OpenMBeanParameterInfoSupport
Описывает параметр, используемый в одной или нескольких операциях либо конструкторах Open MBean.
OpenType<T>
Класс OpenType — это родительский абстрактный класс всех классов, описывающих фактический открытый тип значений открытых данных.
SimpleType<T>
Класс SimpleType — это класс открытого типа, экземпляры которого описывают все значения открытых данных, не являющиеся массивами, значениями CompositeData или значениями TabularData.
TabularData
Интерфейс TabularData определяет поведение объектов определённого сложного типа открытых данных, представляющих структуры табличных данных.
TabularDataSupport
Класс TabularDataSupport — это класс открытых данных, реализующий интерфейсы TabularData и Map и использующий внутри структуру данных в виде хеш-таблицы.
TabularType
Класс TabularType — это класс открытого типа, экземпляры которого описывают типы значений TabularData.

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторское право © 1993, 2025, 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.
https://docs.oracle.com/en/java/javase/25/docs/api/java.management/javax/management/openmbean/package-summary.html

Spec-Zone.ru

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