Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(368)

Unified Diff: chrome/browser/ui/webui/workers_ui.cc

Issue 9150017: Add a Content API around BrowserChildProcessHost, similar to what was done with ChildProcessHost.... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: fix?! Created 8 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/webui/workers_ui.cc
===================================================================
--- chrome/browser/ui/webui/workers_ui.cc (revision 118420)
+++ chrome/browser/ui/webui/workers_ui.cc (working copy)
@@ -17,6 +17,7 @@
#include "chrome/browser/ui/webui/chrome_web_ui_data_source.h"
#include "chrome/common/url_constants.h"
#include "content/browser/worker_host/worker_process_host.h"
+#include "content/public/browser/child_process_data.h"
#include "content/public/browser/devtools_agent_host_registry.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/web_contents.h"
@@ -30,6 +31,7 @@
#include "ui/base/resource/resource_bundle.h"
using content::BrowserThread;
+using content::ChildProcessData;
using content::DevToolsAgentHost;
using content::DevToolsAgentHostRegistry;
using content::WebContents;
@@ -51,15 +53,14 @@
namespace {
-DictionaryValue* BuildWorkerData(
- WorkerProcessHost* process,
+DictionaryValue* BuildWorkerData(const ChildProcessData& data,
const WorkerProcessHost::WorkerInstance& instance) {
DictionaryValue* worker_data = new DictionaryValue();
- worker_data->SetInteger(kWorkerProcessHostIdField, process->data().id);
+ worker_data->SetInteger(kWorkerProcessHostIdField, data.id);
worker_data->SetInteger(kWorkerRouteIdField, instance.worker_route_id());
worker_data->SetString(kUrlField, instance.url().spec());
worker_data->SetString(kNameField, instance.name());
- worker_data->SetInteger(kPidField, base::GetProcId(process->data().handle));
+ worker_data->SetInteger(kPidField, base::GetProcId(data.handle));
return worker_data;
}
@@ -94,13 +95,11 @@
void WorkersUIHTMLSource::SendSharedWorkersData(int request_id) {
ListValue workers_list;
- BrowserChildProcessHost::Iterator iter(content::PROCESS_TYPE_WORKER);
- for (; !iter.Done(); ++iter) {
- WorkerProcessHost* worker = static_cast<WorkerProcessHost*>(*iter);
- const WorkerProcessHost::Instances& instances = worker->instances();
+ for (WorkerProcessHostIterator iter; !iter.Done(); ++iter) {
+ const WorkerProcessHost::Instances& instances = iter->instances();
for (WorkerProcessHost::Instances::const_iterator i = instances.begin();
i != instances.end(); ++i) {
- workers_list.Append(BuildWorkerData(worker, *i));
+ workers_list.Append(BuildWorkerData(iter.GetData(), *i));
}
}
@@ -158,11 +157,9 @@
}
static void TerminateWorker(int worker_process_id, int worker_route_id) {
- for (BrowserChildProcessHost::Iterator iter(content::PROCESS_TYPE_WORKER);
- !iter.Done(); ++iter) {
- if (iter->data().id == worker_process_id) {
- WorkerProcessHost* worker = static_cast<WorkerProcessHost*>(*iter);
- worker->TerminateWorker(worker_route_id);
+ for (WorkerProcessHostIterator iter; !iter.Done(); ++iter) {
+ if (iter.GetData().id == worker_process_id) {
+ iter->TerminateWorker(worker_route_id);
return;
}
}
@@ -216,14 +213,15 @@
const WorkerProcessHost::WorkerInstance& instance) OVERRIDE {
BrowserThread::PostTask(
BrowserThread::UI, FROM_HERE,
- base::Bind(&WorkerCreationDestructionListener::NotifyWorkerCreated,
- this, base::Owned(BuildWorkerData(process, instance))));
+ base::Bind(
+ &WorkerCreationDestructionListener::NotifyWorkerCreated,
+ this, base::Owned(BuildWorkerData(process->GetData(), instance))));
}
virtual void WorkerDestroyed(
WorkerProcessHost* process,
int worker_route_id) OVERRIDE {
DictionaryValue* worker_data = new DictionaryValue();
- worker_data->SetInteger(kWorkerProcessHostIdField, process->data().id);
+ worker_data->SetInteger(kWorkerProcessHostIdField, process->GetData().id);
worker_data->SetInteger(kWorkerRouteIdField, worker_route_id);
BrowserThread::PostTask(
« no previous file with comments | « chrome/browser/ui/webui/options2/chromeos/user_image_source2.cc ('k') | chrome/browser/web_resource/web_resource_service.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698