Index: chrome/renderer/extensions/resource_request_policy.h |
diff --git a/chrome/renderer/extensions/resource_request_policy.h b/chrome/renderer/extensions/resource_request_policy.h |
index 1c2f4fdc3b7f8b6c008295516f8b5c0a6835e980..c487a6a8cb1f581d1c882d3c4305e811f2ab0415 100644 |
--- a/chrome/renderer/extensions/resource_request_policy.h |
+++ b/chrome/renderer/extensions/resource_request_policy.h |
@@ -5,7 +5,10 @@ |
#ifndef CHROME_RENDERER_EXTENSIONS_RESOURCE_REQUEST_POLICY_H_ |
#define CHROME_RENDERER_EXTENSIONS_RESOURCE_REQUEST_POLICY_H_ |
+#include <set> |
+ |
#include "base/macros.h" |
+#include "extensions/common/extension_id.h" |
#include "ui/base/page_transition_types.h" |
class GURL; |
@@ -15,13 +18,17 @@ class WebLocalFrame; |
} |
namespace extensions { |
- |
class Dispatcher; |
+class Extension; |
// Encapsulates the policy for when chrome-extension:// URLs can be requested. |
class ResourceRequestPolicy { |
public: |
explicit ResourceRequestPolicy(Dispatcher* dispatcher); |
+ ~ResourceRequestPolicy(); |
+ |
+ void OnExtensionLoaded(const Extension& extension); |
+ void OnExtensionUnloaded(const ExtensionId& extension); |
// Returns true if the chrome-extension:// |resource_url| can be requested |
// from |frame_url|. In some cases this decision is made based upon how |
@@ -34,6 +41,10 @@ class ResourceRequestPolicy { |
private: |
Dispatcher* dispatcher_; |
+ // The set of extension IDs with any potentially web- or webview-accessible |
+ // resources. |
+ std::set<ExtensionId> web_accessible_ids_; |
+ |
DISALLOW_COPY_AND_ASSIGN(ResourceRequestPolicy); |
}; |