Class CookieGenerator

java.lang.Object
org.springframework.web.util.CookieGenerator
Direct Known Subclasses:
CookieLocaleResolver, CookieThemeResolver

public class CookieGenerator extends Object
Helper class for cookie generation, carrying cookie descriptor settings as bean properties and being able to add and remove cookie to/from a given response.

Can serve as base class for components that generate specific cookies, such as CookieLocaleResolver and CookieThemeResolver.

Since:
1.1.4
Author:
Juergen Hoeller
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
    Default path that cookies will be visible to: "/", i.e.
    protected final Log
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addCookie(HttpServletResponse response, String cookieValue)
    Add a cookie with the given value to the response, using the cookie descriptor settings of this generator.
    protected Cookie
    createCookie(String cookieValue)
    Create a cookie with the given value, using the cookie descriptor settings of this generator (except for "cookieMaxAge").
    Return the domain for cookies created by this generator, if any.
    Return the maximum age for cookies created by this generator.
    Return the given name for cookies created by this generator.
    Return the path for cookies created by this generator.
    boolean
    Return whether the cookie is supposed to be marked with the "HttpOnly" attribute.
    boolean
    Return whether the cookie should only be sent using a secure protocol, such as HTTPS (SSL).
    void
    Remove the cookie that this generator describes from the response.
    void
    setCookieDomain(String cookieDomain)
    Use the given domain for cookies created by this generator.
    void
    setCookieHttpOnly(boolean cookieHttpOnly)
    Set whether the cookie is supposed to be marked with the "HttpOnly" attribute.
    void
    setCookieMaxAge(Integer cookieMaxAge)
    Use the given maximum age (in seconds) for cookies created by this generator.
    void
    setCookieName(String cookieName)
    Use the given name for cookies created by this generator.
    void
    setCookiePath(String cookiePath)
    Use the given path for cookies created by this generator.
    void
    setCookieSecure(boolean cookieSecure)
    Set whether the cookie should only be sent using a secure protocol, such as HTTPS (SSL).

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • logger

      protected final Log logger
  • Constructor Details

    • CookieGenerator

      public CookieGenerator()
  • Method Details

    • setCookieName

      public void setCookieName(@Nullable String cookieName)
      Use the given name for cookies created by this generator.
      See Also:
    • getCookieName

      @Nullable public String getCookieName()
      Return the given name for cookies created by this generator.
    • setCookieDomain

      public void setCookieDomain(@Nullable String cookieDomain)
      Use the given domain for cookies created by this generator. The cookie is only visible to servers in this domain.
      See Also:
    • getCookieDomain

      @Nullable public String getCookieDomain()
      Return the domain for cookies created by this generator, if any.
    • setCookiePath

      public void setCookiePath(String cookiePath)
      Use the given path for cookies created by this generator. The cookie is only visible to URLs in this path and below.
      See Also:
    • getCookiePath

      public String getCookiePath()
      Return the path for cookies created by this generator.
    • setCookieMaxAge

      public void setCookieMaxAge(@Nullable Integer cookieMaxAge)
      Use the given maximum age (in seconds) for cookies created by this generator. Useful special value: -1 ... not persistent, deleted when client shuts down.

      Default is no specific maximum age at all, using the Servlet container's default.

      See Also:
    • getCookieMaxAge

      @Nullable public Integer getCookieMaxAge()
      Return the maximum age for cookies created by this generator.
    • setCookieSecure

      public void setCookieSecure(boolean cookieSecure)
      Set whether the cookie should only be sent using a secure protocol, such as HTTPS (SSL). This is an indication to the receiving browser, not processed by the HTTP server itself.

      Default is "false".

      See Also:
    • isCookieSecure

      public boolean isCookieSecure()
      Return whether the cookie should only be sent using a secure protocol, such as HTTPS (SSL).
    • setCookieHttpOnly

      public void setCookieHttpOnly(boolean cookieHttpOnly)
      Set whether the cookie is supposed to be marked with the "HttpOnly" attribute.

      Default is "false".

      See Also:
    • isCookieHttpOnly

      public boolean isCookieHttpOnly()
      Return whether the cookie is supposed to be marked with the "HttpOnly" attribute.
    • addCookie

      public void addCookie(HttpServletResponse response, String cookieValue)
      Add a cookie with the given value to the response, using the cookie descriptor settings of this generator.

      Delegates to createCookie(java.lang.String) for cookie creation.

      Parameters:
      response - the HTTP response to add the cookie to
      cookieValue - the value of the cookie to add
      See Also:
    • removeCookie

      public void removeCookie(HttpServletResponse response)
      Remove the cookie that this generator describes from the response. Will generate a cookie with empty value and max age 0.

      Delegates to createCookie(java.lang.String) for cookie creation.

      Parameters:
      response - the HTTP response to remove the cookie from
      See Also:
    • createCookie

      protected Cookie createCookie(String cookieValue)
      Create a cookie with the given value, using the cookie descriptor settings of this generator (except for "cookieMaxAge").
      Parameters:
      cookieValue - the value of the cookie to crate
      Returns:
      the cookie
      See Also: