Foundation 1.1.2

java.net
クラス URLStreamHandler

java.lang.Object
  上位を拡張 java.net.URLStreamHandler

public abstract class URLStreamHandler
extends Object

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

アプリケーションでは、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 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 といったハンドラのプロトコルごとに一般または特殊な URLConnection サブクラスが存在しており、そのサブクラスは次のパッケージまたはそのサブパッケージのいずれかに属します。java.lang、java.io、java.util, java.net。返される接続の型は、そのサブクラスになります。たとえば、HTTP の場合は HttpURLConnection が返され、JAR の場合は JarURLConnection が返されます。注:java.net.HttpURLConnection は、J2ME Foundation Profile などの J2ME CDC プロファイルにあります。

パラメータ:
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 が等しいとみなされた場合、つまり両者が同一ファイル内の同一フラグメントを参照している場合は 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
戻り値:
それらが等しい場合のみ true、それ以外の場合は false

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 の set メソッドを呼び出せるのは URLStreamHandler の派生クラスだけです。

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

Foundation 1.1.2

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

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