keycloak-service
静的公開メンバ関数 | 静的非公開変数類 | 全メンバ一覧
org.keycloak.services.util.CookieHelper クラス
org.keycloak.services.util.CookieHelper 連携図
Collaboration graph

静的公開メンバ関数

static void addCookie (String name, String value, String path, String domain, String comment, int maxAge, boolean secure, boolean httpOnly)
 
static Set< String > getCookieValue (String name)
 
static Set< String > parseCookie (String cookieHeader, String name)
 

静的非公開変数類

static final Logger logger = Logger.getLogger(CookieHelper.class)
 

詳解

著者
Bill Burke
バージョン
Revision
1

関数詳解

◆ addCookie()

static void org.keycloak.services.util.CookieHelper.addCookie ( String  name,
String  value,
String  path,
String  domain,
String  comment,
int  maxAge,
boolean  secure,
boolean  httpOnly 
)
inlinestatic

Set a response cookie. This solely exists because JAX-RS 1.1 does not support setting HttpOnly cookies

引数
name
value
path
domain
comment
maxAge
secure
httpOnly
55  {
56  HttpResponse response = ResteasyProviderFactory.getContextData(HttpResponse.class);
57  StringBuffer cookieBuf = new StringBuffer();
58  ServerCookie.appendCookieValue(cookieBuf, 1, name, value, path, domain, comment, maxAge, secure, httpOnly);
59  String cookie = cookieBuf.toString();
60  response.getOutputHeaders().add(HttpHeaders.SET_COOKIE, cookie);
61  }

◆ getCookieValue()

static Set<String> org.keycloak.services.util.CookieHelper.getCookieValue ( String  name)
inlinestatic
64  {
65  HttpHeaders headers = ResteasyProviderFactory.getContextData(HttpHeaders.class);
66 
67  Set<String> cookiesVal = new HashSet<>();
68 
69  // check for cookies in the request headers
70  List<String> cookieHeader = headers.getRequestHeaders().get(HttpHeaders.COOKIE);
71  if (cookieHeader != null) {
72  logger.debugv("{1} cookie found in the request's header", name);
73  cookieHeader.stream().map(s -> parseCookie(s, name)).forEach(cookiesVal::addAll);
74  }
75 
76  // get cookies from the cookie field
77  Cookie cookie = headers.getCookies().get(name);
78  if (cookie != null) {
79  logger.debugv("{1} cookie found in the cookie's field", name);
80  cookiesVal.add(cookie.getValue());
81  }
82 
83 
84  return cookiesVal;
85  }
static Set< String > parseCookie(String cookieHeader, String name)
Definition: CookieHelper.java:88
static final Logger logger
Definition: CookieHelper.java:41

◆ parseCookie()

static Set<String> org.keycloak.services.util.CookieHelper.parseCookie ( String  cookieHeader,
String  name 
)
inlinestatic
88  {
89  String parts[] = cookieHeader.split("[;,]");
90 
91  Set<String> cookies = Arrays.stream(parts).filter(part -> part.startsWith(name + "=")).map(part ->
92  part.substring(part.indexOf('=') + 1)).collect(Collectors.toSet());
93 
94  return cookies;
95  }

メンバ詳解

◆ logger

final Logger org.keycloak.services.util.CookieHelper.logger = Logger.getLogger(CookieHelper.class)
staticprivate

このクラス詳解は次のファイルから抽出されました: