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

Unified Diff: chrome/common/extensions/api/extension_api.h

Issue 10025007: Convert tabs, windows, and extension APIs to feature system. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: blah Created 8 years, 8 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
« no previous file with comments | « chrome/common/extensions/api/extension.json ('k') | chrome/common/extensions/api/extension_api.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/common/extensions/api/extension_api.h
diff --git a/chrome/common/extensions/api/extension_api.h b/chrome/common/extensions/api/extension_api.h
index 1d489c34225d038e1b8d9c3d75c206958b747ae3..b02aaaa0b85e2742490abd876d4866d301e933d4 100644
--- a/chrome/common/extensions/api/extension_api.h
+++ b/chrome/common/extensions/api/extension_api.h
@@ -32,6 +32,7 @@ class ExtensionPermissionSet;
namespace extensions {
+class ExtensionAPIFeature;
class Feature;
// C++ Wrapper for the JSON API definitions in chrome/common/extensions/api/.
@@ -158,6 +159,10 @@ class ExtensionAPI : public FeatureProvider {
// TODO(aa): Remove this when all APIs are converted to the feature system.
void GetAPIsMatchingURL(const GURL& url, std::set<std::string>* out);
+ // Returns true if a namespace has been converted to the feature system, or
+ // false otherwise.
+ bool IsControlledByFeatureSystem(const std::string& api_name) const;
+
// Map from each API that hasn't been loaded yet to the schema which defines
// it. Note that there may be multiple APIs per schema.
std::map<std::string, base::StringPiece> unloaded_schemas_;
@@ -175,9 +180,8 @@ class ExtensionAPI : public FeatureProvider {
// APIs that have URL matching permissions.
std::map<std::string, URLPatternSet> url_matching_apis_;
- typedef std::map<std::string, linked_ptr<Feature> > FeatureMap;
- typedef std::map<std::string, linked_ptr<FeatureMap> > APIFeatureMap;
- APIFeatureMap features_;
+ typedef std::map<std::string, linked_ptr<ExtensionAPIFeature> > FeatureMap;
+ FeatureMap features_;
// FeatureProviders used for resolving dependencies.
typedef std::map<std::string, FeatureProvider*> FeatureProviderMap;
« no previous file with comments | « chrome/common/extensions/api/extension.json ('k') | chrome/common/extensions/api/extension_api.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698