Spec-Zone.ru › OpenJDK 8

Класс StandardMBean

  • java.lang.Object
    • javax.management.StandardMBean
Все реализованные интерфейсы:
DynamicMBean, MBeanRegistration
Прямые известные подклассы:
StandardEmitterMBean

public class StandardMBean
extends Object
implements DynamicMBean, MBeanRegistration

Объект MBean, чьи интерфейсы управления определяются отражением на интерфейсе Java.

Этот класс добавляет больше гибкости понятию интерфейса управления при использовании стандартных объектов MBean. Прямое использование шаблонов для стандартных объектов MBean, описанных в спецификации JMX, означает, что существует фиксированное соответствие между реализующим классом объекта MBean и его интерфейсом управления (т. е., если реализующий класс — Thing, интерфейс управления должен быть ThingMBean). Этот класс позволяет сохранить удобство указания интерфейса управления с помощью интерфейса Java, не требуя, чтобы между реализующими и интерфейсными классами существовало какое-либо соответствие имён.

Превращая объект MBean в DynamicMBean, этот класс позволяет выбрать любой интерфейс, реализованный объектом MBean, в качестве его интерфейса управления, при условии, что он соответствует шаблонам JMX (т. е., атрибуты определяются через геттеры/сеттеры и т. д.).

Этот класс также предоставляет средства, позволяющие указать пользовательские описания и имена для MBeanInfo, возвращаемые интерфейсом DynamicMBean.

С помощью этого класса объект MBean можно создать с любым именем реализующего класса Impl и с интерфейсом управления, определённым (как и для текущих стандартных объектов MBean) любым интерфейсом 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.

Стандартные объекты MBean, основанные на соответствии имён между реализующими и интерфейсными классами, по-прежнему доступны.

Этот класс также может быть использован для построения MXBean. Использование такое же, как и для стандартных объектов MBean, за исключением того, что в примерах выше параметр false конструктору или вызов super(...) заменяется на true.

С момента:
1.5

Конструкторы

Модификатор Конструктор и описание
protected StandardMBean(Class<?> mbeanInterface)

Создать DynamicMBean из this, используя указанный класс mbeanInterface.

protected StandardMBean(Class<?> mbeanInterface, boolean isMXBean)

Создать DynamicMBean из this, используя указанный класс mbeanInterface, и выбрать, является ли полученный MBean MXBean.

StandardMBean(T implementation, Class<T> mbeanInterface)

Создать DynamicMBean из объекта implementation, используя указанный класс mbeanInterface.

StandardMBean(T implementation, Class<T> mbeanInterface, boolean isMXBean)

Создать DynamicMBean из объекта implementation, используя указанный класс mbeanInterface, и выбрать, является ли полученный MBean MXBean.

Методы

Модификатор и тип Метод и описание
protected void cacheMBeanInfo(MBeanInfo info)

Обработчик настройки: кэширование MBeanInfo, созданного для этого объекта.

Object getAttribute(String attribute)

Получение значения определенного атрибута Dynamic MBean.

AttributeList getAttributes(String[] attributes)

Получение значений нескольких атрибутов Dynamic MBean.

protected MBeanInfo getCachedMBeanInfo()

Обработчик настройки: возвращение кэшированного MBeanInfo для этого объекта.

protected String getClassName(MBeanInfo info)

Обработчик настройки: получение имени класса, которое будет использовано в MBeanInfo, возвращаемом этим MBean.

protected MBeanConstructorInfo[] getConstructors(MBeanConstructorInfo[] ctors, Object impl)

Обработчик настройки: получение MBeanConstructorInfo[], которое будет использовано в MBeanInfo, возвращаемом этим MBean.

protected String getDescription(MBeanAttributeInfo info)

Обработчик настройки: получение описания, которое будет использовано в MBeanAttributeInfo, возвращаемом этим MBean.

protected String getDescription(MBeanConstructorInfo info)

Обработчик настройки: получение описания, которое будет использовано в MBeanConstructorInfo, возвращаемом этим MBean.

protected String getDescription(MBeanConstructorInfo ctor, MBeanParameterInfo param, int sequence)

Обработчик настройки: получение описания, которое будет использовано для sequence MBeanParameterInfo MBeanConstructorInfo, возвращаемого этим MBean.

protected String getDescription(MBeanFeatureInfo info)

Обработчик настройки: получение описания, которое будет использовано в MBeanFeatureInfo, возвращаемом этим MBean.

protected String getDescription(MBeanInfo info)

Обработчик настройки: получение описания, которое будет использовано в MBeanInfo, возвращаемом этим MBean.

protected String getDescription(MBeanOperationInfo info)

Обработчик настройки: получение описания, которое будет использовано в MBeanOperationInfo, возвращаемом этим MBean.

protected String getDescription(MBeanOperationInfo op, MBeanParameterInfo param, int sequence)

Обработчик настройки: получение описания, которое будет использовано для sequence MBeanParameterInfo MBeanOperationInfo, возвращаемого этим MBean.

protected int getImpact(MBeanOperationInfo info)

Обработчик настройки: получение флага impact операции, который будет использован в MBeanOperationInfo, возвращаемом этим MBean.

Object getImplementation()

Получить реализацию этого Standard MBean (или MXBean).

Class<?> getImplementationClass()

Получить класс реализации этого Standard MBean (или MXBean).

MBeanInfo getMBeanInfo()

Получить MBeanInfo для этого MBean.

Class<?> getMBeanInterface()

Получить интерфейс управления для этого Standard MBean (или MXBean).

protected String getParameterName(MBeanConstructorInfo ctor, MBeanParameterInfo param, int sequence)

Дополнительный метод настройки: получить имя, которое будет использовано для последовательности MBeanParameterInfo конструктора MBean, возвращаемого этим MBean.

protected String getParameterName(MBeanOperationInfo op, MBeanParameterInfo param, int sequence)

Дополнительный метод настройки: получить имя, которое будет использовано для последовательности MBeanParameterInfo оператора MBean, возвращаемого этим MBean.

Object invoke(String actionName, Object[] params, String[] signature)

Позволяет вызвать действие на Dynamic MBean.

void postDeregister()

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

void postRegister(Boolean registrationDone)

Позволяет MBean выполнить все необходимые операции после регистрации в сервере MBean или после того, как регистрация завершилась неудачей.

void preDeregister()

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

ObjectName preRegister(MBeanServer server, ObjectName name)

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

void setAttribute(Attribute attribute)

Установить значение определенного атрибута Dynamic MBean.

AttributeList setAttributes(AttributeList attributes)

Устанавливает значения нескольких атрибутов Dynamic MBean.

void setImplementation(Object implementation)

Заменить объект реализации, обернутый в этом объекте.

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Конструкторы

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)

Преобразуйте this в DynamicMBean, используя указанный класс 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 - Новая реализация этого стандартного MBean (или MXBean). Объект implementation должен реализовывать интерфейс стандартного MBean (или MXBean), который был предоставлен при создании этого StandardMBean.
Исключения:
IllegalArgumentException - если переданный implementation равен null.
NotCompliantMBeanException - если переданный implementation не реализует интерфейс стандартного MBean (или MXBean), предоставленный при создании.
См. также:
getImplementation()

getImplementation

public Object getImplementation()

Получить реализацию этого стандартного MBean (или MXBean).

Возвращает:
Реализация этого стандартного MBean (или MXBean).
См. также:
setImplementation(java.lang.Object)

getMBeanInterface

public final Class<?> getMBeanInterface()

Получить интерфейс управления этого стандартного MBean (или MXBean).

Возвращает:
Интерфейс управления этого стандартного MBean (или MXBean).

getImplementationClass

public Class<?> getImplementationClass()

Получить класс реализации этого стандартного MBean (или MXBean).

Возвращает:
Класс реализации этого стандартного MBean (или MXBean).

getAttribute

public Object getAttribute(String attribute)
                    throws AttributeNotFoundException,
                           MBeanException,
                           ReflectionException

Описание скопировано из интерфейса: DynamicMBean

Получить значение определенного атрибута динамического MBean.

Определено в:
getAttribute в интерфейсе DynamicMBean
Параметры:
attribute - Имя атрибута, который нужно получить
Возвращает:
Значение полученного атрибута.
Исключения:
AttributeNotFoundException
MBeanException - Обёртка исключения java.lang.Exception, выброшенного методом-геттером MBean.
ReflectionException - Обёртка исключения java.lang.Exception, выброшенного при попытке вызова геттера.
См. также:
DynamicMBean.setAttribute(javax.management.Attribute)

setAttribute

public void setAttribute(Attribute attribute)
                  throws AttributeNotFoundException,
                         InvalidAttributeValueException,
                         MBeanException,
                         ReflectionException

Описание скопировано из интерфейса: DynamicMBean

Установить значение определенного атрибута динамического MBean.

Указано:
setAttribute в интерфейсе DynamicMBean
Параметры:
attribute - Идентификация атрибута, который нужно установить, и значение, которое нужно установить.
Исключения:
AttributeNotFoundException
InvalidAttributeValueException
MBeanException - Оборачивает java.lang.Exception, брошенный установщиком MBean.
ReflectionException - Оборачивает java.lang.Exception, брошенный при попытке вызвать установщик MBean.
См. также:
DynamicMBean.getAttribute(java.lang.String)

getAttributes

public AttributeList getAttributes(String[] attributes)

Описание скопировано из интерфейса: DynamicMBean

Получение значений нескольких атрибутов динамического MBean.

Указано:
getAttributes в интерфейсе DynamicMBean
Параметры:
attributes - Список атрибутов, которые нужно получить.
Возвращает:
Список полученных атрибутов.
См. также:
DynamicMBean.setAttributes(javax.management.AttributeList)

setAttributes

public AttributeList setAttributes(AttributeList attributes)

Описание скопировано из интерфейса: DynamicMBean

Установка значений нескольких атрибутов динамического MBean.

Указано:
setAttributes в интерфейсе DynamicMBean
Параметры:
attributes - Список атрибутов: идентификация атрибутов, которые нужно установить, и значения, которые нужно установить.
Возвращает:
Список атрибутов, которые были установлены, со своими новыми значениями.
См. также:
DynamicMBean.getAttributes(java.lang.String[])

invoke

public Object invoke(String actionName,
                     Object[] params,
                     String[] signature)
              throws MBeanException,
                     ReflectionException

Описание скопировано из интерфейса: DynamicMBean

Позволяет выполнить действие на динамическом MBean.

Указано в:
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)

Крючок настройки: Получить имя класса, которое будет использоваться в MBeanInfo, возвращаемом данным MBean.
Подклассы могут переопределить этот метод, чтобы предоставить своё пользовательское имя класса. По умолчанию реализация возвращает info.getClassName().

Параметры:
info - MBeanInfo по умолчанию, полученный путём рефлексии.
Возвращает:
имя класса для нового MBeanInfo.

getDescription

protected String getDescription(MBeanInfo info)

Метод-хук настройки: Получить описание, которое будет использовано в MBeanInfo, возвращаемом данным MBean.
Подклассы могут переопределить этот метод для предоставления собственного описания 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)

Метод-хук настройки: Получить описание, которое будет использовано в MBeanAttributeInfo, возвращаемом данным MBean.

Подклассы могут переопределить этот метод для предоставления собственного описания. По умолчанию реализация возвращает getDescription((MBeanFeatureInfo) info).

Параметры:
info - стандартное MBeanAttributeInfo, полученное путём рефлексии.
Возвращает:
описание для данного MBeanAttributeInfo.

getDescription

protected String getDescription(MBeanConstructorInfo info)

Метод-хук настройки: Получить описание, которое будет использовано в MBeanConstructorInfo, возвращаемом данным MBean.
Подклассы могут переопределить этот метод для предоставления собственного описания. По умолчанию реализация возвращает getDescription((MBeanFeatureInfo) info).

Параметры:
info - стандартное MBeanConstructorInfo, полученное путём рефлексии.
Возвращает:
описание для данного MBeanConstructorInfo.

getDescription

protected String getDescription(MBeanConstructorInfo ctor,
                                MBeanParameterInfo param,
                                int sequence)

フックカスタマイズ: この MBean から返される MBeanConstructorInfo の sequence MBeanParameterInfo に使用される説明を取得します。
サブクラスはこのメソッドを再定義して、独自の記述を提供できます。デフォルトの実装は、param.getDescription() を返します。

パラメータ:
ctor - リフレクションによって導き出されたデフォルトの MBeanConstructorInfo。
param - リフレクションによって導き出されたデフォルトの MBeanParameterInfo。
sequence - 考慮されるパラメータのシーケンス番号(最初の引数の場合「0」、2 番目の引数の場合「1」など)。
戻り値:
指定された MBeanParameterInfo の説明。

getParameterName

protected String getParameterName(MBeanConstructorInfo ctor,
                                  MBeanParameterInfo param,
                                  int sequence)

フックカスタマイズ: この MBean から返される MBeanConstructorInfo の sequence MBeanParameterInfo に使用される名前を取得します。
サブクラスはこのメソッドを再定義して、独自の引数名を提供できます。デフォルトの実装は、param.getName() を返します。

パラメータ:
ctor - リフレクションによって導き出されたデフォルトの MBeanConstructorInfo。
param - リフレクションによって導き出されたデフォルトの MBeanParameterInfo。
sequence - 考慮されるパラメータのシーケンス番号(最初の引数の場合「0」、2 番目の引数の場合「1」など)。
戻り値:
指定された MBeanParameterInfo の名前。

getDescription

protected String getDescription(MBeanOperationInfo info)

フックカスタマイズ: この MBean から返される MBeanOperationInfo に使用される説明を取得します。
サブクラスはこのメソッドを再定義して、独自の記述を提供できます。デフォルトの実装は、getDescription((MBeanFeatureInfo) info) を返します。

パラメータ:
info - リフレクションによって導き出されたデフォルトの MBeanOperationInfo。
戻り値:
指定された MBeanOperationInfo の説明。

getImpact

protected int getImpact(MBeanOperationInfo info)

フックカスタマイズ: この MBean から返される MBeanOperationInfo に使用される操作の 影響 フラグを取得します。
サブクラスはこのメソッドを再定義して、独自の影響フラグを提供できます。デフォルトの実装は、info.getImpact() を返します。

Параметры:
info - Значение по умолчанию MBeanOperationInfo, полученное по отражению.
Возвращает:
Флаг влияния для данного MBeanOperationInfo.

getParameterName

protected String getParameterName(MBeanOperationInfo op,
                                  MBeanParameterInfo param,
                                  int sequence)

Метод для настройки: Возвращает имя, которое будет использовано для параметра sequence MBeanParameterInfo объекта MBeanOperationInfo, возвращаемого этим MBean.
Подклассы могут переопределить этот метод для предоставления собственного имени параметра. По умолчанию возвращается param.getName().

Параметры:
op - Значение по умолчанию MBeanOperationInfo, полученное по отражению.
param - Значение по умолчанию MBeanParameterInfo, полученное по отражению.
sequence - Номер последовательности рассматриваемого параметра ("0" для первого параметра, "1" для второго и т. д.).
Возвращает:
Имя для использования с данным MBeanParameterInfo.

getDescription

protected String getDescription(MBeanOperationInfo op,
                                MBeanParameterInfo param,
                                int sequence)

Метод для настройки: Возвращает описание, которое будет использовано для параметра sequence MBeanParameterInfo объекта MBeanOperationInfo, возвращаемого этим MBean.
Подклассы могут переопределить этот метод для предоставления собственного описания. По умолчанию возвращается param.getDescription().

Параметры:
op - Значение по умолчанию MBeanOperationInfo, полученное по отражению.
param - Значение по умолчанию MBeanParameterInfo, полученное по отражению.
sequence - Номер последовательности рассматриваемого параметра ("0" для первого параметра, "1" для второго и т. д.).
Возвращает:
Описание для данного MBeanParameterInfo.

getConstructors

protected MBeanConstructorInfo[] getConstructors(MBeanConstructorInfo[] ctors,
                                                 Object impl)

Метод для настройки: Возвращает массив MBeanConstructorInfo, который будет использоваться в MBeanInfo, возвращаемом этим MBean.
По умолчанию, этот метод возвращает null если обернутая реализация не this. Действительно, если обернутая реализация не сам этот объект, то невозможно будет воссоздать обернутую реализацию, вызвав конструкторы реализации через MBeanServer.createMBean(...).
В противном случае, если обернутая реализация this, возвращается ctors.
Подклассы могут переопределить этот метод для изменения этого поведения, если это необходимо.

Параметры:
ctors - Значение по умолчанию MBeanConstructorInfo[] полученное через рефлексию.
impl - Оборачиваемое (wrapped) реализация. Если null передаётся, оборачиваемая реализация игнорируется и возвращается ctors.
Возвращает:
MBeanConstructorInfo[] для нового MBeanInfo.

getCachedMBeanInfo

protected MBeanInfo getCachedMBeanInfo()

Метод для настройки: Возвращает кэшированный объект MBeanInfo для этого объекта.

Подклассы могут переопределить этот метод, чтобы реализовать собственную политику кэширования. По умолчанию реализация хранит один объект MBeanInfo на экземпляр.

Возвращает:
Кэшированный MBeanInfo, или null, если MBeanInfo не кэширован.
См. также:
cacheMBeanInfo(MBeanInfo)

cacheMBeanInfo

protected void cacheMBeanInfo(MBeanInfo info)

Метод для настройки: Кэширует MBeanInfo, построенный для этого объекта.

Подклассы могут переопределить этот метод, чтобы реализовать собственную политику кэширования. По умолчанию реализация хранит info в этом экземпляре. Подкласс может определить другие политики, например, не сохранять info (так что он будет перестраиваться каждый раз, когда вызывается getMBeanInfo()) или использовать один уникальный объект MBeanInfo для нескольких экземпляров StandardMBean, у которых одинаковые значения MBeanInfo.

Параметры:
info - новый MBeanInfo для кэширования. Любое ранее кэшированное значение удаляется. Этот параметр может быть null, в этом случае нового кэшированного значения нет.

preRegister

public ObjectName preRegister(MBeanServer server,
                              ObjectName name)
                       throws Exception

Позволяет MBean выполнить любые необходимые операции перед регистрацией в сервере MBean. Если имя MBean не указано, MBean может предоставить имя для регистрации. Если возникает какое-либо исключение, MBean не будет зарегистрирован в сервере MBean.

По умолчанию этот метод возвращает параметр name. Он ничего больше не делает для стандартных MBean. Для MXBeans он записывает параметры MBeanServer и ObjectName для использования в переводе ссылок между MXBeans.

Хорошей практикой для подкласса, переопределяющего этот метод, является вызов переопределенного метода через super.preRegister(...). Это необходимо, если этот объект является MXBean, на который ссылаются атрибуты или операции в других MXBeans.

Указано в:
preRegister в интерфейсе MBeanRegistration
Параметры:
server - Сервер MBean, в котором будет зарегистрирован MBean.
name - Имя объекта MBean. Это имя равно null, если параметр name в одном из методов createMBean или registerMBean интерфейса MBeanServer равен null. В этом случае этот метод должен вернуть не null ObjectName для нового MBean.
Возвращает:
Имя, под которым MBean будет зарегистрирован. Это значение не должно быть null. Если параметр name не равен null, то он обычно, но не обязательно, будет возвращаемым значением.
Выбрасывает:
IllegalArgumentException - если это MXBean и name равно null.
InstanceAlreadyExistsException - если это MXBean и оно уже зарегистрировано под другим именем (в этом сервере MBean или другом).
Exception - другие проверяемые исключения не выбрасываются этим методом, но Exception объявлен, чтобы подклассы могли переопределить метод и выбросить свои собственные исключения.
С тех пор:
1.6

postRegister

public void postRegister(Boolean registrationDone)

Позволяет MBean выполнить любые необходимые операции после регистрации в сервере MBean или после того, как регистрация завершилась неудачно.

По умолчанию этот метод ничего не делает для стандартных MBean. Для MXBeans он отменяет любые действия, выполненные методом preRegister, если регистрация завершилась неудачно.

Для подкласса, переопределяющего этот метод, рекомендуется вызывать переопределенный метод через super.postRegister(...). Это необходимо, если этот объект является MXBean, на который ссылаются атрибуты или операции в других MXBeans.

Указано в:
postRegister в интерфейсе MBeanRegistration
Параметры:
registrationDone - Указывает, была ли MBean успешно зарегистрирована в сервере MBean. Значение false означает, что фаза регистрации завершилась неудачно.
С тех пор:
1.6

preDeregister

public void preDeregister()
                   throws Exception

Позволяет MBean выполнить любые необходимые операции перед удалением из сервера MBean.

По умолчанию этот метод ничего не делает.

Для подкласса, переопределяющего этот метод, рекомендуется вызывать переопределенный метод через super.preDeregister(...).

Определено в:
preDeregister в интерфейсе MBeanRegistration
Исключения:
Exception - метод не генерирует проверочных исключений, но Exception объявлен для того, чтобы подклассы могли переопределять этот метод и генерировать свои собственные исключения.
С:
1.6

postDeregister

public void postDeregister()

Позволяет MBean выполнить любые необходимые операции после того, как он был дерегистрирован в сервере MBean.

Стандартная реализация этого метода ничего не делает для стандартных MBean. Для MXBean он удаляет любую информацию, которая была записана методом preRegister.

Для подкласса, переопределяющего этот метод, рекомендуется вызвать переопределенный метод через super.postRegister(...). Это необходимо, если этот объект является MXBean, на который ссылаются атрибуты или операции в других MXBean.

Определено в:
postDeregister в интерфейсе MBeanRegistration
С:
1.6

© 1993, 2020, 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.

Spec-Zone.ru

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