Class NewCookie


  • public class NewCookie
    extends Cookie
    Used to create a new HTTP cookie, transferred in a response.
    See Also:
    IETF RFC 2109
    • Field Detail

      • DEFAULT_MAX_AGE

        public static final int DEFAULT_MAX_AGE
        Specifies that the cookie expires with the current application/browser session.
        See Also:
        Constant Field Values
    • Constructor Detail

      • NewCookie

        public NewCookie​(String name,
                         String value)
        Create a new instance.
        Parameters:
        name - the name of the cookie
        value - the value of the cookie
        Throws:
        IllegalArgumentException - if name is null
      • NewCookie

        public NewCookie​(String name,
                         String value,
                         String path,
                         String domain,
                         String comment,
                         int maxAge,
                         boolean secure)
        Create a new instance.
        Parameters:
        name - the name of the cookie
        value - the value of the cookie
        path - the URI path for which the cookie is valid
        domain - the host domain for which the cookie is valid
        comment - the comment
        maxAge - the maximum age of the cookie in seconds
        secure - specifies whether the cookie will only be sent over a secure connection
        Throws:
        IllegalArgumentException - if name is null
      • NewCookie

        public NewCookie​(String name,
                         String value,
                         String path,
                         String domain,
                         int version,
                         String comment,
                         int maxAge,
                         boolean secure)
        Create a new instance.
        Parameters:
        name - the name of the cookie
        value - the value of the cookie
        path - the URI path for which the cookie is valid
        domain - the host domain for which the cookie is valid
        version - the version of the specification to which the cookie complies
        comment - the comment
        maxAge - the maximum age of the cookie in seconds
        secure - specifies whether the cookie will only be sent over a secure connection
        Throws:
        IllegalArgumentException - if name is null
      • NewCookie

        public NewCookie​(Cookie cookie)
        Create a new instance copying the information in the supplied cookie.
        Parameters:
        cookie - the cookie to clone
        Throws:
        IllegalArgumentException - if cookie is null
      • NewCookie

        public NewCookie​(Cookie cookie,
                         String comment,
                         int maxAge,
                         boolean secure)
        Create a new instance supplementing the information in the supplied cookie.
        Parameters:
        cookie - the cookie to clone
        comment - the comment
        maxAge - the maximum age of the cookie in seconds
        secure - specifies whether the cookie will only be sent over a secure connection
        Throws:
        IllegalArgumentException - if cookie is null
    • Method Detail

      • valueOf

        public static NewCookie valueOf​(String value)
                                 throws IllegalArgumentException
        Creates a new instance of NewCookie by parsing the supplied string.
        Parameters:
        value - the cookie string
        Returns:
        the newly created NewCookie
        Throws:
        IllegalArgumentException - if the supplied string cannot be parsed or is null
      • getComment

        public String getComment()
        Get the comment associated with the cookie.
        Returns:
        the comment or null if none set
      • getMaxAge

        public int getMaxAge()
        Get the maximum age of the the cookie in seconds. Cookies older than the maximum age are discarded. A cookie can be unset by sending a new cookie with maximum age of 0 since it will overwrite any existing cookie and then be immediately discarded. The default value of -1 indicates that the cookie will be discarded at the end of the browser/application session.
        Returns:
        the maximum age in seconds
      • isSecure

        public boolean isSecure()
        Whether the cookie will only be sent over a secure connection. Defaults to false.
        Returns:
        true if the cookie will only be sent over a secure connection, false otherwise.
      • toCookie

        public Cookie toCookie()
        Obtain a new instance of a Cookie with the same name, value, path, domain and version as this NewCookie. This method can be used to obtain an object that can be compared for equality with another Cookie; since a Cookie will never compare equal to a NewCookie.
        Returns:
        a Cookie
      • toString

        public String toString()
        Convert the cookie to a string suitable for use as the value of the corresponding HTTP header.
        Overrides:
        toString in class Cookie
        Returns:
        a stringified cookie
      • hashCode

        public int hashCode()
        Generate a hashcode by hashing all of the properties
        Overrides:
        hashCode in class Cookie
        Returns:
        the hashcode
      • equals

        public boolean equals​(Object obj)
        Compare for equality. Use toCookie() to compare a NewCookie to a Cookie considering only the common properties.
        Overrides:
        equals in class Cookie
        Parameters:
        obj -
        Returns:
        true if the object is a NewCookie with the same value for all properties, false otherwise.