Spec-Zone.ru › OpenJDK 21

Интерфейс 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(Boolean registrationDone)
Позволяет MBean выполнить все необходимые операции после регистрации в сервере MBean или после неудачной регистрации.
void preDeregister()
Позволяет MBean выполнить все необходимые операции перед отменой регистрации сервером MBean.
ObjectName preRegister(MBeanServer server, ObjectName name)
Позволяет MBean выполнить все необходимые операции перед регистрацией в сервере MBean.

Подробное описание методов

preRegister

ObjectName preRegister(MBeanServer server, ObjectName name) throws Exception
Позволяет MBean выполнить все необходимые операции перед регистрацией в сервере MBean. Если имя MBean не указано, MBean может указать имя для его регистрации. Если возникает какое-либо исключение, MBean не будет зарегистрирован в сервере MBean.
Параметры:
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)
Позволяет MBean выполнить необходимые операции после регистрации в сервере MBean или после неудачной регистрации.

Если реализация этого метода выбрасывает 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
Позволяет MBean выполнить все необходимые операции перед отменой регистрации сервером MBean.
Выбрасывает:
Exception - Это исключение будет перехвачено сервером MBean и повторно выброшено как MBeanRegistrationException.

postDeregister

void postDeregister()
Позволяет MBean выполнить необходимые операции после отмены регистрации в сервере MBean.

Если реализация этого метода выбрасывает RuntimeException или Error, сервер MBean повторно выбросит их внутри RuntimeMBeanException или RuntimeErrorException соответственно. Однако, выбрасывание исключения в postDeregister не изменит состояние MBean: MBean был успешно дезактивирован и останется таким.

Это может быть непонятным для кода, вызывающего unregisterMBean(), так как он может предположить, что деактивация MBean завершилась неудачей. Поэтому рекомендуется, чтобы реализации postDeregister не выбрасывали исключения Runtime или ошибки, если это возможно избежать.

© 1993, 2023, 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/21/docs/api/java.management/javax/management/MBeanRegistration.html

Spec-Zone.ru

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