From 3b0032a7abc9cc9350253d4f66dcd9a367e206ab Mon Sep 17 00:00:00 2001 From: "jam@chromium.org" Date: Fri, 20 Jan 2012 06:29:23 +0000 Subject: Add a Content API around BrowserChildProcessHost, similar to what was done with ChildProcessHost. Now classes like PluginProcessHost don't derive from it, but instead use composition. I've also moved the iterator class into its own file in the public directory. Since classes don't derive from BrowserChildProcessHost and so can't static_cast from it, I added a template helper that does this. BUG=98716 Review URL: https://chromiumcodereview.appspot.com/9150017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118415 0039d316-1c4b-4281-b951-d872f2087c98 --- .../browser/debugger/devtools_sanity_unittest.cc | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) (limited to 'chrome/browser/debugger/devtools_sanity_unittest.cc') diff --git a/chrome/browser/debugger/devtools_sanity_unittest.cc b/chrome/browser/debugger/devtools_sanity_unittest.cc index 0852321..41363e5 100644 --- a/chrome/browser/debugger/devtools_sanity_unittest.cc +++ b/chrome/browser/debugger/devtools_sanity_unittest.cc @@ -25,6 +25,8 @@ #include "chrome/test/base/ui_test_utils.h" #include "content/browser/renderer_host/render_view_host.h" #include "content/browser/worker_host/worker_process_host.h" +#include "content/public/browser/browser_child_process_host_iterator.h" +#include "content/public/browser/child_process_data.h" #include "content/public/browser/content_browser_client.h" #include "content/public/browser/devtools_agent_host_registry.h" #include "content/public/browser/devtools_client_host.h" @@ -292,7 +294,7 @@ class WorkerDevToolsSanityTest : public InProcessBrowserTest { virtual void WorkerCreated ( WorkerProcessHost* process, const WorkerProcessHost::WorkerInstance& instance) OVERRIDE { - worker_data_->worker_process_id = process->data().id; + worker_data_->worker_process_id = process->GetData().id; worker_data_->worker_route_id = instance.worker_route_id(); WorkerService::GetInstance()->RemoveObserver(this); BrowserThread::PostTask(BrowserThread::UI, FROM_HERE, @@ -323,7 +325,7 @@ class WorkerDevToolsSanityTest : public InProcessBrowserTest { virtual void WorkerDestroyed( WorkerProcessHost* process, int worker_route_id) OVERRIDE { - ASSERT_EQ(worker_data_->worker_process_id, process->data().id); + ASSERT_EQ(worker_data_->worker_process_id, process->GetData().id); ASSERT_EQ(worker_data_->worker_route_id, worker_route_id); WorkerService::GetInstance()->RemoveObserver(this); BrowserThread::PostTask(BrowserThread::UI, FROM_HERE, @@ -349,11 +351,9 @@ class WorkerDevToolsSanityTest : public InProcessBrowserTest { static void TerminateWorkerOnIOThread( scoped_refptr worker_data) { - for (BrowserChildProcessHost::Iterator iter(content::PROCESS_TYPE_WORKER); - !iter.Done(); ++iter) { - if (iter->data().id == worker_data->worker_process_id) { - WorkerProcessHost* host = static_cast(*iter); - host->TerminateWorker(worker_data->worker_route_id); + for (WorkerProcessHostIterator iter; !iter.Done(); ++iter) { + if (iter.GetData().id == worker_data->worker_process_id) { + iter->TerminateWorker(worker_data->worker_route_id); WorkerService::GetInstance()->AddObserver( new WorkerTerminationObserver(worker_data)); return; @@ -371,14 +371,12 @@ class WorkerDevToolsSanityTest : public InProcessBrowserTest { static void WaitForFirstSharedWorkerOnIOThread( scoped_refptr worker_data) { - BrowserChildProcessHost::Iterator iter(content::PROCESS_TYPE_WORKER); - for (; !iter.Done(); ++iter) { - WorkerProcessHost* worker = static_cast(*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) { - worker_data->worker_process_id = worker->data().id; + worker_data->worker_process_id = iter.GetData().id; worker_data->worker_route_id = i->worker_route_id(); BrowserThread::PostTask(BrowserThread::UI, FROM_HERE, MessageLoop::QuitClosure()); -- cgit v1.1