Changeset 78782 in webkit


Ignore:
Timestamp:
Feb 16, 2011 8:11:38 PM (13 years ago)
Author:
commit-queue@webkit.org
Message:

2011-02-16 Bill Budge <bbudge@chromium.org>

Reviewed by David Levin.

Need didReceiveCachedMetadata, and finishTime for didFinishLoading exposed in ThreadableLoaderClient
https://bugs.webkit.org/show_bug.cgi?id=54313

No tests needed, exposes no new functionality

  • fileapi/FileReaderLoader.cpp: (WebCore::FileReaderLoader::didFinishLoading):
  • fileapi/FileReaderLoader.h:
  • loader/DocumentThreadableLoader.cpp: (WebCore::DocumentThreadableLoader::setDefersLoading): (WebCore::DocumentThreadableLoader::didReceiveCachedMetadata): (WebCore::DocumentThreadableLoader::didFinishLoading): (WebCore::DocumentThreadableLoader::loadRequest):
  • loader/DocumentThreadableLoader.h:
  • loader/ThreadableLoaderClient.h: (WebCore::ThreadableLoaderClient::didReceiveData): (WebCore::ThreadableLoaderClient::didReceiveCachedMetadata): (WebCore::ThreadableLoaderClient::didFinishLoading):
  • loader/ThreadableLoaderClientWrapper.h: (WebCore::ThreadableLoaderClientWrapper::didReceiveData): (WebCore::ThreadableLoaderClientWrapper::didReceiveCachedMetadata): (WebCore::ThreadableLoaderClientWrapper::didFinishLoading):
  • loader/WorkerThreadableLoader.cpp: (WebCore::workerContextDidReceiveCachedMetadata): (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveCachedMetadata): (WebCore::workerContextDidFinishLoading): (WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):
  • loader/WorkerThreadableLoader.h:
  • notifications/Notification.cpp: (WebCore::Notification::didFinishLoading):
  • notifications/Notification.h:
  • page/EventSource.cpp: (WebCore::EventSource::didFinishLoading):
  • page/EventSource.h:
  • workers/WorkerScriptLoader.cpp: (WebCore::WorkerScriptLoader::didFinishLoading):
  • workers/WorkerScriptLoader.h:
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::didFinishLoading):
  • xml/XMLHttpRequest.h:
Location:
trunk/Source/WebCore
Files:
17 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r78781 r78782  
     12011-02-16  Bill Budge  <bbudge@chromium.org>
     2
     3        Reviewed by David Levin.
     4
     5        Need didReceiveCachedMetadata, and finishTime for didFinishLoading exposed in ThreadableLoaderClient
     6        https://bugs.webkit.org/show_bug.cgi?id=54313
     7
     8        No tests needed, exposes no new functionality
     9
     10        * fileapi/FileReaderLoader.cpp:
     11        (WebCore::FileReaderLoader::didFinishLoading):
     12        * fileapi/FileReaderLoader.h:
     13        * loader/DocumentThreadableLoader.cpp:
     14        (WebCore::DocumentThreadableLoader::setDefersLoading):
     15        (WebCore::DocumentThreadableLoader::didReceiveCachedMetadata):
     16        (WebCore::DocumentThreadableLoader::didFinishLoading):
     17        (WebCore::DocumentThreadableLoader::loadRequest):
     18        * loader/DocumentThreadableLoader.h:
     19        * loader/ThreadableLoaderClient.h:
     20        (WebCore::ThreadableLoaderClient::didReceiveData):
     21        (WebCore::ThreadableLoaderClient::didReceiveCachedMetadata):
     22        (WebCore::ThreadableLoaderClient::didFinishLoading):
     23        * loader/ThreadableLoaderClientWrapper.h:
     24        (WebCore::ThreadableLoaderClientWrapper::didReceiveData):
     25        (WebCore::ThreadableLoaderClientWrapper::didReceiveCachedMetadata):
     26        (WebCore::ThreadableLoaderClientWrapper::didFinishLoading):
     27        * loader/WorkerThreadableLoader.cpp:
     28        (WebCore::workerContextDidReceiveCachedMetadata):
     29        (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveCachedMetadata):
     30        (WebCore::workerContextDidFinishLoading):
     31        (WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):
     32        * loader/WorkerThreadableLoader.h:
     33        * notifications/Notification.cpp:
     34        (WebCore::Notification::didFinishLoading):
     35        * notifications/Notification.h:
     36        * page/EventSource.cpp:
     37        (WebCore::EventSource::didFinishLoading):
     38        * page/EventSource.h:
     39        * workers/WorkerScriptLoader.cpp:
     40        (WebCore::WorkerScriptLoader::didFinishLoading):
     41        * workers/WorkerScriptLoader.h:
     42        * xml/XMLHttpRequest.cpp:
     43        (WebCore::XMLHttpRequest::didFinishLoading):
     44        * xml/XMLHttpRequest.h:
     45
    1462011-02-16  Jeremy Orlow  <jorlow@chromium.org>
    247
  • trunk/Source/WebCore/fileapi/FileReaderLoader.cpp

    r72991 r78782  
    177177}
    178178
    179 void FileReaderLoader::didFinishLoading(unsigned long)
     179void FileReaderLoader::didFinishLoading(unsigned long, double)
    180180{
    181181    cleanup();
  • trunk/Source/WebCore/fileapi/FileReaderLoader.h

    r72991 r78782  
    6969    virtual void didReceiveResponse(const ResourceResponse&);
    7070    virtual void didReceiveData(const char*, int);
    71     virtual void didFinishLoading(unsigned long identifier);
     71    virtual void didFinishLoading(unsigned long, double);
    7272    virtual void didFail(const ResourceError&);
    7373
  • trunk/Source/WebCore/loader/DocumentThreadableLoader.cpp

    r78558 r78782  
    167167}
    168168
     169void DocumentThreadableLoader::setDefersLoading(bool value)
     170{
     171    if (m_loader)
     172        m_loader->setDefersLoading(value);
     173}
     174
    169175void DocumentThreadableLoader::willSendRequest(SubresourceLoader* loader, ResourceRequest& request, const ResourceResponse&)
    170176{
     
    232238}
    233239
    234 void DocumentThreadableLoader::didFinishLoading(SubresourceLoader* loader, double)
     240void DocumentThreadableLoader::didReceiveCachedMetadata(SubresourceLoader* loader, const char* data, int lengthReceived)
     241{
     242    ASSERT(m_client);
     243    ASSERT_UNUSED(loader, loader == m_loader);
     244
     245    // Ignore response body of preflight requests.
     246    if (!m_actualRequest)
     247        m_client->didReceiveCachedMetadata(data, lengthReceived);
     248}
     249
     250void DocumentThreadableLoader::didFinishLoading(SubresourceLoader* loader, double finishTime)
    235251{
    236252    ASSERT(loader == m_loader);
    237253    ASSERT(m_client);
    238     didFinishLoading(loader->identifier());
    239 }
    240 
    241 void DocumentThreadableLoader::didFinishLoading(unsigned long identifier)
     254    didFinishLoading(loader->identifier(), finishTime);
     255}
     256
     257void DocumentThreadableLoader::didFinishLoading(unsigned long identifier, double finishTime)
    242258{
    243259    if (m_actualRequest) {
     
    246262        preflightSuccess();
    247263    } else
    248         m_client->didFinishLoading(identifier);
     264        m_client->didFinishLoading(identifier, finishTime);
    249265}
    250266
     
    360376    didReceiveData(0, bytes, len);
    361377
    362     didFinishLoading(identifier);
     378    didFinishLoading(identifier, 0.0);
    363379}
    364380
  • trunk/Source/WebCore/loader/DocumentThreadableLoader.h

    r78558 r78782  
    5555
    5656        virtual void cancel();
     57        virtual void setDefersLoading(bool);
    5758
    5859        using RefCounted<DocumentThreadableLoader>::ref;
     
    7677        virtual void didReceiveResponse(SubresourceLoader*, const ResourceResponse&);
    7778        virtual void didReceiveData(SubresourceLoader*, const char*, int lengthReceived);
     79        virtual void didReceiveCachedMetadata(SubresourceLoader*, const char*, int lengthReceived);
    7880        virtual void didFinishLoading(SubresourceLoader*, double);
    7981        virtual void didFail(SubresourceLoader*, const ResourceError&);
     
    8385        virtual void receivedCancellation(SubresourceLoader*, const AuthenticationChallenge&);
    8486
    85         void didFinishLoading(unsigned long identifier);
     87        void didFinishLoading(unsigned long identifier, double finishTime);
    8688        void makeSimpleCrossOriginAccessRequest(const ResourceRequest& request);
    8789        void makeCrossOriginAccessRequestWithPreflight(const ResourceRequest& request);
  • trunk/Source/WebCore/loader/ThreadableLoaderClient.h

    r76248 r78782  
    4444
    4545        virtual void didReceiveResponse(const ResourceResponse&) { }
    46         virtual void didReceiveData(const char*, int /*lengthReceived*/) { }
    47         virtual void didFinishLoading(unsigned long /*identifier*/) { }
     46        virtual void didReceiveData(const char*, int /*dataLength*/) { }
     47        virtual void didReceiveCachedMetadata(const char*, int /*dataLength*/) { }
     48        virtual void didFinishLoading(unsigned long /*identifier*/, double /*finishTime*/) { }
    4849        virtual void didFail(const ResourceError&) { }
    4950        virtual void didFailRedirectCheck() { }
  • trunk/Source/WebCore/loader/ThreadableLoaderClientWrapper.h

    r41216 r78782  
    6969        }
    7070
    71         void didReceiveData(const char* data, int lengthReceived)
     71        void didReceiveData(const char* data, int dataLength)
    7272        {
    7373            if (m_client)
    74                 m_client->didReceiveData(data, lengthReceived);
     74                m_client->didReceiveData(data, dataLength);
    7575        }
    7676
    77         void didFinishLoading(unsigned long identifier)
     77        void didReceiveCachedMetadata(const char* data, int dataLength)
     78        {
     79            if (m_client)
     80                m_client->didReceiveCachedMetadata(data, dataLength);
     81        }
     82
     83        void didFinishLoading(unsigned long identifier, double finishTime)
    7884        {
    7985            m_done = true;
    8086            if (m_client)
    81                 m_client->didFinishLoading(identifier);
     87                m_client->didFinishLoading(identifier, finishTime);
    8288        }
    8389
  • trunk/Source/WebCore/loader/WorkerThreadableLoader.cpp

    r66083 r78782  
    199199}
    200200
    201 static void workerContextDidFinishLoading(ScriptExecutionContext* context, RefPtr<ThreadableLoaderClientWrapper> workerClientWrapper, unsigned long identifier)
    202 {
    203     ASSERT_UNUSED(context, context->isWorkerContext());
    204     workerClientWrapper->didFinishLoading(identifier);
    205 }
    206 
    207 void WorkerThreadableLoader::MainThreadBridge::didFinishLoading(unsigned long identifier)
    208 {
    209     m_loaderProxy.postTaskForModeToWorkerContext(createCallbackTask(&workerContextDidFinishLoading, m_workerClientWrapper, identifier), m_taskMode);
     201static void workerContextDidReceiveCachedMetadata(ScriptExecutionContext* context, RefPtr<ThreadableLoaderClientWrapper> workerClientWrapper, PassOwnPtr<Vector<char> > vectorData)
     202{
     203    ASSERT_UNUSED(context, context->isWorkerContext());
     204    workerClientWrapper->didReceiveCachedMetadata(vectorData->data(), vectorData->size());
     205}
     206
     207void WorkerThreadableLoader::MainThreadBridge::didReceiveCachedMetadata(const char* data, int lengthReceived)
     208{
     209    OwnPtr<Vector<char> > vector = adoptPtr(new Vector<char>(lengthReceived)); // needs to be an OwnPtr for usage with createCallbackTask.
     210    memcpy(vector->data(), data, lengthReceived);
     211    m_loaderProxy.postTaskForModeToWorkerContext(createCallbackTask(&workerContextDidReceiveCachedMetadata, m_workerClientWrapper, vector.release()), m_taskMode);
     212}
     213
     214static void workerContextDidFinishLoading(ScriptExecutionContext* context, RefPtr<ThreadableLoaderClientWrapper> workerClientWrapper, unsigned long identifier, double finishTime)
     215{
     216    ASSERT_UNUSED(context, context->isWorkerContext());
     217    workerClientWrapper->didFinishLoading(identifier, finishTime);
     218}
     219
     220void WorkerThreadableLoader::MainThreadBridge::didFinishLoading(unsigned long identifier, double finishTime)
     221{
     222    m_loaderProxy.postTaskForModeToWorkerContext(createCallbackTask(&workerContextDidFinishLoading, m_workerClientWrapper, identifier, finishTime), m_taskMode);
    210223}
    211224
  • trunk/Source/WebCore/loader/WorkerThreadableLoader.h

    r76248 r78782  
    115115            virtual void didSendData(unsigned long long bytesSent, unsigned long long totalBytesToBeSent);
    116116            virtual void didReceiveResponse(const ResourceResponse&);
    117             virtual void didReceiveData(const char*, int lengthReceived);
    118             virtual void didFinishLoading(unsigned long identifier);
     117            virtual void didReceiveData(const char*, int dataLength);
     118            virtual void didReceiveCachedMetadata(const char*, int dataLength);
     119            virtual void didFinishLoading(unsigned long identifier, double finishTime);
    119120            virtual void didFail(const ResourceError&);
    120121            virtual void didFailRedirectCheck();
  • trunk/Source/WebCore/notifications/Notification.cpp

    r65742 r78782  
    196196}
    197197
    198 void Notification::didFinishLoading(unsigned long)
     198void Notification::didFinishLoading(unsigned long, double)
    199199{
    200200    finishLoading();
  • trunk/Source/WebCore/notifications/Notification.h

    r76248 r78782  
    107107        virtual void didReceiveResponse(const ResourceResponse&);
    108108        virtual void didReceiveData(const char* data, int lengthReceived);
    109         virtual void didFinishLoading(unsigned long identifier);
     109        virtual void didFinishLoading(unsigned long identifier, double finishTime);
    110110        virtual void didFail(const ResourceError&);
    111111        virtual void didFailRedirectCheck();
  • trunk/Source/WebCore/page/EventSource.cpp

    r74011 r78782  
    197197}
    198198
    199 void EventSource::didFinishLoading(unsigned long)
     199void EventSource::didFinishLoading(unsigned long, double)
    200200{
    201201    if (m_receiveBuf.size() > 0 || m_data.size() > 0) {
  • trunk/Source/WebCore/page/EventSource.h

    r76248 r78782  
    9292
    9393        virtual void didReceiveResponse(const ResourceResponse&);
    94         virtual void didReceiveData(const char* data, int length);
    95         virtual void didFinishLoading(unsigned long);
     94        virtual void didReceiveData(const char*, int);
     95        virtual void didFinishLoading(unsigned long, double);
    9696        virtual void didFail(const ResourceError&);
    9797        virtual void didFailRedirectCheck();
  • trunk/Source/WebCore/workers/WorkerScriptLoader.cpp

    r77563 r78782  
    135135}
    136136
    137 void WorkerScriptLoader::didFinishLoading(unsigned long identifier)
     137void WorkerScriptLoader::didFinishLoading(unsigned long identifier, double)
    138138{
    139139    if (m_failed)
  • trunk/Source/WebCore/workers/WorkerScriptLoader.h

    r77563 r78782  
    6060        virtual void didReceiveResponse(const ResourceResponse&);
    6161        virtual void didReceiveData(const char* data, int lengthReceived);
    62         virtual void didFinishLoading(unsigned long identifier);
     62        virtual void didFinishLoading(unsigned long identifier, double);
    6363        virtual void didFail(const ResourceError&);
    6464        virtual void didFailRedirectCheck();
  • trunk/Source/WebCore/xml/XMLHttpRequest.cpp

    r78634 r78782  
    988988}
    989989
    990 void XMLHttpRequest::didFinishLoading(unsigned long identifier)
     990void XMLHttpRequest::didFinishLoading(unsigned long identifier, double)
    991991{
    992992    if (m_error)
     
    10001000
    10011001    m_responseBuilder.shrinkToFit();
    1002    
     1002
    10031003#if ENABLE(XHR_RESPONSE_BLOB)
    10041004    // FIXME: Set m_responseBlob to something here in the ResponseTypeBlob case.
  • trunk/Source/WebCore/xml/XMLHttpRequest.h

    r78591 r78782  
    155155    virtual void didReceiveResponse(const ResourceResponse&);
    156156    virtual void didReceiveData(const char* data, int lengthReceived);
    157     virtual void didFinishLoading(unsigned long identifier);
     157    virtual void didFinishLoading(unsigned long identifier, double finishTime);
    158158    virtual void didFail(const ResourceError&);
    159159    virtual void didFailRedirectCheck();
Note: See TracChangeset for help on using the changeset viewer.