モジュール java.base
パッケージ java.net

クラスProxySelector


  • public abstract class ProxySelector
    extends Object
    URLで参照されるネットワーク・リソースへの接続時に使用するプロキシ・サーバーが存在する場合に、それらを選択します。 プロキシ・セレクタはこのクラスの具象サブクラスであり、setDefaultメソッドを呼び出すことで登録されます。 現在登録されているプロキシ・セレクタを取得するには、getDefaultメソッドを呼び出します。

    プロキシ・セレクタが登録されている場合、たとえば、URLConnectionクラスのサブクラスは、URL要求ごとにそのselectメソッドを呼び出せば、そのプロキシ・セレクタが、直接接続、プロキシ接続のいずれを使用すべきかを決定できます。 selectメソッドは、推奨の接続方法でコレクションのイテレータを返します。

    プロキシ(PROXYまたはSOCKS)サーバーへの接続が確立できない場合、呼出し元は、プロキシ・セレクタのconnectFailedメソッドを呼び出すことで、そのプロキシ・サーバーが使用不可能であることをプロキシ・セレクタに通知します。

    デフォルトのプロキシ・セレクタは、プロキシ設定に関係があるシステム・プロパティのセットを適用します。

    導入されたバージョン:
    1.5
    • コンストラクタの詳細

      • ProxySelector

        public ProxySelector()
    • メソッドの詳細

      • getDefault

        public static ProxySelector getDefault()
        システム全体のプロキシ・セレクタを取得します。
        戻り値:
        システム全体のProxySelector
        例外:
        SecurityException - セキュリティ・マネージャがインストールされていて、それがNetPermission(「getProxySelector」)を拒否した場合
        導入されたバージョン:
        1.5
        関連項目:
        setDefault(ProxySelector)
      • setDefault

        public static void setDefault​(ProxySelector ps)
        システム全体のプロキシ・セレクタを設定(または設定解除)します。 ノート: 標準でないプロトコル・ハンドラは、この設定を無視する可能性があります。
        パラメータ:
        ps−HTTPプロキシ・セレクタ。プロキシセレクタを設定解除する場合はnull
        例外:
        SecurityException - セキュリティ・マネージャがインストールされていて、それがNetPermission(「setProxySelector」)を拒否した場合
        導入されたバージョン:
        1.5
        関連項目:
        getDefault()
      • select

        public abstract List<Proxy> select​(URI uri)
        リソースへのアクセスに使用するプロトコルと、リソースへのアクセス先となるアドレスに基づいて、適用可能なすべてのプロキシを選択します。 URIの形式は次のように定義されています。
        • HTTP接続の場合はhttp URI
        • HTTPS接続の場合はhttps URI
        • TCPクライアント・ソケット接続の場合はsocket://host:port
        パラメータ:
        uri−接続が必要なURI
        戻り値:
        プロキシのリスト。 リスト内の各要素の型はProxyになります。使用可能なプロキシが存在しない場合、このリストには直接接続を表す型Proxyの要素が1つ含まれます。
        例外:
        IllegalArgumentException - 引数がnullの場合
      • connectFailed

        public abstract void connectFailed​(URI uri,
                                           SocketAddress sa,
                                           IOException ioe)
        あるPROXYまたはSOCKSサーバーへの接続を確立できなかったことを示すために呼び出されます。 このメソッドの実装は、アドレスと、接続を試みたときにキャッチされたIOExceptionに基づいて、プロキシを一時的に削除したり、select(URI)から返されるプロキシの順番を並べ替えたりすることができます。
        パラメータ:
        uri−saのプロキシが提供できなかったURI。
        sa−PROXYまたはSOCKSサーバーのソケット・アドレス
        ioe−接続の失敗時に入出力例外がスローされた場合。
        例外:
        IllegalArgumentException - どちらかの引数がnullの場合
      • of

        public static ProxySelector of​(InetSocketAddress proxyAddress)
        指定されたプロキシ・アドレスをすべてのHTTPおよびHTTPSリクエストに使用するProxySelectorを返します。 プロキシがnullの場合、プロキシは無効になります。
        パラメータ:
        proxyAddress - プロキシのアドレス
        戻り値:
        ProxySelector
        導入されたバージョン:
        9