Index: chrome/browser/plugins/chrome_plugin_service_filter.h |
diff --git a/chrome/browser/plugins/chrome_plugin_service_filter.h b/chrome/browser/plugins/chrome_plugin_service_filter.h |
index f3876e145a6ed4307b0d7a47c37183b874932599..88c9ff47e2c5be8b8b92ceacfaed97afc96e20ec 100644 |
--- a/chrome/browser/plugins/chrome_plugin_service_filter.h |
+++ b/chrome/browser/plugins/chrome_plugin_service_filter.h |
@@ -6,7 +6,9 @@ |
#define CHROME_BROWSER_PLUGINS_CHROME_PLUGIN_SERVICE_FILTER_H_ |
#include <map> |
+#include <memory> |
#include <set> |
+#include <string> |
#include <vector> |
#include "base/containers/hash_tables.h" |
@@ -37,10 +39,7 @@ class ChromePluginServiceFilter : public content::PluginServiceFilter, |
static ChromePluginServiceFilter* GetInstance(); |
// This method should be called on the UI thread. |
- void RegisterResourceContext( |
- scoped_refptr<PluginPrefs> plugin_prefs, |
- scoped_refptr<HostContentSettingsMap> host_content_settings_map, |
- const void* context); |
+ void RegisterResourceContext(Profile* profile, const void* context); |
void UnregisterResourceContext(const void* context); |
@@ -63,7 +62,9 @@ class ChromePluginServiceFilter : public content::PluginServiceFilter, |
bool load_blocked, |
const std::string& identifier); |
- // PluginServiceFilter implementation: |
+ // PluginServiceFilter implementation. |
+ // If |url| is not available, the same GURL passed as |policy_url| should be |
+ // passed. |
bool IsPluginAvailable(int render_process_id, |
int render_frame_id, |
const void* context, |
@@ -77,6 +78,7 @@ class ChromePluginServiceFilter : public content::PluginServiceFilter, |
const base::FilePath& path) override; |
private: |
+ struct ContextInfo; |
friend struct base::DefaultSingletonTraits<ChromePluginServiceFilter>; |
struct OverriddenPlugin { |
@@ -111,11 +113,8 @@ class ChromePluginServiceFilter : public content::PluginServiceFilter, |
content::NotificationRegistrar registrar_; |
base::Lock lock_; // Guards access to member variables. |
- typedef std::map<const void*, scoped_refptr<PluginPrefs> > ResourceContextMap; |
- ResourceContextMap plugin_prefs_; |
- std::map<const void*, scoped_refptr<HostContentSettingsMap>> |
- host_content_settings_maps_; |
+ std::map<const void*, std::unique_ptr<ContextInfo>> resource_context_map_; |
std::map<int, ProcessDetails> plugin_details_; |
}; |