Coalesce responses on network process side
https://bugs.webkit.org/show_bug.cgi?id=132229

Reviewed by Andreas Kling.

Source/WebCore: 

* WebCore.exp.in:

Source/WebKit2: 
        
To reduce IPC we should coalesce response data in the network process and send it over with single IPC call.

* NetworkProcess/AsynchronousNetworkLoaderClient.cpp:
(WebKit::AsynchronousNetworkLoaderClient::AsynchronousNetworkLoaderClient):
(WebKit::AsynchronousNetworkLoaderClient::didReceiveResponse):
(WebKit::AsynchronousNetworkLoaderClient::didReceiveBuffer):
(WebKit::AsynchronousNetworkLoaderClient::didFinishLoading):
(WebKit::AsynchronousNetworkLoaderClient::didFail):
(WebKit::AsynchronousNetworkLoaderClient::dispatchPartialCoalescedResponse):
(WebKit::AsynchronousNetworkLoaderClient::clearCoalescedResponse):
(WebKit::AsynchronousNetworkLoaderClient::responseCoalesceTimerFired):
        
    Coalesce the response. Completed response is sent on didFinishLoading. If the coalesce timer fires
    before that the data accumulated so far is dispatched.

* NetworkProcess/AsynchronousNetworkLoaderClient.h:
* NetworkProcess/NetworkResourceLoader.h:
* WebProcess/Network/WebResourceLoader.cpp:
(WebKit::WebResourceLoader::didReceiveCompleteResponse):
* WebProcess/Network/WebResourceLoader.h:
* WebProcess/Network/WebResourceLoader.messages.in:
        
    Add a new message type that covers didReceiveResponse, didReceiveBuffer and didFinishLoading in a single message.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@167853 268f45cc-cd09-0410-ab3c-d52691b4dbfc