Spec-Zone.ru › OpenJDK 17

Класс MBeanServerFactory

java.lang.Object
javax.management.MBeanServerFactory
public class MBeanServerFactory extends Object

Предоставляет ссылки на серверы MBean. Экземпляров этого класса нет.

Начиная с JMX 1.2, этот класс позволяет заменить стандартную реализацию MBeanServer. Это делается с помощью класса MBeanServerBuilder. Класс начального MBeanServerBuilder для создания можно указать через системную переменную javax.management.builder.initial. Указанный класс должен быть публичным подклассом MBeanServerBuilder и должен иметь публичный конструктор без параметров.

По умолчанию, если для этой переменной не указано значение, создается экземпляр javax.management.MBeanServerBuilder. В противном случае, MBeanServerFactory пытается загрузить указанный класс, используя Thread.currentThread().getContextClassLoader(), или, если он равен null, Class.forName(). Затем он создает начальный экземпляр этого класса, используя Class.newInstance(). Если во время этого процесса возникает какое-либо исключение (например, ClassNotFoundException, InstantiationException), MBeanServerFactory будет распространять это исключение как RuntimeException.

Системная переменная javax.management.builder.initial проверяется каждый раз, когда требуется создать новый MBeanServer, и загружается класс, на который указывает эта переменная. Если этот класс отличается от класса текущего MBeanServerBuilder, то создается новый MBeanServerBuilder. В противном случае MBeanServerFactory может создать новый MBeanServerBuilder или повторно использовать текущий.

Если класс, на который указывает переменная, не может быть загружен или не соответствует допустимому подклассу MBeanServerBuilder, то исключение распространяется, и MBeanServer не может быть создан до тех пор, пока системная переменная javax.management.builder.initial не будет установлена на корректное значение.

MBeanServerBuilder позволяет оборачивать MBeanServers, возвращаемые реализацией MBeanServerBuilder по умолчанию, например, для добавления дополнительного уровня безопасности.

С:
1.5

Краткое описание методов

Модификатор и тип Метод Описание
static MBeanServer createMBeanServer()
Возвращает новый объект, реализующий интерфейс MBeanServer со стандартным именем домена по умолчанию.
static MBeanServer createMBeanServer(String domain)
Возвращает новый объект, реализующий интерфейс MBeanServer с указанным именем домена по умолчанию.
static ArrayList<MBeanServer> findMBeanServer(String agentId)
Возвращает список зарегистрированных объектов MBeanServer.
static ClassLoaderRepository getClassLoaderRepository(MBeanServer server)
Возвращает ClassLoaderRepository, используемый данным MBeanServer.
static MBeanServer newMBeanServer()
Возвращает новый объект, реализующий интерфейс MBeanServer со стандартным именем домена по умолчанию, без хранения внутренней ссылки на этот новый объект.
static MBeanServer newMBeanServer(String domain)
Возвращает новый объект, реализующий интерфейс MBeanServer с указанным именем домена по умолчанию, без хранения внутренней ссылки на этот новый объект.
static void releaseMBeanServer(MBeanServer mbeanServer)
Удаляет внутренние ссылки MBeanServerFactory на созданный MBeanServer.

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

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

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

releaseMBeanServer

public static void releaseMBeanServer(MBeanServer mbeanServer)
Удалить внутренние ссылки MBeanServerFactory на созданный MBeanServer. Это позволит сборщику мусора удалить объект MBeanServer.
Параметры:
mbeanServer - объект MBeanServer, который нужно удалить.
Исключения:
IllegalArgumentException - если mbeanServer не был сгенерирован одним из методов createMBeanServer, или если метод releaseMBeanServer уже был вызван для него.
SecurityException - если существует SecurityManager и разрешения вызывающего не включают или не подразумевают MBeanServerPermission("releaseMBeanServer").

createMBeanServer

public static MBeanServer createMBeanServer()

Возвращает новый объект, реализующий интерфейс MBeanServer с стандартным именем домена по умолчанию. Имя домена по умолчанию используется в качестве части имени объекта MBean, когда имя домена, заданное пользователем, равно null.

Стандартное имя домена по умолчанию — DefaultDomain.

Ссылка на MBeanServer сохраняется во внутренней области. Это позволит findMBeanServer вернуть ссылку на этот объект MBeanServer.

Этот метод эквивалентен createMBeanServer(null).

Возвращаемое значение:
созданный MBeanServer.
Исключения:
SecurityException - если существует SecurityManager и разрешения вызывающего не включают или не подразумевают MBeanServerPermission("createMBeanServer").
JMRuntimeException - если свойство javax.management.builder.initial существует, но класс, который оно задает, не может быть создан с помощью публичного конструктора без аргументов; или если созданный билдер возвращает null из своих методов newMBeanServerDelegate или newMBeanServer.
ClassCastException - если свойство javax.management.builder.initial существует и может быть создан, но не совместим по присваиванию с MBeanServerBuilder.

createMBeanServer

public static MBeanServer createMBeanServer(String domain)

Возвращает новый объект, реализующий интерфейс MBeanServer с заданным именем домена по умолчанию. Заданное имя домена используется в качестве части имени объекта MBean, когда имя домена, заданное пользователем, равно null.

Ссылка на MBeanServer сохраняется во внутренней области. Это позволит findMBeanServer вернуть ссылку на этот объект MBeanServer.

Параметры:
domain - имя домена по умолчанию для создаваемого MBeanServer. Это значение, которое будет возвращено методом MBeanServer.getDefaultDomain().
Возвращаемое значение:
созданный MBeanServer.
Исключения:
SecurityException - если существует SecurityManager и разрешения вызывающего не включают или не подразумевают MBeanServerPermission("createMBeanServer").
JMRuntimeException - если свойство javax.management.builder.initial существует, но класс, который оно задает, не может быть создан с помощью публичного конструктора без аргументов; или если созданный билдер возвращает null из своих методов newMBeanServerDelegate или newMBeanServer.
ClassCastException - если свойство javax.management.builder.initial существует и может быть создан, но не совместим по присваиванию с MBeanServerBuilder.

newMBeanServer

public static MBeanServer newMBeanServer()

Возвращает новый объект, реализующий интерфейс MBeanServer со стандартным именем домена по умолчанию, не сохраняя ссылку на этот новый объект во внутренней области. Имя домена по умолчанию используется в качестве части имени объекта MBean, когда имя домена, заданное пользователем, равно null.

Стандартное имя домена по умолчанию — DefaultDomain.

Ссылка не сохраняется. findMBeanServer не сможет вернуть ссылку на этот объект MBeanServer, но сборщик мусора сможет удалить объект MBeanServer, когда на него больше не будет ссылок.

Этот метод эквивалентен newMBeanServer(null).

Возвращаемое значение:
созданный MBeanServer.
Исключения:
SecurityException - если существует SecurityManager и разрешения вызывающего не включают или не подразумевают MBeanServerPermission("newMBeanServer").
JMRuntimeException - если свойство javax.management.builder.initial существует, но класс, который оно задает, не может быть создан с помощью публичного конструктора без аргументов; или если созданный билдер возвращает null из своих методов newMBeanServerDelegate или newMBeanServer.
ClassCastException - если свойство javax.management.builder.initial существует и может быть создан, но не совместим по присваиванию с MBeanServerBuilder.

newMBeanServer

public static MBeanServer newMBeanServer(String domain)

Возвращает новый объект, реализующий интерфейс MBeanServer с заданным именем домена по умолчанию, не сохраняя ссылку на этот новый объект во внутренней области. Заданное имя домена используется в качестве части имени объекта MBean, когда имя домена, заданное пользователем, равно null.

Ссылка не сохраняется. findMBeanServer не сможет вернуть ссылку на этот объект MBeanServer, но сборщик мусора сможет удалить объект MBeanServer, когда на него больше не будет ссылок.

Параметры:
domain - имя домена по умолчанию для создаваемого MBeanServer. Это значение, которое будет возвращено методом MBeanServer.getDefaultDomain().
Возвращаемое значение:
созданный MBeanServer.
Исключения:
SecurityException - если существует SecurityManager и разрешения вызывающего не включают или не подразумевают MBeanServerPermission("newMBeanServer").
JMRuntimeException - если свойство javax.management.builder.initial существует, но класс, который оно задает, не может быть создан с помощью публичного конструктора без аргументов; или если созданный билдер возвращает null из своих методов newMBeanServerDelegate или newMBeanServer.
ClassCastException - если свойство javax.management.builder.initial существует и может быть создан, но не совместим по присваиванию с MBeanServerBuilder.

findMBeanServer

public static ArrayList<MBeanServer> findMBeanServer(String agentId)

Возвращает список зарегистрированных объектов MBeanServer. Зарегистрированный объект MBeanServer — это объект, созданный одним из методов createMBeanServer и не освобожденный позже методом releaseMBeanServer.

Параметры:
agentId - идентификатор агента MBeanServer для извлечения. Если этот параметр равен null, возвращаются все зарегистрированные MBeanServer в данной JVM. В противном случае возвращаются только MBeanServer, идентификатор которых равен agentId. Идентификатор MBeanServer — это атрибут MBeanServerId его делегированного MBean.
Возвращаемое значение:
Список объектов MBeanServer.
Исключения:
SecurityException - если существует SecurityManager и разрешения вызывающего не включают или не подразумевают MBeanServerPermission("findMBeanServer").

getClassLoaderRepository

public static ClassLoaderRepository getClassLoaderRepository(MBeanServer server)
Возвращает ClassLoaderRepository, используемый данным MBeanServer. Этот метод эквивалентен server.getClassLoaderRepository().
Параметры:
server - анализируемый MBeanServer. Начиная с JMX 1.2, если server равен null, результатом является NullPointerException. Это поведение отличается от того, что было реализовано в JMX 1.1, где возможность использования null была устаревшей.
Возвращаемое значение:
Класс загрузки, используемый данным MBeanServer.
Исключения:
SecurityException - если существует SecurityManager и разрешения вызывающего не включают или не подразумевают MBeanPermission("getClassLoaderRepository").
NullPointerException - если server равен null.

© 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/MBeanServerFactory.html

Spec-Zone.ru

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