<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[191719] trunk/Source</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/191719">191719</a></dd>
<dt>Author</dt> <dd>commit-queue@webkit.org</dd>
<dt>Date</dt> <dd>2015-10-28 20:10:15 -0700 (Wed, 28 Oct 2015)</dd>
</dl>

<h3>Log Message</h3>
<pre>Web Inspector: Rename InspectorResourceAgent to InspectorNetworkAgent
https://bugs.webkit.org/show_bug.cgi?id=150654

Patch by Joseph Pecoraro &lt;pecoraro@apple.com&gt; on 2015-10-28
Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

* inspector/scripts/codegen/generator.py:

Source/WebCore:

* CMakeLists.txt:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* inspector/InspectorAllInOne.cpp:
* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
* inspector/InspectorController.h:
* inspector/InspectorDOMDebuggerAgent.h:
* inspector/InspectorFrontendClient.h:
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::willRecalculateStyleImpl):
(WebCore::InspectorInstrumentation::didRecalculateStyleImpl):
(WebCore::InspectorInstrumentation::didScheduleStyleRecalculationImpl):
(WebCore::InspectorInstrumentation::willSendRequestImpl):
(WebCore::InspectorInstrumentation::markResourceAsCachedImpl):
(WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCacheImpl):
(WebCore::InspectorInstrumentation::didReceiveResourceResponseImpl):
(WebCore::InspectorInstrumentation::didReceiveDataImpl):
(WebCore::InspectorInstrumentation::didFinishLoadingImpl):
(WebCore::InspectorInstrumentation::didFailLoadingImpl):
(WebCore::InspectorInstrumentation::didFinishXHRLoadingImpl):
(WebCore::InspectorInstrumentation::didReceiveXHRResponseImpl):
(WebCore::InspectorInstrumentation::willLoadXHRSynchronouslyImpl):
(WebCore::InspectorInstrumentation::didLoadXHRSynchronouslyImpl):
(WebCore::InspectorInstrumentation::scriptImportedImpl):
(WebCore::InspectorInstrumentation::didReceiveScriptResponseImpl):
(WebCore::InspectorInstrumentation::didCommitLoadImpl):
(WebCore::InspectorInstrumentation::willDestroyCachedResourceImpl):
(WebCore::InspectorInstrumentation::didCreateWebSocketImpl):
(WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequestImpl):
(WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponseImpl):
(WebCore::InspectorInstrumentation::didCloseWebSocketImpl):
(WebCore::InspectorInstrumentation::didReceiveWebSocketFrameImpl):
(WebCore::InspectorInstrumentation::didReceiveWebSocketFrameErrorImpl):
(WebCore::InspectorInstrumentation::didSendWebSocketFrameImpl):
* inspector/InspectorLayerTreeAgent.h:
* inspector/InspectorNetworkAgent.cpp: Renamed from Source/WebCore/inspector/InspectorResourceAgent.cpp.
(WebCore::InspectorNetworkAgent::InspectorNetworkAgent):
(WebCore::InspectorNetworkAgent::didCreateFrontendAndBackend):
(WebCore::InspectorNetworkAgent::willDestroyFrontendAndBackend):
(WebCore::buildObjectForHeaders):
(WebCore::buildObjectForTiming):
(WebCore::buildObjectForResourceRequest):
(WebCore::buildObjectForResourceResponse):
(WebCore::buildObjectForCachedResource):
(WebCore::InspectorNetworkAgent::~InspectorNetworkAgent):
(WebCore::InspectorNetworkAgent::timestamp):
(WebCore::InspectorNetworkAgent::willSendRequest):
(WebCore::InspectorNetworkAgent::markResourceAsCached):
(WebCore::InspectorNetworkAgent::didReceiveResponse):
(WebCore::isErrorStatusCode):
(WebCore::InspectorNetworkAgent::didReceiveData):
(WebCore::InspectorNetworkAgent::didFinishLoading):
(WebCore::InspectorNetworkAgent::didFailLoading):
(WebCore::InspectorNetworkAgent::didLoadResourceFromMemoryCache):
(WebCore::InspectorNetworkAgent::setInitialScriptContent):
(WebCore::InspectorNetworkAgent::didReceiveScriptResponse):
(WebCore::InspectorNetworkAgent::didFinishXHRLoading):
(WebCore::InspectorNetworkAgent::didReceiveXHRResponse):
(WebCore::InspectorNetworkAgent::willLoadXHRSynchronously):
(WebCore::InspectorNetworkAgent::didLoadXHRSynchronously):
(WebCore::InspectorNetworkAgent::willDestroyCachedResource):
(WebCore::InspectorNetworkAgent::willRecalculateStyle):
(WebCore::InspectorNetworkAgent::didRecalculateStyle):
(WebCore::InspectorNetworkAgent::didScheduleStyleRecalculation):
(WebCore::InspectorNetworkAgent::buildInitiatorObject):
(WebCore::InspectorNetworkAgent::didCreateWebSocket):
(WebCore::InspectorNetworkAgent::willSendWebSocketHandshakeRequest):
(WebCore::InspectorNetworkAgent::didReceiveWebSocketHandshakeResponse):
(WebCore::InspectorNetworkAgent::didCloseWebSocket):
(WebCore::InspectorNetworkAgent::didReceiveWebSocketFrame):
(WebCore::InspectorNetworkAgent::didSendWebSocketFrame):
(WebCore::InspectorNetworkAgent::didReceiveWebSocketFrameError):
(WebCore::InspectorNetworkAgent::enable):
(WebCore::InspectorNetworkAgent::disable):
(WebCore::InspectorNetworkAgent::setExtraHTTPHeaders):
(WebCore::InspectorNetworkAgent::getResponseBody):
(WebCore::InspectorNetworkAgent::setCacheDisabled):
(WebCore::InspectorNetworkAgent::loadResource):
(WebCore::InspectorNetworkAgent::mainFrameNavigated):
* inspector/InspectorNetworkAgent.h: Renamed from Source/WebCore/inspector/InspectorResourceAgent.h.
* inspector/InspectorPageAgent.h:
* inspector/InstrumentingAgents.cpp:
(WebCore::InstrumentingAgents::reset):
* inspector/InstrumentingAgents.h:
(WebCore::InstrumentingAgents::inspectorNetworkAgent):
(WebCore::InstrumentingAgents::setInspectorNetworkAgent):
(WebCore::InstrumentingAgents::inspectorResourceAgent): Deleted.
(WebCore::InstrumentingAgents::setInspectorResourceAgent): Deleted.
* inspector/NetworkResourcesData.h:</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceJavaScriptCoreChangeLog">trunk/Source/JavaScriptCore/ChangeLog</a></li>
<li><a href="#trunkSourceJavaScriptCoreinspectorscriptscodegengeneratorpy">trunk/Source/JavaScriptCore/inspector/scripts/codegen/generator.py</a></li>
<li><a href="#trunkSourceWebCoreCMakeListstxt">trunk/Source/WebCore/CMakeLists.txt</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreWebCorevcxprojWebCorevcxproj">trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj</a></li>
<li><a href="#trunkSourceWebCoreWebCorevcxprojWebCorevcxprojfilters">trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters</a></li>
<li><a href="#trunkSourceWebCoreWebCorexcodeprojprojectpbxproj">trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorAllInOnecpp">trunk/Source/WebCore/inspector/InspectorAllInOne.cpp</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorControllercpp">trunk/Source/WebCore/inspector/InspectorController.cpp</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorControllerh">trunk/Source/WebCore/inspector/InspectorController.h</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorDOMDebuggerAgenth">trunk/Source/WebCore/inspector/InspectorDOMDebuggerAgent.h</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorFrontendClienth">trunk/Source/WebCore/inspector/InspectorFrontendClient.h</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorInstrumentationcpp">trunk/Source/WebCore/inspector/InspectorInstrumentation.cpp</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorLayerTreeAgenth">trunk/Source/WebCore/inspector/InspectorLayerTreeAgent.h</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorPageAgenth">trunk/Source/WebCore/inspector/InspectorPageAgent.h</a></li>
<li><a href="#trunkSourceWebCoreinspectorInstrumentingAgentscpp">trunk/Source/WebCore/inspector/InstrumentingAgents.cpp</a></li>
<li><a href="#trunkSourceWebCoreinspectorInstrumentingAgentsh">trunk/Source/WebCore/inspector/InstrumentingAgents.h</a></li>
<li><a href="#trunkSourceWebCoreinspectorNetworkResourcesDatah">trunk/Source/WebCore/inspector/NetworkResourcesData.h</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#trunkSourceWebCoreinspectorInspectorNetworkAgentcpp">trunk/Source/WebCore/inspector/InspectorNetworkAgent.cpp</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorNetworkAgenth">trunk/Source/WebCore/inspector/InspectorNetworkAgent.h</a></li>
</ul>

<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkSourceWebCoreinspectorInspectorResourceAgentcpp">trunk/Source/WebCore/inspector/InspectorResourceAgent.cpp</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorResourceAgenth">trunk/Source/WebCore/inspector/InspectorResourceAgent.h</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceJavaScriptCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/ChangeLog (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/ChangeLog        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/JavaScriptCore/ChangeLog        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -1,3 +1,12 @@
</span><ins>+2015-10-28  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
+
+        Web Inspector: Rename InspectorResourceAgent to InspectorNetworkAgent
+        https://bugs.webkit.org/show_bug.cgi?id=150654
+
+        Reviewed by Geoffrey Garen.
+
+        * inspector/scripts/codegen/generator.py:
+
</ins><span class="cx"> 2015-10-28  Filip Pizlo  &lt;fpizlo@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         B3::reduceStrength() should do DCE
</span></span></pre></div>
<a id="trunkSourceJavaScriptCoreinspectorscriptscodegengeneratorpy"></a>
<div class="modfile"><h4>Modified: trunk/Source/JavaScriptCore/inspector/scripts/codegen/generator.py (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/JavaScriptCore/inspector/scripts/codegen/generator.py        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/JavaScriptCore/inspector/scripts/codegen/generator.py        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -67,7 +67,7 @@
</span><span class="cx">     &quot;Timeline.TimelineEvent&quot;,
</span><span class="cx">     # InspectorStyleSheet not only creates this property but wants to read it and modify it.
</span><span class="cx">     &quot;CSS.CSSProperty&quot;,
</span><del>-    # InspectorResourceAgent needs to update mime-type.
</del><ins>+    # InspectorNetworkAgent needs to update mime-type.
</ins><span class="cx">     &quot;Network.Response&quot;,
</span><span class="cx">     # For testing purposes only.
</span><span class="cx">     &quot;Test.OpenParameterBundle&quot;
</span></span></pre></div>
<a id="trunkSourceWebCoreCMakeListstxt"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/CMakeLists.txt (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/CMakeLists.txt        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/WebCore/CMakeLists.txt        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -1884,10 +1884,10 @@
</span><span class="cx">     inspector/InspectorInstrumentation.cpp
</span><span class="cx">     inspector/InspectorInstrumentationCookie.cpp
</span><span class="cx">     inspector/InspectorLayerTreeAgent.cpp
</span><ins>+    inspector/InspectorNetworkAgent.cpp
</ins><span class="cx">     inspector/InspectorNodeFinder.cpp
</span><span class="cx">     inspector/InspectorOverlay.cpp
</span><span class="cx">     inspector/InspectorPageAgent.cpp
</span><del>-    inspector/InspectorResourceAgent.cpp
</del><span class="cx">     inspector/InspectorStyleSheet.cpp
</span><span class="cx">     inspector/InspectorTimelineAgent.cpp
</span><span class="cx">     inspector/InspectorWorkerAgent.cpp
</span></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/WebCore/ChangeLog        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -1,5 +1,104 @@
</span><span class="cx"> 2015-10-28  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
</span><span class="cx"> 
</span><ins>+        Web Inspector: Rename InspectorResourceAgent to InspectorNetworkAgent
+        https://bugs.webkit.org/show_bug.cgi?id=150654
+
+        Reviewed by Geoffrey Garen.
+
+        * CMakeLists.txt:
+        * WebCore.vcxproj/WebCore.vcxproj:
+        * WebCore.vcxproj/WebCore.vcxproj.filters:
+        * WebCore.xcodeproj/project.pbxproj:
+        * inspector/InspectorAllInOne.cpp:
+        * inspector/InspectorController.cpp:
+        (WebCore::InspectorController::InspectorController):
+        * inspector/InspectorController.h:
+        * inspector/InspectorDOMDebuggerAgent.h:
+        * inspector/InspectorFrontendClient.h:
+        * inspector/InspectorInstrumentation.cpp:
+        (WebCore::InspectorInstrumentation::willRecalculateStyleImpl):
+        (WebCore::InspectorInstrumentation::didRecalculateStyleImpl):
+        (WebCore::InspectorInstrumentation::didScheduleStyleRecalculationImpl):
+        (WebCore::InspectorInstrumentation::willSendRequestImpl):
+        (WebCore::InspectorInstrumentation::markResourceAsCachedImpl):
+        (WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCacheImpl):
+        (WebCore::InspectorInstrumentation::didReceiveResourceResponseImpl):
+        (WebCore::InspectorInstrumentation::didReceiveDataImpl):
+        (WebCore::InspectorInstrumentation::didFinishLoadingImpl):
+        (WebCore::InspectorInstrumentation::didFailLoadingImpl):
+        (WebCore::InspectorInstrumentation::didFinishXHRLoadingImpl):
+        (WebCore::InspectorInstrumentation::didReceiveXHRResponseImpl):
+        (WebCore::InspectorInstrumentation::willLoadXHRSynchronouslyImpl):
+        (WebCore::InspectorInstrumentation::didLoadXHRSynchronouslyImpl):
+        (WebCore::InspectorInstrumentation::scriptImportedImpl):
+        (WebCore::InspectorInstrumentation::didReceiveScriptResponseImpl):
+        (WebCore::InspectorInstrumentation::didCommitLoadImpl):
+        (WebCore::InspectorInstrumentation::willDestroyCachedResourceImpl):
+        (WebCore::InspectorInstrumentation::didCreateWebSocketImpl):
+        (WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequestImpl):
+        (WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponseImpl):
+        (WebCore::InspectorInstrumentation::didCloseWebSocketImpl):
+        (WebCore::InspectorInstrumentation::didReceiveWebSocketFrameImpl):
+        (WebCore::InspectorInstrumentation::didReceiveWebSocketFrameErrorImpl):
+        (WebCore::InspectorInstrumentation::didSendWebSocketFrameImpl):
+        * inspector/InspectorLayerTreeAgent.h:
+        * inspector/InspectorNetworkAgent.cpp: Renamed from Source/WebCore/inspector/InspectorResourceAgent.cpp.
+        (WebCore::InspectorNetworkAgent::InspectorNetworkAgent):
+        (WebCore::InspectorNetworkAgent::didCreateFrontendAndBackend):
+        (WebCore::InspectorNetworkAgent::willDestroyFrontendAndBackend):
+        (WebCore::buildObjectForHeaders):
+        (WebCore::buildObjectForTiming):
+        (WebCore::buildObjectForResourceRequest):
+        (WebCore::buildObjectForResourceResponse):
+        (WebCore::buildObjectForCachedResource):
+        (WebCore::InspectorNetworkAgent::~InspectorNetworkAgent):
+        (WebCore::InspectorNetworkAgent::timestamp):
+        (WebCore::InspectorNetworkAgent::willSendRequest):
+        (WebCore::InspectorNetworkAgent::markResourceAsCached):
+        (WebCore::InspectorNetworkAgent::didReceiveResponse):
+        (WebCore::isErrorStatusCode):
+        (WebCore::InspectorNetworkAgent::didReceiveData):
+        (WebCore::InspectorNetworkAgent::didFinishLoading):
+        (WebCore::InspectorNetworkAgent::didFailLoading):
+        (WebCore::InspectorNetworkAgent::didLoadResourceFromMemoryCache):
+        (WebCore::InspectorNetworkAgent::setInitialScriptContent):
+        (WebCore::InspectorNetworkAgent::didReceiveScriptResponse):
+        (WebCore::InspectorNetworkAgent::didFinishXHRLoading):
+        (WebCore::InspectorNetworkAgent::didReceiveXHRResponse):
+        (WebCore::InspectorNetworkAgent::willLoadXHRSynchronously):
+        (WebCore::InspectorNetworkAgent::didLoadXHRSynchronously):
+        (WebCore::InspectorNetworkAgent::willDestroyCachedResource):
+        (WebCore::InspectorNetworkAgent::willRecalculateStyle):
+        (WebCore::InspectorNetworkAgent::didRecalculateStyle):
+        (WebCore::InspectorNetworkAgent::didScheduleStyleRecalculation):
+        (WebCore::InspectorNetworkAgent::buildInitiatorObject):
+        (WebCore::InspectorNetworkAgent::didCreateWebSocket):
+        (WebCore::InspectorNetworkAgent::willSendWebSocketHandshakeRequest):
+        (WebCore::InspectorNetworkAgent::didReceiveWebSocketHandshakeResponse):
+        (WebCore::InspectorNetworkAgent::didCloseWebSocket):
+        (WebCore::InspectorNetworkAgent::didReceiveWebSocketFrame):
+        (WebCore::InspectorNetworkAgent::didSendWebSocketFrame):
+        (WebCore::InspectorNetworkAgent::didReceiveWebSocketFrameError):
+        (WebCore::InspectorNetworkAgent::enable):
+        (WebCore::InspectorNetworkAgent::disable):
+        (WebCore::InspectorNetworkAgent::setExtraHTTPHeaders):
+        (WebCore::InspectorNetworkAgent::getResponseBody):
+        (WebCore::InspectorNetworkAgent::setCacheDisabled):
+        (WebCore::InspectorNetworkAgent::loadResource):
+        (WebCore::InspectorNetworkAgent::mainFrameNavigated):
+        * inspector/InspectorNetworkAgent.h: Renamed from Source/WebCore/inspector/InspectorResourceAgent.h.
+        * inspector/InspectorPageAgent.h:
+        * inspector/InstrumentingAgents.cpp:
+        (WebCore::InstrumentingAgents::reset):
+        * inspector/InstrumentingAgents.h:
+        (WebCore::InstrumentingAgents::inspectorNetworkAgent):
+        (WebCore::InstrumentingAgents::setInspectorNetworkAgent):
+        (WebCore::InstrumentingAgents::inspectorResourceAgent): Deleted.
+        (WebCore::InstrumentingAgents::setInspectorResourceAgent): Deleted.
+        * inspector/NetworkResourcesData.h:
+
+2015-10-28  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
+
</ins><span class="cx">         Web Inspector: Remove unused / duplicate WebSocket timeline records
</span><span class="cx">         https://bugs.webkit.org/show_bug.cgi?id=150647
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCoreWebCorevcxprojWebCorevcxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -19466,7 +19466,7 @@
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">     &lt;/ClCompile&gt;
</span><del>-    &lt;ClCompile Include=&quot;..\inspector\InspectorNodeFinder.cpp&quot;&gt;
</del><ins>+    &lt;ClCompile Include=&quot;..\inspector\InspectorNetworkAgent.cpp&quot;&gt;
</ins><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug_WinCairo|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="lines">@@ -19480,7 +19480,7 @@
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">     &lt;/ClCompile&gt;
</span><del>-    &lt;ClCompile Include=&quot;..\inspector\InspectorOverlay.cpp&quot;&gt;
</del><ins>+    &lt;ClCompile Include=&quot;..\inspector\InspectorNodeFinder.cpp&quot;&gt;
</ins><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug_WinCairo|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="lines">@@ -19494,7 +19494,7 @@
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">     &lt;/ClCompile&gt;
</span><del>-    &lt;ClCompile Include=&quot;..\inspector\InspectorPageAgent.cpp&quot;&gt;
</del><ins>+    &lt;ClCompile Include=&quot;..\inspector\InspectorOverlay.cpp&quot;&gt;
</ins><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug_WinCairo|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="lines">@@ -19508,7 +19508,7 @@
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Production|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">     &lt;/ClCompile&gt;
</span><del>-    &lt;ClCompile Include=&quot;..\inspector\InspectorResourceAgent.cpp&quot;&gt;
</del><ins>+    &lt;ClCompile Include=&quot;..\inspector\InspectorPageAgent.cpp&quot;&gt;
</ins><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug|x64'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="cx">       &lt;ExcludedFromBuild Condition=&quot;'$(Configuration)|$(Platform)'=='Debug_WinCairo|Win32'&quot;&gt;true&lt;/ExcludedFromBuild&gt;
</span><span class="lines">@@ -22854,10 +22854,10 @@
</span><span class="cx">     &lt;ClInclude Include=&quot;..\inspector\InspectorInstrumentation.h&quot; /&gt;
</span><span class="cx">     &lt;ClInclude Include=&quot;..\inspector\InspectorInstrumentationCookie.h&quot; /&gt;
</span><span class="cx">     &lt;ClInclude Include=&quot;..\inspector\InspectorLayerTreeAgent.h&quot; /&gt;
</span><ins>+    &lt;ClInclude Include=&quot;..\inspector\InspectorNetworkAgent.h&quot; /&gt;
</ins><span class="cx">     &lt;ClInclude Include=&quot;..\inspector\InspectorNodeFinder.h&quot; /&gt;
</span><span class="cx">     &lt;ClInclude Include=&quot;..\inspector\InspectorOverlay.h&quot; /&gt;
</span><span class="cx">     &lt;ClInclude Include=&quot;..\inspector\InspectorPageAgent.h&quot; /&gt;
</span><del>-    &lt;ClInclude Include=&quot;..\inspector\InspectorResourceAgent.h&quot; /&gt;
</del><span class="cx">     &lt;ClInclude Include=&quot;..\inspector\InspectorStyleSheet.h&quot; /&gt;
</span><span class="cx">     &lt;ClInclude Include=&quot;..\inspector\InspectorTimelineAgent.h&quot; /&gt;
</span><span class="cx">     &lt;ClInclude Include=&quot;..\inspector\InspectorWebAgentBase.h&quot; /&gt;
</span></span></pre></div>
<a id="trunkSourceWebCoreWebCorevcxprojWebCorevcxprojfilters"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -4679,15 +4679,18 @@
</span><span class="cx">     &lt;ClCompile Include=&quot;..\inspector\InspectorLayerTreeAgent.cpp&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;inspector&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClCompile&gt;
</span><ins>+    &lt;ClCompile Include=&quot;..\inspector\InspectorNetworkAgent.cpp&quot;&gt;
+      &lt;Filter&gt;inspector&lt;/Filter&gt;
+    &lt;/ClCompile&gt;
+    &lt;ClCompile Include=&quot;..\inspector\InspectorNodeFinder.cpp&quot;&gt;
+      &lt;Filter&gt;inspector&lt;/Filter&gt;
+    &lt;/ClCompile&gt;
</ins><span class="cx">     &lt;ClCompile Include=&quot;..\inspector\InspectorOverlay.cpp&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;inspector&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClCompile&gt;
</span><span class="cx">     &lt;ClCompile Include=&quot;..\inspector\InspectorPageAgent.cpp&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;inspector&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClCompile&gt;
</span><del>-    &lt;ClCompile Include=&quot;..\inspector\InspectorResourceAgent.cpp&quot;&gt;
-      &lt;Filter&gt;inspector&lt;/Filter&gt;
-    &lt;/ClCompile&gt;
</del><span class="cx">     &lt;ClCompile Include=&quot;..\inspector\InspectorStyleSheet.cpp&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;inspector&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClCompile&gt;
</span><span class="lines">@@ -7023,9 +7026,6 @@
</span><span class="cx">     &lt;ClCompile Include=&quot;..\Modules\indexeddb\IDBKeyData.cpp&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;Modules\indexeddb&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClCompile&gt;
</span><del>-    &lt;ClCompile Include=&quot;..\inspector\InspectorNodeFinder.cpp&quot;&gt;
-      &lt;Filter&gt;inspector&lt;/Filter&gt;
-    &lt;/ClCompile&gt;
</del><span class="cx">     &lt;ClCompile Include=&quot;..\platform\graphics\ISOVTTCue.cpp&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;platform\graphics&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClCompile&gt;
</span><span class="lines">@@ -11965,6 +11965,9 @@
</span><span class="cx">     &lt;ClInclude Include=&quot;..\inspector\InspectorLayerTreeAgent.h&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;inspector&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClInclude&gt;
</span><ins>+    &lt;ClInclude Include=&quot;..\inspector\InspectorNetworkAgent.h&quot;&gt;
+      &lt;Filter&gt;inspector&lt;/Filter&gt;
+    &lt;/ClInclude&gt;
</ins><span class="cx">     &lt;ClInclude Include=&quot;..\inspector\InspectorNodeFinder.h&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;inspector&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClInclude&gt;
</span><span class="lines">@@ -11974,9 +11977,6 @@
</span><span class="cx">     &lt;ClInclude Include=&quot;..\inspector\InspectorPageAgent.h&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;inspector&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClInclude&gt;
</span><del>-    &lt;ClInclude Include=&quot;..\inspector\InspectorResourceAgent.h&quot;&gt;
-      &lt;Filter&gt;inspector&lt;/Filter&gt;
-    &lt;/ClInclude&gt;
</del><span class="cx">     &lt;ClInclude Include=&quot;..\inspector\InspectorStyleSheet.h&quot;&gt;
</span><span class="cx">       &lt;Filter&gt;inspector&lt;/Filter&gt;
</span><span class="cx">     &lt;/ClInclude&gt;
</span></span></pre></div>
<a id="trunkSourceWebCoreWebCorexcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -2774,8 +2774,8 @@
</span><span class="cx">                 82AB1744124B99EC00C5069D /* InspectorCSSAgent.h in Headers */ = {isa = PBXBuildFile; fileRef = 82AB1742124B99EC00C5069D /* InspectorCSSAgent.h */; };
</span><span class="cx">                 82AB1773125C826700C5069D /* InspectorStyleSheet.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 82AB176F125C826700C5069D /* InspectorStyleSheet.cpp */; };
</span><span class="cx">                 82AB1774125C826700C5069D /* InspectorStyleSheet.h in Headers */ = {isa = PBXBuildFile; fileRef = 82AB1770125C826700C5069D /* InspectorStyleSheet.h */; };
</span><del>-                82AB1775125C826700C5069D /* InspectorResourceAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 82AB1771125C826700C5069D /* InspectorResourceAgent.cpp */; };
-                82AB1776125C826700C5069D /* InspectorResourceAgent.h in Headers */ = {isa = PBXBuildFile; fileRef = 82AB1772125C826700C5069D /* InspectorResourceAgent.h */; };
</del><ins>+                82AB1775125C826700C5069D /* InspectorNetworkAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 82AB1771125C826700C5069D /* InspectorNetworkAgent.cpp */; };
+                82AB1776125C826700C5069D /* InspectorNetworkAgent.h in Headers */ = {isa = PBXBuildFile; fileRef = 82AB1772125C826700C5069D /* InspectorNetworkAgent.h */; };
</ins><span class="cx">                 82E3D8DE122EA0D1003AE5BC /* CSSPropertySourceData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 82E3D8DC122EA0D1003AE5BC /* CSSPropertySourceData.cpp */; };
</span><span class="cx">                 82E3D8DF122EA0D1003AE5BC /* CSSPropertySourceData.h in Headers */ = {isa = PBXBuildFile; fileRef = 82E3D8DD122EA0D1003AE5BC /* CSSPropertySourceData.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 830030F51B7D33B500ED3AAC /* GenericCachedHTMLCollection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 830030F31B7D33A600ED3AAC /* GenericCachedHTMLCollection.cpp */; };
</span><span class="lines">@@ -10255,8 +10255,8 @@
</span><span class="cx">                 82AB1742124B99EC00C5069D /* InspectorCSSAgent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InspectorCSSAgent.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 82AB176F125C826700C5069D /* InspectorStyleSheet.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorStyleSheet.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 82AB1770125C826700C5069D /* InspectorStyleSheet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InspectorStyleSheet.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><del>-                82AB1771125C826700C5069D /* InspectorResourceAgent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorResourceAgent.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
-                82AB1772125C826700C5069D /* InspectorResourceAgent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InspectorResourceAgent.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</del><ins>+                82AB1771125C826700C5069D /* InspectorNetworkAgent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorNetworkAgent.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
+                82AB1772125C826700C5069D /* InspectorNetworkAgent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InspectorNetworkAgent.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</ins><span class="cx">                 82E3D8DC122EA0D1003AE5BC /* CSSPropertySourceData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CSSPropertySourceData.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 82E3D8DD122EA0D1003AE5BC /* CSSPropertySourceData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CSSPropertySourceData.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 830030F31B7D33A600ED3AAC /* GenericCachedHTMLCollection.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = GenericCachedHTMLCollection.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="lines">@@ -15943,6 +15943,8 @@
</span><span class="cx">                                 A5840E1B187B74D500843B10 /* InspectorInstrumentationCookie.h */,
</span><span class="cx">                                 71B1E123164048CC00B1880A /* InspectorLayerTreeAgent.cpp */,
</span><span class="cx">                                 71B1E124164048CC00B1880A /* InspectorLayerTreeAgent.h */,
</span><ins>+                                82AB1771125C826700C5069D /* InspectorNetworkAgent.cpp */,
+                                82AB1772125C826700C5069D /* InspectorNetworkAgent.h */,
</ins><span class="cx">                                 504AACCB1834455900E3D9BC /* InspectorNodeFinder.cpp */,
</span><span class="cx">                                 504AACCC1834455900E3D9BC /* InspectorNodeFinder.h */,
</span><span class="cx">                                 7C522D4915B477E8009B7C95 /* InspectorOverlay.cpp */,
</span><span class="lines">@@ -15954,8 +15956,6 @@
</span><span class="cx">                                 4F6FDD631341DEDD001F8EE3 /* InspectorPageAgent.h */,
</span><span class="cx">                                 99CC0B6418BE9F15006CEBCC /* InspectorReplayAgent.cpp */,
</span><span class="cx">                                 99CC0B6518BE9F15006CEBCC /* InspectorReplayAgent.h */,
</span><del>-                                82AB1771125C826700C5069D /* InspectorResourceAgent.cpp */,
-                                82AB1772125C826700C5069D /* InspectorResourceAgent.h */,
</del><span class="cx">                                 82AB176F125C826700C5069D /* InspectorStyleSheet.cpp */,
</span><span class="cx">                                 82AB1770125C826700C5069D /* InspectorStyleSheet.h */,
</span><span class="cx">                                 754133A9102E00F400075D00 /* InspectorTimelineAgent.cpp */,
</span><span class="lines">@@ -25847,7 +25847,7 @@
</span><span class="cx">                                 0F03C0751884805500A5F8CA /* InspectorOverlay.h in Headers */,
</span><span class="cx">                                 4F6FDD651341DEDD001F8EE3 /* InspectorPageAgent.h in Headers */,
</span><span class="cx">                                 99CC0B6718BE9F15006CEBCC /* InspectorReplayAgent.h in Headers */,
</span><del>-                                82AB1776125C826700C5069D /* InspectorResourceAgent.h in Headers */,
</del><ins>+                                82AB1776125C826700C5069D /* InspectorNetworkAgent.h in Headers */,
</ins><span class="cx">                                 82AB1774125C826700C5069D /* InspectorStyleSheet.h in Headers */,
</span><span class="cx">                                 754133A8102E00E800075D00 /* InspectorTimelineAgent.h in Headers */,
</span><span class="cx">                                 A593CF8B1840535200BFCE27 /* InspectorWebAgentBase.h in Headers */,
</span><span class="lines">@@ -29436,7 +29436,7 @@
</span><span class="cx">                                 7C522D4B15B477E8009B7C95 /* InspectorOverlay.cpp in Sources */,
</span><span class="cx">                                 4F6FDD641341DEDD001F8EE3 /* InspectorPageAgent.cpp in Sources */,
</span><span class="cx">                                 99CC0B6618BE9F15006CEBCC /* InspectorReplayAgent.cpp in Sources */,
</span><del>-                                82AB1775125C826700C5069D /* InspectorResourceAgent.cpp in Sources */,
</del><ins>+                                82AB1775125C826700C5069D /* InspectorNetworkAgent.cpp in Sources */,
</ins><span class="cx">                                 82AB1773125C826700C5069D /* InspectorStyleSheet.cpp in Sources */,
</span><span class="cx">                                 754133AA102E00F400075D00 /* InspectorTimelineAgent.cpp in Sources */,
</span><span class="cx">                                 F3810C1B1365A49600ED6E33 /* InspectorWorkerAgent.cpp in Sources */,
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorAllInOnecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorAllInOne.cpp (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorAllInOne.cpp        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/WebCore/inspector/InspectorAllInOne.cpp        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -44,10 +44,10 @@
</span><span class="cx"> #include &quot;InspectorInstrumentation.cpp&quot;
</span><span class="cx"> #include &quot;InspectorInstrumentationCookie.cpp&quot;
</span><span class="cx"> #include &quot;InspectorLayerTreeAgent.cpp&quot;
</span><ins>+#include &quot;InspectorNetworkAgent.cpp&quot;
</ins><span class="cx"> #include &quot;InspectorNodeFinder.cpp&quot;
</span><span class="cx"> #include &quot;InspectorOverlay.cpp&quot;
</span><span class="cx"> #include &quot;InspectorPageAgent.cpp&quot;
</span><del>-#include &quot;InspectorResourceAgent.cpp&quot;
</del><span class="cx"> #include &quot;InspectorStyleSheet.cpp&quot;
</span><span class="cx"> #include &quot;InspectorTimelineAgent.cpp&quot;
</span><span class="cx"> #include &quot;InspectorWorkerAgent.cpp&quot;
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorControllercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorController.cpp (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorController.cpp        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/WebCore/inspector/InspectorController.cpp        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -46,9 +46,9 @@
</span><span class="cx"> #include &quot;InspectorIndexedDBAgent.h&quot;
</span><span class="cx"> #include &quot;InspectorInstrumentation.h&quot;
</span><span class="cx"> #include &quot;InspectorLayerTreeAgent.h&quot;
</span><ins>+#include &quot;InspectorNetworkAgent.h&quot;
</ins><span class="cx"> #include &quot;InspectorPageAgent.h&quot;
</span><span class="cx"> #include &quot;InspectorReplayAgent.h&quot;
</span><del>-#include &quot;InspectorResourceAgent.h&quot;
</del><span class="cx"> #include &quot;InspectorTimelineAgent.h&quot;
</span><span class="cx"> #include &quot;InspectorWorkerAgent.h&quot;
</span><span class="cx"> #include &quot;InstrumentingAgents.h&quot;
</span><span class="lines">@@ -138,6 +138,8 @@
</span><span class="cx">     InspectorDatabaseAgent* databaseAgent = databaseAgentPtr.get();
</span><span class="cx">     m_agents.append(WTF::move(databaseAgentPtr));
</span><span class="cx"> 
</span><ins>+    m_agents.append(std::make_unique&lt;InspectorNetworkAgent&gt;(pageContext, pageAgent));
+
</ins><span class="cx"> #if ENABLE(INDEXED_DATABASE)
</span><span class="cx">     m_agents.append(std::make_unique&lt;InspectorIndexedDBAgent&gt;(pageContext, pageAgent));
</span><span class="cx"> #endif
</span><span class="lines">@@ -154,10 +156,6 @@
</span><span class="cx">     m_timelineAgent = timelineAgentPtr.get();
</span><span class="cx">     m_agents.append(WTF::move(timelineAgentPtr));
</span><span class="cx"> 
</span><del>-    auto resourceAgentPtr = std::make_unique&lt;InspectorResourceAgent&gt;(pageContext, pageAgent);
-    m_resourceAgent = resourceAgentPtr.get();
-    m_agents.append(WTF::move(resourceAgentPtr));
-
</del><span class="cx">     auto consoleAgentPtr = std::make_unique&lt;PageConsoleAgent&gt;(pageContext, m_domAgent);
</span><span class="cx">     WebConsoleAgent* consoleAgent = consoleAgentPtr.get();
</span><span class="cx">     m_instrumentingAgents-&gt;setWebConsoleAgent(consoleAgentPtr.get());
</span><span class="lines">@@ -167,10 +165,7 @@
</span><span class="cx">     PageDebuggerAgent* debuggerAgent = debuggerAgentPtr.get();
</span><span class="cx">     m_agents.append(WTF::move(debuggerAgentPtr));
</span><span class="cx"> 
</span><del>-    auto domDebuggerAgentPtr = std::make_unique&lt;InspectorDOMDebuggerAgent&gt;(pageContext, m_domAgent, debuggerAgent);
-    m_domDebuggerAgent = domDebuggerAgentPtr.get();
-    m_agents.append(WTF::move(domDebuggerAgentPtr));
-
</del><ins>+    m_agents.append(std::make_unique&lt;InspectorDOMDebuggerAgent&gt;(pageContext, m_domAgent, debuggerAgent));
</ins><span class="cx">     m_agents.append(std::make_unique&lt;InspectorHeapAgent&gt;(pageContext));
</span><span class="cx">     m_agents.append(std::make_unique&lt;InspectorApplicationCacheAgent&gt;(pageContext, pageAgent));
</span><span class="cx">     m_agents.append(std::make_unique&lt;InspectorWorkerAgent&gt;(pageContext));
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorControllerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorController.h (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorController.h        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/WebCore/inspector/InspectorController.h        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -36,9 +36,7 @@
</span><span class="cx"> #include &lt;inspector/InspectorAgentRegistry.h&gt;
</span><span class="cx"> #include &lt;inspector/InspectorEnvironment.h&gt;
</span><span class="cx"> #include &lt;wtf/Forward.h&gt;
</span><del>-#include &lt;wtf/HashMap.h&gt;
</del><span class="cx"> #include &lt;wtf/Noncopyable.h&gt;
</span><del>-#include &lt;wtf/Vector.h&gt;
</del><span class="cx"> #include &lt;wtf/text/WTFString.h&gt;
</span><span class="cx"> 
</span><span class="cx"> namespace Inspector {
</span><span class="lines">@@ -46,7 +44,6 @@
</span><span class="cx"> class FrontendChannel;
</span><span class="cx"> class FrontendRouter;
</span><span class="cx"> class InspectorAgent;
</span><del>-class InspectorObject;
</del><span class="cx"> 
</span><span class="cx"> namespace Protocol {
</span><span class="cx"> namespace OverlayTypes {
</span><span class="lines">@@ -62,11 +59,9 @@
</span><span class="cx"> class GraphicsContext;
</span><span class="cx"> class InspectorClient;
</span><span class="cx"> class InspectorDOMAgent;
</span><del>-class InspectorDOMDebuggerAgent;
</del><span class="cx"> class InspectorFrontendClient;
</span><span class="cx"> class InspectorInstrumentation;
</span><span class="cx"> class InspectorPageAgent;
</span><del>-class InspectorResourceAgent;
</del><span class="cx"> class InspectorTimelineAgent;
</span><span class="cx"> class InstrumentingAgents;
</span><span class="cx"> class Node;
</span><span class="lines">@@ -150,9 +145,7 @@
</span><span class="cx"> 
</span><span class="cx">     Inspector::InspectorAgent* m_inspectorAgent { nullptr };
</span><span class="cx">     InspectorDOMAgent* m_domAgent { nullptr };
</span><del>-    InspectorResourceAgent* m_resourceAgent { nullptr };
</del><span class="cx">     InspectorPageAgent* m_pageAgent { nullptr };
</span><del>-    InspectorDOMDebuggerAgent* m_domDebuggerAgent { nullptr };
</del><span class="cx">     InspectorTimelineAgent* m_timelineAgent { nullptr };
</span><span class="cx"> 
</span><span class="cx">     bool m_isUnderTest { false };
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorDOMDebuggerAgenth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorDOMDebuggerAgent.h (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorDOMDebuggerAgent.h        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/WebCore/inspector/InspectorDOMDebuggerAgent.h        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -36,7 +36,6 @@
</span><span class="cx"> #include &lt;inspector/InspectorBackendDispatchers.h&gt;
</span><span class="cx"> #include &lt;inspector/agents/InspectorDebuggerAgent.h&gt;
</span><span class="cx"> #include &lt;wtf/HashMap.h&gt;
</span><del>-#include &lt;wtf/RefCounted.h&gt;
</del><span class="cx"> #include &lt;wtf/text/WTFString.h&gt;
</span><span class="cx"> 
</span><span class="cx"> namespace Inspector {
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorFrontendClienth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorFrontendClient.h (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorFrontendClient.h        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/WebCore/inspector/InspectorFrontendClient.h        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -32,7 +32,6 @@
</span><span class="cx"> #define InspectorFrontendClient_h
</span><span class="cx"> 
</span><span class="cx"> #include &lt;wtf/Forward.h&gt;
</span><del>-#include &lt;wtf/Vector.h&gt;
</del><span class="cx"> 
</span><span class="cx"> namespace WebCore {
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorInstrumentationcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorInstrumentation.cpp (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorInstrumentation.cpp        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/WebCore/inspector/InspectorInstrumentation.cpp        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -41,15 +41,15 @@
</span><span class="cx"> #include &quot;Event.h&quot;
</span><span class="cx"> #include &quot;EventDispatcher.h&quot;
</span><span class="cx"> #include &quot;InspectorApplicationCacheAgent.h&quot;
</span><ins>+#include &quot;InspectorCSSAgent.h&quot;
</ins><span class="cx"> #include &quot;InspectorController.h&quot;
</span><del>-#include &quot;InspectorCSSAgent.h&quot;
</del><span class="cx"> #include &quot;InspectorDOMAgent.h&quot;
</span><span class="cx"> #include &quot;InspectorDOMDebuggerAgent.h&quot;
</span><span class="cx"> #include &quot;InspectorDOMStorageAgent.h&quot;
</span><span class="cx"> #include &quot;InspectorDatabaseAgent.h&quot;
</span><span class="cx"> #include &quot;InspectorLayerTreeAgent.h&quot;
</span><ins>+#include &quot;InspectorNetworkAgent.h&quot;
</ins><span class="cx"> #include &quot;InspectorPageAgent.h&quot;
</span><del>-#include &quot;InspectorResourceAgent.h&quot;
</del><span class="cx"> #include &quot;InspectorTimelineAgent.h&quot;
</span><span class="cx"> #include &quot;InspectorWorkerAgent.h&quot;
</span><span class="cx"> #include &quot;InstrumentingAgents.h&quot;
</span><span class="lines">@@ -501,8 +501,8 @@
</span><span class="cx">         timelineAgent-&gt;willRecalculateStyle(document.frame());
</span><span class="cx">         timelineAgentId = timelineAgent-&gt;id();
</span><span class="cx">     }
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;willRecalculateStyle();
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;willRecalculateStyle();
</ins><span class="cx">     return InspectorInstrumentationCookie(instrumentingAgents, timelineAgentId);
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -515,8 +515,8 @@
</span><span class="cx"> 
</span><span class="cx">     if (InspectorTimelineAgent* timelineAgent = retrieveTimelineAgent(cookie))
</span><span class="cx">         timelineAgent-&gt;didRecalculateStyle();
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;didRecalculateStyle();
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;didRecalculateStyle();
</ins><span class="cx">     if (InspectorPageAgent* pageAgent = instrumentingAgents.inspectorPageAgent())
</span><span class="cx">         pageAgent-&gt;didRecalculateStyle();
</span><span class="cx"> }
</span><span class="lines">@@ -525,8 +525,8 @@
</span><span class="cx"> {
</span><span class="cx">     if (InspectorTimelineAgent* timelineAgent = instrumentingAgents.inspectorTimelineAgent())
</span><span class="cx">         timelineAgent-&gt;didScheduleStyleRecalculation(document.frame());
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;didScheduleStyleRecalculation(document);
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;didScheduleStyleRecalculation(document);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::applyEmulatedMediaImpl(InstrumentingAgents&amp; instrumentingAgents, String&amp; media)
</span><span class="lines">@@ -540,8 +540,8 @@
</span><span class="cx">     if (!loader)
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;willSendRequest(identifier, *loader, request, redirectResponse);
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;willSendRequest(identifier, *loader, request, redirectResponse);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::continueAfterPingLoaderImpl(InstrumentingAgents&amp; instrumentingAgents, unsigned long identifier, DocumentLoader* loader, ResourceRequest&amp; request, const ResourceResponse&amp; response)
</span><span class="lines">@@ -551,8 +551,8 @@
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::markResourceAsCachedImpl(InstrumentingAgents&amp; instrumentingAgents, unsigned long identifier)
</span><span class="cx"> {
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;markResourceAsCached(identifier);
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;markResourceAsCached(identifier);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::didLoadResourceFromMemoryCacheImpl(InstrumentingAgents&amp; instrumentingAgents, DocumentLoader* loader, CachedResource* cachedResource)
</span><span class="lines">@@ -563,8 +563,8 @@
</span><span class="cx">     if (!loader || !cachedResource)
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;didLoadResourceFromMemoryCache(*loader, *cachedResource);
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;didLoadResourceFromMemoryCache(*loader, *cachedResource);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> InspectorInstrumentationCookie InspectorInstrumentation::willReceiveResourceResponseImpl(InstrumentingAgents&amp; instrumentingAgents)
</span><span class="lines">@@ -582,8 +582,8 @@
</span><span class="cx"> 
</span><span class="cx">     InstrumentingAgents&amp; instrumentingAgents = *cookie.instrumentingAgents();
</span><span class="cx"> 
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;didReceiveResponse(identifier, *loader, response, resourceLoader);
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;didReceiveResponse(identifier, *loader, response, resourceLoader);
</ins><span class="cx">     if (WebConsoleAgent* consoleAgent = instrumentingAgents.webConsoleAgent())
</span><span class="cx">         consoleAgent-&gt;didReceiveResponse(identifier, response); // This should come AFTER resource notification, front-end relies on this.
</span><span class="cx"> }
</span><span class="lines">@@ -614,8 +614,8 @@
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::didReceiveDataImpl(InstrumentingAgents&amp; instrumentingAgents, unsigned long identifier, const char* data, int dataLength, int encodedDataLength)
</span><span class="cx"> {
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;didReceiveData(identifier, data, dataLength, encodedDataLength);
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;didReceiveData(identifier, data, dataLength, encodedDataLength);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::didFinishLoadingImpl(InstrumentingAgents&amp; instrumentingAgents, unsigned long identifier, DocumentLoader* loader, double finishTime)
</span><span class="lines">@@ -623,8 +623,8 @@
</span><span class="cx">     if (!loader)
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;didFinishLoading(identifier, *loader, finishTime);
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;didFinishLoading(identifier, *loader, finishTime);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::didFailLoadingImpl(InstrumentingAgents&amp; instrumentingAgents, unsigned long identifier, DocumentLoader* loader, const ResourceError&amp; error)
</span><span class="lines">@@ -632,8 +632,8 @@
</span><span class="cx">     if (!loader)
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;didFailLoading(identifier, *loader, error);
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;didFailLoading(identifier, *loader, error);
</ins><span class="cx">     if (WebConsoleAgent* consoleAgent = instrumentingAgents.webConsoleAgent())
</span><span class="cx">         consoleAgent-&gt;didFailLoading(identifier, error); // This should come AFTER resource notification, front-end relies on this.
</span><span class="cx"> }
</span><span class="lines">@@ -642,32 +642,32 @@
</span><span class="cx"> {
</span><span class="cx">     if (WebConsoleAgent* consoleAgent = instrumentingAgents.webConsoleAgent())
</span><span class="cx">         consoleAgent-&gt;didFinishXHRLoading(identifier, url, sendURL, sendLineNumber, sendColumnNumber);
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;didFinishXHRLoading(client, identifier, sourceString);
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;didFinishXHRLoading(client, identifier, sourceString);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::didReceiveXHRResponseImpl(InstrumentingAgents&amp; instrumentingAgents, unsigned long identifier)
</span><span class="cx"> {
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;didReceiveXHRResponse(identifier);
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;didReceiveXHRResponse(identifier);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::willLoadXHRSynchronouslyImpl(InstrumentingAgents&amp; instrumentingAgents)
</span><span class="cx"> {
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;willLoadXHRSynchronously();
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;willLoadXHRSynchronously();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::didLoadXHRSynchronouslyImpl(InstrumentingAgents&amp; instrumentingAgents)
</span><span class="cx"> {
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;didLoadXHRSynchronously();
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;didLoadXHRSynchronously();
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::scriptImportedImpl(InstrumentingAgents&amp; instrumentingAgents, unsigned long identifier, const String&amp; sourceString)
</span><span class="cx"> {
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;setInitialScriptContent(identifier, sourceString);
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;setInitialScriptContent(identifier, sourceString);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::scriptExecutionBlockedByCSPImpl(InstrumentingAgents&amp; instrumentingAgents, const String&amp; directiveText)
</span><span class="lines">@@ -678,8 +678,8 @@
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::didReceiveScriptResponseImpl(InstrumentingAgents&amp; instrumentingAgents, unsigned long identifier)
</span><span class="cx"> {
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;didReceiveScriptResponse(identifier);
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;didReceiveScriptResponse(identifier);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::domContentLoadedEventFiredImpl(InstrumentingAgents&amp; instrumentingAgents, Frame&amp; frame)
</span><span class="lines">@@ -729,8 +729,8 @@
</span><span class="cx">         if (WebConsoleAgent* consoleAgent = instrumentingAgents.webConsoleAgent())
</span><span class="cx">             consoleAgent-&gt;reset();
</span><span class="cx"> 
</span><del>-        if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-            resourceAgent-&gt;mainFrameNavigated(*loader);
</del><ins>+        if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+            networkAgent-&gt;mainFrameNavigated(*loader);
</ins><span class="cx"> 
</span><span class="cx">         if (InspectorCSSAgent* cssAgent = instrumentingAgents.inspectorCSSAgent())
</span><span class="cx">             cssAgent-&gt;reset();
</span><span class="lines">@@ -827,8 +827,8 @@
</span><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     for (auto* instrumentingAgent : *s_instrumentingAgentsSet) {
</span><del>-        if (InspectorResourceAgent* inspectorResourceAgent = instrumentingAgent-&gt;inspectorResourceAgent())
-            inspectorResourceAgent-&gt;willDestroyCachedResource(cachedResource);
</del><ins>+        if (InspectorNetworkAgent* inspectorNetworkAgent = instrumentingAgent-&gt;inspectorNetworkAgent())
+            inspectorNetworkAgent-&gt;willDestroyCachedResource(cachedResource);
</ins><span class="cx">     }
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -965,44 +965,44 @@
</span><span class="cx">     if (!instrumentingAgents.inspectorEnvironment().developerExtrasEnabled())
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;didCreateWebSocket(identifier, requestURL);
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;didCreateWebSocket(identifier, requestURL);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::willSendWebSocketHandshakeRequestImpl(InstrumentingAgents&amp; instrumentingAgents, unsigned long identifier, const ResourceRequest&amp; request)
</span><span class="cx"> {
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;willSendWebSocketHandshakeRequest(identifier, request);
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;willSendWebSocketHandshakeRequest(identifier, request);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::didReceiveWebSocketHandshakeResponseImpl(InstrumentingAgents&amp; instrumentingAgents, unsigned long identifier, const ResourceResponse&amp; response)
</span><span class="cx"> {
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;didReceiveWebSocketHandshakeResponse(identifier, response);
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;didReceiveWebSocketHandshakeResponse(identifier, response);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::didCloseWebSocketImpl(InstrumentingAgents&amp; instrumentingAgents, unsigned long identifier)
</span><span class="cx"> {
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;didCloseWebSocket(identifier);
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;didCloseWebSocket(identifier);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::didReceiveWebSocketFrameImpl(InstrumentingAgents&amp; instrumentingAgents, unsigned long identifier, const WebSocketFrame&amp; frame)
</span><span class="cx"> {
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;didReceiveWebSocketFrame(identifier, frame);
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;didReceiveWebSocketFrame(identifier, frame);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::didReceiveWebSocketFrameErrorImpl(InstrumentingAgents&amp; instrumentingAgents, unsigned long identifier, const String&amp; errorMessage)
</span><span class="cx"> {
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;didReceiveWebSocketFrameError(identifier, errorMessage);
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;didReceiveWebSocketFrameError(identifier, errorMessage);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void InspectorInstrumentation::didSendWebSocketFrameImpl(InstrumentingAgents&amp; instrumentingAgents, unsigned long identifier, const WebSocketFrame&amp; frame)
</span><span class="cx"> {
</span><del>-    if (InspectorResourceAgent* resourceAgent = instrumentingAgents.inspectorResourceAgent())
-        resourceAgent-&gt;didSendWebSocketFrame(identifier, frame);
</del><ins>+    if (InspectorNetworkAgent* networkAgent = instrumentingAgents.inspectorNetworkAgent())
+        networkAgent-&gt;didSendWebSocketFrame(identifier, frame);
</ins><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorLayerTreeAgenth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorLayerTreeAgent.h (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorLayerTreeAgent.h        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/WebCore/inspector/InspectorLayerTreeAgent.h        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -30,11 +30,10 @@
</span><span class="cx"> #define InspectorLayerTreeAgent_h
</span><span class="cx"> 
</span><span class="cx"> #include &quot;InspectorWebAgentBase.h&quot;
</span><ins>+#include &quot;RenderLayer.h&quot;
</ins><span class="cx"> #include &lt;inspector/InspectorBackendDispatchers.h&gt;
</span><span class="cx"> #include &lt;inspector/InspectorFrontendDispatchers.h&gt;
</span><span class="cx"> #include &lt;inspector/InspectorProtocolObjects.h&gt;
</span><del>-#include &quot;RenderLayer.h&quot;
-#include &lt;wtf/Vector.h&gt;
</del><span class="cx"> #include &lt;wtf/text/WTFString.h&gt;
</span><span class="cx"> 
</span><span class="cx"> namespace WebCore {
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorNetworkAgentcppfromrev191718trunkSourceWebCoreinspectorInspectorResourceAgentcpp"></a>
<div class="copfile"><h4>Copied: trunk/Source/WebCore/inspector/InspectorNetworkAgent.cpp (from rev 191718, trunk/Source/WebCore/inspector/InspectorResourceAgent.cpp) (0 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorNetworkAgent.cpp                                (rev 0)
+++ trunk/Source/WebCore/inspector/InspectorNetworkAgent.cpp        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -0,0 +1,706 @@
</span><ins>+/*
+ * Copyright (C) 2011 Google Inc. All rights reserved.
+ * Copyright (C) 2015 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *     * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include &quot;config.h&quot;
+#include &quot;InspectorNetworkAgent.h&quot;
+
+#include &quot;CachedRawResource.h&quot;
+#include &quot;CachedResource.h&quot;
+#include &quot;CachedResourceLoader.h&quot;
+#include &quot;Document.h&quot;
+#include &quot;DocumentLoader.h&quot;
+#include &quot;DocumentThreadableLoader.h&quot;
+#include &quot;Frame.h&quot;
+#include &quot;FrameLoader.h&quot;
+#include &quot;HTTPHeaderMap.h&quot;
+#include &quot;HTTPHeaderNames.h&quot;
+#include &quot;IconController.h&quot;
+#include &quot;InspectorPageAgent.h&quot;
+#include &quot;InspectorTimelineAgent.h&quot;
+#include &quot;InstrumentingAgents.h&quot;
+#include &quot;JSMainThreadExecState.h&quot;
+#include &quot;MemoryCache.h&quot;
+#include &quot;NetworkResourcesData.h&quot;
+#include &quot;Page.h&quot;
+#include &quot;ProgressTracker.h&quot;
+#include &quot;ResourceError.h&quot;
+#include &quot;ResourceLoader.h&quot;
+#include &quot;ResourceRequest.h&quot;
+#include &quot;ResourceResponse.h&quot;
+#include &quot;ScriptableDocumentParser.h&quot;
+#include &quot;SubresourceLoader.h&quot;
+#include &quot;ThreadableLoaderClient.h&quot;
+#include &quot;URL.h&quot;
+#include &quot;WebSocketFrame.h&quot;
+#include &lt;inspector/IdentifiersFactory.h&gt;
+#include &lt;inspector/InspectorFrontendRouter.h&gt;
+#include &lt;inspector/InspectorValues.h&gt;
+#include &lt;inspector/ScriptCallStack.h&gt;
+#include &lt;inspector/ScriptCallStackFactory.h&gt;
+#include &lt;wtf/RefPtr.h&gt;
+#include &lt;wtf/text/StringBuilder.h&gt;
+
+using namespace Inspector;
+
+typedef Inspector::NetworkBackendDispatcherHandler::LoadResourceCallback LoadResourceCallback;
+
+namespace WebCore {
+
+namespace {
+
+class InspectorThreadableLoaderClient final : public ThreadableLoaderClient {
+    WTF_MAKE_NONCOPYABLE(InspectorThreadableLoaderClient);
+public:
+    InspectorThreadableLoaderClient(RefPtr&lt;LoadResourceCallback&gt;&amp;&amp; callback)
+        : m_callback(WTF::move(callback)) { }
+
+    virtual ~InspectorThreadableLoaderClient() { }
+
+    virtual void didReceiveResponse(unsigned long, const ResourceResponse&amp; response) override
+    {
+        m_mimeType = response.mimeType();
+        m_statusCode = response.httpStatusCode();
+
+        // FIXME: This assumes text only responses. We should support non-text responses as well.
+        TextEncoding textEncoding(response.textEncodingName());
+        bool useDetector = false;
+        if (!textEncoding.isValid()) {
+            textEncoding = UTF8Encoding();
+            useDetector = true;
+        }
+
+        m_decoder = TextResourceDecoder::create(ASCIILiteral(&quot;text/plain&quot;), textEncoding, useDetector);
+    }
+
+    virtual void didReceiveData(const char* data, int dataLength) override
+    {
+        if (!dataLength)
+            return;
+
+        if (dataLength == -1)
+            dataLength = strlen(data);
+
+        m_responseText.append(m_decoder-&gt;decode(data, dataLength));
+    }
+
+    virtual void didFinishLoading(unsigned long, double) override
+    {
+        if (m_decoder)
+            m_responseText.append(m_decoder-&gt;flush());
+
+        m_callback-&gt;sendSuccess(m_responseText.toString(), m_mimeType, m_statusCode);
+        dispose();
+    }
+
+    virtual void didFail(const ResourceError&amp;) override
+    {
+        m_callback-&gt;sendFailure(ASCIILiteral(&quot;Loading resource for inspector failed&quot;));
+        dispose();
+    }
+
+    virtual void didFailRedirectCheck() override
+    {
+        m_callback-&gt;sendFailure(ASCIILiteral(&quot;Loading resource for inspector failed redirect check&quot;));
+        dispose();
+    }
+
+    void didFailLoaderCreation()
+    {
+        m_callback-&gt;sendFailure(ASCIILiteral(&quot;Could not create a loader&quot;));
+        dispose();
+    }
+
+    void setLoader(RefPtr&lt;ThreadableLoader&gt;&amp;&amp; loader)
+    {
+        m_loader = WTF::move(loader);
+    }
+
+private:
+    void dispose()
+    {
+        m_loader = nullptr;
+        delete this;
+    }
+
+    RefPtr&lt;LoadResourceCallback&gt; m_callback;
+    RefPtr&lt;ThreadableLoader&gt; m_loader;
+    RefPtr&lt;TextResourceDecoder&gt; m_decoder;
+    String m_mimeType;
+    StringBuilder m_responseText;
+    int m_statusCode;
+};
+
+} // namespace
+
+InspectorNetworkAgent::InspectorNetworkAgent(WebAgentContext&amp; context, InspectorPageAgent* pageAgent)
+    : InspectorAgentBase(ASCIILiteral(&quot;Network&quot;), context)
+    , m_frontendDispatcher(std::make_unique&lt;Inspector::NetworkFrontendDispatcher&gt;(context.frontendRouter))
+    , m_backendDispatcher(Inspector::NetworkBackendDispatcher::create(context.backendDispatcher, this))
+    , m_pageAgent(pageAgent)
+    , m_resourcesData(std::make_unique&lt;NetworkResourcesData&gt;())
+{
+}
+
+void InspectorNetworkAgent::didCreateFrontendAndBackend(Inspector::FrontendRouter*, Inspector::BackendDispatcher*)
+{
+}
+
+void InspectorNetworkAgent::willDestroyFrontendAndBackend(Inspector::DisconnectReason)
+{
+    ErrorString unused;
+    disable(unused);
+}
+
+static Ref&lt;InspectorObject&gt; buildObjectForHeaders(const HTTPHeaderMap&amp; headers)
+{
+    Ref&lt;InspectorObject&gt; headersObject = InspectorObject::create();
+    
+    for (const auto&amp; header : headers)
+        headersObject-&gt;setString(header.key, header.value);
+    return WTF::move(headersObject);
+}
+
+static Ref&lt;Inspector::Protocol::Network::ResourceTiming&gt; buildObjectForTiming(const ResourceLoadTiming&amp; timing, DocumentLoader* loader)
+{
+    return Inspector::Protocol::Network::ResourceTiming::create()
+        .setNavigationStart(loader-&gt;timing().navigationStart())
+        .setDomainLookupStart(timing.domainLookupStart)
+        .setDomainLookupEnd(timing.domainLookupEnd)
+        .setConnectStart(timing.connectStart)
+        .setConnectEnd(timing.connectEnd)
+        .setSecureConnectionStart(timing.secureConnectionStart)
+        .setRequestStart(timing.requestStart)
+        .setResponseStart(timing.responseStart)
+        .release();
+}
+
+static Ref&lt;Inspector::Protocol::Network::Request&gt; buildObjectForResourceRequest(const ResourceRequest&amp; request)
+{
+    auto requestObject = Inspector::Protocol::Network::Request::create()
+        .setUrl(request.url().string())
+        .setMethod(request.httpMethod())
+        .setHeaders(buildObjectForHeaders(request.httpHeaderFields()))
+        .release();
+    if (request.httpBody() &amp;&amp; !request.httpBody()-&gt;isEmpty())
+        requestObject-&gt;setPostData(request.httpBody()-&gt;flattenToString());
+    return WTF::move(requestObject);
+}
+
+static RefPtr&lt;Inspector::Protocol::Network::Response&gt; buildObjectForResourceResponse(const ResourceResponse&amp; response, DocumentLoader* loader)
+{
+    if (response.isNull())
+        return nullptr;
+
+    double status = response.httpStatusCode();
+    Ref&lt;InspectorObject&gt; headers = buildObjectForHeaders(response.httpHeaderFields());
+
+    auto responseObject = Inspector::Protocol::Network::Response::create()
+        .setUrl(response.url().string())
+        .setStatus(status)
+        .setStatusText(response.httpStatusText())
+        .setHeaders(WTF::move(headers))
+        .setMimeType(response.mimeType())
+        .release();
+
+    responseObject-&gt;setFromDiskCache(response.source() == ResourceResponse::Source::DiskCache || response.source() == ResourceResponse::Source::DiskCacheAfterValidation);
+    responseObject-&gt;setTiming(buildObjectForTiming(response.resourceLoadTiming(), loader));
+
+    return WTF::move(responseObject);
+}
+
+static Ref&lt;Inspector::Protocol::Network::CachedResource&gt; buildObjectForCachedResource(CachedResource* cachedResource, DocumentLoader* loader)
+{
+    auto resourceObject = Inspector::Protocol::Network::CachedResource::create()
+        .setUrl(cachedResource-&gt;url())
+        .setType(InspectorPageAgent::cachedResourceTypeJson(*cachedResource))
+        .setBodySize(cachedResource-&gt;encodedSize())
+        .release();
+
+    auto resourceResponse = buildObjectForResourceResponse(cachedResource-&gt;response(), loader);
+    resourceObject-&gt;setResponse(WTF::move(resourceResponse));
+
+    String sourceMappingURL = InspectorPageAgent::sourceMapURLForResource(cachedResource);
+    if (!sourceMappingURL.isEmpty())
+        resourceObject-&gt;setSourceMapURL(sourceMappingURL);
+
+    return WTF::move(resourceObject);
+}
+
+InspectorNetworkAgent::~InspectorNetworkAgent()
+{
+    if (m_enabled) {
+        ErrorString unused;
+        disable(unused);
+    }
+    ASSERT(!m_instrumentingAgents.inspectorNetworkAgent());
+}
+
+double InspectorNetworkAgent::timestamp()
+{
+    return m_instrumentingAgents.inspectorEnvironment().executionStopwatch()-&gt;elapsedTime();
+}
+
+void InspectorNetworkAgent::willSendRequest(unsigned long identifier, DocumentLoader&amp; loader, ResourceRequest&amp; request, const ResourceResponse&amp; redirectResponse)
+{
+    if (request.hiddenFromInspector()) {
+        m_hiddenRequestIdentifiers.add(identifier);
+        return;
+    }
+
+    String requestId = IdentifiersFactory::requestId(identifier);
+    m_resourcesData-&gt;resourceCreated(requestId, m_pageAgent-&gt;loaderId(&amp;loader));
+
+    CachedResource* cachedResource = InspectorPageAgent::cachedResource(loader.frame(), request.url());
+    InspectorPageAgent::ResourceType type = cachedResource ? InspectorPageAgent::cachedResourceType(*cachedResource) : m_resourcesData-&gt;resourceType(requestId);
+    if (type == InspectorPageAgent::OtherResource) {
+        if (m_loadingXHRSynchronously)
+            type = InspectorPageAgent::XHRResource;
+        else if (equalIgnoringFragmentIdentifier(request.url(), loader.frameLoader()-&gt;icon().url()))
+            type = InspectorPageAgent::ImageResource;
+        else if (equalIgnoringFragmentIdentifier(request.url(), loader.url()) &amp;&amp; !loader.isCommitted())
+            type = InspectorPageAgent::DocumentResource;
+    }
+
+    m_resourcesData-&gt;setResourceType(requestId, type);
+
+    for (auto&amp; entry : m_extraRequestHeaders)
+        request.setHTTPHeaderField(entry.key, entry.value);
+
+    request.setReportLoadTiming(true);
+    request.setReportRawHeaders(true);
+
+    if (m_cacheDisabled) {
+        request.setHTTPHeaderField(HTTPHeaderName::Pragma, &quot;no-cache&quot;);
+        request.setCachePolicy(ReloadIgnoringCacheData);
+        request.setHTTPHeaderField(HTTPHeaderName::CacheControl, &quot;no-cache&quot;);
+    }
+
+    Inspector::Protocol::Page::ResourceType resourceType = InspectorPageAgent::resourceTypeJson(type);
+
+    RefPtr&lt;Inspector::Protocol::Network::Initiator&gt; initiatorObject = buildInitiatorObject(loader.frame() ? loader.frame()-&gt;document() : nullptr);
+    m_frontendDispatcher-&gt;requestWillBeSent(requestId, m_pageAgent-&gt;frameId(loader.frame()), m_pageAgent-&gt;loaderId(&amp;loader), loader.url().string(), buildObjectForResourceRequest(request), timestamp(), initiatorObject, buildObjectForResourceResponse(redirectResponse, &amp;loader), type != InspectorPageAgent::OtherResource ? &amp;resourceType : nullptr);
+}
+
+void InspectorNetworkAgent::markResourceAsCached(unsigned long identifier)
+{
+    if (m_hiddenRequestIdentifiers.contains(identifier))
+        return;
+
+    m_frontendDispatcher-&gt;requestServedFromCache(IdentifiersFactory::requestId(identifier));
+}
+
+void InspectorNetworkAgent::didReceiveResponse(unsigned long identifier, DocumentLoader&amp; loader, const ResourceResponse&amp; response, ResourceLoader* resourceLoader)
+{
+    if (m_hiddenRequestIdentifiers.contains(identifier))
+        return;
+
+    String requestId = IdentifiersFactory::requestId(identifier);
+    RefPtr&lt;Inspector::Protocol::Network::Response&gt; resourceResponse = buildObjectForResourceResponse(response, &amp;loader);
+
+    bool isNotModified = response.httpStatusCode() == 304;
+
+    CachedResource* cachedResource = nullptr;
+    if (resourceLoader &amp;&amp; resourceLoader-&gt;isSubresourceLoader() &amp;&amp; !isNotModified)
+        cachedResource = static_cast&lt;SubresourceLoader*&gt;(resourceLoader)-&gt;cachedResource();
+    if (!cachedResource)
+        cachedResource = InspectorPageAgent::cachedResource(loader.frame(), response.url());
+
+    if (cachedResource) {
+        // Use mime type from cached resource in case the one in response is empty.
+        if (resourceResponse &amp;&amp; response.mimeType().isEmpty())
+            resourceResponse-&gt;setString(Inspector::Protocol::Network::Response::MimeType, cachedResource-&gt;response().mimeType());
+        m_resourcesData-&gt;addCachedResource(requestId, cachedResource);
+    }
+
+    InspectorPageAgent::ResourceType type = m_resourcesData-&gt;resourceType(requestId);
+    InspectorPageAgent::ResourceType newType = cachedResource ? InspectorPageAgent::cachedResourceType(*cachedResource) : type;
+
+    // FIXME: XHRResource is returned for CachedResource::RawResource, it should be OtherResource unless it truly is an XHR.
+    // RawResource is used for loading worker scripts, and those should stay as ScriptResource and not change to XHRResource.
+    if (type != newType &amp;&amp; newType != InspectorPageAgent::XHRResource &amp;&amp; newType != InspectorPageAgent::OtherResource)
+        type = newType;
+
+    m_resourcesData-&gt;responseReceived(requestId, m_pageAgent-&gt;frameId(loader.frame()), response);
+    m_resourcesData-&gt;setResourceType(requestId, type);
+
+    m_frontendDispatcher-&gt;responseReceived(requestId, m_pageAgent-&gt;frameId(loader.frame()), m_pageAgent-&gt;loaderId(&amp;loader), timestamp(), InspectorPageAgent::resourceTypeJson(type), resourceResponse);
+
+    // If we revalidated the resource and got Not modified, send content length following didReceiveResponse
+    // as there will be no calls to didReceiveData from the network stack.
+    if (isNotModified &amp;&amp; cachedResource &amp;&amp; cachedResource-&gt;encodedSize())
+        didReceiveData(identifier, nullptr, cachedResource-&gt;encodedSize(), 0);
+}
+
+static bool isErrorStatusCode(int statusCode)
+{
+    return statusCode &gt;= 400;
+}
+
+void InspectorNetworkAgent::didReceiveData(unsigned long identifier, const char* data, int dataLength, int encodedDataLength)
+{
+    if (m_hiddenRequestIdentifiers.contains(identifier))
+        return;
+
+    String requestId = IdentifiersFactory::requestId(identifier);
+
+    if (data) {
+        NetworkResourcesData::ResourceData const* resourceData = m_resourcesData-&gt;data(requestId);
+        if (resourceData &amp;&amp; !m_loadingXHRSynchronously &amp;&amp; (!resourceData-&gt;cachedResource() || resourceData-&gt;cachedResource()-&gt;dataBufferingPolicy() == DoNotBufferData || isErrorStatusCode(resourceData-&gt;httpStatusCode())))
+            m_resourcesData-&gt;maybeAddResourceData(requestId, data, dataLength);
+    }
+
+    m_frontendDispatcher-&gt;dataReceived(requestId, timestamp(), dataLength, encodedDataLength);
+}
+
+void InspectorNetworkAgent::didFinishLoading(unsigned long identifier, DocumentLoader&amp; loader, double finishTime)
+{
+    if (m_hiddenRequestIdentifiers.remove(identifier))
+        return;
+
+    String requestId = IdentifiersFactory::requestId(identifier);
+    if (m_resourcesData-&gt;resourceType(requestId) == InspectorPageAgent::DocumentResource)
+        m_resourcesData-&gt;addResourceSharedBuffer(requestId, loader.frameLoader()-&gt;documentLoader()-&gt;mainResourceData(), loader.frame()-&gt;document()-&gt;encoding());
+
+    m_resourcesData-&gt;maybeDecodeDataToContent(requestId);
+
+    // FIXME: The finishTime that is passed in is from the NetworkProcess and is more accurate.
+    // However, all other times passed to the Inspector are generated from the web process. Mixing
+    // times from different processes can cause the finish time to be earlier than the response
+    // received time due to inter-process communication lag.
+    finishTime = timestamp();
+
+    String sourceMappingURL;
+    NetworkResourcesData::ResourceData const* resourceData = m_resourcesData-&gt;data(requestId);
+    if (resourceData &amp;&amp; resourceData-&gt;cachedResource())
+        sourceMappingURL = InspectorPageAgent::sourceMapURLForResource(resourceData-&gt;cachedResource());
+
+    m_frontendDispatcher-&gt;loadingFinished(requestId, finishTime, !sourceMappingURL.isEmpty() ? &amp;sourceMappingURL : nullptr);
+}
+
+void InspectorNetworkAgent::didFailLoading(unsigned long identifier, DocumentLoader&amp; loader, const ResourceError&amp; error)
+{
+    if (m_hiddenRequestIdentifiers.remove(identifier))
+        return;
+
+    String requestId = IdentifiersFactory::requestId(identifier);
+
+    if (m_resourcesData-&gt;resourceType(requestId) == InspectorPageAgent::DocumentResource) {
+        Frame* frame = loader.frame();
+        if (frame &amp;&amp; frame-&gt;loader().documentLoader() &amp;&amp; frame-&gt;document()) {
+            m_resourcesData-&gt;addResourceSharedBuffer(requestId,
+                frame-&gt;loader().documentLoader()-&gt;mainResourceData(),
+                frame-&gt;document()-&gt;encoding());
+        }
+    }
+
+    bool canceled = error.isCancellation();
+    m_frontendDispatcher-&gt;loadingFailed(requestId, timestamp(), error.localizedDescription(), canceled ? &amp;canceled : nullptr);
+}
+
+void InspectorNetworkAgent::didLoadResourceFromMemoryCache(DocumentLoader&amp; loader, CachedResource&amp; resource)
+{
+    String loaderId = m_pageAgent-&gt;loaderId(&amp;loader);
+    String frameId = m_pageAgent-&gt;frameId(loader.frame());
+    unsigned long identifier = loader.frame()-&gt;page()-&gt;progress().createUniqueIdentifier();
+    String requestId = IdentifiersFactory::requestId(identifier);
+    m_resourcesData-&gt;resourceCreated(requestId, loaderId);
+    m_resourcesData-&gt;addCachedResource(requestId, &amp;resource);
+
+    RefPtr&lt;Inspector::Protocol::Network::Initiator&gt; initiatorObject = buildInitiatorObject(loader.frame() ? loader.frame()-&gt;document() : nullptr);
+
+    m_frontendDispatcher-&gt;requestServedFromMemoryCache(requestId, frameId, loaderId, loader.url().string(), timestamp(), initiatorObject, buildObjectForCachedResource(&amp;resource, &amp;loader));
+}
+
+void InspectorNetworkAgent::setInitialScriptContent(unsigned long identifier, const String&amp; sourceString)
+{
+    m_resourcesData-&gt;setResourceContent(IdentifiersFactory::requestId(identifier), sourceString);
+}
+
+void InspectorNetworkAgent::didReceiveScriptResponse(unsigned long identifier)
+{
+    m_resourcesData-&gt;setResourceType(IdentifiersFactory::requestId(identifier), InspectorPageAgent::ScriptResource);
+}
+
+void InspectorNetworkAgent::didFinishXHRLoading(ThreadableLoaderClient*, unsigned long identifier, const String&amp; sourceString)
+{
+    // For Asynchronous XHRs, the inspector can grab the data directly off of the CachedResource. For sync XHRs, we need to
+    // provide the data here, since no CachedResource was involved.
+    if (m_loadingXHRSynchronously)
+        m_resourcesData-&gt;setResourceContent(IdentifiersFactory::requestId(identifier), sourceString);
+}
+
+void InspectorNetworkAgent::didReceiveXHRResponse(unsigned long identifier)
+{
+    m_resourcesData-&gt;setResourceType(IdentifiersFactory::requestId(identifier), InspectorPageAgent::XHRResource);
+}
+
+void InspectorNetworkAgent::willLoadXHRSynchronously()
+{
+    m_loadingXHRSynchronously = true;
+}
+
+void InspectorNetworkAgent::didLoadXHRSynchronously()
+{
+    m_loadingXHRSynchronously = false;
+}
+
+void InspectorNetworkAgent::willDestroyCachedResource(CachedResource&amp; cachedResource)
+{
+    Vector&lt;String&gt; requestIds = m_resourcesData-&gt;removeCachedResource(&amp;cachedResource);
+    if (!requestIds.size())
+        return;
+
+    String content;
+    bool base64Encoded;
+    if (!InspectorPageAgent::cachedResourceContent(&amp;cachedResource, &amp;content, &amp;base64Encoded))
+        return;
+    for (auto&amp; id : requestIds)
+        m_resourcesData-&gt;setResourceContent(id, content, base64Encoded);
+}
+
+void InspectorNetworkAgent::willRecalculateStyle()
+{
+    m_isRecalculatingStyle = true;
+}
+
+void InspectorNetworkAgent::didRecalculateStyle()
+{
+    m_isRecalculatingStyle = false;
+    m_styleRecalculationInitiator = nullptr;
+}
+
+void InspectorNetworkAgent::didScheduleStyleRecalculation(Document&amp; document)
+{
+    if (!m_styleRecalculationInitiator)
+        m_styleRecalculationInitiator = buildInitiatorObject(&amp;document);
+}
+
+RefPtr&lt;Inspector::Protocol::Network::Initiator&gt; InspectorNetworkAgent::buildInitiatorObject(Document* document)
+{
+    RefPtr&lt;ScriptCallStack&gt; stackTrace = createScriptCallStack(JSMainThreadExecState::currentState(), ScriptCallStack::maxCallStackSizeToCapture);
+    if (stackTrace &amp;&amp; stackTrace-&gt;size() &gt; 0) {
+        auto initiatorObject = Inspector::Protocol::Network::Initiator::create()
+            .setType(Inspector::Protocol::Network::Initiator::Type::Script)
+            .release();
+        initiatorObject-&gt;setStackTrace(stackTrace-&gt;buildInspectorArray());
+        return WTF::move(initiatorObject);
+    }
+
+    if (document &amp;&amp; document-&gt;scriptableDocumentParser()) {
+        auto initiatorObject = Inspector::Protocol::Network::Initiator::create()
+            .setType(Inspector::Protocol::Network::Initiator::Type::Parser)
+            .release();
+        initiatorObject-&gt;setUrl(document-&gt;url().string());
+        initiatorObject-&gt;setLineNumber(document-&gt;scriptableDocumentParser()-&gt;textPosition().m_line.oneBasedInt());
+        return WTF::move(initiatorObject);
+    }
+
+    if (m_isRecalculatingStyle &amp;&amp; m_styleRecalculationInitiator)
+        return m_styleRecalculationInitiator;
+
+    return Inspector::Protocol::Network::Initiator::create()
+        .setType(Inspector::Protocol::Network::Initiator::Type::Other)
+        .release();
+}
+
+#if ENABLE(WEB_SOCKETS)
+
+void InspectorNetworkAgent::didCreateWebSocket(unsigned long identifier, const URL&amp; requestURL)
+{
+    m_frontendDispatcher-&gt;webSocketCreated(IdentifiersFactory::requestId(identifier), requestURL.string());
+}
+
+void InspectorNetworkAgent::willSendWebSocketHandshakeRequest(unsigned long identifier, const ResourceRequest&amp; request)
+{
+    auto requestObject = Inspector::Protocol::Network::WebSocketRequest::create()
+        .setHeaders(buildObjectForHeaders(request.httpHeaderFields()))
+        .release();
+    m_frontendDispatcher-&gt;webSocketWillSendHandshakeRequest(IdentifiersFactory::requestId(identifier), timestamp(), WTF::move(requestObject));
+}
+
+void InspectorNetworkAgent::didReceiveWebSocketHandshakeResponse(unsigned long identifier, const ResourceResponse&amp; response)
+{
+    auto responseObject = Inspector::Protocol::Network::WebSocketResponse::create()
+        .setStatus(response.httpStatusCode())
+        .setStatusText(response.httpStatusText())
+        .setHeaders(buildObjectForHeaders(response.httpHeaderFields()))
+        .release();
+    m_frontendDispatcher-&gt;webSocketHandshakeResponseReceived(IdentifiersFactory::requestId(identifier), timestamp(), WTF::move(responseObject));
+}
+
+void InspectorNetworkAgent::didCloseWebSocket(unsigned long identifier)
+{
+    m_frontendDispatcher-&gt;webSocketClosed(IdentifiersFactory::requestId(identifier), timestamp());
+}
+
+void InspectorNetworkAgent::didReceiveWebSocketFrame(unsigned long identifier, const WebSocketFrame&amp; frame)
+{
+    auto frameObject = Inspector::Protocol::Network::WebSocketFrame::create()
+        .setOpcode(frame.opCode)
+        .setMask(frame.masked)
+        .setPayloadData(String(frame.payload, frame.payloadLength))
+        .release();
+    m_frontendDispatcher-&gt;webSocketFrameReceived(IdentifiersFactory::requestId(identifier), timestamp(), WTF::move(frameObject));
+}
+
+void InspectorNetworkAgent::didSendWebSocketFrame(unsigned long identifier, const WebSocketFrame&amp; frame)
+{
+    auto frameObject = Inspector::Protocol::Network::WebSocketFrame::create()
+        .setOpcode(frame.opCode)
+        .setMask(frame.masked)
+        .setPayloadData(String(frame.payload, frame.payloadLength))
+        .release();
+    m_frontendDispatcher-&gt;webSocketFrameSent(IdentifiersFactory::requestId(identifier), timestamp(), WTF::move(frameObject));
+}
+
+void InspectorNetworkAgent::didReceiveWebSocketFrameError(unsigned long identifier, const String&amp; errorMessage)
+{
+    m_frontendDispatcher-&gt;webSocketFrameError(IdentifiersFactory::requestId(identifier), timestamp(), errorMessage);
+}
+
+#endif // ENABLE(WEB_SOCKETS)
+
+void InspectorNetworkAgent::enable(ErrorString&amp;)
+{
+    enable();
+}
+
+void InspectorNetworkAgent::enable()
+{
+    m_enabled = true;
+    m_instrumentingAgents.setInspectorNetworkAgent(this);
+}
+
+void InspectorNetworkAgent::disable(ErrorString&amp;)
+{
+    m_enabled = false;
+    m_instrumentingAgents.setInspectorNetworkAgent(nullptr);
+    m_resourcesData-&gt;clear();
+    m_extraRequestHeaders.clear();
+}
+
+void InspectorNetworkAgent::setExtraHTTPHeaders(ErrorString&amp;, const InspectorObject&amp; headers)
+{
+    for (auto&amp; entry : headers) {
+        String stringValue;
+        if (entry.value-&gt;asString(stringValue))
+            m_extraRequestHeaders.set(entry.key, stringValue);
+    }
+}
+
+void InspectorNetworkAgent::getResponseBody(ErrorString&amp; errorString, const String&amp; requestId, String* content, bool* base64Encoded)
+{
+    NetworkResourcesData::ResourceData const* resourceData = m_resourcesData-&gt;data(requestId);
+    if (!resourceData) {
+        errorString = ASCIILiteral(&quot;No resource with given identifier found&quot;);
+        return;
+    }
+
+    if (resourceData-&gt;hasContent()) {
+        *base64Encoded = resourceData-&gt;base64Encoded();
+        *content = resourceData-&gt;content();
+        return;
+    }
+
+    if (resourceData-&gt;isContentEvicted()) {
+        errorString = ASCIILiteral(&quot;Request content was evicted from inspector cache&quot;);
+        return;
+    }
+
+    if (resourceData-&gt;buffer() &amp;&amp; !resourceData-&gt;textEncodingName().isNull()) {
+        *base64Encoded = false;
+        if (InspectorPageAgent::sharedBufferContent(resourceData-&gt;buffer(), resourceData-&gt;textEncodingName(), *base64Encoded, content))
+            return;
+    }
+
+    if (resourceData-&gt;cachedResource()) {
+        if (InspectorPageAgent::cachedResourceContent(resourceData-&gt;cachedResource(), content, base64Encoded))
+            return;
+    }
+
+    errorString = ASCIILiteral(&quot;No data found for resource with given identifier&quot;);
+}
+
+void InspectorNetworkAgent::setCacheDisabled(ErrorString&amp;, bool cacheDisabled)
+{
+    m_cacheDisabled = cacheDisabled;
+    if (cacheDisabled)
+        MemoryCache::singleton().evictResources();
+}
+
+void InspectorNetworkAgent::loadResource(ErrorString&amp; errorString, const String&amp; frameId, const String&amp; urlString, Ref&lt;LoadResourceCallback&gt;&amp;&amp; callback)
+{
+    Frame* frame = m_pageAgent-&gt;assertFrame(errorString, frameId);
+    if (!frame)
+        return;
+
+    Document* document = frame-&gt;document();
+    if (!document) {
+        errorString = ASCIILiteral(&quot;No Document instance for the specified frame&quot;);
+        return;
+    }
+
+    URL url = document-&gt;completeURL(urlString);
+    ResourceRequest request(url);
+    request.setHTTPMethod(ASCIILiteral(&quot;GET&quot;));
+    request.setHiddenFromInspector(true);
+
+    ThreadableLoaderOptions options;
+    options.setSendLoadCallbacks(SendCallbacks); // So we remove this from m_hiddenRequestIdentifiers on completion.
+    options.setAllowCredentials(AllowStoredCredentials);
+    options.setDefersLoadingPolicy(DefersLoadingPolicy::DisallowDefersLoading); // So the request is never deferred.
+    options.crossOriginRequestPolicy = AllowCrossOriginRequests;
+
+    // InspectorThreadableLoaderClient deletes itself when the load completes.
+    InspectorThreadableLoaderClient* inspectorThreadableLoaderClient = new InspectorThreadableLoaderClient(callback.copyRef());
+
+    RefPtr&lt;DocumentThreadableLoader&gt; loader = DocumentThreadableLoader::create(*document, *inspectorThreadableLoaderClient, request, options);
+    if (!loader) {
+        inspectorThreadableLoaderClient-&gt;didFailLoaderCreation();
+        return;
+    }
+
+    // If the load already completed, inspectorThreadableLoaderClient will have been deleted and we will have already called the callback.
+    if (!callback-&gt;isActive())
+        return;
+
+    inspectorThreadableLoaderClient-&gt;setLoader(loader.release());
+}
+
+void InspectorNetworkAgent::mainFrameNavigated(DocumentLoader&amp; loader)
+{
+    if (m_cacheDisabled)
+        MemoryCache::singleton().evictResources();
+
+    m_resourcesData-&gt;clear(m_pageAgent-&gt;loaderId(&amp;loader));
+}
+
+} // namespace WebCore
</ins></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorNetworkAgenthfromrev191718trunkSourceWebCoreinspectorInspectorResourceAgenth"></a>
<div class="copfile"><h4>Copied: trunk/Source/WebCore/inspector/InspectorNetworkAgent.h (from rev 191718, trunk/Source/WebCore/inspector/InspectorResourceAgent.h) (0 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorNetworkAgent.h                                (rev 0)
+++ trunk/Source/WebCore/inspector/InspectorNetworkAgent.h        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -0,0 +1,136 @@
</span><ins>+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ * Copyright (C) 2015 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *     * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef InspectorNetworkAgent_h
+#define InspectorNetworkAgent_h
+
+#include &quot;InspectorWebAgentBase.h&quot;
+#include &lt;inspector/InspectorBackendDispatchers.h&gt;
+#include &lt;inspector/InspectorFrontendDispatchers.h&gt;
+#include &lt;wtf/HashSet.h&gt;
+#include &lt;wtf/text/WTFString.h&gt;
+
+namespace Inspector {
+class InspectorObject;
+}
+
+namespace WebCore {
+
+class CachedResource;
+class Document;
+class DocumentLoader;
+class InspectorPageAgent;
+class NetworkResourcesData;
+class ResourceError;
+class ResourceLoader;
+class ResourceRequest;
+class ResourceResponse;
+class ThreadableLoaderClient;
+class URL;
+
+#if ENABLE(WEB_SOCKETS)
+struct WebSocketFrame;
+#endif
+
+typedef String ErrorString;
+
+class InspectorNetworkAgent final : public InspectorAgentBase, public Inspector::NetworkBackendDispatcherHandler {
+    WTF_MAKE_FAST_ALLOCATED;
+public:
+    InspectorNetworkAgent(WebAgentContext&amp;, InspectorPageAgent*);
+    virtual ~InspectorNetworkAgent();
+
+    virtual void didCreateFrontendAndBackend(Inspector::FrontendRouter*, Inspector::BackendDispatcher*) override;
+    virtual void willDestroyFrontendAndBackend(Inspector::DisconnectReason) override;
+
+    // InspectorInstrumentation callbacks.
+    void willRecalculateStyle();
+    void didRecalculateStyle();
+    void willSendRequest(unsigned long identifier, DocumentLoader&amp;, ResourceRequest&amp;, const ResourceResponse&amp; redirectResponse);
+    void markResourceAsCached(unsigned long identifier);
+    void didReceiveResponse(unsigned long identifier, DocumentLoader&amp;, const ResourceResponse&amp;, ResourceLoader*);
+    void didReceiveData(unsigned long identifier, const char* data, int dataLength, int encodedDataLength);
+    void didFinishLoading(unsigned long identifier, DocumentLoader&amp;, double finishTime);
+    void didFailLoading(unsigned long identifier, DocumentLoader&amp;, const ResourceError&amp;);
+    void didLoadResourceFromMemoryCache(DocumentLoader&amp;, CachedResource&amp;);
+    void didFinishXHRLoading(ThreadableLoaderClient*, unsigned long identifier, const String&amp; sourceString);
+    void didReceiveXHRResponse(unsigned long identifier);
+    void willLoadXHRSynchronously();
+    void didLoadXHRSynchronously();
+    void didReceiveScriptResponse(unsigned long identifier);
+    void willDestroyCachedResource(CachedResource&amp;);
+#if ENABLE(WEB_SOCKETS)
+    void didCreateWebSocket(unsigned long identifier, const URL&amp; requestURL);
+    void willSendWebSocketHandshakeRequest(unsigned long identifier, const ResourceRequest&amp;);
+    void didReceiveWebSocketHandshakeResponse(unsigned long identifier, const ResourceResponse&amp;);
+    void didCloseWebSocket(unsigned long identifier);
+    void didReceiveWebSocketFrame(unsigned long identifier, const WebSocketFrame&amp;);
+    void didSendWebSocketFrame(unsigned long identifier, const WebSocketFrame&amp;);
+    void didReceiveWebSocketFrameError(unsigned long identifier, const String&amp;);
+#endif
+    void mainFrameNavigated(DocumentLoader&amp;);
+    void setInitialScriptContent(unsigned long identifier, const String&amp; sourceString);
+    void didScheduleStyleRecalculation(Document&amp;);
+
+    RefPtr&lt;Inspector::Protocol::Network::Initiator&gt; buildInitiatorObject(Document*);
+
+    // Called from frontend.
+    virtual void enable(ErrorString&amp;) override;
+    virtual void disable(ErrorString&amp;) override;
+    virtual void setExtraHTTPHeaders(ErrorString&amp;, const Inspector::InspectorObject&amp; headers) override;
+    virtual void getResponseBody(ErrorString&amp;, const String&amp; requestId, String* content, bool* base64Encoded) override;
+    virtual void setCacheDisabled(ErrorString&amp;, bool cacheDisabled) override;
+    virtual void loadResource(ErrorString&amp;, const String&amp; frameId, const String&amp; url, Ref&lt;LoadResourceCallback&gt;&amp;&amp;) override;
+
+private:
+    void enable();
+
+    double timestamp();
+
+    std::unique_ptr&lt;Inspector::NetworkFrontendDispatcher&gt; m_frontendDispatcher;
+    RefPtr&lt;Inspector::NetworkBackendDispatcher&gt; m_backendDispatcher;
+    InspectorPageAgent* m_pageAgent { nullptr };
+
+    // FIXME: InspectorNetworkAgent should not be aware of style recalculation.
+    RefPtr&lt;Inspector::Protocol::Network::Initiator&gt; m_styleRecalculationInitiator;
+    bool m_isRecalculatingStyle { false };
+
+    std::unique_ptr&lt;NetworkResourcesData&gt; m_resourcesData;
+    bool m_enabled { false };
+    bool m_cacheDisabled { false };
+    bool m_loadingXHRSynchronously { false };
+    HashMap&lt;String, String&gt; m_extraRequestHeaders;
+    HashSet&lt;unsigned long&gt; m_hiddenRequestIdentifiers;
+};
+
+} // namespace WebCore
+
+#endif // !defined(InspectorNetworkAgent_h)
</ins></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorPageAgenth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorPageAgent.h (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorPageAgent.h        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/WebCore/inspector/InspectorPageAgent.h        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -38,8 +38,6 @@
</span><span class="cx"> #include &lt;inspector/InspectorBackendDispatchers.h&gt;
</span><span class="cx"> #include &lt;inspector/InspectorFrontendDispatchers.h&gt;
</span><span class="cx"> #include &lt;wtf/HashMap.h&gt;
</span><del>-#include &lt;wtf/RefCounted.h&gt;
-#include &lt;wtf/Vector.h&gt;
</del><span class="cx"> #include &lt;wtf/text/WTFString.h&gt;
</span><span class="cx"> 
</span><span class="cx"> namespace Inspector {
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorResourceAgentcpp"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebCore/inspector/InspectorResourceAgent.cpp (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorResourceAgent.cpp        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/WebCore/inspector/InspectorResourceAgent.cpp        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -1,707 +0,0 @@
</span><del>-/*
- * Copyright (C) 2011 Google Inc. All rights reserved.
- * Copyright (C) 2015 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- *     * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *     * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- *     * Neither the name of Google Inc. nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include &quot;config.h&quot;
-#include &quot;InspectorResourceAgent.h&quot;
-
-#include &quot;CachedRawResource.h&quot;
-#include &quot;CachedResource.h&quot;
-#include &quot;CachedResourceLoader.h&quot;
-#include &quot;Document.h&quot;
-#include &quot;DocumentLoader.h&quot;
-#include &quot;DocumentThreadableLoader.h&quot;
-#include &quot;ExceptionCodePlaceholder.h&quot;
-#include &quot;Frame.h&quot;
-#include &quot;FrameLoader.h&quot;
-#include &quot;HTTPHeaderMap.h&quot;
-#include &quot;HTTPHeaderNames.h&quot;
-#include &quot;IconController.h&quot;
-#include &quot;InspectorPageAgent.h&quot;
-#include &quot;InspectorTimelineAgent.h&quot;
-#include &quot;InstrumentingAgents.h&quot;
-#include &quot;JSMainThreadExecState.h&quot;
-#include &quot;MemoryCache.h&quot;
-#include &quot;NetworkResourcesData.h&quot;
-#include &quot;Page.h&quot;
-#include &quot;ProgressTracker.h&quot;
-#include &quot;ResourceError.h&quot;
-#include &quot;ResourceLoader.h&quot;
-#include &quot;ResourceRequest.h&quot;
-#include &quot;ResourceResponse.h&quot;
-#include &quot;ScriptableDocumentParser.h&quot;
-#include &quot;SubresourceLoader.h&quot;
-#include &quot;ThreadableLoaderClient.h&quot;
-#include &quot;URL.h&quot;
-#include &quot;WebSocketFrame.h&quot;
-#include &lt;inspector/IdentifiersFactory.h&gt;
-#include &lt;inspector/InspectorFrontendRouter.h&gt;
-#include &lt;inspector/InspectorValues.h&gt;
-#include &lt;inspector/ScriptCallStack.h&gt;
-#include &lt;inspector/ScriptCallStackFactory.h&gt;
-#include &lt;wtf/RefPtr.h&gt;
-#include &lt;wtf/text/StringBuilder.h&gt;
-
-using namespace Inspector;
-
-typedef Inspector::NetworkBackendDispatcherHandler::LoadResourceCallback LoadResourceCallback;
-
-namespace WebCore {
-
-namespace {
-
-class InspectorThreadableLoaderClient final : public ThreadableLoaderClient {
-    WTF_MAKE_NONCOPYABLE(InspectorThreadableLoaderClient);
-public:
-    InspectorThreadableLoaderClient(RefPtr&lt;LoadResourceCallback&gt;&amp;&amp; callback)
-        : m_callback(WTF::move(callback)) { }
-
-    virtual ~InspectorThreadableLoaderClient() { }
-
-    virtual void didReceiveResponse(unsigned long, const ResourceResponse&amp; response) override
-    {
-        m_mimeType = response.mimeType();
-        m_statusCode = response.httpStatusCode();
-
-        // FIXME: This assumes text only responses. We should support non-text responses as well.
-        TextEncoding textEncoding(response.textEncodingName());
-        bool useDetector = false;
-        if (!textEncoding.isValid()) {
-            textEncoding = UTF8Encoding();
-            useDetector = true;
-        }
-
-        m_decoder = TextResourceDecoder::create(ASCIILiteral(&quot;text/plain&quot;), textEncoding, useDetector);
-    }
-
-    virtual void didReceiveData(const char* data, int dataLength) override
-    {
-        if (!dataLength)
-            return;
-
-        if (dataLength == -1)
-            dataLength = strlen(data);
-
-        m_responseText.append(m_decoder-&gt;decode(data, dataLength));
-    }
-
-    virtual void didFinishLoading(unsigned long, double) override
-    {
-        if (m_decoder)
-            m_responseText.append(m_decoder-&gt;flush());
-
-        m_callback-&gt;sendSuccess(m_responseText.toString(), m_mimeType, m_statusCode);
-        dispose();
-    }
-
-    virtual void didFail(const ResourceError&amp;) override
-    {
-        m_callback-&gt;sendFailure(ASCIILiteral(&quot;Loading resource for inspector failed&quot;));
-        dispose();
-    }
-
-    virtual void didFailRedirectCheck() override
-    {
-        m_callback-&gt;sendFailure(ASCIILiteral(&quot;Loading resource for inspector failed redirect check&quot;));
-        dispose();
-    }
-
-    void didFailLoaderCreation()
-    {
-        m_callback-&gt;sendFailure(ASCIILiteral(&quot;Could not create a loader&quot;));
-        dispose();
-    }
-
-    void setLoader(RefPtr&lt;ThreadableLoader&gt;&amp;&amp; loader)
-    {
-        m_loader = WTF::move(loader);
-    }
-
-private:
-    void dispose()
-    {
-        m_loader = nullptr;
-        delete this;
-    }
-
-    RefPtr&lt;LoadResourceCallback&gt; m_callback;
-    RefPtr&lt;ThreadableLoader&gt; m_loader;
-    RefPtr&lt;TextResourceDecoder&gt; m_decoder;
-    String m_mimeType;
-    StringBuilder m_responseText;
-    int m_statusCode;
-};
-
-} // namespace
-
-InspectorResourceAgent::InspectorResourceAgent(WebAgentContext&amp; context, InspectorPageAgent* pageAgent)
-    : InspectorAgentBase(ASCIILiteral(&quot;Network&quot;), context)
-    , m_frontendDispatcher(std::make_unique&lt;Inspector::NetworkFrontendDispatcher&gt;(context.frontendRouter))
-    , m_backendDispatcher(Inspector::NetworkBackendDispatcher::create(context.backendDispatcher, this))
-    , m_pageAgent(pageAgent)
-    , m_resourcesData(std::make_unique&lt;NetworkResourcesData&gt;())
-{
-}
-
-void InspectorResourceAgent::didCreateFrontendAndBackend(Inspector::FrontendRouter*, Inspector::BackendDispatcher*)
-{
-}
-
-void InspectorResourceAgent::willDestroyFrontendAndBackend(Inspector::DisconnectReason)
-{
-    ErrorString unused;
-    disable(unused);
-}
-
-static Ref&lt;InspectorObject&gt; buildObjectForHeaders(const HTTPHeaderMap&amp; headers)
-{
-    Ref&lt;InspectorObject&gt; headersObject = InspectorObject::create();
-    
-    for (const auto&amp; header : headers)
-        headersObject-&gt;setString(header.key, header.value);
-    return WTF::move(headersObject);
-}
-
-static Ref&lt;Inspector::Protocol::Network::ResourceTiming&gt; buildObjectForTiming(const ResourceLoadTiming&amp; timing, DocumentLoader* loader)
-{
-    return Inspector::Protocol::Network::ResourceTiming::create()
-        .setNavigationStart(loader-&gt;timing().navigationStart())
-        .setDomainLookupStart(timing.domainLookupStart)
-        .setDomainLookupEnd(timing.domainLookupEnd)
-        .setConnectStart(timing.connectStart)
-        .setConnectEnd(timing.connectEnd)
-        .setSecureConnectionStart(timing.secureConnectionStart)
-        .setRequestStart(timing.requestStart)
-        .setResponseStart(timing.responseStart)
-        .release();
-}
-
-static Ref&lt;Inspector::Protocol::Network::Request&gt; buildObjectForResourceRequest(const ResourceRequest&amp; request)
-{
-    auto requestObject = Inspector::Protocol::Network::Request::create()
-        .setUrl(request.url().string())
-        .setMethod(request.httpMethod())
-        .setHeaders(buildObjectForHeaders(request.httpHeaderFields()))
-        .release();
-    if (request.httpBody() &amp;&amp; !request.httpBody()-&gt;isEmpty())
-        requestObject-&gt;setPostData(request.httpBody()-&gt;flattenToString());
-    return WTF::move(requestObject);
-}
-
-static RefPtr&lt;Inspector::Protocol::Network::Response&gt; buildObjectForResourceResponse(const ResourceResponse&amp; response, DocumentLoader* loader)
-{
-    if (response.isNull())
-        return nullptr;
-
-    double status = response.httpStatusCode();
-    Ref&lt;InspectorObject&gt; headers = buildObjectForHeaders(response.httpHeaderFields());
-
-    auto responseObject = Inspector::Protocol::Network::Response::create()
-        .setUrl(response.url().string())
-        .setStatus(status)
-        .setStatusText(response.httpStatusText())
-        .setHeaders(WTF::move(headers))
-        .setMimeType(response.mimeType())
-        .release();
-
-    responseObject-&gt;setFromDiskCache(response.source() == ResourceResponse::Source::DiskCache || response.source() == ResourceResponse::Source::DiskCacheAfterValidation);
-    responseObject-&gt;setTiming(buildObjectForTiming(response.resourceLoadTiming(), loader));
-
-    return WTF::move(responseObject);
-}
-
-static Ref&lt;Inspector::Protocol::Network::CachedResource&gt; buildObjectForCachedResource(CachedResource* cachedResource, DocumentLoader* loader)
-{
-    auto resourceObject = Inspector::Protocol::Network::CachedResource::create()
-        .setUrl(cachedResource-&gt;url())
-        .setType(InspectorPageAgent::cachedResourceTypeJson(*cachedResource))
-        .setBodySize(cachedResource-&gt;encodedSize())
-        .release();
-
-    auto resourceResponse = buildObjectForResourceResponse(cachedResource-&gt;response(), loader);
-    resourceObject-&gt;setResponse(WTF::move(resourceResponse));
-
-    String sourceMappingURL = InspectorPageAgent::sourceMapURLForResource(cachedResource);
-    if (!sourceMappingURL.isEmpty())
-        resourceObject-&gt;setSourceMapURL(sourceMappingURL);
-
-    return WTF::move(resourceObject);
-}
-
-InspectorResourceAgent::~InspectorResourceAgent()
-{
-    if (m_enabled) {
-        ErrorString unused;
-        disable(unused);
-    }
-    ASSERT(!m_instrumentingAgents.inspectorResourceAgent());
-}
-
-double InspectorResourceAgent::timestamp()
-{
-    return m_instrumentingAgents.inspectorEnvironment().executionStopwatch()-&gt;elapsedTime();
-}
-
-void InspectorResourceAgent::willSendRequest(unsigned long identifier, DocumentLoader&amp; loader, ResourceRequest&amp; request, const ResourceResponse&amp; redirectResponse)
-{
-    if (request.hiddenFromInspector()) {
-        m_hiddenRequestIdentifiers.add(identifier);
-        return;
-    }
-
-    String requestId = IdentifiersFactory::requestId(identifier);
-    m_resourcesData-&gt;resourceCreated(requestId, m_pageAgent-&gt;loaderId(&amp;loader));
-
-    CachedResource* cachedResource = InspectorPageAgent::cachedResource(loader.frame(), request.url());
-    InspectorPageAgent::ResourceType type = cachedResource ? InspectorPageAgent::cachedResourceType(*cachedResource) : m_resourcesData-&gt;resourceType(requestId);
-    if (type == InspectorPageAgent::OtherResource) {
-        if (m_loadingXHRSynchronously)
-            type = InspectorPageAgent::XHRResource;
-        else if (equalIgnoringFragmentIdentifier(request.url(), loader.frameLoader()-&gt;icon().url()))
-            type = InspectorPageAgent::ImageResource;
-        else if (equalIgnoringFragmentIdentifier(request.url(), loader.url()) &amp;&amp; !loader.isCommitted())
-            type = InspectorPageAgent::DocumentResource;
-    }
-
-    m_resourcesData-&gt;setResourceType(requestId, type);
-
-    for (auto&amp; entry : m_extraRequestHeaders)
-        request.setHTTPHeaderField(entry.key, entry.value);
-
-    request.setReportLoadTiming(true);
-    request.setReportRawHeaders(true);
-
-    if (m_cacheDisabled) {
-        request.setHTTPHeaderField(HTTPHeaderName::Pragma, &quot;no-cache&quot;);
-        request.setCachePolicy(ReloadIgnoringCacheData);
-        request.setHTTPHeaderField(HTTPHeaderName::CacheControl, &quot;no-cache&quot;);
-    }
-
-    Inspector::Protocol::Page::ResourceType resourceType = InspectorPageAgent::resourceTypeJson(type);
-
-    RefPtr&lt;Inspector::Protocol::Network::Initiator&gt; initiatorObject = buildInitiatorObject(loader.frame() ? loader.frame()-&gt;document() : nullptr);
-    m_frontendDispatcher-&gt;requestWillBeSent(requestId, m_pageAgent-&gt;frameId(loader.frame()), m_pageAgent-&gt;loaderId(&amp;loader), loader.url().string(), buildObjectForResourceRequest(request), timestamp(), initiatorObject, buildObjectForResourceResponse(redirectResponse, &amp;loader), type != InspectorPageAgent::OtherResource ? &amp;resourceType : nullptr);
-}
-
-void InspectorResourceAgent::markResourceAsCached(unsigned long identifier)
-{
-    if (m_hiddenRequestIdentifiers.contains(identifier))
-        return;
-
-    m_frontendDispatcher-&gt;requestServedFromCache(IdentifiersFactory::requestId(identifier));
-}
-
-void InspectorResourceAgent::didReceiveResponse(unsigned long identifier, DocumentLoader&amp; loader, const ResourceResponse&amp; response, ResourceLoader* resourceLoader)
-{
-    if (m_hiddenRequestIdentifiers.contains(identifier))
-        return;
-
-    String requestId = IdentifiersFactory::requestId(identifier);
-    RefPtr&lt;Inspector::Protocol::Network::Response&gt; resourceResponse = buildObjectForResourceResponse(response, &amp;loader);
-
-    bool isNotModified = response.httpStatusCode() == 304;
-
-    CachedResource* cachedResource = nullptr;
-    if (resourceLoader &amp;&amp; resourceLoader-&gt;isSubresourceLoader() &amp;&amp; !isNotModified)
-        cachedResource = static_cast&lt;SubresourceLoader*&gt;(resourceLoader)-&gt;cachedResource();
-    if (!cachedResource)
-        cachedResource = InspectorPageAgent::cachedResource(loader.frame(), response.url());
-
-    if (cachedResource) {
-        // Use mime type from cached resource in case the one in response is empty.
-        if (resourceResponse &amp;&amp; response.mimeType().isEmpty())
-            resourceResponse-&gt;setString(Inspector::Protocol::Network::Response::MimeType, cachedResource-&gt;response().mimeType());
-        m_resourcesData-&gt;addCachedResource(requestId, cachedResource);
-    }
-
-    InspectorPageAgent::ResourceType type = m_resourcesData-&gt;resourceType(requestId);
-    InspectorPageAgent::ResourceType newType = cachedResource ? InspectorPageAgent::cachedResourceType(*cachedResource) : type;
-
-    // FIXME: XHRResource is returned for CachedResource::RawResource, it should be OtherResource unless it truly is an XHR.
-    // RawResource is used for loading worker scripts, and those should stay as ScriptResource and not change to XHRResource.
-    if (type != newType &amp;&amp; newType != InspectorPageAgent::XHRResource &amp;&amp; newType != InspectorPageAgent::OtherResource)
-        type = newType;
-
-    m_resourcesData-&gt;responseReceived(requestId, m_pageAgent-&gt;frameId(loader.frame()), response);
-    m_resourcesData-&gt;setResourceType(requestId, type);
-
-    m_frontendDispatcher-&gt;responseReceived(requestId, m_pageAgent-&gt;frameId(loader.frame()), m_pageAgent-&gt;loaderId(&amp;loader), timestamp(), InspectorPageAgent::resourceTypeJson(type), resourceResponse);
-
-    // If we revalidated the resource and got Not modified, send content length following didReceiveResponse
-    // as there will be no calls to didReceiveData from the network stack.
-    if (isNotModified &amp;&amp; cachedResource &amp;&amp; cachedResource-&gt;encodedSize())
-        didReceiveData(identifier, nullptr, cachedResource-&gt;encodedSize(), 0);
-}
-
-static bool isErrorStatusCode(int statusCode)
-{
-    return statusCode &gt;= 400;
-}
-
-void InspectorResourceAgent::didReceiveData(unsigned long identifier, const char* data, int dataLength, int encodedDataLength)
-{
-    if (m_hiddenRequestIdentifiers.contains(identifier))
-        return;
-
-    String requestId = IdentifiersFactory::requestId(identifier);
-
-    if (data) {
-        NetworkResourcesData::ResourceData const* resourceData = m_resourcesData-&gt;data(requestId);
-        if (resourceData &amp;&amp; !m_loadingXHRSynchronously &amp;&amp; (!resourceData-&gt;cachedResource() || resourceData-&gt;cachedResource()-&gt;dataBufferingPolicy() == DoNotBufferData || isErrorStatusCode(resourceData-&gt;httpStatusCode())))
-            m_resourcesData-&gt;maybeAddResourceData(requestId, data, dataLength);
-    }
-
-    m_frontendDispatcher-&gt;dataReceived(requestId, timestamp(), dataLength, encodedDataLength);
-}
-
-void InspectorResourceAgent::didFinishLoading(unsigned long identifier, DocumentLoader&amp; loader, double finishTime)
-{
-    if (m_hiddenRequestIdentifiers.remove(identifier))
-        return;
-
-    String requestId = IdentifiersFactory::requestId(identifier);
-    if (m_resourcesData-&gt;resourceType(requestId) == InspectorPageAgent::DocumentResource)
-        m_resourcesData-&gt;addResourceSharedBuffer(requestId, loader.frameLoader()-&gt;documentLoader()-&gt;mainResourceData(), loader.frame()-&gt;document()-&gt;encoding());
-
-    m_resourcesData-&gt;maybeDecodeDataToContent(requestId);
-
-    // FIXME: The finishTime that is passed in is from the NetworkProcess and is more accurate.
-    // However, all other times passed to the Inspector are generated from the web process. Mixing
-    // times from different processes can cause the finish time to be earlier than the response
-    // received time due to inter-process communication lag.
-    finishTime = timestamp();
-
-    String sourceMappingURL;
-    NetworkResourcesData::ResourceData const* resourceData = m_resourcesData-&gt;data(requestId);
-    if (resourceData &amp;&amp; resourceData-&gt;cachedResource())
-        sourceMappingURL = InspectorPageAgent::sourceMapURLForResource(resourceData-&gt;cachedResource());
-
-    m_frontendDispatcher-&gt;loadingFinished(requestId, finishTime, !sourceMappingURL.isEmpty() ? &amp;sourceMappingURL : nullptr);
-}
-
-void InspectorResourceAgent::didFailLoading(unsigned long identifier, DocumentLoader&amp; loader, const ResourceError&amp; error)
-{
-    if (m_hiddenRequestIdentifiers.remove(identifier))
-        return;
-
-    String requestId = IdentifiersFactory::requestId(identifier);
-
-    if (m_resourcesData-&gt;resourceType(requestId) == InspectorPageAgent::DocumentResource) {
-        Frame* frame = loader.frame();
-        if (frame &amp;&amp; frame-&gt;loader().documentLoader() &amp;&amp; frame-&gt;document()) {
-            m_resourcesData-&gt;addResourceSharedBuffer(requestId,
-                frame-&gt;loader().documentLoader()-&gt;mainResourceData(),
-                frame-&gt;document()-&gt;encoding());
-        }
-    }
-
-    bool canceled = error.isCancellation();
-    m_frontendDispatcher-&gt;loadingFailed(requestId, timestamp(), error.localizedDescription(), canceled ? &amp;canceled : nullptr);
-}
-
-void InspectorResourceAgent::didLoadResourceFromMemoryCache(DocumentLoader&amp; loader, CachedResource&amp; resource)
-{
-    String loaderId = m_pageAgent-&gt;loaderId(&amp;loader);
-    String frameId = m_pageAgent-&gt;frameId(loader.frame());
-    unsigned long identifier = loader.frame()-&gt;page()-&gt;progress().createUniqueIdentifier();
-    String requestId = IdentifiersFactory::requestId(identifier);
-    m_resourcesData-&gt;resourceCreated(requestId, loaderId);
-    m_resourcesData-&gt;addCachedResource(requestId, &amp;resource);
-
-    RefPtr&lt;Inspector::Protocol::Network::Initiator&gt; initiatorObject = buildInitiatorObject(loader.frame() ? loader.frame()-&gt;document() : nullptr);
-
-    m_frontendDispatcher-&gt;requestServedFromMemoryCache(requestId, frameId, loaderId, loader.url().string(), timestamp(), initiatorObject, buildObjectForCachedResource(&amp;resource, &amp;loader));
-}
-
-void InspectorResourceAgent::setInitialScriptContent(unsigned long identifier, const String&amp; sourceString)
-{
-    m_resourcesData-&gt;setResourceContent(IdentifiersFactory::requestId(identifier), sourceString);
-}
-
-void InspectorResourceAgent::didReceiveScriptResponse(unsigned long identifier)
-{
-    m_resourcesData-&gt;setResourceType(IdentifiersFactory::requestId(identifier), InspectorPageAgent::ScriptResource);
-}
-
-void InspectorResourceAgent::didFinishXHRLoading(ThreadableLoaderClient*, unsigned long identifier, const String&amp; sourceString)
-{
-    // For Asynchronous XHRs, the inspector can grab the data directly off of the CachedResource. For sync XHRs, we need to
-    // provide the data here, since no CachedResource was involved.
-    if (m_loadingXHRSynchronously)
-        m_resourcesData-&gt;setResourceContent(IdentifiersFactory::requestId(identifier), sourceString);
-}
-
-void InspectorResourceAgent::didReceiveXHRResponse(unsigned long identifier)
-{
-    m_resourcesData-&gt;setResourceType(IdentifiersFactory::requestId(identifier), InspectorPageAgent::XHRResource);
-}
-
-void InspectorResourceAgent::willLoadXHRSynchronously()
-{
-    m_loadingXHRSynchronously = true;
-}
-
-void InspectorResourceAgent::didLoadXHRSynchronously()
-{
-    m_loadingXHRSynchronously = false;
-}
-
-void InspectorResourceAgent::willDestroyCachedResource(CachedResource&amp; cachedResource)
-{
-    Vector&lt;String&gt; requestIds = m_resourcesData-&gt;removeCachedResource(&amp;cachedResource);
-    if (!requestIds.size())
-        return;
-
-    String content;
-    bool base64Encoded;
-    if (!InspectorPageAgent::cachedResourceContent(&amp;cachedResource, &amp;content, &amp;base64Encoded))
-        return;
-    for (auto&amp; id : requestIds)
-        m_resourcesData-&gt;setResourceContent(id, content, base64Encoded);
-}
-
-void InspectorResourceAgent::willRecalculateStyle()
-{
-    m_isRecalculatingStyle = true;
-}
-
-void InspectorResourceAgent::didRecalculateStyle()
-{
-    m_isRecalculatingStyle = false;
-    m_styleRecalculationInitiator = nullptr;
-}
-
-void InspectorResourceAgent::didScheduleStyleRecalculation(Document&amp; document)
-{
-    if (!m_styleRecalculationInitiator)
-        m_styleRecalculationInitiator = buildInitiatorObject(&amp;document);
-}
-
-RefPtr&lt;Inspector::Protocol::Network::Initiator&gt; InspectorResourceAgent::buildInitiatorObject(Document* document)
-{
-    RefPtr&lt;ScriptCallStack&gt; stackTrace = createScriptCallStack(JSMainThreadExecState::currentState(), ScriptCallStack::maxCallStackSizeToCapture);
-    if (stackTrace &amp;&amp; stackTrace-&gt;size() &gt; 0) {
-        auto initiatorObject = Inspector::Protocol::Network::Initiator::create()
-            .setType(Inspector::Protocol::Network::Initiator::Type::Script)
-            .release();
-        initiatorObject-&gt;setStackTrace(stackTrace-&gt;buildInspectorArray());
-        return WTF::move(initiatorObject);
-    }
-
-    if (document &amp;&amp; document-&gt;scriptableDocumentParser()) {
-        auto initiatorObject = Inspector::Protocol::Network::Initiator::create()
-            .setType(Inspector::Protocol::Network::Initiator::Type::Parser)
-            .release();
-        initiatorObject-&gt;setUrl(document-&gt;url().string());
-        initiatorObject-&gt;setLineNumber(document-&gt;scriptableDocumentParser()-&gt;textPosition().m_line.oneBasedInt());
-        return WTF::move(initiatorObject);
-    }
-
-    if (m_isRecalculatingStyle &amp;&amp; m_styleRecalculationInitiator)
-        return m_styleRecalculationInitiator;
-
-    return Inspector::Protocol::Network::Initiator::create()
-        .setType(Inspector::Protocol::Network::Initiator::Type::Other)
-        .release();
-}
-
-#if ENABLE(WEB_SOCKETS)
-
-void InspectorResourceAgent::didCreateWebSocket(unsigned long identifier, const URL&amp; requestURL)
-{
-    m_frontendDispatcher-&gt;webSocketCreated(IdentifiersFactory::requestId(identifier), requestURL.string());
-}
-
-void InspectorResourceAgent::willSendWebSocketHandshakeRequest(unsigned long identifier, const ResourceRequest&amp; request)
-{
-    auto requestObject = Inspector::Protocol::Network::WebSocketRequest::create()
-        .setHeaders(buildObjectForHeaders(request.httpHeaderFields()))
-        .release();
-    m_frontendDispatcher-&gt;webSocketWillSendHandshakeRequest(IdentifiersFactory::requestId(identifier), timestamp(), WTF::move(requestObject));
-}
-
-void InspectorResourceAgent::didReceiveWebSocketHandshakeResponse(unsigned long identifier, const ResourceResponse&amp; response)
-{
-    auto responseObject = Inspector::Protocol::Network::WebSocketResponse::create()
-        .setStatus(response.httpStatusCode())
-        .setStatusText(response.httpStatusText())
-        .setHeaders(buildObjectForHeaders(response.httpHeaderFields()))
-        .release();
-    m_frontendDispatcher-&gt;webSocketHandshakeResponseReceived(IdentifiersFactory::requestId(identifier), timestamp(), WTF::move(responseObject));
-}
-
-void InspectorResourceAgent::didCloseWebSocket(unsigned long identifier)
-{
-    m_frontendDispatcher-&gt;webSocketClosed(IdentifiersFactory::requestId(identifier), timestamp());
-}
-
-void InspectorResourceAgent::didReceiveWebSocketFrame(unsigned long identifier, const WebSocketFrame&amp; frame)
-{
-    auto frameObject = Inspector::Protocol::Network::WebSocketFrame::create()
-        .setOpcode(frame.opCode)
-        .setMask(frame.masked)
-        .setPayloadData(String(frame.payload, frame.payloadLength))
-        .release();
-    m_frontendDispatcher-&gt;webSocketFrameReceived(IdentifiersFactory::requestId(identifier), timestamp(), WTF::move(frameObject));
-}
-
-void InspectorResourceAgent::didSendWebSocketFrame(unsigned long identifier, const WebSocketFrame&amp; frame)
-{
-    auto frameObject = Inspector::Protocol::Network::WebSocketFrame::create()
-        .setOpcode(frame.opCode)
-        .setMask(frame.masked)
-        .setPayloadData(String(frame.payload, frame.payloadLength))
-        .release();
-    m_frontendDispatcher-&gt;webSocketFrameSent(IdentifiersFactory::requestId(identifier), timestamp(), WTF::move(frameObject));
-}
-
-void InspectorResourceAgent::didReceiveWebSocketFrameError(unsigned long identifier, const String&amp; errorMessage)
-{
-    m_frontendDispatcher-&gt;webSocketFrameError(IdentifiersFactory::requestId(identifier), timestamp(), errorMessage);
-}
-
-#endif // ENABLE(WEB_SOCKETS)
-
-void InspectorResourceAgent::enable(ErrorString&amp;)
-{
-    enable();
-}
-
-void InspectorResourceAgent::enable()
-{
-    m_enabled = true;
-    m_instrumentingAgents.setInspectorResourceAgent(this);
-}
-
-void InspectorResourceAgent::disable(ErrorString&amp;)
-{
-    m_enabled = false;
-    m_instrumentingAgents.setInspectorResourceAgent(nullptr);
-    m_resourcesData-&gt;clear();
-    m_extraRequestHeaders.clear();
-}
-
-void InspectorResourceAgent::setExtraHTTPHeaders(ErrorString&amp;, const InspectorObject&amp; headers)
-{
-    for (auto&amp; entry : headers) {
-        String stringValue;
-        if (entry.value-&gt;asString(stringValue))
-            m_extraRequestHeaders.set(entry.key, stringValue);
-    }
-}
-
-void InspectorResourceAgent::getResponseBody(ErrorString&amp; errorString, const String&amp; requestId, String* content, bool* base64Encoded)
-{
-    NetworkResourcesData::ResourceData const* resourceData = m_resourcesData-&gt;data(requestId);
-    if (!resourceData) {
-        errorString = ASCIILiteral(&quot;No resource with given identifier found&quot;);
-        return;
-    }
-
-    if (resourceData-&gt;hasContent()) {
-        *base64Encoded = resourceData-&gt;base64Encoded();
-        *content = resourceData-&gt;content();
-        return;
-    }
-
-    if (resourceData-&gt;isContentEvicted()) {
-        errorString = ASCIILiteral(&quot;Request content was evicted from inspector cache&quot;);
-        return;
-    }
-
-    if (resourceData-&gt;buffer() &amp;&amp; !resourceData-&gt;textEncodingName().isNull()) {
-        *base64Encoded = false;
-        if (InspectorPageAgent::sharedBufferContent(resourceData-&gt;buffer(), resourceData-&gt;textEncodingName(), *base64Encoded, content))
-            return;
-    }
-
-    if (resourceData-&gt;cachedResource()) {
-        if (InspectorPageAgent::cachedResourceContent(resourceData-&gt;cachedResource(), content, base64Encoded))
-            return;
-    }
-
-    errorString = ASCIILiteral(&quot;No data found for resource with given identifier&quot;);
-}
-
-void InspectorResourceAgent::setCacheDisabled(ErrorString&amp;, bool cacheDisabled)
-{
-    m_cacheDisabled = cacheDisabled;
-    if (cacheDisabled)
-        MemoryCache::singleton().evictResources();
-}
-
-void InspectorResourceAgent::loadResource(ErrorString&amp; errorString, const String&amp; frameId, const String&amp; urlString, Ref&lt;LoadResourceCallback&gt;&amp;&amp; callback)
-{
-    Frame* frame = m_pageAgent-&gt;assertFrame(errorString, frameId);
-    if (!frame)
-        return;
-
-    Document* document = frame-&gt;document();
-    if (!document) {
-        errorString = ASCIILiteral(&quot;No Document instance for the specified frame&quot;);
-        return;
-    }
-
-    URL url = document-&gt;completeURL(urlString);
-    ResourceRequest request(url);
-    request.setHTTPMethod(ASCIILiteral(&quot;GET&quot;));
-    request.setHiddenFromInspector(true);
-
-    ThreadableLoaderOptions options;
-    options.setSendLoadCallbacks(SendCallbacks); // So we remove this from m_hiddenRequestIdentifiers on completion.
-    options.setAllowCredentials(AllowStoredCredentials);
-    options.setDefersLoadingPolicy(DefersLoadingPolicy::DisallowDefersLoading); // So the request is never deferred.
-    options.crossOriginRequestPolicy = AllowCrossOriginRequests;
-
-    // InspectorThreadableLoaderClient deletes itself when the load completes.
-    InspectorThreadableLoaderClient* inspectorThreadableLoaderClient = new InspectorThreadableLoaderClient(callback.copyRef());
-
-    RefPtr&lt;DocumentThreadableLoader&gt; loader = DocumentThreadableLoader::create(*document, *inspectorThreadableLoaderClient, request, options);
-    if (!loader) {
-        inspectorThreadableLoaderClient-&gt;didFailLoaderCreation();
-        return;
-    }
-
-    // If the load already completed, inspectorThreadableLoaderClient will have been deleted and we will have already called the callback.
-    if (!callback-&gt;isActive())
-        return;
-
-    inspectorThreadableLoaderClient-&gt;setLoader(loader.release());
-}
-
-void InspectorResourceAgent::mainFrameNavigated(DocumentLoader&amp; loader)
-{
-    if (m_cacheDisabled)
-        MemoryCache::singleton().evictResources();
-
-    m_resourcesData-&gt;clear(m_pageAgent-&gt;loaderId(&amp;loader));
-}
-
-} // namespace WebCore
</del></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorResourceAgenth"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebCore/inspector/InspectorResourceAgent.h (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorResourceAgent.h        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/WebCore/inspector/InspectorResourceAgent.h        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -1,146 +0,0 @@
</span><del>-/*
- * Copyright (C) 2010 Google Inc. All rights reserved.
- * Copyright (C) 2015 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- *     * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *     * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- *     * Neither the name of Google Inc. nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef InspectorResourceAgent_h
-#define InspectorResourceAgent_h
-
-#include &quot;InspectorWebAgentBase.h&quot;
-#include &lt;inspector/InspectorBackendDispatchers.h&gt;
-#include &lt;inspector/InspectorFrontendDispatchers.h&gt;
-#include &lt;wtf/HashSet.h&gt;
-#include &lt;wtf/RefCounted.h&gt;
-#include &lt;wtf/Vector.h&gt;
-#include &lt;wtf/text/WTFString.h&gt;
-
-namespace Inspector {
-class InspectorArray;
-class InspectorObject;
-}
-
-namespace WebCore {
-
-class CachedResource;
-class Document;
-class DocumentLoader;
-class FormData;
-class Frame;
-class HTTPHeaderMap;
-class InspectorPageAgent;
-class NetworkResourcesData;
-class Page;
-class ResourceError;
-class ResourceLoader;
-class ResourceRequest;
-class ResourceResponse;
-class SharedBuffer;
-class ThreadableLoaderClient;
-class URL;
-class XMLHttpRequest;
-
-#if ENABLE(WEB_SOCKETS)
-struct WebSocketFrame;
-#endif
-
-typedef String ErrorString;
-
-class InspectorResourceAgent final : public InspectorAgentBase, public Inspector::NetworkBackendDispatcherHandler {
-    WTF_MAKE_FAST_ALLOCATED;
-public:
-    InspectorResourceAgent(WebAgentContext&amp;, InspectorPageAgent*);
-    virtual ~InspectorResourceAgent();
-
-    virtual void didCreateFrontendAndBackend(Inspector::FrontendRouter*, Inspector::BackendDispatcher*) override;
-    virtual void willDestroyFrontendAndBackend(Inspector::DisconnectReason) override;
-
-    // InspectorInstrumentation callbacks.
-    void willRecalculateStyle();
-    void didRecalculateStyle();
-    void willSendRequest(unsigned long identifier, DocumentLoader&amp;, ResourceRequest&amp;, const ResourceResponse&amp; redirectResponse);
-    void markResourceAsCached(unsigned long identifier);
-    void didReceiveResponse(unsigned long identifier, DocumentLoader&amp; loader, const ResourceResponse&amp;, ResourceLoader*);
-    void didReceiveData(unsigned long identifier, const char* data, int dataLength, int encodedDataLength);
-    void didFinishLoading(unsigned long identifier, DocumentLoader&amp;, double finishTime);
-    void didFailLoading(unsigned long identifier, DocumentLoader&amp;, const ResourceError&amp;);
-    void didLoadResourceFromMemoryCache(DocumentLoader&amp;, CachedResource&amp;);
-    void didFinishXHRLoading(ThreadableLoaderClient*, unsigned long identifier, const String&amp; sourceString);
-    void didReceiveXHRResponse(unsigned long identifier);
-    void willLoadXHRSynchronously();
-    void didLoadXHRSynchronously();
-    void didReceiveScriptResponse(unsigned long identifier);
-    void willDestroyCachedResource(CachedResource&amp;);
-#if ENABLE(WEB_SOCKETS)
-    void didCreateWebSocket(unsigned long identifier, const URL&amp; requestURL);
-    void willSendWebSocketHandshakeRequest(unsigned long identifier, const ResourceRequest&amp;);
-    void didReceiveWebSocketHandshakeResponse(unsigned long identifier, const ResourceResponse&amp;);
-    void didCloseWebSocket(unsigned long identifier);
-    void didReceiveWebSocketFrame(unsigned long identifier, const WebSocketFrame&amp;);
-    void didSendWebSocketFrame(unsigned long identifier, const WebSocketFrame&amp;);
-    void didReceiveWebSocketFrameError(unsigned long identifier, const String&amp;);
-#endif
-
-    void mainFrameNavigated(DocumentLoader&amp;);
-    void setInitialScriptContent(unsigned long identifier, const String&amp; sourceString);
-
-    void didScheduleStyleRecalculation(Document&amp;);
-
-    RefPtr&lt;Inspector::Protocol::Network::Initiator&gt; buildInitiatorObject(Document*);
-
-    // Called from frontend.
-    virtual void enable(ErrorString&amp;) override;
-    virtual void disable(ErrorString&amp;) override;
-    virtual void setExtraHTTPHeaders(ErrorString&amp;, const Inspector::InspectorObject&amp; headers) override;
-    virtual void getResponseBody(ErrorString&amp;, const String&amp; requestId, String* content, bool* base64Encoded) override;
-    virtual void setCacheDisabled(ErrorString&amp;, bool cacheDisabled) override;
-    virtual void loadResource(ErrorString&amp;, const String&amp; frameId, const String&amp; url, Ref&lt;LoadResourceCallback&gt;&amp;&amp;) override;
-
-private:
-    void enable();
-
-    double timestamp();
-
-    std::unique_ptr&lt;Inspector::NetworkFrontendDispatcher&gt; m_frontendDispatcher;
-    RefPtr&lt;Inspector::NetworkBackendDispatcher&gt; m_backendDispatcher;
-    InspectorPageAgent* m_pageAgent { nullptr };
-
-    std::unique_ptr&lt;NetworkResourcesData&gt; m_resourcesData;
-    bool m_enabled { false };
-    bool m_cacheDisabled { false };
-    bool m_loadingXHRSynchronously { false };
-    HashMap&lt;String, String&gt; m_extraRequestHeaders;
-    HashSet&lt;unsigned long&gt; m_hiddenRequestIdentifiers;
-    // FIXME: InspectorResourceAgent should now be aware of style recalculation.
-    RefPtr&lt;Inspector::Protocol::Network::Initiator&gt; m_styleRecalculationInitiator;
-    bool m_isRecalculatingStyle { false };
-};
-
-} // namespace WebCore
-
-#endif // !defined(InspectorResourceAgent_h)
</del></span></pre></div>
<a id="trunkSourceWebCoreinspectorInstrumentingAgentscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InstrumentingAgents.cpp (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InstrumentingAgents.cpp        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/WebCore/inspector/InstrumentingAgents.cpp        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -55,7 +55,7 @@
</span><span class="cx">     m_inspectorLayerTreeAgent = nullptr;
</span><span class="cx">     m_webConsoleAgent = nullptr;
</span><span class="cx">     m_inspectorDOMAgent = nullptr;
</span><del>-    m_inspectorResourceAgent = nullptr;
</del><ins>+    m_inspectorNetworkAgent = nullptr;
</ins><span class="cx">     m_pageRuntimeAgent = nullptr;
</span><span class="cx">     m_workerRuntimeAgent = nullptr;
</span><span class="cx">     m_inspectorTimelineAgent = nullptr;
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInstrumentingAgentsh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InstrumentingAgents.h (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InstrumentingAgents.h        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/WebCore/inspector/InstrumentingAgents.h        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -51,8 +51,8 @@
</span><span class="cx"> class InspectorDOMStorageAgent;
</span><span class="cx"> class InspectorDatabaseAgent;
</span><span class="cx"> class InspectorLayerTreeAgent;
</span><ins>+class InspectorNetworkAgent;
</ins><span class="cx"> class InspectorPageAgent;
</span><del>-class InspectorResourceAgent;
</del><span class="cx"> class InspectorReplayAgent;
</span><span class="cx"> class InspectorTimelineAgent;
</span><span class="cx"> class InspectorWorkerAgent;
</span><span class="lines">@@ -93,8 +93,8 @@
</span><span class="cx">     InspectorDOMAgent* inspectorDOMAgent() const { return m_inspectorDOMAgent; }
</span><span class="cx">     void setInspectorDOMAgent(InspectorDOMAgent* agent) { m_inspectorDOMAgent = agent; }
</span><span class="cx"> 
</span><del>-    InspectorResourceAgent* inspectorResourceAgent() const { return m_inspectorResourceAgent; }
-    void setInspectorResourceAgent(InspectorResourceAgent* agent) { m_inspectorResourceAgent = agent; }
</del><ins>+    InspectorNetworkAgent* inspectorNetworkAgent() const { return m_inspectorNetworkAgent; }
+    void setInspectorNetworkAgent(InspectorNetworkAgent* agent) { m_inspectorNetworkAgent = agent; }
</ins><span class="cx"> 
</span><span class="cx">     PageRuntimeAgent* pageRuntimeAgent() const { return m_pageRuntimeAgent; }
</span><span class="cx">     void setPageRuntimeAgent(PageRuntimeAgent* agent) { m_pageRuntimeAgent = agent; }
</span><span class="lines">@@ -148,7 +148,7 @@
</span><span class="cx">     InspectorLayerTreeAgent* m_inspectorLayerTreeAgent { nullptr };
</span><span class="cx">     WebConsoleAgent* m_webConsoleAgent { nullptr };
</span><span class="cx">     InspectorDOMAgent* m_inspectorDOMAgent { nullptr };
</span><del>-    InspectorResourceAgent* m_inspectorResourceAgent { nullptr };
</del><ins>+    InspectorNetworkAgent* m_inspectorNetworkAgent { nullptr };
</ins><span class="cx">     PageRuntimeAgent* m_pageRuntimeAgent { nullptr };
</span><span class="cx">     WorkerRuntimeAgent* m_workerRuntimeAgent { nullptr };
</span><span class="cx">     InspectorTimelineAgent* m_inspectorTimelineAgent { nullptr };
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorNetworkResourcesDatah"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/NetworkResourcesData.h (191718 => 191719)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/NetworkResourcesData.h        2015-10-29 01:57:17 UTC (rev 191718)
+++ trunk/Source/WebCore/inspector/NetworkResourcesData.h        2015-10-29 03:10:15 UTC (rev 191719)
</span><span class="lines">@@ -29,23 +29,17 @@
</span><span class="cx"> #ifndef NetworkResourcesData_h
</span><span class="cx"> #define NetworkResourcesData_h
</span><span class="cx"> 
</span><del>-#include &quot;HTTPHeaderMap.h&quot;
</del><span class="cx"> #include &quot;InspectorPageAgent.h&quot;
</span><del>-#include &quot;URL.h&quot;
</del><span class="cx"> #include &quot;TextResourceDecoder.h&quot;
</span><span class="cx"> #include &lt;wtf/Deque.h&gt;
</span><span class="cx"> #include &lt;wtf/HashMap.h&gt;
</span><del>-#include &lt;wtf/RefCounted.h&gt;
-#include &lt;wtf/text/StringBuilder.h&gt;
</del><span class="cx"> #include &lt;wtf/text/WTFString.h&gt;
</span><span class="cx"> 
</span><span class="cx"> namespace WebCore {
</span><span class="cx"> 
</span><span class="cx"> class CachedResource;
</span><del>-class FormData;
</del><span class="cx"> class ResourceResponse;
</span><span class="cx"> class SharedBuffer;
</span><del>-class TextResourceDecoder;
</del><span class="cx"> 
</span><span class="cx"> class NetworkResourcesData {
</span><span class="cx">     WTF_MAKE_FAST_ALLOCATED;
</span></span></pre>
</div>
</div>

</body>
</html>