OLD | NEW |
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_BROWSER_WORKER_HOST_WORKER_PROCESS_HOST_H_ | 5 #ifndef CHROME_BROWSER_WORKER_HOST_WORKER_PROCESS_HOST_H_ |
6 #define CHROME_BROWSER_WORKER_HOST_WORKER_PROCESS_HOST_H_ | 6 #define CHROME_BROWSER_WORKER_HOST_WORKER_PROCESS_HOST_H_ |
7 | 7 |
8 #include <list> | 8 #include <list> |
9 | 9 |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
11 #include "base/callback.h" | 11 #include "base/callback.h" |
12 #include "base/ref_counted.h" | 12 #include "base/ref_counted.h" |
13 #include "chrome/browser/child_process_host.h" | 13 #include "chrome/browser/browser_child_process_host.h" |
14 #include "chrome/browser/net/chrome_url_request_context.h" | 14 #include "chrome/browser/net/chrome_url_request_context.h" |
15 #include "chrome/browser/worker_host/worker_document_set.h" | 15 #include "chrome/browser/worker_host/worker_document_set.h" |
16 #include "googleurl/src/gurl.h" | 16 #include "googleurl/src/gurl.h" |
17 #include "ipc/ipc_channel.h" | 17 #include "ipc/ipc_channel.h" |
18 | 18 |
19 class AppCacheDispatcherHost; | 19 class AppCacheDispatcherHost; |
20 class ChromeURLRequestContext; | 20 class ChromeURLRequestContext; |
21 class ChromeURLRequestContextGetter; | 21 class ChromeURLRequestContextGetter; |
22 class DatabaseDispatcherHost; | 22 class DatabaseDispatcherHost; |
23 namespace webkit_database { | 23 namespace webkit_database { |
24 class DatabaseTracker; | 24 class DatabaseTracker; |
25 } // namespace webkit_database | 25 } // namespace webkit_database |
26 | 26 |
27 struct ViewHostMsg_CreateWorker_Params; | 27 struct ViewHostMsg_CreateWorker_Params; |
28 | 28 |
29 // The WorkerProcessHost is the interface that represents the browser side of | 29 // The WorkerProcessHost is the interface that represents the browser side of |
30 // the browser <-> worker communication channel. There will be one | 30 // the browser <-> worker communication channel. There will be one |
31 // WorkerProcessHost per worker process. Currently each worker runs in its own | 31 // WorkerProcessHost per worker process. Currently each worker runs in its own |
32 // process, but that may change. However, we do assume [by storing a | 32 // process, but that may change. However, we do assume [by storing a |
33 // ChromeURLRequestContext] that a WorkerProcessHost serves a single Profile. | 33 // ChromeURLRequestContext] that a WorkerProcessHost serves a single Profile. |
34 class WorkerProcessHost : public ChildProcessHost { | 34 class WorkerProcessHost : public BrowserChildProcessHost { |
35 public: | 35 public: |
36 | 36 |
37 // Contains information about each worker instance, needed to forward messages | 37 // Contains information about each worker instance, needed to forward messages |
38 // between the renderer and worker processes. | 38 // between the renderer and worker processes. |
39 class WorkerInstance { | 39 class WorkerInstance { |
40 public: | 40 public: |
41 WorkerInstance(const GURL& url, | 41 WorkerInstance(const GURL& url, |
42 bool shared, | 42 bool shared, |
43 bool off_the_record, | 43 bool off_the_record, |
44 const string16& name, | 44 const string16& name, |
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
194 scoped_ptr<AppCacheDispatcherHost> appcache_dispatcher_host_; | 194 scoped_ptr<AppCacheDispatcherHost> appcache_dispatcher_host_; |
195 scoped_refptr<DatabaseDispatcherHost> db_dispatcher_host_; | 195 scoped_refptr<DatabaseDispatcherHost> db_dispatcher_host_; |
196 | 196 |
197 // A callback to create a routing id for the associated worker process. | 197 // A callback to create a routing id for the associated worker process. |
198 scoped_ptr<CallbackWithReturnValue<int>::Type> next_route_id_callback_; | 198 scoped_ptr<CallbackWithReturnValue<int>::Type> next_route_id_callback_; |
199 | 199 |
200 DISALLOW_COPY_AND_ASSIGN(WorkerProcessHost); | 200 DISALLOW_COPY_AND_ASSIGN(WorkerProcessHost); |
201 }; | 201 }; |
202 | 202 |
203 #endif // CHROME_BROWSER_WORKER_HOST_WORKER_PROCESS_HOST_H_ | 203 #endif // CHROME_BROWSER_WORKER_HOST_WORKER_PROCESS_HOST_H_ |
OLD | NEW |