diff options
author | pfeldman <pfeldman@chromium.org> | 2015-03-05 13:27:51 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-03-05 21:28:24 +0000 |
commit | 6c5f620da30cbc976f25757f9922c137a68a30e8 (patch) | |
tree | 99feb42deea441750ced8b62d3a771b02843b911 /content/browser/devtools/worker_devtools_manager.cc | |
parent | 0237e7bb40c9ce7b194564c8c7815521b17a30b1 (diff) | |
download | chromium_src-6c5f620da30cbc976f25757f9922c137a68a30e8.zip chromium_src-6c5f620da30cbc976f25757f9922c137a68a30e8.tar.gz chromium_src-6c5f620da30cbc976f25757f9922c137a68a30e8.tar.bz2 |
DevTools: land service worker handler (patch 1).
BUG=463892
Review URL: https://codereview.chromium.org/976353002
Cr-Commit-Position: refs/heads/master@{#319330}
Diffstat (limited to 'content/browser/devtools/worker_devtools_manager.cc')
-rw-r--r-- | content/browser/devtools/worker_devtools_manager.cc | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/content/browser/devtools/worker_devtools_manager.cc b/content/browser/devtools/worker_devtools_manager.cc index ad21c9a..b23e6de 100644 --- a/content/browser/devtools/worker_devtools_manager.cc +++ b/content/browser/devtools/worker_devtools_manager.cc @@ -48,6 +48,7 @@ void WorkerDevToolsManager::WorkerDestroyed(int worker_process_id, AgentHostMap::iterator it = workers_.find(id); DCHECK(it != workers_.end()); scoped_refptr<WorkerDevToolsAgentHost> agent_host(it->second); + FOR_EACH_OBSERVER(Observer, observer_list_, WorkerDestroyed(it->second)); agent_host->WorkerDestroyed(); DevToolsManager::GetInstance()->AgentHostChanged(agent_host); } @@ -61,6 +62,14 @@ void WorkerDevToolsManager::WorkerReadyForInspection(int worker_process_id, it->second->WorkerReadyForInspection(); } +void WorkerDevToolsManager::AddObserver(Observer* observer) { + observer_list_.AddObserver(observer); +} + +void WorkerDevToolsManager::RemoveObserver(Observer* observer) { + observer_list_.RemoveObserver(observer); +} + WorkerDevToolsManager::WorkerDevToolsManager() { } @@ -72,6 +81,15 @@ void WorkerDevToolsManager::RemoveInspectedWorkerData(WorkerId id) { workers_.erase(id); } +void WorkerDevToolsManager::WorkerCreated( + const WorkerId& id, + WorkerDevToolsAgentHost* host) { + workers_[id] = host; + DevToolsManager::GetInstance()->AgentHostChanged(host); + scoped_refptr<WorkerDevToolsAgentHost> protector(host); + FOR_EACH_OBSERVER(Observer, observer_list_, WorkerCreated(host)); +} + void WorkerDevToolsManager::WorkerRestarted(const WorkerId& id, const AgentHostMap::iterator& it) { WorkerDevToolsAgentHost* agent_host = it->second; @@ -81,4 +99,8 @@ void WorkerDevToolsManager::WorkerRestarted(const WorkerId& id, DevToolsManager::GetInstance()->AgentHostChanged(agent_host); } +void WorkerDevToolsManager::ResetForTesting() { + workers_.clear(); +} + } // namespace content |