diff options
author | michaeln@chromium.org <michaeln@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-05-08 00:32:44 +0000 |
---|---|---|
committer | michaeln@chromium.org <michaeln@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-05-08 00:32:44 +0000 |
commit | 07331d79c72e07472722ed527ddfb3ac7f0b2c15 (patch) | |
tree | 51093c3e27efb1140d93282fa087723a01d23619 /chrome/worker/worker_thread.h | |
parent | a0c7147644ac9b90c1730916bdab70d602a40fc9 (diff) | |
download | chromium_src-07331d79c72e07472722ed527ddfb3ac7f0b2c15.zip chromium_src-07331d79c72e07472722ed527ddfb3ac7f0b2c15.tar.gz chromium_src-07331d79c72e07472722ed527ddfb3ac7f0b2c15.tar.bz2 |
Add some more IPC plumbing and scaffolding to support having appcache work in workers. Everything is still stubbed out at runtime (runtime feature is still disabled in the worker process, and the values in the IPC messages are all zero'd out).
* Widen the CreateWorker IPC message sent from the browser to the worker process to contain additional data needed to initialize an appcache for that worker.
* Add a new worker specific WorkerWebApplicationCacheHostImpl class and instantiate one with the initialization data received in the IPC.
* Give the WorkerThread an AppCacheDispatcher.
* Propagate the cmd-line argument to disable the appcache to the worker process.
* Fixup DEPs to show that chrome/workers depends on webkit/appcache
BUG=39368
TEST=thinking about what tests to put together for this CL
Review URL: http://codereview.chromium.org/1719007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46765 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/worker/worker_thread.h')
-rw-r--r-- | chrome/worker/worker_thread.h | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/chrome/worker/worker_thread.h b/chrome/worker/worker_thread.h index 727316c..0d905de 100644 --- a/chrome/worker/worker_thread.h +++ b/chrome/worker/worker_thread.h @@ -10,10 +10,12 @@ #include "chrome/common/child_thread.h" class GURL; +class AppCacheDispatcher; class DBMessageFilter; class WebDatabaseObserverImpl; class WebWorkerStubBase; class WorkerWebKitClientImpl; +struct WorkerProcessMsg_CreateWorker_Params; class WorkerThread : public ChildThread { public: @@ -27,17 +29,19 @@ class WorkerThread : public ChildThread { void AddWorkerStub(WebWorkerStubBase* stub); void RemoveWorkerStub(WebWorkerStubBase* stub); - private: - scoped_ptr<WebDatabaseObserverImpl> web_database_observer_impl_; + AppCacheDispatcher* appcache_dispatcher() { + return appcache_dispatcher_.get(); + } + private: virtual void OnControlMessageReceived(const IPC::Message& msg); virtual void OnChannelError(); - void OnCreateWorker( - const GURL& url, bool is_shared, const string16& name, int route_id); + void OnCreateWorker(const WorkerProcessMsg_CreateWorker_Params& params); scoped_ptr<WorkerWebKitClientImpl> webkit_client_; - + scoped_ptr<AppCacheDispatcher> appcache_dispatcher_; + scoped_ptr<WebDatabaseObserverImpl> web_database_observer_impl_; scoped_refptr<DBMessageFilter> db_message_filter_; typedef std::set<WebWorkerStubBase*> WorkerStubsList; |