Spec-Zone .ru
спецификации, руководства, описания, API
|
public class MBeanServerFactory extends Object
Обеспечивает ссылки сервера MBean. Нет никаких экземпляров этого класса.
Начиная с JMX 1.2 этих класса позволяют заменить реализацию MBeanServer по умолчанию. Это делается, используя MBeanServerBuilder
класс. Класс начального MBeanServerBuilder, который инстанцируют, может быть определен через javax.management.builder.initial системное свойство. Указанный класс должен быть общедоступным подклассом MBeanServerBuilder
, и должен иметь общедоступного пустого конструктора.
По умолчанию, если никакое значение для того свойства не определяется, экземпляр javax.management.MBeanServerBuilder
создается. Иначе, MBeanServerFactory пытается загрузить указанное использование класса Thread.currentThread().getContextClassLoader()
, или если это - нуль, 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 по умолчанию, с целью например, добавления дополнительного уровня безопасности.
Модификатор и Тип | Метод и Описание |
---|---|
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.
|
public static void releaseMBeanServer(MBeanServer mbeanServer)
mbeanServer
- MBeanServer возражают, чтобы удалить.IllegalArgumentException
- если mbeanServer
не был сгенерирован одним из createMBeanServer
методы, или если releaseMBeanServer
был уже вызван на этом.SecurityException
- если есть SecurityManager, и полномочия вызывающей стороны не включают или подразумевают MBeanServerPermission
("releaseMBeanServer")
.public static MBeanServer createMBeanServer()
Возвратите новый объект, реализовывая интерфейс MBeanServer со стандартным доменным именем по умолчанию. Доменное имя по умолчанию используется в качестве доменной части в ObjectName MBeans, когда домен определяется пользователем, нуль.
Стандартное доменное имя по умолчанию DefaultDomain
.
Ссылка MBeanServer внутренне сохраняется. Это позволит findMBeanServer
возвратить ссылку на этот объект MBeanServer.
Этот метод эквивалентен createMBeanServer(null)
.
SecurityException
- если есть SecurityManager, и полномочия вызывающей стороны не включают или подразумевают MBeanServerPermission
("createMBeanServer")
.JMRuntimeException
- если свойство javax.management.builder.initial
существует, но класс, который это называет, нельзя инстанцировать через общедоступного конструктора без параметров; или если инстанцированный разработчик возвращает нуль из newMBeanServerDelegate
или newMBeanServer
методы.ClassCastException
- если свойство javax.management.builder.initial
существует и может быть инстанцирован, но не присвоение, совместимое с MBeanServerBuilder
.public static MBeanServer createMBeanServer(String domain)
Возвратите новый объект, реализовывая MBeanServer
интерфейс с указанным доменным именем по умолчанию. Данное доменное имя используется в качестве доменной части в ObjectName MBeans, когда домен определяется пользователем, нуль.
Ссылка MBeanServer внутренне сохраняется. Это позволит findMBeanServer
возвратить ссылку на этот объект MBeanServer.
domain
- доменное имя по умолчанию для создаваемого MBeanServer. Это - значение, которое будет возвращено MBeanServer.getDefaultDomain()
.SecurityException
- если есть SecurityManager, и полномочия вызывающей стороны не включают или подразумевают MBeanServerPermission
("createMBeanServer")
.JMRuntimeException
- если свойство javax.management.builder.initial
существует, но класс, который это называет, нельзя инстанцировать через общедоступного конструктора без параметров; или если инстанцированный разработчик возвращает нуль из newMBeanServerDelegate
или newMBeanServer
методы.ClassCastException
- если свойство javax.management.builder.initial
существует и может быть инстанцирован, но не присвоение, совместимое с MBeanServerBuilder
.public static MBeanServer newMBeanServer()
Возвратите новый объект, реализовывая интерфейс MBeanServer со стандартным доменным именем по умолчанию, не сохраняя внутреннюю ссылку на этот новый объект. Доменное имя по умолчанию используется в качестве доменной части в ObjectName MBeans, когда домен определяется пользователем, нуль.
Стандартное доменное имя по умолчанию DefaultDomain
.
Никакая ссылка не сохраняется. findMBeanServer
не будет в состоянии возвратить ссылку на этот объект MBeanServer, но сборщик "мусора" будет в состоянии удалить объект MBeanServer, когда на это больше не сошлются.
Этот метод эквивалентен newMBeanServer(null)
.
SecurityException
- если есть SecurityManager, и полномочия вызывающей стороны не включают или подразумевают MBeanServerPermission
("newMBeanServer")
.JMRuntimeException
- если свойство javax.management.builder.initial
существует, но класс, который это называет, нельзя инстанцировать через общедоступного конструктора без параметров; или если инстанцированный разработчик возвращает нуль из newMBeanServerDelegate
или newMBeanServer
методы.ClassCastException
- если свойство javax.management.builder.initial
существует и может быть инстанцирован, но не присвоение, совместимое с MBeanServerBuilder
.public static MBeanServer newMBeanServer(String domain)
Возвратите новый объект, реализовывая интерфейс MBeanServer с указанным доменным именем по умолчанию, не сохраняя внутреннюю ссылку на этот новый объект. Данное доменное имя используется в качестве доменной части в ObjectName MBeans, когда домен определяется пользователем, нуль.
Никакая ссылка не сохраняется. findMBeanServer
не будет в состоянии возвратить ссылку на этот объект MBeanServer, но сборщик "мусора" будет в состоянии удалить объект MBeanServer, когда на это больше не сошлются.
domain
- доменное имя по умолчанию для создаваемого MBeanServer. Это - значение, которое будет возвращено MBeanServer.getDefaultDomain()
.SecurityException
- если есть SecurityManager, и полномочия вызывающей стороны не включают или подразумевают MBeanServerPermission
("newMBeanServer")
.JMRuntimeException
- если свойство javax.management.builder.initial
существует, но класс, который это называет, нельзя инстанцировать через общедоступного конструктора без параметров; или если инстанцированный разработчик возвращает нуль из newMBeanServerDelegate
или newMBeanServer
методы.ClassCastException
- если свойство javax.management.builder.initial
существует и может быть инстанцирован, но не присвоение, совместимое с MBeanServerBuilder
.public static ArrayList<MBeanServer> findMBeanServer(String agentId)
Возвратите список зарегистрированных объектов MBeanServer. Зарегистрированный объект MBeanServer является тем, который создавался одним из createMBeanServer
методы и не впоследствии выпущенный с releaseMBeanServer
.
agentId
- Идентификатор агента MBeanServer, чтобы получить. Если этот параметр является нулем, все зарегистрировались, MBeanServers в этой JVM возвращаются. Иначе, только MBeanServers, идентификатор которого равен agentId
возвращаются. Идентификатор MBeanServer MBeanServerId
атрибут его делегата MBean.SecurityException
- если есть SecurityManager, и полномочия вызывающей стороны не включают или подразумевают MBeanServerPermission
("findMBeanServer")
.public static ClassLoaderRepository getClassLoaderRepository(MBeanServer server)
server.getClassLoaderRepository()
.server
- MBeanServer при исследовании. Начиная с JMX 1.2, если server
null
, результатом является a NullPointerException
. Это поведение отличается от того, что было реализовано в JMX 1.1 - где возможность использовать null
осуждался.SecurityException
- если есть SecurityManager, и полномочия вызывающей стороны не включают или подразумевают MBeanPermission
("getClassLoaderRepository")
.NullPointerException
- если server
нуль.
Для дальнейшей ссылки API и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.