| Index: extensions/renderer/api_bindings_system.h
|
| diff --git a/extensions/renderer/api_bindings_system.h b/extensions/renderer/api_bindings_system.h
|
| index e40b898bcee5c215150694c27dd9ba494f2477f1..844051cc6cc528525721ed57b2e54b54e8c0c933 100644
|
| --- a/extensions/renderer/api_bindings_system.h
|
| +++ b/extensions/renderer/api_bindings_system.h
|
| @@ -70,6 +70,11 @@ class APIBindingsSystem {
|
| v8::Local<v8::Context> context,
|
| const base::ListValue& response);
|
|
|
| + // Returns the APIBindingHooks object for the given api to allow for
|
| + // registering custom hooks. These must be registered *before* the
|
| + // binding is instantiated.
|
| + APIBindingHooks* GetHooksForAPI(const std::string& api_name);
|
| +
|
| private:
|
| // Creates a new APIBinding for the given |api_name|.
|
| std::unique_ptr<APIBinding> CreateNewAPIBinding(const std::string& api_name);
|
| @@ -95,6 +100,11 @@ class APIBindingsSystem {
|
| // created lazily.
|
| std::map<std::string, std::unique_ptr<APIBinding>> api_bindings_;
|
|
|
| + // A map from api_name -> APIBindingHooks for registering custom hooks.
|
| + // TODO(devlin): This map is pretty pointer-y. Is that going to be a
|
| + // performance concern?
|
| + std::map<std::string, std::unique_ptr<APIBindingHooks>> binding_hooks_;
|
| +
|
| // The method to retrieve the DictionaryValue describing a given extension
|
| // API. Curried in for testing purposes so we can use fake APIs.
|
| GetAPISchemaMethod get_api_schema_;
|
|
|