Index: chrome/renderer/pepper/pepper_extensions_common_host.h |
diff --git a/chrome/renderer/pepper/pepper_extensions_common_host.h b/chrome/renderer/pepper/pepper_extensions_common_host.h |
index 86f932a1a80e335f7e60a0ca9c5bedcc1f3514e4..054709d3732bf978cdbbb247657a16e5fb0f2de0 100644 |
--- a/chrome/renderer/pepper/pepper_extensions_common_host.h |
+++ b/chrome/renderer/pepper/pepper_extensions_common_host.h |
@@ -11,6 +11,7 @@ |
#include "base/basictypes.h" |
#include "base/compiler_specific.h" |
#include "base/memory/linked_ptr.h" |
+#include "chrome/renderer/extensions/request_sender.h" |
#include "ppapi/host/resource_host.h" |
namespace base { |
@@ -27,9 +28,14 @@ struct ReplyMessageContext; |
} |
} |
+namespace extensions { |
+class Dispatcher; |
+} |
+ |
namespace chrome { |
-class PepperExtensionsCommonHost : public ppapi::host::ResourceHost { |
+class PepperExtensionsCommonHost : public ppapi::host::ResourceHost, |
+ public extensions::RequestSender::Source { |
public: |
virtual ~PepperExtensionsCommonHost(); |
@@ -42,24 +48,34 @@ class PepperExtensionsCommonHost : public ppapi::host::ResourceHost { |
const IPC::Message& msg, |
ppapi::host::HostMessageContext* context) OVERRIDE; |
+ // extensions::RequestSender::Source implementation. |
+ virtual extensions::ChromeV8Context* GetContext() OVERRIDE; |
+ virtual void OnResponseReceived(const std::string& name, |
+ int request_id, |
+ bool success, |
+ const base::ListValue& response, |
+ const std::string& error) OVERRIDE; |
private: |
typedef std::map<int, linked_ptr<ppapi::host::ReplyMessageContext> > |
PendingRequestMap; |
PepperExtensionsCommonHost(content::RendererPpapiHost* host, |
PP_Instance instance, |
- PP_Resource resource); |
+ PP_Resource resource, |
+ extensions::Dispatcher* dispatcher); |
int32_t OnPost(ppapi::host::HostMessageContext* context, |
const std::string& request_name, |
- const base::ListValue& args); |
+ base::ListValue& args); |
int32_t OnCall(ppapi::host::HostMessageContext* context, |
const std::string& request_name, |
- const base::ListValue& args); |
+ base::ListValue& args); |
// Non-owning pointer. |
content::RendererPpapiHost* renderer_ppapi_host_; |
+ // Non-owning pointer. |
+ extensions::Dispatcher* dispatcher_; |
PendingRequestMap pending_request_map_; |