| Index: chrome/browser/worker_host/worker_process_host.h
|
| ===================================================================
|
| --- chrome/browser/worker_host/worker_process_host.h (revision 68122)
|
| +++ chrome/browser/worker_host/worker_process_host.h (working copy)
|
| @@ -7,18 +7,19 @@
|
| #pragma once
|
|
|
| #include <list>
|
| +#include <vector>
|
|
|
| #include "base/basictypes.h"
|
| #include "base/callback.h"
|
| #include "base/file_path.h"
|
| #include "base/ref_counted.h"
|
| #include "chrome/browser/browser_child_process_host.h"
|
| +#include "chrome/browser/browser_io_message_filter.h"
|
| #include "chrome/browser/net/chrome_url_request_context.h"
|
| #include "chrome/browser/worker_host/worker_document_set.h"
|
| #include "googleurl/src/gurl.h"
|
| #include "ipc/ipc_channel.h"
|
|
|
| -class AppCacheDispatcherHost;
|
| class BlobDispatcherHost;
|
| class ChromeURLRequestContext;
|
| class ChromeURLRequestContextGetter;
|
| @@ -159,9 +160,15 @@
|
| uint32 request_id,
|
| const ViewHostMsg_Resource_Request& request_data);
|
|
|
| + // IPC::Channel::Listener implementation:
|
| // Called when a message arrives from the worker process.
|
| virtual void OnMessageReceived(const IPC::Message& message);
|
| + virtual void OnChannelConnected(int32 peer_pid);
|
| + virtual void OnChannelError();
|
|
|
| + // Creates and adds the message filters.
|
| + void CreateMessageFilters();
|
| +
|
| // Called when the process has been launched successfully.
|
| virtual void OnProcessLaunched();
|
|
|
| @@ -207,13 +214,17 @@
|
| Instances instances_;
|
|
|
| scoped_refptr<ChromeURLRequestContext> request_context_;
|
| - scoped_ptr<AppCacheDispatcherHost> appcache_dispatcher_host_;
|
| scoped_refptr<DatabaseDispatcherHost> db_dispatcher_host_;
|
| scoped_ptr<BlobDispatcherHost> blob_dispatcher_host_;
|
| scoped_refptr<FileSystemDispatcherHost> file_system_dispatcher_host_;
|
| scoped_refptr<FileUtilitiesDispatcherHost> file_utilities_dispatcher_host_;
|
| scoped_refptr<MimeRegistryDispatcher> mime_registry_dispatcher_;
|
|
|
| + // Holds all the IPC message filters. Since the worker process host is on the
|
| + // IO thread, we don't have a IPC::ChannelProxy and so we manage filters
|
| + // manually.
|
| + std::vector<scoped_refptr<BrowserIOMessageFilter> > filters_;
|
| +
|
| // A callback to create a routing id for the associated worker process.
|
| scoped_ptr<CallbackWithReturnValue<int>::Type> next_route_id_callback_;
|
|
|
|
|