| Index: content/browser/devtools/worker_devtools_manager.h
|
| diff --git a/content/browser/devtools/worker_devtools_manager.h b/content/browser/devtools/worker_devtools_manager.h
|
| index 910fd400e6bc4c9bafa20b63f4c05cb33260a9c3..cffa0a7fc71fce92dc2c7eb7454be6930f091467 100644
|
| --- a/content/browser/devtools/worker_devtools_manager.h
|
| +++ b/content/browser/devtools/worker_devtools_manager.h
|
| @@ -10,6 +10,7 @@
|
|
|
| #include "base/basictypes.h"
|
| #include "base/memory/ref_counted.h"
|
| +#include "base/observer_list.h"
|
| #include "content/common/content_export.h"
|
|
|
| namespace content {
|
| @@ -25,23 +26,41 @@ class CONTENT_EXPORT WorkerDevToolsManager {
|
| public:
|
| typedef std::pair<int, int> WorkerId;
|
|
|
| + class Observer {
|
| + public:
|
| + virtual void WorkerCreated(scoped_refptr<DevToolsAgentHost> host) {}
|
| + virtual void WorkerDestroyed(scoped_refptr<DevToolsAgentHost> host) {}
|
| +
|
| + protected:
|
| + virtual ~Observer() {}
|
| + };
|
| +
|
| DevToolsAgentHostImpl* GetDevToolsAgentHostForWorker(int worker_process_id,
|
| int worker_route_id);
|
| void AddAllAgentHosts(std::vector<scoped_refptr<DevToolsAgentHost>>* result);
|
| void WorkerReadyForInspection(int worker_process_id, int worker_route_id);
|
| void WorkerDestroyed(int worker_process_id, int worker_route_id);
|
|
|
| + void AddObserver(Observer* observer);
|
| + void RemoveObserver(Observer* observer);
|
| +
|
| protected:
|
| - typedef std::map<WorkerId, WorkerDevToolsAgentHost*> AgentHostMap;
|
| + using AgentHostMap = std::map<WorkerId, WorkerDevToolsAgentHost*>;
|
| friend class SharedWorkerDevToolsManagerTest;
|
|
|
| WorkerDevToolsManager();
|
| virtual ~WorkerDevToolsManager();
|
| void RemoveInspectedWorkerData(WorkerId id);
|
| + void WorkerCreated(const WorkerId& id,
|
| + WorkerDevToolsAgentHost* host);
|
| void WorkerRestarted(const WorkerId& id, const AgentHostMap::iterator& it);
|
| AgentHostMap& workers() { return workers_; }
|
|
|
| private:
|
| + // Resets to its initial state as if newly created.
|
| + void ResetForTesting();
|
| +
|
| + ObserverList<Observer> observer_list_;
|
| AgentHostMap workers_;
|
| DISALLOW_COPY_AND_ASSIGN(WorkerDevToolsManager);
|
| };
|
|
|