#ifndef InspectorWorkerAgent_h
#define InspectorWorkerAgent_h
+#include "core/InspectorFrontend.h"
#include "core/inspector/InspectorBaseAgent.h"
#include "wtf/Forward.h"
#include "wtf/HashMap.h"
-namespace WebCore {
-class InspectorFrontend;
+namespace blink {
class InstrumentingAgents;
class JSONObject;
class KURL;
-class WorkerGlobalScopeProxy;
+class WorkerInspectorProxy;
typedef String ErrorString;
-class InspectorWorkerAgent : public InspectorBaseAgent<InspectorWorkerAgent>, public InspectorBackendDispatcher::WorkerCommandHandler {
+class InspectorWorkerAgent FINAL : public InspectorBaseAgent<InspectorWorkerAgent>, public InspectorBackendDispatcher::WorkerCommandHandler {
public:
- static PassOwnPtr<InspectorWorkerAgent> create(InstrumentingAgents*, InspectorCompositeState*);
- ~InspectorWorkerAgent();
+ static PassOwnPtrWillBeRawPtr<InspectorWorkerAgent> create();
+ virtual ~InspectorWorkerAgent();
- virtual void setFrontend(InspectorFrontend*);
- virtual void restore();
- virtual void clearFrontend();
+ virtual void init() OVERRIDE;
+ virtual void setFrontend(InspectorFrontend*) OVERRIDE;
+ virtual void restore() OVERRIDE;
+ virtual void clearFrontend() OVERRIDE;
// Called from InspectorInstrumentation
bool shouldPauseDedicatedWorkerOnStart();
- void didStartWorkerGlobalScope(WorkerGlobalScopeProxy*, const KURL&);
- void workerGlobalScopeTerminated(WorkerGlobalScopeProxy*);
+ void didStartWorker(WorkerInspectorProxy*, const KURL&);
+ void workerTerminated(WorkerInspectorProxy*);
// Called from InspectorBackendDispatcher
- virtual void enable(ErrorString*);
- virtual void disable(ErrorString*);
- virtual void canInspectWorkers(ErrorString*, bool*);
- virtual void connectToWorker(ErrorString*, int workerId);
- virtual void disconnectFromWorker(ErrorString*, int workerId);
- virtual void sendMessageToWorker(ErrorString*, int workerId, const RefPtr<JSONObject>& message);
- virtual void setAutoconnectToWorkers(ErrorString*, bool value);
+ virtual void enable(ErrorString*) OVERRIDE;
+ virtual void disable(ErrorString*) OVERRIDE;
+ virtual void canInspectWorkers(ErrorString*, bool*) OVERRIDE;
+ virtual void connectToWorker(ErrorString*, int workerId) OVERRIDE;
+ virtual void disconnectFromWorker(ErrorString*, int workerId) OVERRIDE;
+ virtual void sendMessageToWorker(ErrorString*, int workerId, const RefPtr<JSONObject>& message) OVERRIDE;
+ virtual void setAutoconnectToWorkers(ErrorString*, bool value) OVERRIDE;
+
+ void setTracingSessionId(const String&);
private:
- InspectorWorkerAgent(InstrumentingAgents*, InspectorCompositeState*);
+ InspectorWorkerAgent();
void createWorkerFrontendChannelsForExistingWorkers();
- void createWorkerFrontendChannel(WorkerGlobalScopeProxy*, const String& url);
+ void createWorkerFrontendChannel(WorkerInspectorProxy*, const String& url);
void destroyWorkerFrontendChannels();
- InspectorFrontend* m_inspectorFrontend;
+ InspectorFrontend::Worker* m_frontend;
class WorkerFrontendChannel;
typedef HashMap<int, WorkerFrontendChannel*> WorkerChannels;
WorkerChannels m_idToChannel;
- typedef HashMap<WorkerGlobalScopeProxy*, String> DedicatedWorkers;
- DedicatedWorkers m_dedicatedWorkers;
+ typedef HashMap<WorkerInspectorProxy*, String> WorkerIds;
+ WorkerIds m_workerIds;
+ String m_tracingSessionId;
};
-} // namespace WebCore
+} // namespace blink
#endif // !defined(InspectorWorkerAgent_h)