1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 package org.htmlunit.httpclient;
16
17 import org.apache.commons.lang3.StringUtils;
18 import org.apache.http.cookie.CommonCookieAttributeHandler;
19 import org.apache.http.cookie.Cookie;
20 import org.apache.http.cookie.CookieOrigin;
21 import org.apache.http.cookie.MalformedCookieException;
22 import org.apache.http.cookie.SetCookie;
23 import org.apache.http.impl.cookie.BasicClientCookie;
24
25
26
27
28
29
30 final class HtmlUnitSameSiteHandler implements CommonCookieAttributeHandler {
31
32 private static final String SAMESITE_ATTR = "samesite";
33
34 @Override
35 public void validate(final Cookie cookie, final CookieOrigin origin) throws MalformedCookieException {
36
37 }
38
39 @Override
40 public void parse(final SetCookie cookie, final String value) throws MalformedCookieException {
41 ((BasicClientCookie) cookie).setAttribute(SAMESITE_ATTR, StringUtils.toRootLowerCase(value));
42 }
43
44 @Override
45 public boolean match(final Cookie cookie, final CookieOrigin origin) {
46 return true;
47 }
48
49 @Override
50 public String getAttributeName() {
51 return SAMESITE_ATTR;
52 }
53 }