Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(121)

Side by Side Diff: content/browser/net/quota_policy_cookie_store.cc

Issue 2874973002: Flush Channel IDs when Cookies get saved to a persistent backend (Closed)
Patch Set: Initialize channel_id_service to nullptr Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/browser/net/quota_policy_cookie_store.h" 5 #include "content/browser/net/quota_policy_cookie_store.h"
6 6
7 #include <list> 7 #include <list>
8 #include <memory> 8 #include <memory>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after
103 for (const auto& cookie : cookies) { 103 for (const auto& cookie : cookies) {
104 net::SQLitePersistentCookieStore::CookieOrigin origin( 104 net::SQLitePersistentCookieStore::CookieOrigin origin(
105 cookie->Domain(), cookie->IsSecure()); 105 cookie->Domain(), cookie->IsSecure());
106 ++cookies_per_origin_[origin]; 106 ++cookies_per_origin_[origin];
107 } 107 }
108 108
109 loaded_callback.Run(std::move(cookies)); 109 loaded_callback.Run(std::move(cookies));
110 } 110 }
111 111
112 CookieStoreConfig::CookieStoreConfig() 112 CookieStoreConfig::CookieStoreConfig()
113 : session_cookie_mode(EPHEMERAL_SESSION_COOKIES), 113 : session_cookie_mode(EPHEMERAL_SESSION_COOKIES),
114 crypto_delegate(nullptr) { 114 crypto_delegate(nullptr),
115 channel_id_service(nullptr) {
115 // Default to an in-memory cookie store. 116 // Default to an in-memory cookie store.
116 } 117 }
117 118
118 CookieStoreConfig::CookieStoreConfig( 119 CookieStoreConfig::CookieStoreConfig(
119 const base::FilePath& path, 120 const base::FilePath& path,
120 SessionCookieMode session_cookie_mode, 121 SessionCookieMode session_cookie_mode,
121 storage::SpecialStoragePolicy* storage_policy, 122 storage::SpecialStoragePolicy* storage_policy,
122 net::CookieMonsterDelegate* cookie_delegate) 123 net::CookieMonsterDelegate* cookie_delegate)
123 : path(path), 124 : path(path),
124 session_cookie_mode(session_cookie_mode), 125 session_cookie_mode(session_cookie_mode),
125 storage_policy(storage_policy), 126 storage_policy(storage_policy),
126 cookie_delegate(cookie_delegate), 127 cookie_delegate(cookie_delegate),
127 crypto_delegate(nullptr) { 128 crypto_delegate(nullptr),
129 channel_id_service(nullptr) {
128 CHECK(!path.empty() || session_cookie_mode == EPHEMERAL_SESSION_COOKIES); 130 CHECK(!path.empty() || session_cookie_mode == EPHEMERAL_SESSION_COOKIES);
129 } 131 }
130 132
131 CookieStoreConfig::~CookieStoreConfig() { 133 CookieStoreConfig::~CookieStoreConfig() {
132 } 134 }
133 135
134 std::unique_ptr<net::CookieStore> CreateCookieStore( 136 std::unique_ptr<net::CookieStore> CreateCookieStore(
135 const CookieStoreConfig& config) { 137 const CookieStoreConfig& config) {
136 // TODO(bcwhite): Remove ScopedTracker below once crbug.com/483686 is fixed. 138 // TODO(bcwhite): Remove ScopedTracker below once crbug.com/483686 is fixed.
137 tracked_objects::ScopedTracker tracking_profile( 139 tracked_objects::ScopedTracker tracking_profile(
(...skipping 29 matching lines...) Expand all
167 background_task_runner, 169 background_task_runner,
168 (config.session_cookie_mode == 170 (config.session_cookie_mode ==
169 CookieStoreConfig::RESTORED_SESSION_COOKIES), 171 CookieStoreConfig::RESTORED_SESSION_COOKIES),
170 config.crypto_delegate)); 172 config.crypto_delegate));
171 173
172 QuotaPolicyCookieStore* persistent_store = 174 QuotaPolicyCookieStore* persistent_store =
173 new QuotaPolicyCookieStore( 175 new QuotaPolicyCookieStore(
174 sqlite_store.get(), 176 sqlite_store.get(),
175 config.storage_policy.get()); 177 config.storage_policy.get());
176 178
177 cookie_monster.reset( 179 cookie_monster.reset(new net::CookieMonster(persistent_store,
178 new net::CookieMonster(persistent_store, config.cookie_delegate.get())); 180 config.cookie_delegate.get(),
181 config.channel_id_service));
179 if ((config.session_cookie_mode == 182 if ((config.session_cookie_mode ==
180 CookieStoreConfig::PERSISTANT_SESSION_COOKIES) || 183 CookieStoreConfig::PERSISTANT_SESSION_COOKIES) ||
181 (config.session_cookie_mode == 184 (config.session_cookie_mode ==
182 CookieStoreConfig::RESTORED_SESSION_COOKIES)) { 185 CookieStoreConfig::RESTORED_SESSION_COOKIES)) {
183 cookie_monster->SetPersistSessionCookies(true); 186 cookie_monster->SetPersistSessionCookies(true);
184 } 187 }
185 } 188 }
186 189
187 if (!config.cookieable_schemes.empty()) 190 if (!config.cookieable_schemes.empty())
188 cookie_monster->SetCookieableSchemes(config.cookieable_schemes); 191 cookie_monster->SetCookieableSchemes(config.cookieable_schemes);
189 192
190 return std::move(cookie_monster); 193 return std::move(cookie_monster);
191 } 194 }
192 195
193 } // namespace content 196 } // namespace content
OLDNEW
« no previous file with comments | « chrome/browser/safe_browsing/safe_browsing_service.cc ('k') | content/public/browser/cookie_store_factory.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698