パッケージ org.opengion.hayabusa.filter

## クラス GZIPResponseWrapper

- java.lang.Object
- - javax.servlet.ServletResponseWrapper
  - - javax.servlet.http.HttpServletResponseWrapper
    - - org.opengion.hayabusa.filter.GZIPResponseWrapper

- すべての実装されたインタフェース:
    `HttpServletResponse`, `ServletResponse`

      public class GZIPResponseWrapper
      extends HttpServletResponseWrapper

  GZIPFilter で使用する、GZIP圧縮されたレスポンスのラッパクラスです。
  機能分類
    フィルター処理
  バージョン
    4.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK5.0,

- - ### フィールドの概要

    フィールド
    修飾子とタイプ | フィールド | 説明
    --- | --- | ---
    `protected HttpServletResponse` | `origResponse` |
    `protected ServletOutputStream` | `stream` |
    `protected java.io.PrintWriter` | `writer` |

    - ### インタフェースから継承されたフィールド javax.servlet.http.HttpServletResponse

      `SC_ACCEPTED, SC_BAD_GATEWAY, SC_BAD_REQUEST, SC_CONFLICT, SC_CONTINUE, SC_CREATED, SC_EXPECTATION_FAILED, SC_FORBIDDEN, SC_FOUND, SC_GATEWAY_TIMEOUT, SC_GONE, SC_HTTP_VERSION_NOT_SUPPORTED, SC_INTERNAL_SERVER_ERROR, SC_LENGTH_REQUIRED, SC_METHOD_NOT_ALLOWED, SC_MOVED_PERMANENTLY, SC_MOVED_TEMPORARILY, SC_MULTIPLE_CHOICES, SC_NO_CONTENT, SC_NON_AUTHORITATIVE_INFORMATION, SC_NOT_ACCEPTABLE, SC_NOT_FOUND, SC_NOT_IMPLEMENTED, SC_NOT_MODIFIED, SC_OK, SC_PARTIAL_CONTENT, SC_PAYMENT_REQUIRED, SC_PRECONDITION_FAILED, SC_PROXY_AUTHENTICATION_REQUIRED, SC_REQUEST_ENTITY_TOO_LARGE, SC_REQUEST_TIMEOUT, SC_REQUEST_URI_TOO_LONG, SC_REQUESTED_RANGE_NOT_SATISFIABLE, SC_RESET_CONTENT, SC_SEE_OTHER, SC_SERVICE_UNAVAILABLE, SC_SWITCHING_PROTOCOLS, SC_TEMPORARY_REDIRECT, SC_UNAUTHORIZED, SC_UNSUPPORTED_MEDIA_TYPE, SC_USE_PROXY`

  - ### コンストラクタの概要

    コンストラクタ
    コンストラクタ | 説明
    --- | ---
    `GZIPResponseWrapper​(HttpServletResponse response)` | コンストラクター

  - ### メソッドの概要

    すべてのメソッド インスタンス・メソッド concreteメソッド
    修飾子とタイプ | メソッド | 説明
    --- | --- | ---
    `ServletOutputStream` | `createOutputStream()` | ServletOutputStream の実体である GZIPResponseStream を作成して返します。
    `void` | `finishResponse()` | 内部ストリーム を クローズします。
    `void` | `flushBuffer()` | 内部ストリームの flush() メソッドを呼び出します。
    `ServletOutputStream` | `getOutputStream()` | 内部ServletOutputStreamを返します。
    `java.io.PrintWriter` | `getWriter()` | 内部PrintWriterを返します。
    `void` | `setContentLength​(int length)` | 内部ストリームのデータ長を設定します(何もしません)。

    - ### クラスから継承されたメソッド javax.servlet.http.HttpServletResponseWrapper

      `addCookie, addDateHeader, addHeader, addIntHeader, containsHeader, encodeRedirectUrl, encodeRedirectURL, encodeUrl, encodeURL, getHeader, getHeaderNames, getHeaders, getStatus, getTrailerFields, sendError, sendError, sendRedirect, setDateHeader, setHeader, setIntHeader, setStatus, setStatus, setTrailerFields`

    - ### クラスから継承されたメソッド javax.servlet.ServletResponseWrapper

      `getBufferSize, getCharacterEncoding, getContentType, getLocale, getResponse, isCommitted, isWrapperFor, isWrapperFor, reset, resetBuffer, setBufferSize, setCharacterEncoding, setContentLengthLong, setContentType, setLocale, setResponse`

    - ### クラスから継承されたメソッド java.lang.Object

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

    - ### インタフェースから継承されたメソッド javax.servlet.ServletResponse

      `getBufferSize, getCharacterEncoding, getContentType, getLocale, isCommitted, reset, resetBuffer, setBufferSize, setCharacterEncoding, setContentLengthLong, setContentType, setLocale`

- - ### フィールドの詳細

    - #### origResponse

          protected HttpServletResponse origResponse

    - #### stream

          protected ServletOutputStream stream

    - #### writer

          protected java.io.PrintWriter writer

  - ### コンストラクタの詳細

    - #### GZIPResponseWrapper

          public GZIPResponseWrapper​(HttpServletResponse response)

      コンストラクター
      パラメータ:
        `response` - HttpServletResponseオブジェクト

  - ### メソッドの詳細

    - #### createOutputStream

          public ServletOutputStream createOutputStream()
                                                 throws java.io.IOException

      ServletOutputStream の実体である GZIPResponseStream を作成して返します。
      戻り値:
        ServletOutputStreamオブジェクト
      例外:
        `java.io.IOException` - オブジェクトの作成に失敗したとき、throw されます。
      このメソッドは、nullを返しません

    - #### finishResponse

          public void finishResponse()

      内部ストリーム を クローズします。

    - #### flushBuffer

          public void flushBuffer()
                           throws java.io.IOException

      内部ストリームの flush() メソッドを呼び出します。
      定義:
        `flushBuffer` インタフェース内 `ServletResponse`
      オーバーライド:
        `flushBuffer` クラス内 `ServletResponseWrapper`
      例外:
        `java.io.IOException`
      変更履歴:
        6.3.9.0 (2015/11/06) コンストラクタで初期化されていないフィールドを null チェックなしで利用している(findbugs)

    - #### getOutputStream

          public ServletOutputStream getOutputStream()
                                              throws java.io.IOException

      内部ServletOutputStreamを返します。 内部オブジェクトが存在しない場合は、新規に作成します。
      定義:
        `getOutputStream` インタフェース内 `ServletResponse`
      オーバーライド:
        `getOutputStream` クラス内 `ServletResponseWrapper`
      戻り値:
        ServletOutputStreamオブジェクト
      例外:
        `java.io.IOException`

    - #### getWriter

          public java.io.PrintWriter getWriter()
                                        throws java.io.IOException

      内部PrintWriterを返します。 内部オブジェクトが存在しない場合は、新規に作成します。
      定義:
        `getWriter` インタフェース内 `ServletResponse`
      オーバーライド:
        `getWriter` クラス内 `ServletResponseWrapper`
      戻り値:
        PrintWriterオブジェクト
      例外:
        `java.io.IOException`

    - #### setContentLength

          public void setContentLength​(int length)

      内部ストリームのデータ長を設定します(何もしません)。
      定義:
        `setContentLength` インタフェース内 `ServletResponse`
      オーバーライド:
        `setContentLength` クラス内 `ServletResponseWrapper`
      パラメータ:
        `length` - データ長