Package org.apache.tomcat.util.http
Class LegacyCookieProcessor
- java.lang.Object
-
- org.apache.tomcat.util.http.CookieProcessorBase
-
- org.apache.tomcat.util.http.LegacyCookieProcessor
-
- All Implemented Interfaces:
CookieProcessor
public final class LegacyCookieProcessor extends CookieProcessorBase
The legacy (up to early Tomcat 8 releases) cookie parser based on RFC6265, RFC2109 and RFC2616. This class is not thread-safe.- Author:
- Costin Manolache, kevin seguin
-
-
Field Summary
-
Fields inherited from class org.apache.tomcat.util.http.CookieProcessorBase
ANCIENT_DATE, COOKIE_DATE_FORMAT
-
-
Constructor Summary
Constructors Constructor Description LegacyCookieProcessor()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StringgenerateHeader(Cookie cookie)Generate theSet-CookieHTTP header value for the given Cookie.StringgenerateHeader(Cookie cookie, HttpServletRequest request)Generate theSet-CookieHTTP header value for the given Cookie.booleangetAllowEqualsInValue()booleangetAllowHttpSepsInV0()booleangetAllowNameOnly()booleangetAlwaysAddExpires()CharsetgetCharset()Obtain the character set that will be used when converting between bytes and characters when parsing and/or generating HTTP headers for cookies.booleangetForwardSlashIsSeparator()voidparseCookieHeader(MimeHeaders headers, ServerCookies serverCookies)Parse the provided headers into server cookie objects.voidsetAllowEqualsInValue(boolean allowEqualsInValue)voidsetAllowHttpSepsInV0(boolean allowHttpSepsInV0)voidsetAllowNameOnly(boolean allowNameOnly)voidsetAlwaysAddExpires(boolean alwaysAddExpires)voidsetForwardSlashIsSeparator(boolean forwardSlashIsSeparator)-
Methods inherited from class org.apache.tomcat.util.http.CookieProcessorBase
getSameSiteCookies, setSameSiteCookies
-
-
-
-
Method Detail
-
getAllowEqualsInValue
public boolean getAllowEqualsInValue()
-
setAllowEqualsInValue
public void setAllowEqualsInValue(boolean allowEqualsInValue)
-
getAllowNameOnly
public boolean getAllowNameOnly()
-
setAllowNameOnly
public void setAllowNameOnly(boolean allowNameOnly)
-
getAllowHttpSepsInV0
public boolean getAllowHttpSepsInV0()
-
setAllowHttpSepsInV0
public void setAllowHttpSepsInV0(boolean allowHttpSepsInV0)
-
getForwardSlashIsSeparator
public boolean getForwardSlashIsSeparator()
-
setForwardSlashIsSeparator
public void setForwardSlashIsSeparator(boolean forwardSlashIsSeparator)
-
getAlwaysAddExpires
public boolean getAlwaysAddExpires()
-
setAlwaysAddExpires
public void setAlwaysAddExpires(boolean alwaysAddExpires)
-
getCharset
public Charset getCharset()
Description copied from interface:CookieProcessorObtain the character set that will be used when converting between bytes and characters when parsing and/or generating HTTP headers for cookies.- Returns:
- The character set used for byte<->character conversions
-
parseCookieHeader
public void parseCookieHeader(MimeHeaders headers, ServerCookies serverCookies)
Description copied from interface:CookieProcessorParse the provided headers into server cookie objects.- Parameters:
headers- The HTTP headers to parseserverCookies- The server cookies object to populate with the results of the parsing
-
generateHeader
public String generateHeader(Cookie cookie)
Description copied from interface:CookieProcessorGenerate theSet-CookieHTTP header value for the given Cookie.- Parameters:
cookie- The cookie for which the header will be generated- Returns:
- The header value in a form that can be added directly to the response
-
generateHeader
public String generateHeader(Cookie cookie, HttpServletRequest request)
Description copied from interface:CookieProcessorGenerate theSet-CookieHTTP header value for the given Cookie. This method receives as parameter the servlet request so that it can make decisions based on request properties. One such use-case is decide if the SameSite attribute should be added to the cookie based on the User-Agent or other request header because there are browser versions incompatible with the SameSite attribute. This is described by the Chromium project.The default implementation calls the deprecated
CookieProcessor.generateHeader(Cookie)method. Implementors should not rely on this default method as it is present only for transitional compatibility and will be removed in Tomcat 10 at the same time as theCookieProcessor.generateHeader(Cookie)method.- Parameters:
cookie- The cookie for which the header will be generatedrequest- The servlet request- Returns:
- The header value in a form that can be added directly to the response
-
-