Index: chrome/browser/plugin_data_remover.h |
diff --git a/chrome/browser/plugin_data_remover.h b/chrome/browser/plugin_data_remover.h |
index c4557044ba50bf15320135aa73b862b5fa05a6f6..c32f727f11c75e715c92274d183597ce3a358c6d 100644 |
--- a/chrome/browser/plugin_data_remover.h |
+++ b/chrome/browser/plugin_data_remover.h |
@@ -10,6 +10,7 @@ |
#include "base/time.h" |
#include "content/browser/plugin_process_host.h" |
+class Profile; |
class Task; |
namespace base { |
@@ -21,7 +22,7 @@ class PluginDataRemover : public base::RefCountedThreadSafe<PluginDataRemover>, |
public PluginProcessHost::Client, |
public IPC::Channel::Listener { |
public: |
- PluginDataRemover(); |
+ explicit PluginDataRemover(Profile* profile); |
// The plug-in whose data should be removed (usually Flash) is specified via |
// its MIME type. This method sets a different MIME type in order to call a |
@@ -47,6 +48,7 @@ class PluginDataRemover : public base::RefCountedThreadSafe<PluginDataRemover>, |
// PluginProcessHost::Client methods. |
virtual int ID(); |
virtual bool OffTheRecord(); |
+ virtual const content::ResourceContext* GetResourceContext(); |
virtual void SetPluginInfo(const webkit::npapi::WebPluginInfo& info); |
virtual void OnChannelOpened(const IPC::ChannelHandle& handle); |
virtual void OnError(); |
@@ -63,6 +65,8 @@ class PluginDataRemover : public base::RefCountedThreadSafe<PluginDataRemover>, |
// Signals that we are finished with removing data (successful or not). This |
// method is safe to call multiple times. |
void SignalDone(); |
+ // Starts opening a new channel to the plug-in. |
+ void OpenChannel(); |
// Connects the client side of a newly opened plug-in channel. |
void ConnectToChannel(const IPC::ChannelHandle& handle); |
// Handles the PluginHostMsg_ClearSiteDataResult message. |
@@ -77,6 +81,8 @@ class PluginDataRemover : public base::RefCountedThreadSafe<PluginDataRemover>, |
base::Time remove_start_time_; |
// The point in time from which on we remove data. |
base::Time begin_time_; |
+ // The resource context for the profile. |
+ const content::ResourceContext& context_; |
scoped_ptr<base::WaitableEvent> event_; |
// We own the channel, but it's used on the IO thread, so it needs to be |
// deleted there. It's NULL until we have opened a connection to the plug-in |