xref: /aosp_15_r20/external/cronet/net/cookies/cookie_change_dispatcher.cc (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1*6777b538SAndroid Build Coastguard Worker // Copyright 2018 The Chromium Authors
2*6777b538SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be
3*6777b538SAndroid Build Coastguard Worker // found in the LICENSE file.
4*6777b538SAndroid Build Coastguard Worker 
5*6777b538SAndroid Build Coastguard Worker #include "net/cookies/cookie_change_dispatcher.h"
6*6777b538SAndroid Build Coastguard Worker 
7*6777b538SAndroid Build Coastguard Worker namespace net {
8*6777b538SAndroid Build Coastguard Worker 
CookieChangeCauseToString(CookieChangeCause cause)9*6777b538SAndroid Build Coastguard Worker const char* CookieChangeCauseToString(CookieChangeCause cause) {
10*6777b538SAndroid Build Coastguard Worker   switch (cause) {
11*6777b538SAndroid Build Coastguard Worker     case CookieChangeCause::INSERTED:
12*6777b538SAndroid Build Coastguard Worker       return "inserted";
13*6777b538SAndroid Build Coastguard Worker     case CookieChangeCause::EXPLICIT:
14*6777b538SAndroid Build Coastguard Worker       return "explicit";
15*6777b538SAndroid Build Coastguard Worker     case CookieChangeCause::UNKNOWN_DELETION:
16*6777b538SAndroid Build Coastguard Worker       return "unknown";
17*6777b538SAndroid Build Coastguard Worker     case CookieChangeCause::OVERWRITE:
18*6777b538SAndroid Build Coastguard Worker       return "overwrite";
19*6777b538SAndroid Build Coastguard Worker     case CookieChangeCause::EXPIRED:
20*6777b538SAndroid Build Coastguard Worker       return "expired";
21*6777b538SAndroid Build Coastguard Worker     case CookieChangeCause::EVICTED:
22*6777b538SAndroid Build Coastguard Worker       return "evicted";
23*6777b538SAndroid Build Coastguard Worker     case CookieChangeCause::EXPIRED_OVERWRITE:
24*6777b538SAndroid Build Coastguard Worker       return "expired_overwrite";
25*6777b538SAndroid Build Coastguard Worker   }
26*6777b538SAndroid Build Coastguard Worker }
27*6777b538SAndroid Build Coastguard Worker 
28*6777b538SAndroid Build Coastguard Worker CookieChangeInfo::CookieChangeInfo() = default;
29*6777b538SAndroid Build Coastguard Worker 
CookieChangeInfo(const CanonicalCookie & cookie,CookieAccessResult access_result,CookieChangeCause cause)30*6777b538SAndroid Build Coastguard Worker CookieChangeInfo::CookieChangeInfo(const CanonicalCookie& cookie,
31*6777b538SAndroid Build Coastguard Worker                                    CookieAccessResult access_result,
32*6777b538SAndroid Build Coastguard Worker                                    CookieChangeCause cause)
33*6777b538SAndroid Build Coastguard Worker     : cookie(cookie), access_result(access_result), cause(cause) {
34*6777b538SAndroid Build Coastguard Worker   DCHECK(access_result.status.IsInclude());
35*6777b538SAndroid Build Coastguard Worker   if (CookieChangeCauseIsDeletion(cause)) {
36*6777b538SAndroid Build Coastguard Worker     DCHECK_EQ(access_result.effective_same_site,
37*6777b538SAndroid Build Coastguard Worker               CookieEffectiveSameSite::UNDEFINED);
38*6777b538SAndroid Build Coastguard Worker   }
39*6777b538SAndroid Build Coastguard Worker }
40*6777b538SAndroid Build Coastguard Worker 
41*6777b538SAndroid Build Coastguard Worker CookieChangeInfo::~CookieChangeInfo() = default;
42*6777b538SAndroid Build Coastguard Worker 
CookieChangeCauseIsDeletion(CookieChangeCause cause)43*6777b538SAndroid Build Coastguard Worker bool CookieChangeCauseIsDeletion(CookieChangeCause cause) {
44*6777b538SAndroid Build Coastguard Worker   return cause != CookieChangeCause::INSERTED;
45*6777b538SAndroid Build Coastguard Worker }
46*6777b538SAndroid Build Coastguard Worker 
47*6777b538SAndroid Build Coastguard Worker }  // namespace net
48