summaryrefslogtreecommitdiffstats
path: root/chrome/browser/extensions/extension_process_manager.h
diff options
context:
space:
mode:
authormpcomplete@google.com <mpcomplete@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-16 22:27:21 +0000
committermpcomplete@google.com <mpcomplete@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-16 22:27:21 +0000
commit69f1be8a969af735b2173349c9bd57a174a9bf16 (patch)
treebf6bda97490b5884ca6a15f9c1b7d923bcb40886 /chrome/browser/extensions/extension_process_manager.h
parent1c86467953f1e633be06ca65e3a38113dcbe63e8 (diff)
downloadchromium_src-69f1be8a969af735b2173349c9bd57a174a9bf16.zip
chromium_src-69f1be8a969af735b2173349c9bd57a174a9bf16.tar.gz
chromium_src-69f1be8a969af735b2173349c9bd57a174a9bf16.tar.bz2
Remove ExtensionProcessManager and move its functionality onto
ExtensionsService. Also add "chrome-extension" to the list of schemes that BrowsingInstance groups per-site, instead of per-tab. This means that navigating to an extension URL will use the same process as a running extension toolstrip. Review URL: http://codereview.chromium.org/77002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13887 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions/extension_process_manager.h')
-rwxr-xr-xchrome/browser/extensions/extension_process_manager.h63
1 files changed, 0 insertions, 63 deletions
diff --git a/chrome/browser/extensions/extension_process_manager.h b/chrome/browser/extensions/extension_process_manager.h
deleted file mode 100755
index 7e56fc8..0000000
--- a/chrome/browser/extensions/extension_process_manager.h
+++ /dev/null
@@ -1,63 +0,0 @@
-// Copyright (c) 2009 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_PROCESS_MANAGER_H_
-#define CHROME_BROWSER_EXTENSIONS_EXTENSION_PROCESS_MANAGER_H_
-
-#include "base/ref_counted.h"
-
-#include <map>
-#include <string>
-
-class Browser;
-class BrowsingInstance;
-class Extension;
-class ExtensionView;
-class GURL;
-class ListValue;
-class Profile;
-class SiteInstance;
-
-// This class controls what process new extension instances use. We use the
-// BrowsingInstance site grouping rules to group extensions. Since all
-// resources in a given extension have the same origin, they will be grouped
-// into the same process.
-//
-// We separate further by Profile: each Profile has its own group of extension
-// processes that never overlap with other Profiles.
-class ExtensionProcessManager {
- public:
- static ExtensionProcessManager* GetInstance();
-
- // These are public for use by Singleton. Do not instantiate or delete
- // manually.
- ExtensionProcessManager();
- ~ExtensionProcessManager();
-
- // Creates a new ExtensionView, grouping it in the appropriate SiteInstance
- // (and therefore process) based on the URL and profile.
- ExtensionView* CreateView(Extension* extension,
- const GURL& url,
- Browser* browser);
-
- // Returns the SiteInstance that the given URL belongs to in this profile.
- SiteInstance* GetSiteInstanceForURL(const GURL& url, Profile* profile);
-
- // Sends the event to each renderer process within the current profile that
- // contain at least one extension renderer.
- void DispatchEventToRenderers(Profile *profile,
- const std::string& event_name,
- const ListValue& data);
- private:
- // Returns our BrowsingInstance for the given profile. Lazily created and
- // cached.
- BrowsingInstance* GetBrowsingInstance(Profile* profile);
-
- // Cache of BrowsingInstances grouped by Profile.
- typedef std::map<Profile*, scoped_refptr<BrowsingInstance> >
- BrowsingInstanceMap;
- BrowsingInstanceMap browsing_instance_map_;
-};
-
-#endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_PROCESS_MANAGER_H_