Пакет javax.management.openmbean
Предоставляет открытые типы данных и классы дескрипторов Open MBean. Open MBean — это MBean, где типы атрибутов и параметров операций и возвращаемых значений строятся с использованием небольшого набора предопределенных классов Java. Open MBeans упрощают работу с программами удалённого управления, которые не обязательно имеют доступ к специфичным для приложения типам, включая программы, не написанные на 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 MBeans атрибуты и параметры могут иметь значения по умолчанию и/или ограничения, связанные с ними в
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.
- Since:
- 1.5
- See Also:
| Класс | Описание |
|---|---|
| ArrayType<T> | Класс ArrayType — это класс открытого типа, экземпляры которого описывают все значения открытых данных, являющиеся n-мерными массивами значений открытых данных. |
| CompositeData | Интерфейс CompositeData определяет поведение конкретного типа сложных объектов открытых данных, которые представляют структуры составных данных. |
| CompositeDataInvocationHandler | Обработчик вызовов InvocationHandler, который перенаправляет методы-геттеры в CompositeData. |
| CompositeDataSupport | Класс CompositeDataSupport — это класс открытых данных, который реализует интерфейс CompositeData. |
| CompositeDataView | Класс Java может реализовать этот интерфейс, чтобы указать, как он должен быть преобразован в CompositeData фреймворком MXBean. |
| CompositeType | Класс CompositeType — это класс открытого типа, экземпляры которого описывают типы значений CompositeData. |
| InvalidKeyException | Это исключение времени выполнения выбрасывается, чтобы указать, что параметр метода, который ожидался как имя элемента составных данных или индекс строки табличных данных, не является допустимым. |
| InvalidOpenTypeException | Это исключение времени выполнения выбрасывается, чтобы указать, что открытый тип значения открытых данных не тот, который ожидался. |
| KeyAlreadyExistsException | Это исключение времени выполнения выбрасывается, чтобы указать, что индекс строки, которая должна быть добавлена в экземпляр табличных данных, уже используется для ссылки на другую строку в этом экземпляре табличных данных. |
| OpenDataException | Это проверяемое исключение выбрасывается, когда экземпляр открытого типа, открытых данных или метаданных Open MBean не может быть создан, потому что не соблюдается одно или несколько ограничений валидации. |
| OpenMBeanAttributeInfo | Описывает атрибут открытого MBean. |
| OpenMBeanAttributeInfoSupport | Описывает атрибут открытого MBean. |
| OpenMBeanConstructorInfo | Описывает конструктор Open MBean. |
| OpenMBeanConstructorInfoSupport | Описывает конструктор Open MBean. |
| OpenMBeanInfo | Описывает Open MBean: Open MBean распознается как таковой, если его метод getMBeanInfo() возвращает экземпляр класса, который реализует интерфейс OpenMBeanInfo, как правило, OpenMBeanInfoSupport. |
| OpenMBeanInfoSupport | Класс OpenMBeanInfoSupport описывает управляющую информацию открытого MBean: он является подклассом MBeanInfo, и он реализует интерфейс OpenMBeanInfo. |
| OpenMBeanOperationInfo | Описывает операцию открытого MBean. |
| OpenMBeanOperationInfoSupport | Описывает операцию открытого MBean. |
| OpenMBeanParameterInfo | Описывает параметр, используемый в одной или нескольких операциях или конструкторах открытого MBean. |
| OpenMBeanParameterInfoSupport | Описывает параметр, используемый в одной или нескольких операциях или конструкторах открытого 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://download.java.net/java/early_access/jdk24/docs/api/java.management/javax/management/openmbean/package-summary.html