モジュール jdk.httpserver
パッケージ com.sun.net.httpserver

クラスFilter

java.lang.Object
com.sun.net.httpserver.Filter

public abstract class Filter extends Object
着信要求の事前処理および事後処理に使用されるフィルタです。 事前処理はアプリケーションの交換ハンドラが呼び出される前に行われ、事後処理は交換ハンドラが返されたあとに行われます。 フィルタはチェーンで編成され、HttpContextインスタンスに関連付けられます。

チェーン内の各Filterは、独自のdoFilter(HttpExchange, Chain)実装内で次のフィルタを呼び出します。 チェーン内の最後のFilterがアプリケーション交換ハンドラを呼び出します。

導入されたバージョン:
1.6
  • ネストされたクラスのサマリー

    ネストされたクラス
    修飾子と型
    クラス
    説明
    static class 
    HttpServerに関連付けられたフィルタのチェーン。
  • コンストラクタのサマリー

    コンストラクタ
    修飾子
    コンストラクタ
    説明
    protected
    サブクラスが呼び出すためのコンストラクタ。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    abstract String
    このFilterの簡単な説明を返します。
    abstract void
    doFilter​(HttpExchange exchange, Filter.Chain chain)
    このフィルタに対し、指定された交換の事前処理または事後処理を要求します。

    クラス java.lang.Objectで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • コンストラクタの詳細

    • フィルタ

      protected Filter()
      サブクラスが呼び出すためのコンストラクタ。
  • メソッドの詳細

    • doFilter

      public abstract void doFilter(HttpExchange exchange, Filter.Chain chain) throws IOException
      このフィルタに対し、指定された交換の事前処理または事後処理を要求します。 フィルタは次のことができます:
      • リクエスト・ヘッダーを調査または変更します。
      • 適切なフィルタ・ストリームを作成し、HttpExchange.setStreams(InputStream, OutputStream)をコールして、リクエスト本文またはレスポンス本文をフィルタします。
      • 他のフィルタまたは交換ハンドラがアクセスできる、交換の属性オブジェクトを設定します。
      • 次のいずれかを決定します:
        1. Filter.Chain.doFilter(HttpExchange)をコールして、チェーンの次のフィルタを起動します。
        2. Filter.Chain.doFilter(HttpExchange)をコールしないで、呼出しのチェーンを終了します。
      • 前述のオプション1.が使用されている場合、doFilter()がチェーン内の後続のすべてのフィルタを返したときに、レスポンス・ヘッダーを調査または変更できます。
      • 前述のオプション2.を使用する場合、このフィルタはHttpExchangeを使用して適切なレスポンスを送り返す必要があります。
      パラメータ:
      exchange - フィルタ処理されるHttpExchange
      chain - 次のフィルタの呼出しを可能にするChain
      例外:
      IOException - どのフィルタ・モジュールでもスローされる可能性があり、キャッチされた場合、再度スローする必要がある
      NullPointerException - 交換とチェーンのいずれかがnullの場合
    • description

      public abstract String description()
      このFilterの簡単な説明を返します。
      戻り値:
      Filterを記述するString