-
carlosgc@webkit.org authored
https://bugs.webkit.org/show_bug.cgi?id=126813 Reviewed by Gustavo Noronha Silva. Source/WebCore: Add SoupNetworkSession class that wraps a SoupSession and move all the code related to the SoupSession from ResourceHandle to SoupNetworkSession, including the static methods to get the default session and create testing and private sessions. * GNUmakefile.list.am: Add new files to compilation. * PlatformEfl.cmake: Ditto. * PlatformGTK.cmake: Ditto. * platform/network/NetworkStorageSession.h: Use SoupNetworkSession instead of SoupSession. * platform/network/ResourceHandle.h: * platform/network/soup/CookieJarSoup.cpp: (WebCore::cookieJarForSession): Use SoupNetworkSession to get the SoupSession. * platform/network/soup/DNSSoup.cpp: (WebCore::DNSResolveQueue::platformResolve): Ditto. * platform/network/soup/NetworkStorageSessionSoup.cpp: (WebCore::NetworkStorageSession::NetworkStorageSession): Use SoupNetworkSession instead of SoupSession. (WebCore::NetworkStorageSession::~NetworkStorageSession): (WebCore::NetworkStorageSession::defaultStorageSession): Create a NetworkStorageSession with a NULL SoupNetworkSession which means that the default SoupNetworkSession will be used. (WebCore::NetworkStorageSession::createPrivateBrowsingSession): Call SoupNetworkSession::createPrivateBrowsingSession() to create the private session. (WebCore::NetworkStorageSession::switchToNewTestingSession): Call SoupNetworkSession::createTestingSession() to create the testing session. (WebCore::NetworkStorageSession::soupNetworkSession): Return the SoupNetworkSession or the default one. (WebCore::NetworkStorageSession::setSoupNetworkSession): Set a new SoupNetworkSession. * platform/network/soup/ResourceHandleSoup.cpp: (WebCore::sessionFromContext): Use SoupNetworkSession to get the SoupSession. (WebCore::ResourceHandleInternal::soupSession): Simply call sessionFromContext(), since ensureSessionIsInitialized() is no longer needed, because the SoupSession are now initialized in the SoupNetworkSession constructor. (WebCore::ResourceHandle::didStartRequest): Function to notify the ResourceHandle that current request has just started for web timing. * platform/network/soup/SoupNetworkSession.cpp: Added. (WebCore::soupLogPrinter): Logger callback. (WebCore::SoupNetworkSession::defaultSession): Return a reference to the default SoupNetworkSession. (WebCore::SoupNetworkSession::createPrivateBrowsingSession): Create a new private session. (WebCore::SoupNetworkSession::createTestingSession): Create a new testing session. (WebCore::SoupNetworkSession::createForSoupSession): Create a new SoupNetworkSession for the given SoupSession. (WebCore::authenticateCallback): Callback emitted by the SoupSession when the request needs authentication. (WebCore::requestStartedCallback): Callback emitted by the SoupSession when as request has just started. (WebCore::SoupNetworkSession::SoupNetworkSession): (WebCore::SoupNetworkSession::~SoupNetworkSession): (WebCore::SoupNetworkSession::setupLogger): Helper private function to setup the logger. (WebCore::SoupNetworkSession::setCookieJar): Set a new CookieJar in the session replacing the existing one. (WebCore::SoupNetworkSession::cookieJar): Return the current CookieJar of the session. (WebCore::SoupNetworkSession::setCache): Set a disk cache. (WebCore::SoupNetworkSession::cache): Return the current disk cache. (WebCore::SoupNetworkSession::setSSLPolicy): Set the SSL policy. (WebCore::SoupNetworkSession::sslPolicy): Get the current SSL policy. (WebCore::SoupNetworkSession::setHTTPProxy): Set the HTTP proxy. (WebCore::SoupNetworkSession::httpProxy): Get the current HTTP proxy. (WebCore::SoupNetworkSession::setupHTTPProxyFromEnvironment): Set the HTTP proxy using the environment variables. (WebCore::buildAcceptLanguages): Helper function build the accept language string in the format expected by soup (RFC 2616). (WebCore::SoupNetworkSession::setAcceptLanguages): Set the accept language for the given list of languages. * platform/network/soup/SoupNetworkSession.h: Added. (WebCore::SoupNetworkSession::soupSession): Return the SoupSession. Source/WebKit/efl: Use the new SoupNetworkSession API. * ewk/ewk_cookies.cpp: (ewk_cookies_file_set): * ewk/ewk_main.cpp: (_ewk_init_body): * ewk/ewk_network.cpp: (ewk_network_proxy_uri_set): (ewk_network_proxy_uri_get): (ewk_network_tls_certificate_check_get): (ewk_network_tls_certificate_check_set): (ewk_network_tls_ca_certificates_path_get): (ewk_network_tls_ca_certificates_path_set): (ewk_network_default_soup_session_get): * ewk/ewk_view.cpp: (ewk_view_soup_session_get): (ewk_view_soup_session_set): Source/WebKit/gtk: * webkit/webkitglobals.cpp: (webkit_get_default_session): Use the new SoupNetworkSession API to get the default SoupSession Source/WebKit2: Use the new SoupNetworkSession API. * NetworkProcess/soup/NetworkProcessSoup.cpp: (WebKit::NetworkProcess::platformInitializeNetworkProcess): (WebKit::NetworkProcess::platformSetCacheModel): (WebKit::NetworkProcess::clearCacheForAllOrigins): * NetworkProcess/unix/NetworkProcessMainUnix.cpp: (WebKit::NetworkProcessMain): * WebProcess/Cookies/soup/WebCookieManagerSoup.cpp: (WebKit::WebCookieManager::setCookiePersistentStorage): * WebProcess/efl/WebProcessMainEfl.cpp: (WebKit::WebProcessMainEfl): * WebProcess/gtk/WebProcessMainGtk.cpp: (WebKit::WebProcessMainGtk): * WebProcess/soup/WebProcessSoup.cpp: (WebKit::WebProcess::platformSetCacheModel): (WebKit::WebProcess::platformClearResourceCaches): (WebKit::setSoupSessionAcceptLanguage): (WebKit::WebProcess::platformInitializeWebProcess): * WebProcess/soup/WebSoupRequestManager.cpp: (WebKit::WebSoupRequestManager::registerURIScheme): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161890 268f45cc-cd09-0410-ab3c-d52691b4dbfc
72438143