Interface EntityResponse.Builder<T>

Type Parameters:
T - the entity type
Enclosing interface:
EntityResponse<T>

public static interface EntityResponse.Builder<T>
Defines a builder for EntityResponse.
  • Method Details

    • header

      EntityResponse.Builder<T> header(String headerName, String... headerValues)
      Add the given header value(s) under the given name.
      Parameters:
      headerName - the header name
      headerValues - the header value(s)
      Returns:
      this builder
      See Also:
    • headers

      EntityResponse.Builder<T> headers(Consumer<HttpHeaders> headersConsumer)
      Manipulate this response's headers with the given consumer. The headers provided to the consumer are "live", so that the consumer can be used to overwrite existing header values, remove values, or use any of the other HttpHeaders methods.
      Parameters:
      headersConsumer - a function that consumes the HttpHeaders
      Returns:
      this builder
    • status

      Set the HTTP status.
      Parameters:
      status - the response status
      Returns:
      this builder
    • status

      EntityResponse.Builder<T> status(int status)
      Set the HTTP status.
      Parameters:
      status - the response status
      Returns:
      this builder
    • cookie

      EntityResponse.Builder<T> cookie(Cookie cookie)
      Add the given cookie to the response.
      Parameters:
      cookie - the cookie to add
      Returns:
      this builder
    • cookies

      Manipulate this response's cookies with the given consumer. The cookies provided to the consumer are "live", so that the consumer can be used to overwrite existing cookies, remove cookies, or use any of the other MultiValueMap methods.
      Parameters:
      cookiesConsumer - a function that consumes the cookies
      Returns:
      this builder
    • allow

      EntityResponse.Builder<T> allow(HttpMethod... allowedMethods)
      Set the set of allowed HTTP methods, as specified by the Allow header.
      Parameters:
      allowedMethods - the allowed methods
      Returns:
      this builder
      See Also:
    • allow

      EntityResponse.Builder<T> allow(Set<HttpMethod> allowedMethods)
      Set the set of allowed HTTP methods, as specified by the Allow header.
      Parameters:
      allowedMethods - the allowed methods
      Returns:
      this builder
      See Also:
    • eTag

      Set the entity tag of the body, as specified by the ETag header.
      Parameters:
      etag - the new entity tag
      Returns:
      this builder
      See Also:
    • lastModified

      EntityResponse.Builder<T> lastModified(ZonedDateTime lastModified)
      Set the time the resource was last changed, as specified by the Last-Modified header.

      The date should be specified as the number of milliseconds since January 1, 1970 GMT.

      Parameters:
      lastModified - the last modified date
      Returns:
      this builder
      See Also:
    • lastModified

      EntityResponse.Builder<T> lastModified(Instant lastModified)
      Set the time the resource was last changed, as specified by the Last-Modified header.

      The date should be specified as the number of milliseconds since January 1, 1970 GMT.

      Parameters:
      lastModified - the last modified date
      Returns:
      this builder
      Since:
      5.1.4
      See Also:
    • location

      EntityResponse.Builder<T> location(URI location)
      Set the location of a resource, as specified by the Location header.
      Parameters:
      location - the location
      Returns:
      this builder
      See Also:
    • cacheControl

      EntityResponse.Builder<T> cacheControl(CacheControl cacheControl)
      Set the caching directives for the resource, as specified by the HTTP 1.1 Cache-Control header.

      A CacheControl instance can be built like CacheControl.maxAge(3600).cachePublic().noTransform().

      Parameters:
      cacheControl - a builder for cache-related HTTP response headers
      Returns:
      this builder
      See Also:
    • varyBy

      EntityResponse.Builder<T> varyBy(String... requestHeaders)
      Configure one or more request header names (e.g. "Accept-Language") to add to the "Vary" response header to inform clients that the response is subject to content negotiation and variances based on the value of the given request headers. The configured request header names are added only if not already present in the response "Vary" header.
      Parameters:
      requestHeaders - request header names
      Returns:
      this builder
    • contentLength

      EntityResponse.Builder<T> contentLength(long contentLength)
      Set the length of the body in bytes, as specified by the Content-Length header.
      Parameters:
      contentLength - the content length
      Returns:
      this builder
      See Also:
    • contentType

      EntityResponse.Builder<T> contentType(MediaType contentType)
      Set the media type of the body, as specified by the Content-Type header.
      Parameters:
      contentType - the content type
      Returns:
      this builder
      See Also:
    • build

      EntityResponse<T> build()
      Build the response.
      Returns:
      the built response