Класс JMXServiceURL
- java.lang.Object
-
- javax.management.remote.JMXServiceURL
- Все реализуемые интерфейсы:
- Serializable
public class JMXServiceURL extends Object implements Serializable
Адрес сервера-коннектора API JMX. Экземпляры этого класса неизменяемы.
Адрес представляет собой абстрактный URL-адрес сервиса для SLP, как определено в RFC 2609 и дополнено RFC 3111. Он должен выглядеть так:
service:jmx:protocol:sap
Здесь protocol — транспортный протокол, используемый для подключения к серверу коннектора. Это строка из одного или нескольких ASCII-символов, каждый из которых является буквой, цифрой или одним из символов + или -. Первый символ должен быть буквой. Заглавные буквы преобразуются в строчные.
sap — адрес, по которому находится сервер коннектора. Этот адрес использует подмножество синтаксиса, определённого RFC 2609 для протоколов, основанных на IP. Это подмножество, поскольку синтаксис user@host не поддерживается.
Другие синтаксисы, определенные в RFC 2609, в настоящее время не поддерживаются этим классом.
Поддерживаемый синтаксис:
//[host[:port]][url-path]
Квадратные скобки [] указывают на необязательные части адреса. Не все протоколы распознают все необязательные части.
host — имя хоста, числовой адрес хоста IPv4 или числовой адрес IPv6, заключённый в квадратные скобки.
port — десятичный номер порта. 0 означает порт по умолчанию или анонимный порт, в зависимости от протокола.
host и port могут быть опущены. port не может быть предоставлен без host.
url-path, если таковой имеется, начинается с косой черты (/) или точки с запятой (;) и продолжается до конца адреса. Он может содержать атрибуты, используя синтаксис точки с запятой, указанный в RFC 2609. Эти атрибуты не анализируются этим классом, и некорректный синтаксис атрибутов не обнаруживается.
Хотя согласно RFC 2609 разрешено иметь url-path, начинающееся с точки с запятой, не все реализации SLP позволяют это, поэтому рекомендуется избегать такого синтаксиса.
Регистр в начальной строке service:jmx:protocol или в части хоста адреса не имеет значения. В зависимости от протокола регистр может иметь значение в url-path.
- С тех пор:
- 1.5
- См. также:
-
RFC 2609, "Service Templates and
Service:Schemes", RFC 3111, "Service Location Protocol Modifications for IPv6", Сериализованная форма
Конструкторы
| Конструктор и описание |
|---|
JMXServiceURL(String serviceURL) Конструирует |
JMXServiceURL(String protocol,
String host,
int port) Конструирует |
JMXServiceURL(String protocol,
String host,
int port,
String urlPath) Конструирует |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
boolean |
equals(Object obj) Указывает, равен ли некоторый другой объект этому объекту. |
String |
getHost() Часть хоста URL-адреса сервиса. |
int |
getPort() Порт URL-адреса сервиса. |
String |
getProtocol() Часть протокола URL-адреса сервиса. |
String |
getURLPath() Часть пути URL-адреса сервиса. |
int |
hashCode() Возвращает хэш-код для объекта. |
String |
toString() Строковое представление этого URL-адреса сервиса. |
Методы, унаследованные от класса java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait Конструкторы
JMXServiceURL
public JMXServiceURL(String serviceURL)
throws MalformedURLException Создаёт JMXServiceURL путём парсинга строки URL-адреса сервиса.
- Параметры:
-
serviceURL- строка URL-адреса для парсинга. - Исключения:
-
NullPointerException- еслиserviceURLравно null. -
MalformedURLException- еслиserviceURLне соответствует синтаксису абстрактного URL-адреса сервиса или не является допустимым именем сервиса JMX Remote API. АдресJMXServiceURLдолжен начинаться со строки"service:jmx:"(регистронезависимо). Он не должен содержать символов, не являющихся печатными ASCII-символами.
JMXServiceURL
public JMXServiceURL(String protocol,
String host,
int port)
throws MalformedURLException Создаёт JMXServiceURL с заданным протоколом, хостом и портом. Этот конструктор эквивалентен JMXServiceURL(protocol, host, port, null).
- Параметры:
-
protocol- часть протокола URL-адреса. Если null, по умолчанию используетсяjmxmp. -
host- часть хоста URL-адреса. Если null, по умолчанию используется имя локального хоста, определённоеInetAddress.getLocalHost().getHostName(). Если это числовой IPv6-адрес, он может быть необязательно заключён в квадратные скобки[]. -
port- часть порта URL-адреса. - Исключения:
-
MalformedURLException- если одна из частей имеет неправильный синтаксис, или еслиhostравно null и невозможно найти имя локального хоста, или еслиportотрицательное.
JMXServiceURL
public JMXServiceURL(String protocol,
String host,
int port,
String urlPath)
throws MalformedURLException Создаёт JMXServiceURL с заданными частями.
- Параметры:
-
protocol- часть протокола URL-адреса. Если null, по умолчанию используетсяjmxmp. -
host- часть хоста URL-адреса. Если null, по умолчанию используется имя локального хоста, определённоеInetAddress.getLocalHost().getHostName(). Если это числовой IPv6-адрес, он может быть необязательно заключён в квадратные скобки[]. -
port- часть порта URL-адреса. -
urlPath- часть пути URL-адреса. Если null, по умолчанию используется пустая строка. - Исключения:
-
MalformedURLException- если одна из частей имеет неправильный синтаксис, или еслиhostравно null и невозможно найти имя локального хоста, или еслиportотрицательное.
Методы
getProtocol
public String getProtocol()
Часть протокола URL-адреса сервиса.
- Возвращает:
- часть протокола URL-адреса сервиса. Никогда не равно null.
getHost
public String getHost()
Часть хоста URL-адреса сервиса. Если URL-адрес сервиса был создан с использованием конструктора, принимающего строку URL, результатом является подстрока, определяющая хост в этом URL. Если URL-адрес сервиса был создан с использованием конструктора, принимающего отдельный параметр хоста, результатом является указанная строка. Если эта строка равна null, результатом является InetAddress.getLocalHost().getHostName().
В любом случае, если хост был указан с использованием синтаксиса [...] для числовых IPv6-адресов, квадратные скобки не включаются в возвращаемое значение.
- Возвращает:
- часть хоста URL-адреса сервиса. Никогда не равно null.
getPort
public int getPort()
Порт URL-адреса сервиса. Если порт не был указан, возвращаемое значение равно 0.
- Возвращает:
- порт URL-адреса сервиса или 0, если не указан.
getURLPath
public String getURLPath()
Часть пути URL-адреса сервиса. Это либо пустая строка, либо строка, начинающаяся с косой черты (/), либо строка, начинающаяся с точки с запятой (;).
- Возвращает:
- часть пути URL-адреса сервиса. Никогда не равно null.
toString
public String toString()
Строковое представление этого URL-адреса сервиса. Если значение, возвращаемое этим методом, передано в конструктор JMXServiceURL, полученный объект равен этому.
Часть host возвращаемой строки является значением, возвращаемым методом getHost(). Если это значение определяет числовой IPv6-адрес, оно окружено квадратными скобками [].
Часть port возвращаемой строки является значением, возвращаемым методом getPort() в его кратчайшей десятичной форме. Если значение равно нулю, оно опускается.
- Переопределяет:
-
toStringв классеObject - Возвращает:
- строковое представление этого URL-адреса сервиса.
equals
public boolean equals(Object obj)
Указывает, равен ли другой объект этому. Этот метод возвращает true, если и только если obj является экземпляром JMXServiceURL, методы getProtocol(), getHost(), getPort() и getURLPath() которых возвращают те же значения, что и для этого объекта. Значения для getProtocol() и getHost() могут отличаться регистром без влияния на равенство.
- Переопределяет:
-
equalsв классеObject - Параметры:
-
obj- ссылаемый объект для сравнения. - Возвращает:
-
trueесли этот объект такой же, как аргументobj;falseв противном случае. - См. также:
-
Object.hashCode(),HashMap
hashCode
public int hashCode()
Описание скопировано из класса: Object
Возвращает хеш-код объекта. Этот метод поддерживается для использования в хеш-таблицах, таких как те, что предоставляются HashMap.
Общий контракт метода hashCode:
- Всякий раз, когда он вызывается для одного и того же объекта более одного раза во время выполнения Java-приложения, метод
hashCodeдолжен последовательно возвращать одно и то же целое число, при условии, что информация, используемая в сравненияхequalsобъекта, не изменяется. Это целое число не должно оставаться неизменным от одного выполнения приложения к другому. - Если два объекта равны в соответствии с методом
equals(Object), вызов методаhashCodeдля каждого из этих двух объектов должен давать одинаковый результат. - Необязательно, чтобы, если два объекта не равны в соответствии с методом
Object.equals(java.lang.Object), вызов методаhashCodeдля каждого из этих двух объектов давал разные целые числа. Однако программист должен понимать, что получение различных целых чисел для неравных объектов может улучшить производительность хеш-таблиц.
По возможности, метод hashCode, определённый классом Object, возвращает разные целые числа для разных объектов. (Это обычно реализуется путём преобразования внутреннего адреса объекта в целое число, но этот метод реализации не требуется Java™-языком программирования.)
- Переопределяет:
-
hashCodeв классеObject - Возвращает:
- хеш-код этого объекта.
- См. также:
-
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
© 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.