Chromium Code Reviews| Index: content/browser/renderer_host/pepper/pepper_tcp_socket_message_filter.h |
| diff --git a/content/browser/renderer_host/pepper/pepper_tcp_socket_message_filter.h b/content/browser/renderer_host/pepper/pepper_tcp_socket_message_filter.h |
| index d0e672aa7a24e59c5a8ae14b24950fbf4dadb6a4..25fd2fcacd8a64583a6d951953f03636bf7081bf 100644 |
| --- a/content/browser/renderer_host/pepper/pepper_tcp_socket_message_filter.h |
| +++ b/content/browser/renderer_host/pepper/pepper_tcp_socket_message_filter.h |
| @@ -12,6 +12,7 @@ |
| #include "base/compiler_specific.h" |
| #include "base/memory/ref_counted.h" |
| #include "base/memory/scoped_ptr.h" |
| +#include "content/browser/renderer_host/pepper/browser_ppapi_host_impl.h" |
| #include "content/browser/renderer_host/pepper/ssl_context_helper.h" |
| #include "content/common/content_export.h" |
| #include "net/base/address_list.h" |
| @@ -47,7 +48,8 @@ class ContentBrowserPepperHostFactory; |
| class ResourceContext; |
| class CONTENT_EXPORT PepperTCPSocketMessageFilter |
| - : public ppapi::host::ResourceMessageFilter { |
| + : public ppapi::host::ResourceMessageFilter, |
| + public BrowserPpapiHostImpl::InstanceObserver { |
| public: |
| PepperTCPSocketMessageFilter(ContentBrowserPepperHostFactory* factory, |
| BrowserPpapiHostImpl* host, |
| @@ -78,6 +80,9 @@ class CONTENT_EXPORT PepperTCPSocketMessageFilter |
| const IPC::Message& msg, |
| ppapi::host::HostMessageContext* context) override; |
| + // BrowserPpapiHostImpl::InstanceObserver overrides. |
| + void OnThrottleStateChanged(bool is_throttled) override; |
| + |
| int32_t OnMsgBind(const ppapi::host::HostMessageContext* context, |
| const PP_NetAddress_Private& net_addr); |
| int32_t OnMsgConnect(const ppapi::host::HostMessageContext* context, |
| @@ -176,7 +181,7 @@ class CONTENT_EXPORT PepperTCPSocketMessageFilter |
| // The following fields are used only on the IO thread. |
| // Non-owning ptr. |
| - ppapi::host::PpapiHost* ppapi_host_; |
| + BrowserPpapiHostImpl* host_; |
| // Non-owning ptr. |
| ContentBrowserPepperHostFactory* factory_; |
| PP_Instance instance_; |
| @@ -226,6 +231,11 @@ class CONTENT_EXPORT PepperTCPSocketMessageFilter |
| scoped_ptr<net::TCPSocket> accepted_socket_; |
| net::IPEndPoint accepted_address_; |
| + // If the plugin is throttled, we completing socket reads until unthrottled. |
|
dmichael (off chromium)
2015/02/18 18:58:09
I think you meant something like "...we won't comp
tommycli
2015/02/18 19:19:10
Done. I accidentally the whole word.
|
| + bool pending_read_on_unthrottle_; |
| + ppapi::host::ReplyMessageContext pending_read_reply_message_context_; |
| + int pending_read_net_result_; |
| + |
| DISALLOW_COPY_AND_ASSIGN(PepperTCPSocketMessageFilter); |
| }; |