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

Unified Diff: content/browser/net/sqlite_persistent_cookie_store.cc

Issue 12546016: Remove the Extensions URLRequestContext (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: most unittests pass Created 7 years, 5 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 side-by-side diff with in-line comments
Download patch
Index: content/browser/net/sqlite_persistent_cookie_store.cc
diff --git a/content/browser/net/sqlite_persistent_cookie_store.cc b/content/browser/net/sqlite_persistent_cookie_store.cc
index c23692d475071502c2b8d1d081fab3ffdebd6095..dad4b62117d3f84555ec041e834118d23179913f 100644
--- a/content/browser/net/sqlite_persistent_cookie_store.cc
+++ b/content/browser/net/sqlite_persistent_cookie_store.cc
@@ -1194,28 +1194,65 @@ SQLitePersistentCookieStore::~SQLitePersistentCookieStore() {
// a reference if the background runner has not run Close() yet.
}
-net::CookieStore* CreatePersistentCookieStore(
+CookieStoreConfig::CookieStoreConfig(
+ bool in_memory,
const base::FilePath& path,
bool restore_old_session_cookies,
quota::SpecialStoragePolicy* storage_policy,
- net::CookieMonster::Delegate* cookie_monster_delegate) {
+ net::CookieMonsterDelegate* cookie_delegate)
+ : in_memory(in_memory),
+ path(path),
+ restore_old_session_cookies(restore_old_session_cookies),
+ storage_policy(storage_policy),
+ cookie_delegate(cookie_delegate) {
+}
+
+CookieStoreConfig::~CookieStoreConfig() {
+}
+
+CookieStoreConfig CookieStoreConfig::InMemory() {
+ return CookieStoreConfig(true, base::FilePath(), false, NULL, NULL);
+}
+
+CookieStoreConfig CookieStoreConfig::InMemoryWithOptions(
+ quota::SpecialStoragePolicy* storage_policy,
+ net::CookieMonsterDelegate* cookie_delegate) {
+ // TODO(ajwong): Why in the world do we want a storage policy with InMemory?
+ return CookieStoreConfig(true, base::FilePath(),
+ false, storage_policy, cookie_delegate);
+}
+
+CookieStoreConfig CookieStoreConfig::Persistent(
+ const base::FilePath& path,
+ bool restore_old_session_cookies) {
+ return CookieStoreConfig(false, path, restore_old_session_cookies, NULL,
+ NULL);
+}
+
+CookieStoreConfig CookieStoreConfig::PersistentWithOptions(
+ const base::FilePath& path,
+ bool restore_old_session_cookies,
+ quota::SpecialStoragePolicy* storage_policy,
+ net::CookieMonsterDelegate* cookie_delegate) {
+ return CookieStoreConfig(false, path, restore_old_session_cookies,
+ storage_policy, cookie_delegate);
+}
+
+net::CookieStore* CreateCookieStore(const CookieStoreConfig& config) {
+ if (config.in_memory) {
+ return new net::CookieMonster(NULL, config.cookie_delegate);
+ }
+
SQLitePersistentCookieStore* persistent_store =
new SQLitePersistentCookieStore(
- path,
+ config.path,
BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO),
BrowserThread::GetBlockingPool()->GetSequencedTaskRunner(
BrowserThread::GetBlockingPool()->GetSequenceToken()),
- restore_old_session_cookies,
- storage_policy);
- net::CookieMonster* cookie_monster =
- new net::CookieMonster(persistent_store, cookie_monster_delegate);
-
- const std::string cookie_priority_experiment_group =
- base::FieldTrialList::FindFullName("CookieRetentionPriorityStudy");
- cookie_monster->SetPriorityAwareGarbageCollection(
- cookie_priority_experiment_group == "ExperimentOn");
-
- return cookie_monster;
+ config.restore_old_session_cookies,
+ config.storage_policy);
+ return new net::CookieMonster(persistent_store,
+ config.cookie_delegate);
}
} // namespace content

Powered by Google App Engine
This is Rietveld 408576698