Интерфейс MBeanRegistration
- Все известные реализующие классы:
-
CounterMonitor,GaugeMonitor,JMXConnectorServer,MLet,Monitor,PrivateMLet,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. В этом случае этот метод должен вернуть не 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), MBean останется зарегистрированным.
Это может быть запутанным для кода, вызывающего createMBean() или registerMBean(), так как такой код может предположить, что регистрация MBean завершилась ошибкой, когда возникает такое исключение. Поэтому рекомендуется, чтобы реализации postRegister не выбрасывали исключения Runtime или ошибки, если этого можно избежать.
- Параметры:
-
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 не выбрасывали исключения Runtime или ошибки, если этого можно избежать.
© 1993, 2021, 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/17/docs/api/java.management/javax/management/MBeanRegistration.html