Reland 125805 - Reland 124817 - A profile-keyed service for Extensions, ExtensionSystem.

Move InitExtensions into ExtensionSystem.
Remove a few accessors (ExtensionDevToolsManager, ExtensionMessageService). The others have too many callers to fix in one go.

New since last time: Moved LazyBackgroundTaskQueue into ExtensionSystem.

BUG=104095
TEST=Open and close an incognito window; should not crash.
[email protected],[email protected]

Review URL: https://chromiumcodereview.appspot.com/9959040

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130128 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc
index 40df6d2..578f549 100644
--- a/chrome/browser/chrome_content_browser_client.cc
+++ b/chrome/browser/chrome_content_browser_client.cc
@@ -31,6 +31,8 @@
 #include "chrome/browser/extensions/extension_message_handler.h"
 #include "chrome/browser/extensions/extension_process_manager.h"
 #include "chrome/browser/extensions/extension_service.h"
+#include "chrome/browser/extensions/extension_system.h"
+#include "chrome/browser/extensions/extension_system_factory.h"
 #include "chrome/browser/extensions/extension_web_ui.h"
 #include "chrome/browser/extensions/extension_webkit_preferences.h"
 #include "chrome/browser/geolocation/chrome_access_token_store.h"
@@ -621,7 +623,7 @@
   BrowserThread::PostTask(
       BrowserThread::IO, FROM_HERE,
       base::Bind(&ExtensionInfoMap::RegisterExtensionProcess,
-                 profile->GetExtensionInfoMap(),
+                 ExtensionSystemFactory::GetForProfile(profile)->info_map(),
                  extension->id(),
                  site_instance->GetProcess()->GetID(),
                  site_instance->GetId()));
@@ -650,7 +652,7 @@
   BrowserThread::PostTask(
       BrowserThread::IO, FROM_HERE,
       base::Bind(&ExtensionInfoMap::UnregisterExtensionProcess,
-                 profile->GetExtensionInfoMap(),
+                 ExtensionSystemFactory::GetForProfile(profile)->info_map(),
                  extension->id(),
                  site_instance->GetProcess()->GetID(),
                  site_instance->GetId()));