Make the content::DOMStorageContext methods callable on the main thread and hide the threading details from the embedder.
Review URL: https://chromiumcodereview.appspot.com/9704048

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126835 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/extensions/extension_data_deleter.cc b/chrome/browser/extensions/extension_data_deleter.cc
index ab92bae..7ab0f59 100644
--- a/chrome/browser/extensions/extension_data_deleter.cc
+++ b/chrome/browser/extensions/extension_data_deleter.cc
@@ -48,13 +48,8 @@
       base::Bind(
           &ExtensionDataDeleter::DeleteCookiesOnIOThread, deleter));
 
-  scoped_refptr<DOMStorageContext> dom_storage_context =
-      BrowserContext::GetDOMStorageContext(profile);
-  dom_storage_context->task_runner()->PostTask(
-      FROM_HERE,
-      base::Bind(
-          &ExtensionDataDeleter::DeleteLocalStorageInSequencedTask, deleter,
-          dom_storage_context));
+  BrowserContext::GetDOMStorageContext(profile)->DeleteForOrigin(
+      deleter->origin_id_);
 
   BrowserThread::PostTask(
       BrowserThread::WEBKIT_DEPRECATED, FROM_HERE,
@@ -127,12 +122,6 @@
   DCHECK(rv == net::OK || rv == net::ERR_IO_PENDING);
 }
 
-void ExtensionDataDeleter::DeleteLocalStorageInSequencedTask(
-    DOMStorageContext* dom_storage_context) {
-  DCHECK(dom_storage_context->task_runner()->RunsTasksOnCurrentThread());
-  dom_storage_context->DeleteForOrigin(origin_id_);
-}
-
 void ExtensionDataDeleter::DeleteIndexedDBOnWebkitThread(
     scoped_refptr<IndexedDBContext> indexed_db_context) {
   DCHECK(BrowserThread::CurrentlyOn(BrowserThread::WEBKIT_DEPRECATED));