diff options
author | pfeldman <pfeldman@chromium.org> | 2015-03-08 06:44:03 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-03-08 13:44:45 +0000 |
commit | 2d516ac38398b2b95d2a33972d1ffc2c95e5dd7a (patch) | |
tree | a659e0e1eb498fb4df07cc9c5530d3e317089398 /content/browser/devtools/shared_worker_devtools_manager.h | |
parent | 6c6cd4903ba3c8596aba585915ea41ba26b8e417 (diff) | |
download | chromium_src-2d516ac38398b2b95d2a33972d1ffc2c95e5dd7a.zip chromium_src-2d516ac38398b2b95d2a33972d1ffc2c95e5dd7a.tar.gz chromium_src-2d516ac38398b2b95d2a33972d1ffc2c95e5dd7a.tar.bz2 |
DevTools: remove the WorkerDevToolsManager base - implementations are diverging.
BUG=463892
Review URL: https://codereview.chromium.org/985343002
Cr-Commit-Position: refs/heads/master@{#319593}
Diffstat (limited to 'content/browser/devtools/shared_worker_devtools_manager.h')
-rw-r--r-- | content/browser/devtools/shared_worker_devtools_manager.h | 25 |
1 files changed, 21 insertions, 4 deletions
diff --git a/content/browser/devtools/shared_worker_devtools_manager.h b/content/browser/devtools/shared_worker_devtools_manager.h index 4d6c616..4e5af85 100644 --- a/content/browser/devtools/shared_worker_devtools_manager.h +++ b/content/browser/devtools/shared_worker_devtools_manager.h @@ -5,29 +5,40 @@ #ifndef CONTENT_BROWSER_DEVTOOLS_SHARED_WORKER_DEVTOOLS_MANAGER_H_ #define CONTENT_BROWSER_DEVTOOLS_SHARED_WORKER_DEVTOOLS_MANAGER_H_ +#include <map> + #include "base/basictypes.h" #include "base/gtest_prod_util.h" #include "base/memory/singleton.h" -#include "content/browser/devtools/worker_devtools_manager.h" +#include "content/public/browser/devtools_agent_host.h" namespace content { +class DevToolsAgentHostImpl; class SharedWorkerDevToolsAgentHost; class SharedWorkerInstance; // Manages WorkerDevToolsAgentHost's for Shared Workers. // This class lives on UI thread. -class CONTENT_EXPORT SharedWorkerDevToolsManager - : public WorkerDevToolsManager { +class CONTENT_EXPORT SharedWorkerDevToolsManager { public: + typedef std::pair<int, int> WorkerId; + // Returns the SharedWorkerDevToolsManager singleton. static SharedWorkerDevToolsManager* GetInstance(); + DevToolsAgentHostImpl* GetDevToolsAgentHostForWorker(int worker_process_id, + int worker_route_id); + void AddAllAgentHosts(DevToolsAgentHost::List* result); + // Returns true when the worker must be paused on start because a DevTool // window for the same former SharedWorkerInstance is still opened. bool WorkerCreated(int worker_process_id, int worker_route_id, const SharedWorkerInstance& instance); + void WorkerReadyForInspection(int worker_process_id, int worker_route_id); + void WorkerDestroyed(int worker_process_id, int worker_route_id); + void RemoveInspectedWorkerData(WorkerId id); private: friend struct DefaultSingletonTraits<SharedWorkerDevToolsManager>; @@ -36,12 +47,18 @@ class CONTENT_EXPORT SharedWorkerDevToolsManager FRIEND_TEST_ALL_PREFIXES(SharedWorkerDevToolsManagerTest, BasicTest); FRIEND_TEST_ALL_PREFIXES(SharedWorkerDevToolsManagerTest, AttachTest); + using AgentHostMap = std::map<WorkerId, SharedWorkerDevToolsAgentHost*>; + SharedWorkerDevToolsManager(); - ~SharedWorkerDevToolsManager() override; + ~SharedWorkerDevToolsManager(); AgentHostMap::iterator FindExistingWorkerAgentHost( const SharedWorkerInstance& instance); + // Resets to its initial state as if newly created. + void ResetForTesting(); + + AgentHostMap workers_; DISALLOW_COPY_AND_ASSIGN(SharedWorkerDevToolsManager); }; |