org.springframework.http.server

## Class ServletServerHttpResponse

- java.lang.Object
- - org.springframework.http.server.ServletServerHttpResponse

- All Implemented Interfaces:
    Closeable, Flushable, AutoCloseable, HttpMessage, HttpOutputMessage, ServerHttpResponse

      public class ServletServerHttpResponse
      extends Object
      implements ServerHttpResponse

  `ServerHttpResponse` implementation that is based on a `HttpServletResponse`.
  Since:
    3.0
  Author:
    Arjen Poutsma, Rossen Stoyanchev

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ServletServerHttpResponse(HttpServletResponse servletResponse)` Construct a new instance of the ServletServerHttpResponse based on the given `HttpServletResponse`.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `close()` Close this response, freeing any resources created.
    `void` | `flush()` Ensure that the headers and the content of the response are written out.
    `OutputStream` | `getBody()` Return the body of the message as an output stream.
    `HttpHeaders` | `getHeaders()` Return the headers of this message.
    `HttpServletResponse` | `getServletResponse()` Return the `HttpServletResponse` this object is based on.
    `void` | `setStatusCode(HttpStatus status)` Set the HTTP status code of the response.

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

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

- - ### Constructor Detail

    - #### ServletServerHttpResponse

          public ServletServerHttpResponse(HttpServletResponse servletResponse)

      Construct a new instance of the ServletServerHttpResponse based on the given `HttpServletResponse`.
      Parameters:
        `servletResponse` - the servlet response

  - ### Method Detail

    - #### getServletResponse

          public HttpServletResponse getServletResponse()

      Return the `HttpServletResponse` this object is based on.

    - #### setStatusCode

          public void setStatusCode(HttpStatus status)

      Description copied from interface: `ServerHttpResponse`
      Set the HTTP status code of the response.
      Specified by:
        `setStatusCode` in interface `ServerHttpResponse`
      Parameters:
        `status` - the HTTP status as an HttpStatus enum value

    - #### getHeaders

          public HttpHeaders getHeaders()

      Description copied from interface: `HttpMessage`
      Return the headers of this message.
      Specified by:
        `getHeaders` in interface `HttpMessage`
      Returns:
        a corresponding HttpHeaders object

    - #### getBody

          public OutputStream getBody()
                               throws IOException

      Description copied from interface: `HttpOutputMessage`
      Return the body of the message as an output stream.
      Specified by:
        `getBody` in interface `HttpOutputMessage`
      Returns:
        the output stream body
      Throws:
        `IOException` - in case of I/O Errors

    - #### flush

          public void flush()
                     throws IOException

      Description copied from interface: `ServerHttpResponse`
      Ensure that the headers and the content of the response are written out.

      After the first flush, headers can no longer be changed. Only further content writing and content flushing is possible.

      Specified by:
        `flush` in interface `Flushable`
      Specified by:
        `flush` in interface `ServerHttpResponse`
      Throws:
        `IOException`

    - #### close

          public void close()

      Description copied from interface: `ServerHttpResponse`
      Close this response, freeing any resources created.
      Specified by:
        `close` in interface `Closeable`
      Specified by:
        `close` in interface `AutoCloseable`
      Specified by:
        `close` in interface `ServerHttpResponse`