- All Implemented Interfaces:
- Serializable
public class JMXServiceURL extends Object implements Serializable
The address of a JMX API connector server. Instances of this class are immutable.
The address is an Abstract Service URL for SLP, as defined in RFC 2609 and amended by RFC 3111. It must look like this:
 service:jmx:protocol:sap
 
 Here, protocol is the transport
 protocol to be used to connect to the connector server.  It is
 a string of one or more ASCII characters, each of which is a
 letter, a digit, or one of the characters + or
 -.  The first character must be a letter.
 Uppercase letters are converted into lowercase ones.
sap is the address at which the connector
 server is found.  This address uses a subset of the syntax defined
 by RFC 2609 for IP-based protocols.  It is a subset because the
 user@host syntax is not supported.
The other syntaxes defined by RFC 2609 are not currently supported by this class.
The supported syntax is:
 //[host[:port]][url-path]
 
 Square brackets [] indicate optional parts of
 the address.  Not all protocols will recognize all optional
 parts.
The host is a host name, an IPv4 numeric
 host address, or an IPv6 numeric address enclosed in square
 brackets.
The port is a decimal port number.  0
 means a default or anonymous port, depending on the protocol.
The host and port
 can be omitted.  The port cannot be supplied
 without a host.
The url-path, if any, begins with a slash
 (/) or a semicolon (;) and continues to
 the end of the address.  It can contain attributes using the
 semicolon syntax specified in RFC 2609.  Those attributes are not
 parsed by this class and incorrect attribute syntax is not
 detected.
Although it is legal according to RFC 2609 to have a
 url-path that begins with a semicolon, not
 all implementations of SLP allow it, so it is recommended to avoid
 that syntax.
Case is not significant in the initial
 service:jmx:protocol string or in the host
 part of the address.  Depending on the protocol, case can be
 significant in the url-path.
- 
Constructor SummaryConstructors Constructor Description JMXServiceURL(String serviceURL)Constructs aJMXServiceURLby parsing a Service URL string.JMXServiceURL(String protocol, String host, int port)Constructs aJMXServiceURLwith the given protocol, host, and port.JMXServiceURL(String protocol, String host, int port, String urlPath)Constructs aJMXServiceURLwith the given parts.
- 
Method SummaryModifier and Type Method Description booleanequals(Object obj)Indicates whether some other object is equal to this one.StringgetHost()The host part of the Service URL.intgetPort()The port of the Service URL.StringgetProtocol()The protocol part of the Service URL.StringgetURLPath()The URL Path part of the Service URL.StringtoString()The string representation of this Service URL.
- 
Constructor Details- 
JMXServiceURLConstructs a JMXServiceURLby parsing a Service URL string.- Parameters:
- serviceURL- the URL string to be parsed.
- Throws:
- NullPointerException- if- serviceURLis null.
- MalformedURLException- if- serviceURLdoes not conform to the syntax for an Abstract Service URL or if it is not a valid name for a JMX Remote API service. A- JMXServiceURLmust begin with the string- "service:jmx:"(case-insensitive). It must not contain any characters that are not printable ASCII characters.
 
- 
JMXServiceURLConstructs a JMXServiceURLwith the given protocol, host, and port. This constructor is equivalent toJMXServiceURL(protocol, host, port, null).- Parameters:
- protocol- the protocol part of the URL. If null, defaults to- jmxmp.
- host- the host part of the URL. If host is null and if local host name can be resolved to an IP, then host defaults to local host name as determined by- InetAddress.getLocalHost().getHostName(). If host is null and if local host name cannot be resolved to an IP, then host defaults to numeric IP address of one of the active network interfaces. If host is a numeric IPv6 address, it can optionally be enclosed in square brackets- [].
- port- the port part of the URL.
- Throws:
- MalformedURLException- if one of the parts is syntactically incorrect, or if- hostis null and it is not possible to find the local host name, or if- portis negative.
 
- 
JMXServiceURLpublic JMXServiceURL(String protocol, String host, int port, String urlPath) throws MalformedURLExceptionConstructs a JMXServiceURLwith the given parts.- Parameters:
- protocol- the protocol part of the URL. If null, defaults to- jmxmp.
- host- the host part of the URL. If host is null and if local host name can be resolved to an IP, then host defaults to local host name as determined by- InetAddress.getLocalHost().getHostName(). If host is null and if local host name cannot be resolved to an IP, then host defaults to numeric IP address of one of the active network interfaces. If host is a numeric IPv6 address, it can optionally be enclosed in square brackets- [].
- port- the port part of the URL.
- urlPath- the URL path part of the URL. If null, defaults to the empty string.
- Throws:
- MalformedURLException- if one of the parts is syntactically incorrect, or if- hostis null and it is not possible to find the local host name, or if- portis negative.
 
 
- 
- 
Method Details- 
getProtocolThe protocol part of the Service URL. - Returns:
- the protocol part of the Service URL. This is never null.
 
- 
getHostThe host part of the Service URL. If the Service URL was constructed with the constructor that takes a URL string parameter, the result is the substring specifying the host in that URL. If the Service URL was constructed with a constructor that takes a separate host parameter, the result is the string that was specified. If that string was null, the result is InetAddress.getLocalHost().getHostName()if local host name can be resolved to an IP. Else numeric IP address of an active network interface will be used.In either case, if the host was specified using the [...]syntax for numeric IPv6 addresses, the square brackets are not included in the return value here.- Returns:
- the host part of the Service URL. This is never null.
 
- 
getPortpublic int getPort()The port of the Service URL. If no port was specified, the returned value is 0. - Returns:
- the port of the Service URL, or 0 if none.
 
- 
getURLPathThe URL Path part of the Service URL. This is an empty string, or a string beginning with a slash ( /), or a string beginning with a semicolon (;).- Returns:
- the URL Path part of the Service URL. This is never null.
 
- 
toStringThe string representation of this Service URL. If the value returned by this method is supplied to the JMXServiceURLconstructor, the resultant object is equal to this one.The hostpart of the returned string is the value returned bygetHost(). If that value specifies a numeric IPv6 address, it is surrounded by square brackets[].The portpart of the returned string is the value returned bygetPort()in its shortest decimal form. If the value is zero, it is omitted.
- 
equalsIndicates whether some other object is equal to this one. This method returns true if and only if objis an instance ofJMXServiceURLwhosegetProtocol(),getHost(),getPort(), andgetURLPath()methods return the same values as for this object. The values forgetProtocol()andgetHost()can differ in case without affecting equality.- Overrides:
- equalsin class- Object
- Parameters:
- obj- the reference object with which to compare.
- Returns:
- trueif this object is the same as the- objargument;- falseotherwise.
- See Also:
- Object.hashCode(),- HashMap
 
 
-