Интерфейс MBeanRegistration
- Все известные реализующие классы:
CounterMonitor, GaugeMonitor, JMXConnectorServer, Monitor, RelationService, RelationSupport, RequiredModelMBean, RMIConnectorServer, StandardEmitterMBean, StandardMBean, StringMonitor, Timer
public interface MBeanRegistration
Может быть реализован MBean для выполнения операций до и после регистрации или отмены регистрации на сервере MBean. MBean также может реализовать этот интерфейс, чтобы получить ссылку на сервер MBean и/или свое имя на этом сервере MBean.
- С версии:
- 1.5
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
postDeregister() |
Позволяет MBean выполнить все необходимые операции после отмены регистрации на сервере MBean. |
void |
postRegister |
Позволяет MBean выполнить все необходимые операции после регистрации на сервере MBean или после сбоя регистрации. |
void |
preDeregister() |
Позволяет MBean выполнить все необходимые операции перед отменой регистрации сервером MBean. |
ObjectName |
preRegister |
Позволяет MBean выполнить все необходимые операции перед регистрацией на сервере MBean. |
Подробное описание методов
preRegister
ObjectName preRegister(MBeanServer server, ObjectName name) throws Exception
- Параметры:
-
server— сервер MBean, на котором будет зарегистрирован MBean. -
name— имя объекта MBean. Это имя равно null, если параметр name одного из методовcreateMBeanилиregisterMBeanинтерфейсаMBeanServerравен null. В этом случае данный метод должен вернуть ненулевое значение ObjectName для нового MBean. - Возвращает:
- Имя, под которым должен быть зарегистрирован MBean. Это значение не должно быть null. Если параметр
nameне равен null, обычно, но не обязательно, возвращается именно это значение. - Выбрасывает:
-
Exception— это исключение будет перехвачено сервером MBean и повторно выброшено какMBeanRegistrationException.
postRegister
void postRegister(Boolean registrationDone)
Если реализация этого метода выбрасывает RuntimeException или Error, сервер MBean повторно выбросит их внутри RuntimeMBeanException или RuntimeErrorException соответственно. Однако выбрасывание исключения в postRegister не изменит состояние MBean: если MBean уже был зарегистрирован (registrationDone равно true), он останется зарегистрированным.
Это может сбить с толку код, вызывающий createMBean() или registerMBean(), поскольку такой код может предположить, что регистрация MBean завершилась неудачно, если возникло исключение. Поэтому рекомендуется, чтобы реализации postRegister по возможности не выбрасывали исключения RuntimeException или ошибки.
- Параметры:
-
registrationDone— указывает, был ли MBean успешно зарегистрирован на сервере MBean. Значение false означает, что этап регистрации завершился неудачно.
preDeregister
void preDeregister() throws Exception
- Выбрасывает:
-
Exception— это исключение будет перехвачено сервером MBean и повторно выброшено какMBeanRegistrationException.
postDeregister
void postDeregister()
Если реализация этого метода выбрасывает RuntimeException или Error, сервер MBean повторно выбросит их внутри RuntimeMBeanException или RuntimeErrorException соответственно. Однако выбрасывание исключения в postDeregister не изменит состояние MBean: регистрация MBean уже была успешно отменена и останется отмененной.
Это может сбить с толку код, вызывающий unregisterMBean(), поскольку он может предположить, что отмена регистрации MBean завершилась неудачно. Поэтому рекомендуется, чтобы реализации postDeregister по возможности не выбрасывали исключения RuntimeException или ошибки.
© 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/MBeanRegistration.html