|
Spec-Zone .ru
спецификации, руководства, описания, API
|
public class JMXConnectorServerFactory extends Object
Фабрика, чтобы создать серверы соединителя API JMX. Нет никаких экземпляров этого class.
Каждый сервер соединителя создается экземпляром JMXConnectorServerProvider. Этот экземпляр находится следующим образом. Предположите данный JMXServiceURL похож "service:jmx:protocol:remainder". Затем фабрика попытается найти соответствующее JMXConnectorServerProvider для protocol. Каждое возникновение символа + или - в protocol заменяется . или _, соответственно.
Список пакета провайдера разыскивается следующим образом:
environment параметр к newJMXConnectorServer содержит ключ jmx.remote.protocol.provider.pkgs тогда присваиваемое значение является списком пакета провайдера. jmx.remote.protocol.provider.pkgs существует, тогда его значение является списком пакета провайдера. Список пакета провайдера является строкой, которая интерпретируется как список непустых имен пакета Java, разделенных вертикальными панелями (|). Если строка пуста, то так список пакета провайдера. Если списком пакета провайдера не является Строка, или если он содержит элемент, который является пустой строкой, a JMXProviderException бросается.
Если список пакета провайдера существует и не пуст, то для каждого элемента pkg из списка фабрика попытается загрузить class
pkg.protocol.ServerProvider
Если environment параметр к newJMXConnectorServer содержит ключ jmx.remote.protocol.provider.class.loader тогда присваиваемое значение является загрузчиком class, чтобы использовать, чтобы загрузить провайдера. Если присваиваемое значение не является экземпляром ClassLoader, IllegalArgumentException бросается.
Если jmx.remote.protocol.provider.class.loader ключ не присутствует в environment параметр, контекст вызывающего потока загрузчик class используется.
Если попытка загрузить этот class производит a ClassNotFoundException, поиск обработчика продолжается со следующим элементом списка.
Иначе, проблема с найденным провайдером сообщается a JMXProviderException чей cause указывает на базовое исключение, следующим образом:
ClassNotFoundException, это - причина; Class.newInstance() поскольку class производит исключение, которое является причиной. Если никакой провайдер не будет найден вышеупомянутыми шагами, включая случай значения по умолчанию, где нет никакого списка пакета провайдера, то реализация будет использовать своего собственного провайдера для protocol, или это бросит a MalformedURLException если нет ни одного. Реализация может хотеть находить провайдеров другими средствами. Например, это может поддерживать соглашения JAR для поставщиков услуг, где интерфейс службы JMXConnectorServerProvider.
Каждая реализация должна поддерживать протокол соединителя RMI со значением по умолчанию транспорт RMI, определенный со строкой rmi. Реализация может дополнительно поддерживать протокол соединителя RMI с транспортом RMI/IIOP, определенным со строкой iiop.
Как только провайдер находится, результат newJMXConnectorServer метод является результатом вызова newJMXConnectorServer на провайдере.
Map параметр, который передают к JMXConnectorServerProvider новое только для чтения Map это содержит все записи, которые были в environment параметр к JMXConnectorServerFactory.newJMXConnectorServer, если был тот. Дополнительно, если jmx.remote.protocol.provider.class.loader ключ не присутствует в environment параметр, это добавляется к новому только для чтения Map. Присваиваемое значение является контекстом вызывающего потока загрузчик class.
| Модификатор и Тип | Поле и Описание |
|---|---|
static String |
DEFAULT_CLASS_LOADER
Имя атрибута, который определяет значение по умолчанию загрузчик class.
|
static String |
DEFAULT_CLASS_LOADER_NAME
Имя атрибута, который определяет значение по умолчанию загрузчик class имя MBean.
|
static String |
PROTOCOL_PROVIDER_CLASS_LOADER
Имя атрибута, который определяет загрузчик class для того, чтобы загрузить провайдеров протокола.
|
static String |
PROTOCOL_PROVIDER_PACKAGES
Имя атрибута, который определяет пакеты провайдера, с которыми консультируются, ища обработчик для протокола.
|
| Модификатор и Тип | Метод и Описание |
|---|---|
static JMXConnectorServer |
newJMXConnectorServer(JMXServiceURL serviceURL, Map<String,?> environment, MBeanServer mbeanServer)
Создает сервер соединителя в данном адресе.
|
public static final String DEFAULT_CLASS_LOADER
Имя атрибута, который определяет значение по умолчанию загрузчик class. Этот загрузчик class используется, чтобы десериализовать объекты в запросах, полученных от клиента, возможно после консультации с MBean-специфичным загрузчиком class. Значение, связанное с этим атрибутом, является экземпляром ClassLoader.
public static final String DEFAULT_CLASS_LOADER_NAME
Имя атрибута, который определяет значение по умолчанию загрузчик class имя MBean. Этот загрузчик class используется, чтобы десериализовать объекты в запросах, полученных от клиента, возможно после консультации с MBean-специфичным загрузчиком class. Значение, связанное с этим атрибутом, является экземпляром ObjectName.
public static final String PROTOCOL_PROVIDER_PACKAGES
Имя атрибута, который определяет пакеты провайдера, с которыми консультируются, ища обработчик для протокола. Значение, связанное с этим атрибутом, является строкой с именами пакета, разделенными вертикальными панелями (|).
public static final String PROTOCOL_PROVIDER_CLASS_LOADER
Имя атрибута, который определяет загрузчик class для того, чтобы загрузить провайдеров протокола. Значение, связанное с этим атрибутом, является экземпляром ClassLoader.
public static JMXConnectorServer newJMXConnectorServer(JMXServiceURL serviceURL, Map<String,?> environment, MBeanServer mbeanServer) throws IOException
Создает сервер соединителя в данном адресе. Результирующий сервер не запускается до start метод вызывают.
serviceURL - адрес нового сервера соединителя. Исполнительный адрес нового сервера соединителя, как возвращено getAddress метод, не обязательно будет точно то же самое. Например, это могло бы включать номер порта, если бы исходный адрес не сделал.environment - ряд атрибутов, чтобы управлять новым поведением сервера соединителя. Этот параметр может быть нулем. Ключи в этой карте должны быть Строками. Соответствующий тип каждого присваиваемого значения зависит от атрибута. Содержание environment не изменяются этим вызовом.mbeanServer - сервер MBean, к которому присоединен этот сервер соединителя. Нуль, если этот сервер соединителя будет присоединен к серверу MBean, будучи зарегистрированным в этом.JMXConnectorServer представление нового сервера соединителя. Каждый успешный вызов к этому методу производит различный объект.NullPointerException - если serviceURL нуль.IOException - если сервер соединителя не может быть сделан из-за проблемы коммуникации.MalformedURLException - если нет никакого провайдера для протокола в serviceURL.JMXProviderException - если есть провайдер для протокола в serviceURL но это не может использоваться по некоторым причинам.
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92