Пакет 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
- См. также:
| Класс | Описание |
|---|---|
| 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. |
© 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