JavaTM 2
Platform
Std. Ed. v1.4.0

java.net
クラス URLStreamHandler

java.lang.Object
  |
  +--java.net.URLStreamHandler

public abstract class URLStreamHandler
extends Object

抽象クラス URLStreamHandler は、すべてのストリームプロトコルハンドラに共通のスーパークラスです。ストリームプロトコルハンドラは、プロトコルの種類 (httpftpgopher など) ごとに接続を確立します。

アプリケーションでは、URLStreamHandler サブクラスのインスタンスを直接生成することはほとんどありません。URL の構築中に初めてプロトコル名が見つかったときに、適切なストリームプロトコルハンドラが自動的にロードされます。

導入されたバージョン:
JDK1.0
関連項目:
URL.URL(java.lang.String, java.lang.String, int, java.lang.String)

コンストラクタの概要
URLStreamHandler()
           
 
メソッドの概要
protected  boolean equals(URL u1, URL u2)
          デフォルトの等価計算を提供します。
protected  int getDefaultPort()
          このハンドラが解析する URL のデフォルトのポートを返します。
protected  InetAddress getHostAddress(URL u)
          ホストの IP アドレスを取得します。
protected  int hashCode(URL u)
          デフォルトのハッシュ計算を提供します。
protected  boolean hostsEqual(URL u1, URL u2)
          2 つの URL のホストコンポーネントを比較します。
protected abstract  URLConnection openConnection(URL u)
          URL 引数で参照するオブジェクトへの接続を確立します。
protected  void parseURL(URL u, String spec, int start, int limit)
          URL の文字列表現を解析し、URL オブジェクトに変換します。
protected  boolean sameFile(URL u1, URL u2)
          2 つの URL を比較して、同じファイルを参照するかどうか、つまり、同じプロトコル、ホスト、ポート、およびパスを持っているかどうかを調べます。
protected  void setURL(URL u, String protocol, String host, int port, String file, String ref)
          推奨されていません。 setURL(URL、String、int、String、String、String、String) を使用してください。
protected  void setURL(URL u, String protocol, String host, int port, String authority, String userInfo, String path, String query, String ref)
          URL 引数フィールド値を、指定された値に設定します。
protected  String toExternalForm(URL u)
          特定のプロトコルの URLString に変換します。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

URLStreamHandler

public URLStreamHandler()
メソッドの詳細

openConnection

protected abstract URLConnection openConnection(URL u)
                                         throws IOException
URL 引数で参照するオブジェクトへの接続を確立します。サブクラスではこのメソッドをオーバーライドしてください。

HTTP や JAR などの、ハンドラのプロトコルについては、java.lang、java.io、java.util、または java.net のパッケージ、あるいはそのサブパッケージに属する一般または特殊な URLConnection サブクラスがあります。返される接続は、そのサブクラスのものになります。たとえば、HTTP プロトコルに対しては HttpURLConnection が返され、JAR に対しては JarURLConnection が返されます。

パラメータ:
u - 接続先の URL
戻り値:
URL への URLConnection オブジェクト
例外:
IOException - 接続の確立中に入出力エラーが発生した場合

parseURL

protected void parseURL(URL u,
                        String spec,
                        int start,
                        int limit)
URL の文字列表現を解析し、URL オブジェクトに変換します。

継承されるパスがある場合は、URL 引数にすでにコピーされています。

URLStreamHandlerparseURL は文字列表現を http として解析します。大部分の URL プロトコルファミリは、解析処理が似ています。構文の異なるプロトコルのストリームプロトコルハンドラでは、このルーチンをオーバーライドする必要があります。

パラメータ:
u - 仕様解析の結果を受け取る URL
spec - 解析する必要のある URL を表す String
start - 解析の開始位置を表す文字インデックス。これはプロトコル名の確定を表す「:」(存在する場合) の直後にくる
limit - 解析の終了位置を表す文字の位置。これは文字列の終わりか、「#」文字 (存在する場合) の位置である。シャープ記号よりもあとの情報はすべてアンカーを表す

getDefaultPort

protected int getDefaultPort()
このハンドラが解析する URL のデフォルトのポートを返します。このメソッドは、デフォルトのポート番号でハンドラがオーバーライドします。

戻り値:
このハンドラが解析する URL のデフォルトのポート

equals

protected boolean equals(URL u1,
                         URL u2)
デフォルトの等価計算を提供します。equals() に対して別の要件を持つ他のプロトコルのハンドラがオーバーライドすることがあります。このメソッドは、引数がどれも null でないことが必要です。java.net.URL クラスだけがこのメソッドを呼び出すため、このことは保証されています。

パラメータ:
u1 - URL オブジェクト
u2 - URL オブジェクト
戻り値:
2 つの URL が同等であるとみなされる場合、つまり 2 つの URL が同じファイルの同じフラグメントを参照する場合、true

hashCode

protected int hashCode(URL u)
デフォルトのハッシュ計算を提供します。hashCode 計算に対して別の要件を持つ他のプロトコルのハンドラがオーバーライドすることがあります。

パラメータ:
u - URL オブジェクト
戻り値:
ハッシュテーブルのインデックス付けに適した int

sameFile

protected boolean sameFile(URL u1,
                           URL u2)
2 つの URL を比較して、同じファイルを参照するかどうか、つまり、同じプロトコル、ホスト、ポート、およびパスを持っているかどうかを調べます。このメソッドは、引数がどれも null でないことが必要です。java.net.URL クラスだけがこのメソッドを呼び出すため、このことは保証されています。

パラメータ:
u1 - URL オブジェクト
u2 - URL オブジェクト
戻り値:
URL1 と URL2 が同じファイルを参照する場合、true

getHostAddress

protected InetAddress getHostAddress(URL u)
ホストの IP アドレスを取得します。空のホストフィールドまたは DNS 障害の場合、null が返されます。

パラメータ:
u - URL オブジェクト
戻り値:
ホスト IP アドレスを表す InetAddress

hostsEqual

protected boolean hostsEqual(URL u1,
                             URL u2)
2 つの URL のホストコンポーネントを比較します。

パラメータ:
u1 - 比較する最初のホストの URL
u2 - 比較する第 2 のホストの URL
戻り値:
2 つの URL のホストコンポーネントが等しい場合に限り true、それ以外は false
例外:
UnknownHostException - 認識できないホストが検出された場合

toExternalForm

protected String toExternalForm(URL u)
特定のプロトコルの URLString に変換します。

パラメータ:
u - URL
戻り値:
URL 引数の文字列表現

setURL

protected void setURL(URL u,
                      String protocol,
                      String host,
                      int port,
                      String authority,
                      String userInfo,
                      String path,
                      String query,
                      String ref)
URL 引数フィールド値を、指定された値に設定します。URL の設定メソッドを呼び出すことができるのは、URLStreamHandler の派生クラスだけです。

パラメータ:
u - 修正する URL
protocol - プロトコル名
host - URL のリモートホスト値
port - リモートマシン上のポート
authority - URL の権限部分
userInfo - URL のユーザ情報部分
path - URL のパスコンポーネント
query - URL のクエリー部分
ref - 参照
関連項目:
URL.set(java.lang.String, java.lang.String, int, java.lang.String, java.lang.String)

setURL

protected void setURL(URL u,
                      String protocol,
                      String host,
                      int port,
                      String file,
                      String ref)
推奨されていません。 setURL(URL、String、int、String、String、String、String) を使用してください。

URL 引数フィールド値を、指定された値に設定します。URL の設定メソッドを呼び出すことができるのは、URLStreamHandler の派生クラスだけです。

パラメータ:
u - 修正する URL
protocol - プロトコル名。この値は 1.2 以降無視される
host - URL のリモートホスト値
port - リモートマシン上のポート
file - ファイル
ref - 参照

JavaTM 2
Platform
Std. Ed. v1.4.0

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

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.