Changeset 138783 in webkit


Ignore:
Timestamp:
Jan 4, 2013 1:07:00 AM (11 years ago)
Author:
Carlos Garcia Campos
Message:

[SOUP] Convert WebSoupRequestManagerProxy to be WebContextSupplement
https://bugs.webkit.org/show_bug.cgi?id=106012

Reviewed by Martin Robinson.

  • UIProcess/API/C/soup/WKContextSoup.cpp:

(WKContextGetSoupRequestManager):

  • UIProcess/API/gtk/WebKitWebContext.cpp:

(createDefaultWebContext):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::WebContext):
(WebKit::WebContext::~WebContext):
(WebKit::WebContext::disconnectProcess):

  • UIProcess/WebContext.h:

(WebKit):
(WebContext):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didReceiveURIRequest):

  • UIProcess/efl/WebContextEfl.cpp:

(WebKit::WebContext::platformInitializeWebProcess):

  • UIProcess/gtk/WebContextGtk.cpp:

(WebKit::WebContext::platformInitializeWebProcess):

  • UIProcess/soup/WebSoupRequestManagerProxy.cpp:

(WebKit::WebSoupRequestManagerProxy::supplementName):
(WebKit):
(WebKit::WebSoupRequestManagerProxy::WebSoupRequestManagerProxy):
(WebKit::WebSoupRequestManagerProxy::initializeClient):
(WebKit::WebSoupRequestManagerProxy::contextDestroyed):
(WebKit::WebSoupRequestManagerProxy::processDidClose):
(WebKit::WebSoupRequestManagerProxy::refWebContextSupplement):
(WebKit::WebSoupRequestManagerProxy::derefWebContextSupplement):
(WebKit::WebSoupRequestManagerProxy::registerURIScheme):
(WebKit::WebSoupRequestManagerProxy::didHandleURIRequest):
(WebKit::WebSoupRequestManagerProxy::didReceiveURIRequestData):

  • UIProcess/soup/WebSoupRequestManagerProxy.h:

(WebSoupRequestManagerProxy):

Location:
trunk/Source/WebKit2
Files:
10 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r138780 r138783  
     12013-01-04  Carlos Garcia Campos  <cgarcia@igalia.com>
     2
     3        [SOUP] Convert WebSoupRequestManagerProxy to be WebContextSupplement
     4        https://bugs.webkit.org/show_bug.cgi?id=106012
     5
     6        Reviewed by Martin Robinson.
     7
     8        * UIProcess/API/C/soup/WKContextSoup.cpp:
     9        (WKContextGetSoupRequestManager):
     10        * UIProcess/API/gtk/WebKitWebContext.cpp:
     11        (createDefaultWebContext):
     12        * UIProcess/WebContext.cpp:
     13        (WebKit::WebContext::WebContext):
     14        (WebKit::WebContext::~WebContext):
     15        (WebKit::WebContext::disconnectProcess):
     16        * UIProcess/WebContext.h:
     17        (WebKit):
     18        (WebContext):
     19        * UIProcess/WebPageProxy.cpp:
     20        (WebKit::WebPageProxy::didReceiveURIRequest):
     21        * UIProcess/efl/WebContextEfl.cpp:
     22        (WebKit::WebContext::platformInitializeWebProcess):
     23        * UIProcess/gtk/WebContextGtk.cpp:
     24        (WebKit::WebContext::platformInitializeWebProcess):
     25        * UIProcess/soup/WebSoupRequestManagerProxy.cpp:
     26        (WebKit::WebSoupRequestManagerProxy::supplementName):
     27        (WebKit):
     28        (WebKit::WebSoupRequestManagerProxy::WebSoupRequestManagerProxy):
     29        (WebKit::WebSoupRequestManagerProxy::initializeClient):
     30        (WebKit::WebSoupRequestManagerProxy::contextDestroyed):
     31        (WebKit::WebSoupRequestManagerProxy::processDidClose):
     32        (WebKit::WebSoupRequestManagerProxy::refWebContextSupplement):
     33        (WebKit::WebSoupRequestManagerProxy::derefWebContextSupplement):
     34        (WebKit::WebSoupRequestManagerProxy::registerURIScheme):
     35        (WebKit::WebSoupRequestManagerProxy::didHandleURIRequest):
     36        (WebKit::WebSoupRequestManagerProxy::didReceiveURIRequestData):
     37        * UIProcess/soup/WebSoupRequestManagerProxy.h:
     38        (WebSoupRequestManagerProxy):
     39
    1402013-01-04  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
    241
  • trunk/Source/WebKit2/UIProcess/API/C/soup/WKContextSoup.cpp

    r115411 r138783  
    3030#include "WebContext.h"
    3131
     32// Supplements
     33#include "WebSoupRequestManagerProxy.h"
     34
    3235using namespace WebKit;
    3336
    3437WKSoupRequestManagerRef WKContextGetSoupRequestManager(WKContextRef contextRef)
    3538{
    36     return toAPI(toImpl(contextRef)->soupRequestManagerProxy());
     39    return toAPI(toImpl(contextRef)->supplement<WebSoupRequestManagerProxy>());
    3740}
    3841
  • trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebContext.cpp

    r138607 r138783  
    173173
    174174    priv->context = WebContext::create(String());
    175     priv->requestManager = webContext->priv->context->soupRequestManagerProxy();
     175    priv->requestManager = webContext->priv->context->supplement<WebSoupRequestManagerProxy>();
    176176    priv->context->setCacheModel(CacheModelPrimaryWebBrowser);
    177177    priv->tlsErrorsPolicy = WEBKIT_TLS_ERRORS_POLICY_IGNORE;
  • trunk/Source/WebKit2/UIProcess/WebContext.cpp

    r138729 r138783  
    168168    m_pluginSiteDataManager = WebPluginSiteDataManager::create(this);
    169169#endif // ENABLE(NETSCAPE_PLUGIN_API)
    170 #if USE(SOUP)
    171     m_soupRequestManagerProxy = WebSoupRequestManagerProxy::create(this);
    172 #endif
    173170
    174171    addSupplement<WebApplicationCacheManagerProxy>();
     
    182179    addSupplement<WebDatabaseManagerProxy>();
    183180#endif
     181#if USE(SOUP)
     182    addSupplement<WebSoupRequestManagerProxy>();
     183#endif
    184184
    185185    contexts().append(this);
     
    235235    m_pluginSiteDataManager->invalidate();
    236236    m_pluginSiteDataManager->clearContext();
    237 #endif
    238 
    239 #if USE(SOUP)
    240     m_soupRequestManagerProxy->invalidate();
    241     m_soupRequestManagerProxy->clearContext();
    242237#endif
    243238
     
    641636#if ENABLE(NETWORK_INFO)
    642637    m_networkInfoManagerProxy->invalidate();
    643 #endif
    644 #if USE(SOUP)
    645     m_soupRequestManagerProxy->invalidate();
    646638#endif
    647639
  • trunk/Source/WebKit2/UIProcess/WebContext.h

    r138729 r138783  
    7474class WebNetworkInfoManagerProxy;
    7575#endif
    76 #if USE(SOUP)
    77 class WebSoupRequestManagerProxy;
    78 #endif
    7976#if ENABLE(NETWORK_PROCESS)
    8077struct NetworkProcessCreationParameters;
     
    216213#if ENABLE(NETSCAPE_PLUGIN_API)
    217214    WebPluginSiteDataManager* pluginSiteDataManager() const { return m_pluginSiteDataManager.get(); }
    218 #endif
    219 #if USE(SOUP)
    220     WebSoupRequestManagerProxy* soupRequestManagerProxy() const { return m_soupRequestManagerProxy.get(); }
    221215#endif
    222216
     
    428422    RefPtr<WebPluginSiteDataManager> m_pluginSiteDataManager;
    429423#endif
    430 #if USE(SOUP)
    431     RefPtr<WebSoupRequestManagerProxy> m_soupRequestManagerProxy;
    432 #endif
    433424
    434425    typedef HashMap<AtomicString, RefPtr<WebContextSupplement> > WebContextSupplementMap;
  • trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp

    r138622 r138783  
    42274227void WebPageProxy::didReceiveURIRequest(String uriString, uint64_t requestID)
    42284228{
    4229     m_process->context()->soupRequestManagerProxy()->didReceiveURIRequest(uriString, this, requestID);
     4229    m_process->context()->supplement<WebSoupRequestManagerProxy>()->didReceiveURIRequest(uriString, this, requestID);
    42304230}
    42314231#endif
  • trunk/Source/WebKit2/UIProcess/efl/WebContextEfl.cpp

    r138607 r138783  
    9090    initializeInspectorServer();
    9191
    92     parameters.urlSchemesRegistered = m_soupRequestManagerProxy->registeredURISchemes();
     92    parameters.urlSchemesRegistered = supplement<WebSoupRequestManagerProxy>()->registeredURISchemes();
    9393    supplement<WebCookieManagerProxy>()->getCookiePersistentStorage(parameters.cookiePersistentStoragePath, parameters.cookiePersistentStorageType);
    9494    parameters.cookieAcceptPolicy = m_initialHTTPCookieAcceptPolicy;
  • trunk/Source/WebKit2/UIProcess/gtk/WebContextGtk.cpp

    r138607 r138783  
    8989    initInspectorServer();
    9090
    91     parameters.urlSchemesRegistered = m_soupRequestManagerProxy->registeredURISchemes();
     91    parameters.urlSchemesRegistered = supplement<WebSoupRequestManagerProxy>()->registeredURISchemes();
    9292    supplement<WebCookieManagerProxy>()->getCookiePersistentStorage(parameters.cookiePersistentStoragePath, parameters.cookiePersistentStorageType);
    9393    parameters.cookieAcceptPolicy = m_initialHTTPCookieAcceptPolicy;
  • trunk/Source/WebKit2/UIProcess/soup/WebSoupRequestManagerProxy.cpp

    r136389 r138783  
    2828namespace WebKit {
    2929
     30const AtomicString& WebSoupRequestManagerProxy::supplementName()
     31{
     32    DEFINE_STATIC_LOCAL(AtomicString, name, ("WebSoupRequestManagerProxy", AtomicString::ConstructFromLiteral));
     33    return name;
     34}
     35
    3036PassRefPtr<WebSoupRequestManagerProxy> WebSoupRequestManagerProxy::create(WebContext* context)
    3137{
     
    3440
    3541WebSoupRequestManagerProxy::WebSoupRequestManagerProxy(WebContext* context)
    36     : m_webContext(context)
     42    : WebContextSupplement(context)
    3743    , m_loadFailed(false)
    3844{
    39     m_webContext->addMessageReceiver(Messages::WebSoupRequestManagerProxy::messageReceiverName(), this);
     45    WebContextSupplement::context()->addMessageReceiver(Messages::WebSoupRequestManagerProxy::messageReceiverName(), this);
    4046}
    4147
    4248WebSoupRequestManagerProxy::~WebSoupRequestManagerProxy()
    43 {
    44 }
    45 
    46 void WebSoupRequestManagerProxy::invalidate()
    4749{
    4850}
     
    5355}
    5456
     57// WebContextSupplement
     58
     59void WebSoupRequestManagerProxy::contextDestroyed()
     60{
     61}
     62
     63void WebSoupRequestManagerProxy::processDidClose(WebProcessProxy*)
     64{
     65}
     66
     67void WebSoupRequestManagerProxy::refWebContextSupplement()
     68{
     69    APIObject::ref();
     70}
     71
     72void WebSoupRequestManagerProxy::derefWebContextSupplement()
     73{
     74    APIObject::deref();
     75}
     76
     77// CoreIPC::MessageReceiver
     78
    5579void WebSoupRequestManagerProxy::didReceiveMessage(CoreIPC::Connection* connection, CoreIPC::MessageID messageID, CoreIPC::MessageDecoder& decoder)
    5680{
     
    6084void WebSoupRequestManagerProxy::registerURIScheme(const String& scheme)
    6185{
    62     ASSERT(m_webContext);
    63     m_webContext->sendToAllProcessesRelaunchingThemIfNecessary(Messages::WebSoupRequestManager::RegisterURIScheme(scheme));
     86    if (!context())
     87        return;
     88
     89    context()->sendToAllProcessesRelaunchingThemIfNecessary(Messages::WebSoupRequestManager::RegisterURIScheme(scheme));
    6490
    6591    ASSERT(!m_registeredURISchemes.contains(scheme));
     
    6995void WebSoupRequestManagerProxy::didHandleURIRequest(const WebData* requestData, uint64_t contentLength, const String& mimeType, uint64_t requestID)
    7096{
    71     ASSERT(m_webContext);
    72     m_webContext->sendToAllProcesses(Messages::WebSoupRequestManager::DidHandleURIRequest(requestData->dataReference(), contentLength, mimeType, requestID));
     97    if (!context())
     98        return;
     99
     100    context()->sendToAllProcesses(Messages::WebSoupRequestManager::DidHandleURIRequest(requestData->dataReference(), contentLength, mimeType, requestID));
    73101}
    74102
    75103void WebSoupRequestManagerProxy::didReceiveURIRequestData(const WebData* requestData, uint64_t requestID)
    76104{
     105    if (!context())
     106        return;
     107
    77108    if (m_loadFailed)
    78109        return;
    79110
    80     ASSERT(m_webContext);
    81     m_webContext->sendToAllProcesses(Messages::WebSoupRequestManager::DidReceiveURIRequestData(requestData->dataReference(), requestID));
     111    context()->sendToAllProcesses(Messages::WebSoupRequestManager::DidReceiveURIRequestData(requestData->dataReference(), requestID));
    82112}
    83113
  • trunk/Source/WebKit2/UIProcess/soup/WebSoupRequestManagerProxy.h

    r136389 r138783  
    2323#include "APIObject.h"
    2424#include "MessageReceiver.h"
     25#include "WebContextSupplement.h"
    2526#include "WebSoupRequestManagerClient.h"
    2627#include <wtf/PassRefPtr.h>
     
    3334class WebData;
    3435
    35 class WebSoupRequestManagerProxy : public APIObject, private CoreIPC::MessageReceiver {
     36class WebSoupRequestManagerProxy : public APIObject, public WebContextSupplement, private CoreIPC::MessageReceiver {
    3637public:
    3738    static const Type APIType = TypeSoupRequestManager;
    3839
     40    static const AtomicString& supplementName();
     41
    3942    static PassRefPtr<WebSoupRequestManagerProxy> create(WebContext*);
    4043    virtual ~WebSoupRequestManagerProxy();
    41 
    42     void invalidate();
    43     void clearContext() { m_webContext = 0; }
    4444
    4545    void initializeClient(const WKSoupRequestManagerClient*);
     
    4848    void didHandleURIRequest(const WebData*, uint64_t contentLength, const String& mimeType, uint64_t requestID);
    4949    void didReceiveURIRequestData(const WebData*, uint64_t requestID);
    50     void didFailToLoadURIRequest(uint64_t requestID);
    51 
    5250    void didReceiveURIRequest(const String& uriString, WebPageProxy*, uint64_t requestID);
    5351
    5452    const Vector<String>& registeredURISchemes() const { return m_registeredURISchemes; }
     53
     54    using APIObject::ref;
     55    using APIObject::deref;
    5556
    5657private:
     
    5960    virtual Type type() const { return APIType; }
    6061
     62    // WebContextSupplement
     63    virtual void contextDestroyed() OVERRIDE;
     64    virtual void processDidClose(WebProcessProxy*) OVERRIDE;
     65    virtual void refWebContextSupplement() OVERRIDE;
     66    virtual void derefWebContextSupplement() OVERRIDE;
     67
    6168    // CoreIPC::MessageReceiver
    6269    virtual void didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageID, CoreIPC::MessageDecoder&) OVERRIDE;
    6370    void didReceiveWebSoupRequestManagerProxyMessage(CoreIPC::Connection*, CoreIPC::MessageID, CoreIPC::MessageDecoder&);
    6471
    65     WebContext* m_webContext;
     72    void didFailToLoadURIRequest(uint64_t requestID);
     73
    6674    WebSoupRequestManagerClient m_client;
    6775    bool m_loadFailed;
    68 
    6976    Vector<String> m_registeredURISchemes;
    7077};
Note: See TracChangeset for help on using the changeset viewer.