Filter.Chain (Java SE 9 & JDK 9 )
Keywords: com.sun.net.httpserver.Filter.Chain class

Module jdk.httpserver
Package com.sun.net.httpserver

## Class Filter.Chain

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

- Enclosing class:
    Filter

      public static class Filter.Chain
      extends Object

  a chain of filters associated with a HttpServer. Each filter in the chain is given one of these so it can invoke the next filter in the chain

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Chain​(List<Filter> filters, HttpHandler handler)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `doFilter​(HttpExchange exchange)` | calls the next filter in the chain, or else the users exchange handler, if this is the final filter in the chain.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### Chain

          public Chain​(List<Filter> filters,
                       HttpHandler handler)

  - ### Method Detail

    - #### doFilter

          public void doFilter​(HttpExchange exchange)
                        throws IOException

      calls the next filter in the chain, or else the users exchange handler, if this is the final filter in the chain. The Filter may decide to terminate the chain, by not calling this method. In this case, the filter must send the response to the request, because the application's exchange handler will not be invoked.
      Parameters:
        `exchange` - the HttpExchange
      Throws:
        `IOException` - let exceptions pass up the stack
        `NullPointerException` - if exchange is `null`