| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 66 , m_eventCallChains(tracker->m_debuggerAgent) | 66 , m_eventCallChains(tracker->m_debuggerAgent) |
| 67 , m_xhrCallChains(tracker->m_debuggerAgent) | 67 , m_xhrCallChains(tracker->m_debuggerAgent) |
| 68 , m_mutationObserverCallChains(tracker->m_debuggerAgent) | 68 , m_mutationObserverCallChains(tracker->m_debuggerAgent) |
| 69 , m_executionContextTaskCallChains(tracker->m_debuggerAgent) | 69 , m_executionContextTaskCallChains(tracker->m_debuggerAgent) |
| 70 , m_asyncOperations(tracker->m_debuggerAgent) | 70 , m_asyncOperations(tracker->m_debuggerAgent) |
| 71 { | 71 { |
| 72 } | 72 } |
| 73 | 73 |
| 74 void contextDestroyed() override | 74 void contextDestroyed() override |
| 75 { | 75 { |
| 76 ASSERT(executionContext()); | 76 ASSERT(getExecutionContext()); |
| 77 OwnPtrWillBeRawPtr<ExecutionContextData> self = m_tracker->m_executionCo
ntextDataMap.take(executionContext()); | 77 OwnPtrWillBeRawPtr<ExecutionContextData> self = m_tracker->m_executionCo
ntextDataMap.take(getExecutionContext()); |
| 78 ASSERT_UNUSED(self, self == this); | 78 ASSERT_UNUSED(self, self == this); |
| 79 ContextLifecycleObserver::contextDestroyed(); | 79 ContextLifecycleObserver::contextDestroyed(); |
| 80 disposeCallChains(); | 80 disposeCallChains(); |
| 81 } | 81 } |
| 82 | 82 |
| 83 void unobserve() | 83 void unobserve() |
| 84 { | 84 { |
| 85 disposeCallChains(); | 85 disposeCallChains(); |
| 86 ContextLifecycleObserver::clearContext(); | 86 ContextLifecycleObserver::clearContext(); |
| 87 } | 87 } |
| (...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 225 willFireAsyncCall(data->m_animationFrameCallChains.get(callbackId)); | 225 willFireAsyncCall(data->m_animationFrameCallChains.get(callbackId)); |
| 226 data->m_animationFrameCallChains.remove(callbackId); | 226 data->m_animationFrameCallChains.remove(callbackId); |
| 227 } else { | 227 } else { |
| 228 willFireAsyncCall(V8DebuggerAgent::unknownAsyncOperationId); | 228 willFireAsyncCall(V8DebuggerAgent::unknownAsyncOperationId); |
| 229 } | 229 } |
| 230 return true; | 230 return true; |
| 231 } | 231 } |
| 232 | 232 |
| 233 void AsyncCallTracker::didEnqueueEvent(EventTarget* eventTarget, Event* event) | 233 void AsyncCallTracker::didEnqueueEvent(EventTarget* eventTarget, Event* event) |
| 234 { | 234 { |
| 235 ASSERT(eventTarget->executionContext()); | 235 ASSERT(eventTarget->getExecutionContext()); |
| 236 ASSERT(m_debuggerAgent->trackingAsyncCalls()); | 236 ASSERT(m_debuggerAgent->trackingAsyncCalls()); |
| 237 ScriptForbiddenScope::AllowUserAgentScript allowScripting; | 237 ScriptForbiddenScope::AllowUserAgentScript allowScripting; |
| 238 int operationId = m_debuggerAgent->traceAsyncOperationStarting(event->type()
); | 238 int operationId = m_debuggerAgent->traceAsyncOperationStarting(event->type()
); |
| 239 ExecutionContextData* data = createContextDataIfNeeded(eventTarget->executio
nContext()); | 239 ExecutionContextData* data = createContextDataIfNeeded(eventTarget->getExecu
tionContext()); |
| 240 data->m_eventCallChains.set(event, operationId); | 240 data->m_eventCallChains.set(event, operationId); |
| 241 } | 241 } |
| 242 | 242 |
| 243 void AsyncCallTracker::didRemoveEvent(EventTarget* eventTarget, Event* event) | 243 void AsyncCallTracker::didRemoveEvent(EventTarget* eventTarget, Event* event) |
| 244 { | 244 { |
| 245 ASSERT(eventTarget->executionContext()); | 245 ASSERT(eventTarget->getExecutionContext()); |
| 246 ASSERT(m_debuggerAgent->trackingAsyncCalls()); | 246 ASSERT(m_debuggerAgent->trackingAsyncCalls()); |
| 247 if (ExecutionContextData* data = m_executionContextDataMap.get(eventTarget->
executionContext())) | 247 if (ExecutionContextData* data = m_executionContextDataMap.get(eventTarget->
getExecutionContext())) |
| 248 data->m_eventCallChains.remove(event); | 248 data->m_eventCallChains.remove(event); |
| 249 } | 249 } |
| 250 | 250 |
| 251 void AsyncCallTracker::willHandleEvent(EventTarget* eventTarget, Event* event, E
ventListener* listener, bool useCapture) | 251 void AsyncCallTracker::willHandleEvent(EventTarget* eventTarget, Event* event, E
ventListener* listener, bool useCapture) |
| 252 { | 252 { |
| 253 ASSERT(eventTarget->executionContext()); | 253 ASSERT(eventTarget->getExecutionContext()); |
| 254 ASSERT(m_debuggerAgent->trackingAsyncCalls()); | 254 ASSERT(m_debuggerAgent->trackingAsyncCalls()); |
| 255 if (XMLHttpRequest* xhr = toXmlHttpRequest(eventTarget)) { | 255 if (XMLHttpRequest* xhr = toXmlHttpRequest(eventTarget)) { |
| 256 willHandleXHREvent(xhr, event); | 256 willHandleXHREvent(xhr, event); |
| 257 } else { | 257 } else { |
| 258 ExecutionContext* context = eventTarget->executionContext(); | 258 ExecutionContext* context = eventTarget->getExecutionContext(); |
| 259 if (ExecutionContextData* data = m_executionContextDataMap.get(context)) | 259 if (ExecutionContextData* data = m_executionContextDataMap.get(context)) |
| 260 willFireAsyncCall(data->m_eventCallChains.get(event)); | 260 willFireAsyncCall(data->m_eventCallChains.get(event)); |
| 261 else | 261 else |
| 262 willFireAsyncCall(V8DebuggerAgent::unknownAsyncOperationId); | 262 willFireAsyncCall(V8DebuggerAgent::unknownAsyncOperationId); |
| 263 } | 263 } |
| 264 } | 264 } |
| 265 | 265 |
| 266 void AsyncCallTracker::willLoadXHR(XMLHttpRequest* xhr, ThreadableLoaderClient*,
const AtomicString&, const KURL&, bool async, PassRefPtr<EncodedFormData>, cons
t HTTPHeaderMap&, bool) | 266 void AsyncCallTracker::willLoadXHR(XMLHttpRequest* xhr, ThreadableLoaderClient*,
const AtomicString&, const KURL&, bool async, PassRefPtr<EncodedFormData>, cons
t HTTPHeaderMap&, bool) |
| 267 { | 267 { |
| 268 ASSERT(xhr->executionContext()); | 268 ASSERT(xhr->getExecutionContext()); |
| 269 ASSERT(m_debuggerAgent->trackingAsyncCalls()); | 269 ASSERT(m_debuggerAgent->trackingAsyncCalls()); |
| 270 if (!async) | 270 if (!async) |
| 271 return; | 271 return; |
| 272 int operationId = m_debuggerAgent->traceAsyncOperationStarting(xhrSendName); | 272 int operationId = m_debuggerAgent->traceAsyncOperationStarting(xhrSendName); |
| 273 ExecutionContextData* data = createContextDataIfNeeded(xhr->executionContext
()); | 273 ExecutionContextData* data = createContextDataIfNeeded(xhr->getExecutionCont
ext()); |
| 274 data->m_xhrCallChains.set(xhr, operationId); | 274 data->m_xhrCallChains.set(xhr, operationId); |
| 275 } | 275 } |
| 276 | 276 |
| 277 void AsyncCallTracker::didDispatchXHRLoadendEvent(XMLHttpRequest* xhr) | 277 void AsyncCallTracker::didDispatchXHRLoadendEvent(XMLHttpRequest* xhr) |
| 278 { | 278 { |
| 279 ASSERT(xhr->executionContext()); | 279 ASSERT(xhr->getExecutionContext()); |
| 280 ASSERT(m_debuggerAgent->trackingAsyncCalls()); | 280 ASSERT(m_debuggerAgent->trackingAsyncCalls()); |
| 281 if (ExecutionContextData* data = m_executionContextDataMap.get(xhr->executio
nContext())) | 281 if (ExecutionContextData* data = m_executionContextDataMap.get(xhr->getExecu
tionContext())) |
| 282 data->m_xhrCallChains.remove(xhr); | 282 data->m_xhrCallChains.remove(xhr); |
| 283 } | 283 } |
| 284 | 284 |
| 285 void AsyncCallTracker::willHandleXHREvent(XMLHttpRequest* xhr, Event* event) | 285 void AsyncCallTracker::willHandleXHREvent(XMLHttpRequest* xhr, Event* event) |
| 286 { | 286 { |
| 287 ExecutionContext* context = xhr->executionContext(); | 287 ExecutionContext* context = xhr->getExecutionContext(); |
| 288 ASSERT(context); | 288 ASSERT(context); |
| 289 ASSERT(m_debuggerAgent->trackingAsyncCalls()); | 289 ASSERT(m_debuggerAgent->trackingAsyncCalls()); |
| 290 if (ExecutionContextData* data = m_executionContextDataMap.get(context)) | 290 if (ExecutionContextData* data = m_executionContextDataMap.get(context)) |
| 291 willFireAsyncCall(data->m_xhrCallChains.get(xhr)); | 291 willFireAsyncCall(data->m_xhrCallChains.get(xhr)); |
| 292 else | 292 else |
| 293 willFireAsyncCall(V8DebuggerAgent::unknownAsyncOperationId); | 293 willFireAsyncCall(V8DebuggerAgent::unknownAsyncOperationId); |
| 294 } | 294 } |
| 295 | 295 |
| 296 void AsyncCallTracker::didEnqueueMutationRecord(ExecutionContext* context, Mutat
ionObserver* observer) | 296 void AsyncCallTracker::didEnqueueMutationRecord(ExecutionContext* context, Mutat
ionObserver* observer) |
| 297 { | 297 { |
| (...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 424 | 424 |
| 425 DEFINE_TRACE(AsyncCallTracker) | 425 DEFINE_TRACE(AsyncCallTracker) |
| 426 { | 426 { |
| 427 #if ENABLE(OILPAN) | 427 #if ENABLE(OILPAN) |
| 428 visitor->trace(m_executionContextDataMap); | 428 visitor->trace(m_executionContextDataMap); |
| 429 visitor->trace(m_instrumentingAgents); | 429 visitor->trace(m_instrumentingAgents); |
| 430 #endif | 430 #endif |
| 431 } | 431 } |
| 432 | 432 |
| 433 } // namespace blink | 433 } // namespace blink |
| OLD | NEW |