Index: content/browser/ppapi_plugin_process_host.h |
=================================================================== |
--- content/browser/ppapi_plugin_process_host.h (revision 138610) |
+++ content/browser/ppapi_plugin_process_host.h (working copy) |
@@ -7,11 +7,13 @@ |
#pragma once |
#include <queue> |
+#include <string> |
#include "base/basictypes.h" |
#include "base/file_path.h" |
+#include "base/memory/ref_counted.h" |
#include "base/memory/scoped_ptr.h" |
-#include "base/memory/ref_counted.h" |
+#include "content/browser/renderer_host/pepper_file_message_filter.h" |
#include "content/browser/renderer_host/pepper_message_filter.h" |
#include "content/public/browser/browser_child_process_host_delegate.h" |
#include "content/public/browser/browser_child_process_host_iterator.h" |
@@ -65,6 +67,7 @@ |
static PpapiPluginProcessHost* CreatePluginHost( |
const content::PepperPluginInfo& info, |
+ const FilePath& data_directory_path, |
net::HostResolver* host_resolver); |
static PpapiPluginProcessHost* CreateBrokerHost( |
const content::PepperPluginInfo& info); |
@@ -77,6 +80,9 @@ |
void OpenChannelToPlugin(Client* client); |
const FilePath& plugin_path() const { return plugin_path_; } |
+ const FilePath& profile_data_directory() const { |
+ return profile_data_directory_; |
+ } |
// The client pointer must remain valid until its callback is issued. |
@@ -85,7 +91,9 @@ |
// Constructors for plugin and broker process hosts, respectively. |
// You must call Init before doing anything else. |
- PpapiPluginProcessHost(net::HostResolver* host_resolver); |
+ PpapiPluginProcessHost(const std::string& plugin_name, |
+ const FilePath& profile_data_directory, |
+ net::HostResolver* host_resolver); |
PpapiPluginProcessHost(); |
// Actually launches the process with the given plugin info. Returns true |
@@ -108,6 +116,9 @@ |
// Handles most requests from the plugin. May be NULL. |
scoped_refptr<PepperMessageFilter> filter_; |
+ // Handles filesystem requests from flash plugins. May be NULL. |
+ scoped_refptr<PepperFileMessageFilter> file_filter_; |
+ |
// Observes network changes. May be NULL. |
scoped_ptr<PluginNetworkObserver> network_observer_; |
@@ -122,6 +133,9 @@ |
// Path to the plugin library. |
FilePath plugin_path_; |
+ // Path to the per-profile data directory. |
+ FilePath profile_data_directory_; |
+ |
const bool is_broker_; |
scoped_ptr<BrowserChildProcessHostImpl> process_; |