JavaTM Platform
Standard Ed. 6

javax.management.remote
クラス JMXServiceURL

java.lang.Object
  上位を拡張 javax.management.remote.JMXServiceURL
すべての実装されたインタフェース:
Serializable

public class JMXServiceURL
extends Object
implements Serializable

JMX API コネクタサーバーのアドレスです。このクラスのインスタンスは不変です。

RFC 2609 の定義および RFC 3111 での修正に従って、このアドレスが SLP の「抽象サービス URL」になります。 次のような形式になります。

service:jmx:protocol:sap

protocol は、コネクタサーバーに接続するとき使用する転送プロトコルです。1 文字以上の ASCII 文字から成る文字列です。 使用可能な文字は、英字と数字のほか、+- のいずれか 1 つです。最初の文字は英字でなければなりません。英字の大文字は小文字に変換されます。

sap は、コネクタサーバーが検出されたアドレスです。このアドレスは、IP ベースのプロトコルについて定義する RFC 2609 の構文のサブセットを使用します。サブセットを使用する理由は、user@host 構文がサポートされていないからです。

このクラスは、現在、RFC 2609 に定義されているその他の構文はサポートしません。

サポートされている構文は次のとおりです。

//[host[:port]][url-path]

角括弧 [] は、アドレスのオプション部分を示します。プロトコルによって、オプション部分が認識されない場合もあります。

host は、ホスト名、IPv4 数値ホストアドレス、IPv6 数値アドレスのいずれかです。 いずれも角括弧で囲まれた形式になります。

port は 10 進ポート番号です。プロトコルによって、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)
          サービス URL 文字列を解析して JMXServiceURL を作成します。
JMXServiceURL(String protocol, String host, int port)
          指定されたプロトコル、ホスト、およびポートで JMXServiceURL を作成します。
JMXServiceURL(String protocol, String host, int port, String urlPath)
          指定された部分で、JMXServiceURL を作成します。
 
メソッドの概要
 boolean equals(Object obj)
          このオブジェクトと同等のオブジェクトがあるかどうかを示します。
 String getHost()
          サービス URL のホスト部分です。
 int getPort()
          サービス URL のポートです。
 String getProtocol()
          サービス URL のプロトコル部分です。
 String getURLPath()
          サービス URL の URL パス部分です。
 int hashCode()
          オブジェクトのハッシュコード値を返します。
 String toString()
          このサービス URL の文字列表現です。
 
クラス java.lang.Object から継承されたメソッド
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

コンストラクタの詳細

JMXServiceURL

public JMXServiceURL(String serviceURL)
              throws MalformedURLException

サービス URL 文字列を解析して JMXServiceURL を作成します。

パラメータ:
serviceURL - 構文解析される URL 文字列
例外:
NullPointerException - serviceURL が null の場合
MalformedURLException - serviceURL が が抽象サービス URL の構文に準拠していない場合、 または JMX リモート 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 の 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 パス部分です。これは、空文字列、スラッシュ (/) で始まる文字列、またはセミコロン (;) で始まる文字列です。

戻り値:
サービス URL の URL パス部分。null は 不可

toString

public String toString()

このサービス URL の文字列表現です。このメソッドによって返される値が JMXServiceURL コンストラクタに渡される場合、結果として、この文字列表現と同等のオブジェクトが生成されます。

返される文字列の host 部分は、getHost() の戻り値に一致します。この値が IPv6 数値アドレスを指定する場合、角括弧 [] で囲まれた形式になります。

返される文字列の port 部分は、getPort() によって返される一番短い 10 進形式の値です。値が 0 の場合は省略されます。

オーバーライド:
クラス Object 内の toString
戻り値:
このサービス URL の文字列表現

equals

public boolean equals(Object obj)

このオブジェクトと同等のオブジェクトがあるかどうかを示します。このメソッドは、obj が、このオブジェクトと同じ値を返す getProtocol()getHost()getPort()、および getURLPath() メソッドを持つ JMXServiceURL のインスタンスである場合にかぎり、true を返します。getProtocol() および getHost() の値の大文字と小文字は区別されません。 比較対象の参照オブジェクト

オーバーライド:
クラス Object 内の equals
パラメータ:
obj - 比較対象の参照オブジェクト
戻り値:
このオブジェクトが obj 引数で指定したオブジェクトと等しい場合は true、 そうでない場合は false
関連項目:
Object.hashCode(), Hashtable

hashCode

public int hashCode()
クラス Object の記述:
オブジェクトのハッシュコード値を返します。このメソッドは、java.util.Hashtable によって提供されるようなハッシュテーブルで使用するために用意されています。  

hashCode メソッドの一般的な規則を次に示します。

  • Java アプリケーションの実行中に同じオブジェクト上で複数回呼び出される場合は必ず、このオブジェクトに対する equals による比較で使われた情報が変更されていなければ、hashCode メソッドは同じ整数を一貫して返さなければならない。ただし、この整数は同じアプリケーションの実行ごとに同じである必要はない
  • equals(Object) メソッドで 2 つのオブジェクトが等価とされた場合、どちらのオブジェクトで hashCode メソッドを呼び出しても結果は同じ整数値にならなければならない
  • Object.equals(java.lang.Object) メソッドで 2 つのオブジェクトが等価でないとされた場合は、これらのオブジェクトに対して hashCode メソッドを呼び出したときに、結果が異なる整数値にならなくてもかまわない。しかし、等しくないオブジェクトについては異なる整数値が生成されるようにすれば、ハッシュテーブルのパフォーマンスを上げることができる

できるかぎり、Object クラスで定義される hashCode メソッドは、異なるオブジェクトについては異なる整数値を返します。通常、これはオブジェクトの内部アドレスを整数値に変換する形で実装されますが、そのような実装テクニックは JavaTM プログラミング言語では不要です。

オーバーライド:
クラス Object 内の hashCode
戻り値:
このオブジェクトのハッシュコード値
関連項目:
Object.equals(java.lang.Object), Hashtable

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。