Класс StandardMBean
- Все реализованные интерфейсы:
-
DynamicMBean,MBeanRegistration
- Прямые известные подклассы:
StandardEmitterMBean
public class StandardMBean extends Object implements DynamicMBean, MBeanRegistration
МBean, интерфейс управления которого определяется рефлексией над Java-интерфейсом.
Этот класс вносит больше гибкости в понятие интерфейса управления при использовании стандартных МBean. Прямое использование шаблонов для стандартных МBean, описанных в спецификации JMX, означает, что существует фиксированная связь между реализующим классом МBean и его интерфейсом управления (т.е., если реализующий класс — Thing, интерфейс управления должен быть ThingMBean). Этот класс позволяет сохранить удобство указания интерфейса управления с помощью Java-интерфейса без требования наличия какой-либо связи по именам между реализующим и интерфейсным классами.
Превращая МBean в DynamicMBean, этот класс позволяет выбрать любой интерфейс, реализованный МBean, в качестве его интерфейса управления, при условии соответствия шаблонам JMX (т.е., атрибуты определены методом getter/setter и т. д.).
Этот класс также предоставляет крючки, которые позволяют предоставить пользовательские описания и имена для MBeanInfo, возвращаемого интерфейсом DynamicMBean.
С помощью этого класса МBean можно создать с любым именем реализующего класса Impl и с интерфейсом управления, определённым (как и для текущих стандартных МBean) любым интерфейсом Intf, одним из двух способов:
- Используя публичный конструктор
StandardMBean(impl,interface):MBeanServer mbs; ... Impl impl = new Impl(...); StandardMBean mbean = new StandardMBean(impl, Intf.class, false); mbs.registerMBean(mbean, objectName); - Наследование от StandardMBean:
public class Impl extends StandardMBean implements Intf { public Impl() { super(Intf.class, false); } // implement methods of Intf } [...] MBeanServer mbs; .... Impl impl = new Impl(); mbs.registerMBean(impl, objectName);
В любом случае, класс Impl должен реализовывать интерфейс Intf.
Стандартные МBean, основанные на связи по именам между реализующим и интерфейсным классами, конечно, всё ещё доступны.
Этот класс также может быть использован для создания MXBean. Использование точно такое же, как и для стандартных МBean, за исключением того, что в примерах выше, параметр false для конструктора или вызова super(...) заменяется на true.
- Since:
- 1.5
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Преобразует текущий объект this в DynamicMBean, используя указанный класс mbeanInterface. |
|
protected |
Преобразует текущий объект this в DynamicMBean, используя указанный класс mbeanInterface, и определяя, является ли результирующий МBean MXBean. |
|
| Преобразует объект implementation в DynamicMBean, используя указанный класс mbeanInterface. |
||
| Преобразует объект implementation в DynamicMBean, используя указанный класс mbeanInterface, и определяя, является ли результирующий МBean MXBean. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
protected void |
cacheMBeanInfo |
Метод-крючок: кэширует MBeanInfo, созданный для этого объекта. |
Object |
getAttribute |
Получение значения конкретного атрибута Dynamic MBean. |
AttributeList |
getAttributes |
Получение значений нескольких атрибутов Dynamic MBean. |
protected MBeanInfo |
getCachedMBeanInfo() |
Метод-крючок: возвращает кэшированный MBeanInfo для этого объекта. |
protected String |
getClassName |
Метод-крючок: Получение имени класса, которое будет использоваться в MBeanInfo, возвращаемом этим МBean. |
protected MBeanConstructorInfo[] |
getConstructors |
Метод-крючок: Получение MBeanConstructorInfo[], которое будет использоваться в MBeanInfo, возвращаемом этим МBean. |
protected String |
getDescription |
Метод-крючок: Получение описания, которое будет использоваться в MBeanAttributeInfo, возвращаемом этим МBean. |
protected String |
getDescription |
Метод-крючок: Получение описания, которое будет использоваться в MBeanConstructorInfo, возвращаемом этим МBean. |
protected String |
getDescription |
Метод-крючок: Получение описания, которое будет использоваться для MBeanParameterInfo последовательности sequence в MBeanConstructorInfo, возвращаемом этим МBean. |
protected String |
getDescription |
Метод-крючок: Получение описания, которое будет использоваться в MBeanFeatureInfo, возвращаемом этим МBean. |
protected String |
getDescription |
Метод-крючок: Получение описания, которое будет использоваться в MBeanInfo, возвращаемом этим МBean. |
protected String |
getDescription |
Метод-крючок: Получение описания, которое будет использоваться в MBeanOperationInfo, возвращаемом этим МBean. |
protected String |
getDescription |
Метод-крючок: Получение описания, которое будет использоваться для MBeanParameterInfo последовательности sequence в MBeanOperationInfo, возвращаемом этим МBean. |
protected int |
getImpact |
Метод-крючок: Получение флага impact операции, который будет использоваться в MBeanOperationInfo, возвращаемом этим МBean. |
Object |
getImplementation() |
Получение реализации этого Standard MBean (или MXBean). |
Class<?> |
getImplementationClass() |
Получение класса реализации этого Standard MBean (или MXBean). |
MBeanInfo |
getMBeanInfo() |
Получение MBeanInfo для этого МBean. |
final Class<?> |
getMBeanInterface() |
Получение интерфейса управления этого Standard MBean (или MXBean). |
protected String |
getParameterName |
Метод-крючок: Получение имени, которое будет использоваться для MBeanParameterInfo последовательности sequence в MBeanConstructorInfo, возвращаемом этим МBean. |
protected String |
getParameterName |
Метод-крючок: Получение имени, которое будет использоваться для MBeanParameterInfo последовательности sequence в MBeanOperationInfo, возвращаемом этим МBean. |
Object |
invoke |
Позволяет вызвать действие на Dynamic MBean. |
void |
postDeregister() |
Позволяет МBean выполнить все операции, необходимые после его отмены регистрации в сервере МBean. |
void |
postRegister |
Позволяет МBean выполнить все операции, необходимые после его регистрации в сервере МBean или после неудачи регистрации. |
void |
preDeregister() |
Позволяет МBean выполнить все необходимые операции перед его отзывом из сервера МBean. |
ObjectName |
preRegister |
Позволяет МBean выполнить все необходимые операции перед его регистрацией в сервере МBean. |
void |
setAttribute |
Установка значения конкретного атрибута Dynamic MBean. |
AttributeList |
setAttributes |
Установка значений нескольких атрибутов Dynamic MBean. |
void |
setImplementation |
Замена объекта реализации, обернутого в этот объект. |
Подробное описание конструкторов
StandardMBean
public StandardMBean(T implementation, Class<T> mbeanInterface) throws NotCompliantMBeanException
Создать DynamicMBean из объекта implementation, используя указанный класс mbeanInterface.
- Параметры типа:
-
T- Позволяет компилятору проверить, чтоimplementationдействительно реализует класс, описанный вmbeanInterface. Компилятор может проверить это только еслиmbeanInterfaceявляется литералом класса, напримерMyMBean.class. - Параметры:
-
implementation- Реализация этого MBean. -
mbeanInterface- Интерфейс управления, экспортируемый реализацией этого MBean. Еслиnull, этот объект будет использовать стандартную схему JMX для определения интерфейса управления, связанного с данной реализацией. - Исключения:
-
IllegalArgumentException- если заданный implementation равен null. -
NotCompliantMBeanException- если mbeanInterface не соответствует паттернам проектирования JMX для интерфейсов управления или если заданный implementation не реализует указанный интерфейс.
StandardMBean
protected StandardMBean(Class<?> mbeanInterface) throws NotCompliantMBeanException
Создать DynamicMBean из this, используя указанный класс mbeanInterface.
Вызывает this(this,mbeanInterface). Этот конструктор предназначен для подклассов.
- Параметры:
-
mbeanInterface- Интерфейс управления, экспортируемый этим MBean. - Исключения:
-
NotCompliantMBeanException- если mbeanInterface не соответствует паттернам проектирования JMX для интерфейсов управления или если this не реализует указанный интерфейс.
StandardMBean
public StandardMBean(T implementation, Class<T> mbeanInterface, boolean isMXBean)
Создать DynamicMBean из объекта implementation, используя указанный класс mbeanInterface, и выбрать, является ли получившийся MBean MXBean. Этот конструктор можно использовать для создания как Standard MBean, так и MXBean. В отличие от конструктора StandardMBean(Object, Class), он не выбрасывает исключение NotCompliantMBeanException.
- Параметры типа:
-
T- Позволяет компилятору проверить, чтоimplementationдействительно реализует класс, описанный вmbeanInterface. Компилятор может проверить это только еслиmbeanInterfaceявляется литералом класса, напримерMyMBean.class. - Параметры:
-
implementation- Реализация этого MBean. -
mbeanInterface- Интерфейс управления, экспортируемый реализацией этого MBean. Еслиnull, этот объект будет использовать стандартную схему JMX для определения интерфейса управления, связанного с данной реализацией. -
isMXBean- Если true, параметрmbeanInterfaceобозначает интерфейс MXBean, и получившийся MBean является MXBean. - Исключения:
-
IllegalArgumentException- если заданный implementation равен null, или если mbeanInterface не соответствует паттернам проектирования JMX для интерфейсов управления, или если заданный implementation не реализует указанный интерфейс. - С момента:
- 1.6
StandardMBean
protected StandardMBean(Class<?> mbeanInterface, boolean isMXBean)
Создать DynamicMBean из this, используя указанный класс mbeanInterface, и выбрать, является ли получившийся MBean MXBean. Этот конструктор можно использовать для создания как Standard MBean, так и MXBean. В отличие от конструктора StandardMBean(Object, Class), он не выбрасывает исключение NotCompliantMBeanException.
Вызывает this(this, mbeanInterface, isMXBean). Этот конструктор предназначен для подклассов.
- Параметры:
-
mbeanInterface- Интерфейс управления, экспортируемый этим MBean. -
isMXBean- Если true, параметрmbeanInterfaceобозначает интерфейс MXBean, и получившийся MBean является MXBean. - Исключения:
-
IllegalArgumentException- если mbeanInterface не соответствует паттернам проектирования JMX для интерфейсов управления или если this не реализует указанный интерфейс. - С момента:
- 1.6
Подробное описание методов
setImplementation
public void setImplementation(Object implementation) throws NotCompliantMBeanException
Заменить объект реализации, обернутый в этом объекте.
- Параметры:
-
implementation- Новая реализация этого Standard MBean (или MXBean). Объектimplementationдолжен реализовывать интерфейс Standard MBean (или MXBean), который был предоставлен при создании этогоStandardMBean. - Исключения:
-
IllegalArgumentException- если заданный implementation равен null. -
NotCompliantMBeanException- если заданный implementation не реализует интерфейс Standard MBean (или MXBean), предоставленный при создании. - См. также:
getImplementation
public Object getImplementation()
- Возвращает:
- Реализация этого Standard MBean (или MXBean).
- См. также:
getMBeanInterface
public final Class<?> getMBeanInterface()
- Возвращает:
- Интерфейс управления этого Standard MBean (или MXBean).
getImplementationClass
public Class<?> getImplementationClass()
- Возвращает:
- Класс реализации этого Standard MBean (или MXBean).
getAttribute
public Object getAttribute(String attribute) throws AttributeNotFoundException, MBeanException, ReflectionException
DynamicMBean- Определено в:
-
getAttributeв интерфейсеDynamicMBean - Параметры:
-
attribute- Имя атрибута для извлечения - Возвращает:
- Значение извлечённого атрибута.
- Исключения:
-
AttributeNotFoundException- если указанный атрибут не существует или не может быть извлечён -
MBeanException- Оборачивает исключениеjava.lang.Exceptionброшенное getter'ом MBean. -
ReflectionException- Оборачивает исключениеjava.lang.Exception, брошенное при попытке вызвать getter. - См. также:
setAttribute
public void setAttribute(Attribute attribute) throws AttributeNotFoundException, InvalidAttributeValueException, MBeanException, ReflectionException
DynamicMBean- Определено в:
-
setAttributeв интерфейсеDynamicMBean - Параметры:
-
attribute- Идентификация атрибута для установки и значение, которое ему нужно установить. - Исключения:
-
AttributeNotFoundException- если указанный атрибут не существует или не может быть извлечён -
InvalidAttributeValueException- если указанное значение не является допустимым для атрибута -
MBeanException- Оборачивает исключениеjava.lang.Exceptionброшенное setter'ом MBean. -
ReflectionException- Оборачивает исключениеjava.lang.Exceptionброшенное при попытке вызвать setter. - См. также:
getAttributes
public AttributeList getAttributes(String[] attributes)
DynamicMBean- Определено в:
-
getAttributesв интерфейсеDynamicMBean - Параметры:
-
attributes- Список атрибутов для извлечения. - Возвращает:
- Список извлечённых атрибутов.
- См. также:
setAttributes
public AttributeList setAttributes(AttributeList attributes)
DynamicMBean- Определено в:
-
setAttributesв интерфейсеDynamicMBean - Параметры:
-
attributes- Список атрибутов: Идентификация атрибутов для установки и значения, которые им нужно установить. - Возвращает:
- Список атрибутов, которые были установлены со своими новыми значениями.
- См. также:
вызов
public Object invoke(String actionName, Object[] params, String[] signature) throws MBeanException, ReflectionException
DynamicMBean- Определено в:
-
invokeв интерфейсеDynamicMBean - Параметры:
-
actionName- Имя действия, которое нужно вызвать. -
params- Массив, содержащий параметры, которые нужно установить при вызове действия. -
signature- Массив, содержащий сигнатуру действия. Объекты классов будут загружены через тот же загрузчик классов, что и тот, который использовался для загрузки MBean, на котором вызывается действие. - Возвращает:
- Объект, возвращённый действием, который представляет результат вызова действия на указанном MBean.
- Исключения:
-
MBeanException- Оборачивает исключениеjava.lang.Exceptionброшенное методом вызываемого MBean. -
ReflectionException- Оборачивает исключениеjava.lang.Exception, возникшее при попытке вызвать метод.
getMBeanInfo
public MBeanInfo getMBeanInfo()
MBeanInfo для этого MBean. Этот метод реализует DynamicMBean.getMBeanInfo().
Этот метод сначала вызывает getCachedMBeanInfo() для получения кэшированного MBeanInfo для этого MBean, если таковой имеется. Если MBeanInfo, возвращаемый getCachedMBeanInfo(), не равен null, то он возвращается.
В противном случае этот метод создаёт стандартный MBeanInfo для этого MBean, используя интерфейс управления, указанный для этого MBean.
При построении MBeanInfo этот метод вызывает методы настройки, которые позволяют подклассам предоставлять свои пользовательские описания, имена параметров и т.д...
Наконец, он вызывает cacheMBeanInfo() для кэширования нового MBeanInfo.
- Определено в:
-
getMBeanInfoв интерфейсеDynamicMBean - Возвращает:
- Кэшированный MBeanInfo для этого MBean, если он не равен null, или новый MBeanInfo, если он не был кэширован.
getClassName
protected String getClassName(MBeanInfo info)
Подклассы могут переопределить этот метод для предоставления своего пользовательского имени класса. По умолчанию метод возвращает
info.getClassName().- Параметры:
-
info- Стандартный MBeanInfo, полученный путём рефлексии. - Возвращает:
- Имя класса для нового MBeanInfo.
getDescription
protected String getDescription(MBeanInfo info)
Подклассы могут переопределить этот метод для предоставления своего пользовательского описания MBean. По умолчанию метод возвращает
info.getDescription().- Параметры:
-
info- Стандартный MBeanInfo, полученный путём рефлексии. - Возвращает:
- Описание для нового MBeanInfo.
getDescription
protected String getDescription(MBeanFeatureInfo info)
Метод настройки: получить описание, которое будет использоваться в MBeanFeatureInfo, возвращаемом этим MBean.
Подклассы могут переопределить этот метод, чтобы предоставить своё пользовательское описание. По умолчанию метод возвращает info.getDescription().
Этот метод вызывается getDescription(MBeanAttributeInfo), getDescription(MBeanOperationInfo), getDescription(MBeanConstructorInfo).
- Параметры:
-
info- Стандартный MBeanFeatureInfo, полученный путём рефлексии. - Возвращает:
- Описание для данного MBeanFeatureInfo.
getDescription
protected String getDescription(MBeanAttributeInfo info)
Подклассы могут переопределить этот метод, чтобы предоставить своё пользовательское описание. По умолчанию метод возвращает getDescription((MBeanFeatureInfo) info).
- Параметры:
-
info- Стандартный MBeanAttributeInfo, полученный путём рефлексии. - Возвращает:
- Описание для данного MBeanAttributeInfo.
getDescription
protected String getDescription(MBeanConstructorInfo info)
Подклассы могут переопределить этот метод для предоставления своего пользовательского описания. По умолчанию метод возвращает
getDescription((MBeanFeatureInfo) info).- Параметры:
-
info- Стандартный MBeanConstructorInfo, полученный путём рефлексии. - Возвращает:
- Описание для данного MBeanConstructorInfo.
getDescription
protected String getDescription(MBeanConstructorInfo ctor, MBeanParameterInfo param, int sequence)
Подклассы могут переопределить этот метод для предоставления своего пользовательского описания. По умолчанию метод возвращает
param.getDescription().- Параметры:
-
ctor- Стандартный MBeanConstructorInfo, полученный путём рефлексии. -
param- Стандартный MBeanParameterInfo, полученный путём рефлексии. -
sequence- Номер последовательности параметра ("0" для первого параметра, "1" для второго параметра и т.д.). - Возвращает:
- Описание для данного MBeanParameterInfo.
getParameterName
protected String getParameterName(MBeanConstructorInfo ctor, MBeanParameterInfo param, int sequence)
Подклассы могут переопределить этот метод для предоставления своего пользовательского имени параметра. По умолчанию метод возвращает
param.getName().- Параметры:
-
ctor- Стандартный MBeanConstructorInfo, полученный путём рефлексии. -
param- Стандартный MBeanParameterInfo, полученный путём рефлексии. -
sequence- Номер последовательности параметра ("0" для первого параметра, "1" для второго параметра и т.д.). - Возвращает:
- Имя для данного MBeanParameterInfo.
getDescription
protected String getDescription(MBeanOperationInfo info)
Подклассы могут переопределить этот метод для предоставления своего пользовательского описания. По умолчанию метод возвращает
getDescription((MBeanFeatureInfo) info).- Параметры:
-
info- Стандартный MBeanOperationInfo, полученный путём рефлексии. - Возвращает:
- Описание для данного MBeanOperationInfo.
getImpact
protected int getImpact(MBeanOperationInfo info)
Подклассы могут переопределить этот метод для предоставления своего пользовательского флага воздействия. По умолчанию метод возвращает
info.getImpact().- Параметры:
-
info- Стандартный MBeanOperationInfo, полученный путём рефлексии. - Возвращает:
- Флаг воздействия для данного MBeanOperationInfo.
getParameterName
protected String getParameterName(MBeanOperationInfo op, MBeanParameterInfo param, int sequence)
Подклассы могут переопределить этот метод для предоставления своего пользовательского имени параметра. По умолчанию метод возвращает
param.getName().- Параметры:
-
op- Стандартный MBeanOperationInfo, полученный путём рефлексии. -
param- Стандартный MBeanParameterInfo, полученный путём рефлексии. -
sequence- Номер последовательности параметра ("0" для первого параметра, "1" для второго параметра и т.д.). - Возвращает:
- Имя для данного MBeanParameterInfo.
getDescription
protected String getDescription(MBeanOperationInfo op, MBeanParameterInfo param, int sequence)
Подклассы могут переопределить этот метод для предоставления своего пользовательского описания. По умолчанию метод возвращает
param.getDescription().- Параметры:
-
op- Стандартный MBeanOperationInfo, полученный путём рефлексии. -
param- Стандартный MBeanParameterInfo, полученный путём рефлексии. -
sequence- Номер последовательности параметра ("0" для первого параметра, "1" для второго параметра и т.д.). - Возвращает:
- Описание для данного MBeanParameterInfo.
getConstructors
protected MBeanConstructorInfo[] getConstructors(MBeanConstructorInfo[] ctors, Object impl)
По умолчанию этот метод возвращает
null если обернутая реализация не является this. Действительно, если обернутая реализация не является этим объектом, то невозможно будет воссоздать обернутую реализацию, вызвав конструкторы реализации через MBeanServer.createMBean(...).В противном случае, если обернутая реализация является this, возвращается ctors.
Подклассы могут переопределить этот метод для изменения этого поведения, если это необходимо.
- Parameters:
-
ctors- Значение по умолчанию MBeanConstructorInfo[], полученное с помощью рефлексии. -
impl- Объект обернутой реализации. Еслиnullпередаётся, обернутая реализация игнорируется и возвращается ctors. - Returns:
- массив MBeanConstructorInfo[] для нового объекта MBeanInfo.
getCachedMBeanInfo
protected MBeanInfo getCachedMBeanInfo()
Подклассы могут переопределить этот метод для реализации собственной политики кэширования. По умолчанию реализация хранит один объект MBeanInfo на каждый экземпляр.
- Returns:
- Кэшированный объект MBeanInfo, или null, если объект MBeanInfo не кэширован.
- See Also:
cacheMBeanInfo
protected void cacheMBeanInfo(MBeanInfo info)
Подклассы могут переопределить этот метод для реализации собственной политики кэширования. По умолчанию реализация хранит info в этом экземпляре. Подкласс может определить другие политики, такие как не сохранение info (так что он воссоздаётся каждый раз, когда вызывается getMBeanInfo()) или совместное использование уникального объекта MBeanInfo, когда несколько экземпляров StandardMBean имеют одинаковые значения MBeanInfo.
- Parameters:
-
info- новыйMBeanInfoдля кэширования. Любое ранее кэшированное значение отбрасывается. Этот параметр может быть null, в этом случае нового кэшированного значения нет.
preRegister
public ObjectName preRegister(MBeanServer server, ObjectName name) throws Exception
Позволяет MBean выполнить любые операции, необходимые перед регистрацией в сервере MBean. Если имя MBean не указано, MBean может предоставить имя для регистрации. Если возникает любое исключение, MBean не будет зарегистрирован в сервере MBean.
Реализация по умолчанию этого метода возвращает параметр name. Для стандартных MBean она ничего больше не делает. Для MXBeans, она записывает параметры MBeanServer и ObjectName для того, чтобы их можно было использовать для перевода меж-MXBean ссылок.
Для подклассов, которые переопределяют этот метод, рекомендуется вызывать переопределенный метод через super.preRegister(...). Это необходимо, если этот объект является MXBean, на который ссылаются атрибуты или операции в других MXBeans.
- Specified by:
-
preRegisterin interfaceMBeanRegistration - Parameters:
-
server- Сервер MBean, в котором будет зарегистрирован MBean. -
name- Имя объекта MBean. Это имя null, если параметр name в одном из методовcreateMBeanилиregisterMBeanв интерфейсеMBeanServerявляется null. В этом случае этот метод должен вернуть не null ObjectName для нового MBean. - Returns:
- Имя, под которым MBean должен быть зарегистрирован. Это значение не должно быть null. Если параметр
nameне null, он, как правило, но не обязательно, будет возвращаемым значением. - Throws:
-
IllegalArgumentException- если это MXBean иnameравно null. -
InstanceAlreadyExistsException- если это MXBean и он уже зарегистрирован под другим именем (в этом сервере MBean или другом). -
Exception- не выбрасываются другие обработанные исключения, ноExceptionобъявлено, чтобы подклассы могли переопределить этот метод и сгенерировать свои исключения. - Since:
- 1.6
postRegister
public void postRegister(Boolean registrationDone)
Позволяет MBean выполнить любые операции, необходимые после регистрации в сервере MBean или после неудачной регистрации.
Реализация по умолчанию этого метода ничего не делает для стандартных MBean. Для MXBeans она отменяет любую работу, проделанную методом preRegister, если регистрация завершилась ошибкой.
Для подклассов, которые переопределяют этот метод, рекомендуется вызывать переопределенный метод через super.postRegister(...). Это необходимо, если этот объект является MXBean, на который ссылаются атрибуты или операции в других MXBeans.
- Specified by:
-
postRegisterin interfaceMBeanRegistration - Parameters:
-
registrationDone- Указывает, была ли MBean успешно зарегистрирована в сервере MBean. Значение false означает, что фаза регистрации завершилась неудачно. - Since:
- 1.6
preDeregister
public void preDeregister() throws Exception
Позволяет MBean выполнить любые операции, необходимые перед удалением из сервера MBean.
Реализация по умолчанию этого метода ничего не делает.
Для подклассов, которые переопределяют этот метод, рекомендуется вызывать переопределенный метод через super.preDeregister(...).
- Specified by:
-
preDeregisterin interfaceMBeanRegistration - Throws:
-
Exception- не выбрасываются обработанные исключения, ноExceptionобъявлено, чтобы подклассы могли переопределить этот метод и сгенерировать свои исключения. - Since:
- 1.6
postDeregister
public void postDeregister()
Позволяет MBean выполнить любые операции, необходимые после удаления из сервера MBean.
Реализация по умолчанию этого метода ничего не делает для стандартных MBean. Для MXBeans она удаляет любую информацию, которая была записана методом preRegister.
Для подклассов, которые переопределяют этот метод, рекомендуется вызывать переопределенный метод через super.postRegister(...). Это необходимо, если этот объект является MXBean, на который ссылаются атрибуты или операции в других MXBeans.
- Specified by:
-
postDeregisterin interfaceMBeanRegistration - Since:
- 1.6
© 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/StandardMBean.html