diff options
author | michaeln@google.com <michaeln@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-03-20 01:16:59 +0000 |
---|---|---|
committer | michaeln@google.com <michaeln@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-03-20 01:16:59 +0000 |
commit | 735e20c7177f5ec034d8198b4c7549362b241f54 (patch) | |
tree | 845880a62234eda061e3e32c3eddccbe861afcc5 /content/browser/browser_context.cc | |
parent | 4a3e2715c9d3801e315714422b30f4cb62cea295 (diff) | |
download | chromium_src-735e20c7177f5ec034d8198b4c7549362b241f54.zip chromium_src-735e20c7177f5ec034d8198b4c7549362b241f54.tar.gz chromium_src-735e20c7177f5ec034d8198b4c7549362b241f54.tar.bz2 |
Revert 127575 - Revert 127573 - DOMStorageContextImpl that's implemented in terms of the new dom_storage classes. Also compile out existing tests that no longer apply when ENABLE_NEW_DOM_STORAGE_BACKEND is defined.
And add the missing #include to fix the compile error.
BUG=106763
Review URL: https://chromiumcodereview.appspot.com/9695013
TBR=michaeln@google.com
Review URL: https://chromiumcodereview.appspot.com/9726022
TBR=dgrogan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9726023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@127604 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser/browser_context.cc')
-rw-r--r-- | content/browser/browser_context.cc | 35 |
1 files changed, 16 insertions, 19 deletions
diff --git a/content/browser/browser_context.cc b/content/browser/browser_context.cc index 8244ad6..7f7b556 100644 --- a/content/browser/browser_context.cc +++ b/content/browser/browser_context.cc @@ -34,6 +34,8 @@ static const char* kQuotaManagerKeyName = "content_quota_manager"; namespace content { +namespace { + void CreateQuotaManagerAndClients(BrowserContext* context) { if (context->GetUserData(kQuotaManagerKeyName)) { DCHECK(context->GetUserData(kDatabaseTrackerKeyName)); @@ -115,9 +117,7 @@ void SaveSessionStateOnIOThread(ResourceContext* resource_context) { } void SaveSessionStateOnWebkitThread( - scoped_refptr<DOMStorageContextImpl> dom_storage_context, scoped_refptr<IndexedDBContextImpl> indexed_db_context) { - dom_storage_context->SaveSessionState(); indexed_db_context->SaveSessionState(); } @@ -125,11 +125,13 @@ void PurgeMemoryOnIOThread(ResourceContext* resource_context) { ResourceContext::GetAppCacheService(resource_context)->PurgeMemory(); } -void PurgeMemoryOnWebkitThread( - scoped_refptr<DOMStorageContextImpl> dom_storage_context) { - dom_storage_context->PurgeMemory(); +DOMStorageContextImpl* GetDOMStorageContextImpl(BrowserContext* context) { + return static_cast<DOMStorageContextImpl*>( + BrowserContext::GetDOMStorageContext(context)); } +} // namespace + QuotaManager* BrowserContext::GetQuotaManager(BrowserContext* context) { CreateQuotaManagerAndClients(context); return UserDataAdapter<QuotaManager>::Get(context, kQuotaManagerKeyName); @@ -188,23 +190,20 @@ void BrowserContext::SaveSessionState(BrowserContext* browser_context) { browser_context->GetResourceContext())); } + GetDOMStorageContextImpl(browser_context)->SaveSessionState(); + if (BrowserThread::IsMessageLoopValid(BrowserThread::WEBKIT_DEPRECATED)) { - DOMStorageContextImpl* dom_context = static_cast<DOMStorageContextImpl*>( - GetDOMStorageContext(browser_context)); IndexedDBContextImpl* indexed_db = static_cast<IndexedDBContextImpl*>( GetIndexedDBContext(browser_context)); BrowserThread::PostTask( BrowserThread::WEBKIT_DEPRECATED, FROM_HERE, base::Bind(&SaveSessionStateOnWebkitThread, - make_scoped_refptr(dom_context), make_scoped_refptr(indexed_db))); } } void BrowserContext::ClearLocalOnDestruction(BrowserContext* browser_context) { - DOMStorageContextImpl* dom_context = static_cast<DOMStorageContextImpl*>( - GetDOMStorageContext(browser_context)); - dom_context->set_clear_local_state_on_exit(true); + GetDOMStorageContextImpl(browser_context)->SetClearLocalState(true); IndexedDBContextImpl* indexed_db = static_cast<IndexedDBContextImpl*>( GetIndexedDBContext(browser_context)); @@ -228,14 +227,7 @@ void BrowserContext::PurgeMemory(BrowserContext* browser_context) { browser_context->GetResourceContext())); } - if (BrowserThread::IsMessageLoopValid(BrowserThread::WEBKIT_DEPRECATED)) { - DOMStorageContextImpl* dom_context = static_cast<DOMStorageContextImpl*>( - GetDOMStorageContext(browser_context)); - BrowserThread::PostTask( - BrowserThread::WEBKIT_DEPRECATED, FROM_HERE, - base::Bind(&PurgeMemoryOnWebkitThread, - make_scoped_refptr(dom_context))); - } + GetDOMStorageContextImpl(browser_context)->PurgeMemory(); } BrowserContext::~BrowserContext() { @@ -248,6 +240,10 @@ BrowserContext::~BrowserContext() { GetDatabaseTracker(this))); } +#ifdef ENABLE_NEW_DOM_STORAGE_BACKEND + if (GetUserData(kDOMStorageContextKeyName)) + GetDOMStorageContextImpl(this)->Shutdown(); +#else if (GetUserData(kDOMStorageContextKeyName) && BrowserThread::IsMessageLoopValid(BrowserThread::WEBKIT_DEPRECATED)) { DOMStorageContextImpl* dom_storage_context = @@ -256,6 +252,7 @@ BrowserContext::~BrowserContext() { BrowserThread::ReleaseSoon( BrowserThread::WEBKIT_DEPRECATED, FROM_HERE, dom_storage_context); } +#endif } } // namespace content |