Title: [141749] trunk/Source
Revision
141749
Author
kbal...@webkit.org
Date
2013-02-04 01:33:30 -0800 (Mon, 04 Feb 2013)

Log Message

[Soup] Wrap SoupSession by NetworkStorageSession
https://bugs.webkit.org/show_bug.cgi?id=108615

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Implement NetworkStorageSession for ports using soup. It has been
separated from NetworkingContext, so now we have a default storage
session, which is the same as before but now wrapped with NetworkStorageSession,
and it can be overridden by the networking context.

No change in behavior so no new tests.

* CMakeLists.txt:
* GNUmakefile.list.am:
* PlatformBlackBerry.cmake:
* PlatformEfl.cmake:
* loader/CookieJar.cpp:
(WebCore):
Now we also get the storage session from the networking context
and not the other way.

* platform/network/NetworkStorageSession.h:
(NetworkStorageSession):
(WebCore::NetworkStorageSession::setSoupSession):
(WebCore::NetworkStorageSession::soupSession):
Hold a SoupSession pointer for ports using soup. Added a setter because it is
necessary for API's that allow it to be specified per page, like EFL WK1.

* platform/network/NetworkingContext.h:
(NetworkingContext):
* platform/network/soup/CookieJarSoup.cpp:
(WebCore::cookieJarForSession):
* platform/network/soup/NetworkStorageSessionSoup.cpp: Copied from Source/WebKit2/WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp.
(WebCore::NetworkStorageSession::NetworkStorageSession):
(WebCore::NetworkStorageSession::defaultStorageSession):
(WebCore::NetworkStorageSession::createDefaultSession):
(WebCore::NetworkStorageSession::createPrivateBrowsingSession):
(WebCore::NetworkStorageSession::switchToNewTestingSession):
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::sessionFromContext):

* CMakeLists.txt:
* GNUmakefile.list.am:
* PlatformBlackBerry.cmake:
* PlatformEfl.cmake:
* loader/CookieJar.cpp:
(WebCore):
* platform/network/NetworkStorageSession.h:
(NetworkStorageSession):
(WebCore::NetworkStorageSession::setSoupSession):
(WebCore::NetworkStorageSession::soupSession):
* platform/network/NetworkingContext.h:
(NetworkingContext):
* platform/network/soup/CookieJarSoup.cpp:
(WebCore::cookieJarForSession):
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::sessionFromContext):

Source/WebKit/efl:

Changed to hold the SoupSession pointer in a NetworkStorageSession
so we can pass it to WebCore. _Ewk_View_Private_Data has to be
changed for that reason.

* WebCoreSupport/FrameNetworkingContextEfl.cpp:
(WebCore::FrameNetworkingContextEfl::storageSession):
* WebCoreSupport/FrameNetworkingContextEfl.h:
(FrameNetworkingContextEfl):
* ewk/ewk_view.cpp:
(_Ewk_View_Private_Data):
(_ewk_view_priv_new):
(ewk_view_soup_session_get):
(ewk_view_soup_session_set):
(EWKPrivate::storageSession):
(EWKPrivate):
* ewk/ewk_view_private.h:
(EWKPrivate):

Source/WebKit/gtk:

* WebCoreSupport/FrameNetworkingContextGtk.cpp:
(WebKit::FrameNetworkingContextGtk::storageSession):
* WebCoreSupport/FrameNetworkingContextGtk.h:
(FrameNetworkingContextGtk):

Source/WebKit2:

* WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
(WebKit::WebFrameNetworkingContext::storageSession):
* WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
(WebFrameNetworkingContext):

Modified Paths

Added Paths

Diff

Modified: trunk/Source/WebCore/CMakeLists.txt (141748 => 141749)


--- trunk/Source/WebCore/CMakeLists.txt	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebCore/CMakeLists.txt	2013-02-04 09:33:30 UTC (rev 141749)
@@ -2059,7 +2059,6 @@
     platform/network/HTTPValidation.cpp
     platform/network/MIMEHeader.cpp
     platform/network/NetworkStateNotifier.cpp
-    platform/network/NetworkStorageSessionStub.cpp
     platform/network/ParsedContentType.cpp
     platform/network/ProtectionSpace.cpp
     platform/network/ProxyServer.cpp

Modified: trunk/Source/WebCore/ChangeLog (141748 => 141749)


--- trunk/Source/WebCore/ChangeLog	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebCore/ChangeLog	2013-02-04 09:33:30 UTC (rev 141749)
@@ -1,3 +1,63 @@
+2013-02-04  Balazs Kelemen  <kbal...@webkit.org>
+
+        [Soup] Wrap SoupSession by NetworkStorageSession
+        https://bugs.webkit.org/show_bug.cgi?id=108615
+
+        Reviewed by Alexey Proskuryakov.
+
+        Implement NetworkStorageSession for ports using soup. It has been
+        separated from NetworkingContext, so now we have a default storage
+        session, which is the same as before but now wrapped with NetworkStorageSession,
+        and it can be overridden by the networking context.
+
+        No change in behavior so no new tests.
+
+        * CMakeLists.txt:
+        * GNUmakefile.list.am:
+        * PlatformBlackBerry.cmake:
+        * PlatformEfl.cmake:
+        * loader/CookieJar.cpp:
+        (WebCore):
+        Now we also get the storage session from the networking context
+        and not the other way.
+
+        * platform/network/NetworkStorageSession.h:
+        (NetworkStorageSession):
+        (WebCore::NetworkStorageSession::setSoupSession):
+        (WebCore::NetworkStorageSession::soupSession):
+        Hold a SoupSession pointer for ports using soup. Added a setter because it is
+        necessary for API's that allow it to be specified per page, like EFL WK1.
+
+        * platform/network/NetworkingContext.h:
+        (NetworkingContext):
+        * platform/network/soup/CookieJarSoup.cpp:
+        (WebCore::cookieJarForSession):
+        * platform/network/soup/NetworkStorageSessionSoup.cpp: Copied from Source/WebKit2/WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp.
+        (WebCore::NetworkStorageSession::NetworkStorageSession):
+        (WebCore::NetworkStorageSession::defaultStorageSession):
+        (WebCore::NetworkStorageSession::createDefaultSession):
+        (WebCore::NetworkStorageSession::createPrivateBrowsingSession):
+        (WebCore::NetworkStorageSession::switchToNewTestingSession):
+        * platform/network/soup/ResourceHandleSoup.cpp:
+        (WebCore::sessionFromContext):
+
+        * CMakeLists.txt:
+        * GNUmakefile.list.am:
+        * PlatformBlackBerry.cmake:
+        * PlatformEfl.cmake:
+        * loader/CookieJar.cpp:
+        (WebCore):
+        * platform/network/NetworkStorageSession.h:
+        (NetworkStorageSession):
+        (WebCore::NetworkStorageSession::setSoupSession):
+        (WebCore::NetworkStorageSession::soupSession):
+        * platform/network/NetworkingContext.h:
+        (NetworkingContext):
+        * platform/network/soup/CookieJarSoup.cpp:
+        (WebCore::cookieJarForSession):
+        * platform/network/soup/ResourceHandleSoup.cpp:
+        (WebCore::sessionFromContext):
+
 2013-02-04  Andrey Lushnikov  <lushni...@chromium.org>
 
         Web Inspector: source location in statusbar has few bugs in it

Modified: trunk/Source/WebCore/GNUmakefile.list.am (141748 => 141749)


--- trunk/Source/WebCore/GNUmakefile.list.am	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebCore/GNUmakefile.list.am	2013-02-04 09:33:30 UTC (rev 141749)
@@ -5816,7 +5816,6 @@
 	Source/WebCore/platform/network/NetworkStateNotifier.cpp \
 	Source/WebCore/platform/network/NetworkStateNotifier.h \
 	Source/WebCore/platform/network/NetworkStorageSession.h \
-	Source/WebCore/platform/network/NetworkStorageSessionStub.cpp \
 	Source/WebCore/platform/network/ParsedContentType.cpp \
 	Source/WebCore/platform/network/ParsedContentType.h \
 	Source/WebCore/platform/network/PlatformCookieJar.h \
@@ -5854,6 +5853,7 @@
 	Source/WebCore/platform/network/soup/DNSSoup.cpp \
 	Source/WebCore/platform/network/soup/GOwnPtrSoup.cpp \
 	Source/WebCore/platform/network/soup/GOwnPtrSoup.h \
+	Source/WebCore/platform/network/soup/NetworkStorageSessionSoup.cpp \
 	Source/WebCore/platform/network/soup/ProxyServerSoup.cpp \
 	Source/WebCore/platform/network/soup/ResourceError.h \
 	Source/WebCore/platform/network/soup/ResourceErrorSoup.cpp \

Modified: trunk/Source/WebCore/PlatformBlackBerry.cmake (141748 => 141749)


--- trunk/Source/WebCore/PlatformBlackBerry.cmake	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebCore/PlatformBlackBerry.cmake	2013-02-04 09:33:30 UTC (rev 141749)
@@ -86,6 +86,7 @@
 # Networking sources
 list(APPEND WebCore_SOURCES
     platform/network/MIMESniffing.cpp
+    platform/network/NetworkStorageSessionStub.cpp
     platform/network/ProxyServer.cpp
     platform/network/blackberry/AutofillBackingStore.cpp
     platform/network/blackberry/DNSBlackBerry.cpp

Modified: trunk/Source/WebCore/PlatformEfl.cmake (141748 => 141749)


--- trunk/Source/WebCore/PlatformEfl.cmake	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebCore/PlatformEfl.cmake	2013-02-04 09:33:30 UTC (rev 141749)
@@ -150,6 +150,7 @@
     platform/network/soup/CredentialStorageSoup.cpp
     platform/network/soup/DNSSoup.cpp
     platform/network/soup/GOwnPtrSoup.cpp
+    platform/network/soup/NetworkStorageSessionSoup.cpp
     platform/network/soup/ProxyResolverSoup.cpp
     platform/network/soup/ProxyServerSoup.cpp
     platform/network/soup/ResourceErrorSoup.cpp

Modified: trunk/Source/WebCore/loader/CookieJar.cpp (141748 => 141749)


--- trunk/Source/WebCore/loader/CookieJar.cpp	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebCore/loader/CookieJar.cpp	2013-02-04 09:33:30 UTC (rev 141749)
@@ -56,7 +56,7 @@
     return loader->networkingContext();
 }
 
-#if PLATFORM(MAC) || USE(CFNETWORK)
+#if PLATFORM(MAC) || USE(CFNETWORK) || USE(SOUP)
 inline NetworkStorageSession& storageSession(const Document* document)
 {
     NetworkingContext* context = networkingContext(document);

Modified: trunk/Source/WebCore/platform/network/NetworkStorageSession.h (141748 => 141749)


--- trunk/Source/WebCore/platform/network/NetworkStorageSession.h	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebCore/platform/network/NetworkStorageSession.h	2013-02-04 09:33:30 UTC (rev 141749)
@@ -32,6 +32,9 @@
 #if PLATFORM(MAC) || USE(CFNETWORK)
 typedef const struct __CFURLStorageSession* CFURLStorageSessionRef;
 typedef struct OpaqueCFHTTPCookieStorage*  CFHTTPCookieStorageRef;
+#elif USE(SOUP)
+typedef struct _SoupCookieJar SoupCookieJar;
+typedef struct _SoupSession SoupSession;
 #endif
 
 namespace WebCore {
@@ -42,7 +45,7 @@
     WTF_MAKE_NONCOPYABLE(NetworkStorageSession); WTF_MAKE_FAST_ALLOCATED;
 public:
     static NetworkStorageSession& defaultStorageSession();
-    static PassOwnPtr<NetworkStorageSession> createDefaultSession(const String& identifierBase);
+    static PassOwnPtr<NetworkStorageSession> createDefaultSession(const String& identifierBase = String());
     static PassOwnPtr<NetworkStorageSession> createPrivateBrowsingSession(const String& identifierBase);
 
     static void switchToNewTestingSession();
@@ -52,6 +55,9 @@
     CFURLStorageSessionRef platformSession() { return m_platformSession.get(); }
     RetainPtr<CFHTTPCookieStorageRef> cookieStorage() const;
     bool isPrivateBrowsingSession() const { return m_isPrivate; }
+#elif USE(SOUP)
+    void setSoupSession(SoupSession* session) { m_session = session; }
+    SoupSession* soupSession() const { return m_session; }
 #else
     NetworkStorageSession(NetworkingContext*);
     ~NetworkStorageSession();
@@ -64,6 +70,9 @@
     NetworkStorageSession();
     RetainPtr<CFURLStorageSessionRef> m_platformSession;
     bool m_isPrivate;
+#elif USE(SOUP)
+    NetworkStorageSession(SoupSession*);
+    SoupSession* m_session;
 #else
     RefPtr<NetworkingContext> m_context;
 #endif

Modified: trunk/Source/WebCore/platform/network/NetworkingContext.h (141748 => 141749)


--- trunk/Source/WebCore/platform/network/NetworkingContext.h	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebCore/platform/network/NetworkingContext.h	2013-02-04 09:33:30 UTC (rev 141749)
@@ -78,8 +78,7 @@
     virtual ResourceError blockedError(const ResourceRequest&) const = 0;
 #endif
 
-#if PLATFORM(MAC) || USE(CFNETWORK)
-
+#if PLATFORM(MAC) || USE(CFNETWORK) || USE(SOUP)
     virtual NetworkStorageSession& storageSession() const = 0;
 #endif
 
@@ -98,8 +97,6 @@
 #endif
 
 #if USE(SOUP)
-    // FIXME: Wrap SoupSession into a NetworkStorageSession to make the code cross-platform.
-    virtual SoupSession* soupSession() const = 0;
     virtual uint64_t initiatingPageID() const = 0;
 #endif
 

Modified: trunk/Source/WebCore/platform/network/soup/CookieJarSoup.cpp (141748 => 141749)


--- trunk/Source/WebCore/platform/network/soup/CookieJarSoup.cpp	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebCore/platform/network/soup/CookieJarSoup.cpp	2013-02-04 09:33:30 UTC (rev 141749)
@@ -34,9 +34,9 @@
 
 static SoupCookieJar* cookieJarForSession(const NetworkStorageSession& session)
 {
-    if (!session.context())
+    if (!session.soupSession())
         return soupCookieJar();
-    return SOUP_COOKIE_JAR(soup_session_get_feature(session.context()->soupSession(), SOUP_TYPE_COOKIE_JAR));
+    return SOUP_COOKIE_JAR(soup_session_get_feature(session.soupSession(), SOUP_TYPE_COOKIE_JAR));
 }
 
 static GRefPtr<SoupCookieJar>& defaultCookieJar()

Added: trunk/Source/WebCore/platform/network/soup/NetworkStorageSessionSoup.cpp (0 => 141749)


--- trunk/Source/WebCore/platform/network/soup/NetworkStorageSessionSoup.cpp	                        (rev 0)
+++ trunk/Source/WebCore/platform/network/soup/NetworkStorageSessionSoup.cpp	2013-02-04 09:33:30 UTC (rev 141749)
@@ -0,0 +1,74 @@
+/*
+ * Copyright (C) 2013 Apple Inc. All rights reserved.
+ * Copyright (C) 2013 University of Szeged. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. 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.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS''
+ * 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 APPLE INC. OR ITS 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 "config.h"
+#include "NetworkStorageSession.h"
+
+#include "ResourceHandle.h"
+#include <wtf/MainThread.h>
+#include <wtf/PassOwnPtr.h>
+
+namespace WebCore {
+
+NetworkStorageSession::NetworkStorageSession(SoupSession* session)
+    : m_session(session)
+{
+}
+
+static OwnPtr<NetworkStorageSession>& defaultSession()
+{
+    ASSERT(isMainThread());
+    DEFINE_STATIC_LOCAL(OwnPtr<NetworkStorageSession>, session, ());
+    return session;
+}
+
+NetworkStorageSession& NetworkStorageSession::defaultStorageSession()
+{
+    if (!defaultSession())
+        defaultSession() = adoptPtr(new NetworkStorageSession(ResourceHandle::defaultSession()));
+    return *defaultSession();
+}
+
+PassOwnPtr<NetworkStorageSession> NetworkStorageSession::createDefaultSession(const String&)
+{
+    ASSERT(isMainThread());
+    return adoptPtr(new NetworkStorageSession(ResourceHandle::defaultSession()));
+}
+
+PassOwnPtr<NetworkStorageSession> NetworkStorageSession::createPrivateBrowsingSession(const String&)
+{
+    ASSERT_NOT_REACHED();
+    return nullptr;
+}
+
+void NetworkStorageSession::switchToNewTestingSession()
+{
+    // A null session will make us fall back to the default cookie jar, which is currently
+    // the expected behavior for tests.
+    defaultSession() = adoptPtr(new NetworkStorageSession(0));
+}
+
+}

Modified: trunk/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp (141748 => 141749)


--- trunk/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp	2013-02-04 09:33:30 UTC (rev 141749)
@@ -258,7 +258,9 @@
 
 static SoupSession* sessionFromContext(NetworkingContext* context)
 {
-    return (context && context->isValid()) ? context->soupSession() : ResourceHandle::defaultSession();
+    if (!context || !context->isValid())
+        return ResourceHandle::defaultSession();
+    return context->storageSession().soupSession();
 }
 
 ResourceHandle::~ResourceHandle()

Modified: trunk/Source/WebKit/efl/ChangeLog (141748 => 141749)


--- trunk/Source/WebKit/efl/ChangeLog	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebKit/efl/ChangeLog	2013-02-04 09:33:30 UTC (rev 141749)
@@ -1,3 +1,28 @@
+2013-02-04  Balazs Kelemen  <kbal...@webkit.org>
+
+        [Soup] Wrap SoupSession by NetworkStorageSession
+        https://bugs.webkit.org/show_bug.cgi?id=108615
+
+        Reviewed by Alexey Proskuryakov.
+
+        Changed to hold the SoupSession pointer in a NetworkStorageSession
+        so we can pass it to WebCore. _Ewk_View_Private_Data has to be
+        changed for that reason.
+
+        * WebCoreSupport/FrameNetworkingContextEfl.cpp:
+        (WebCore::FrameNetworkingContextEfl::storageSession):
+        * WebCoreSupport/FrameNetworkingContextEfl.h:
+        (FrameNetworkingContextEfl):
+        * ewk/ewk_view.cpp:
+        (_Ewk_View_Private_Data):
+        (_ewk_view_priv_new):
+        (ewk_view_soup_session_get):
+        (ewk_view_soup_session_set):
+        (EWKPrivate::storageSession):
+        (EWKPrivate):
+        * ewk/ewk_view_private.h:
+        (EWKPrivate):
+
 2013-02-03  KwangYong Choi  <ky0.c...@samsung.com>
 
         Fix build warning after r141473

Modified: trunk/Source/WebKit/efl/WebCoreSupport/FrameNetworkingContextEfl.cpp (141748 => 141749)


--- trunk/Source/WebKit/efl/WebCoreSupport/FrameNetworkingContextEfl.cpp	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebKit/efl/WebCoreSupport/FrameNetworkingContextEfl.cpp	2013-02-04 09:33:30 UTC (rev 141749)
@@ -34,6 +34,7 @@
 #include "ResourceHandle.h"
 #include "ewk_frame.h"
 #include "ewk_view.h"
+#include "ewk_view_private.h"
 
 #include <Evas.h>
 
@@ -50,9 +51,11 @@
 {
 }
 
-SoupSession* FrameNetworkingContextEfl::soupSession() const
+NetworkStorageSession& FrameNetworkingContextEfl::storageSession() const
 {
-    return ewk_view_soup_session_get(ewk_frame_view_get(m_ewkFrame));
+    if (NetworkStorageSession* session = EWKPrivate::storageSession(ewk_frame_view_get(m_ewkFrame)))
+        return *session;
+    return NetworkStorageSession::defaultStorageSession();
 }
 
 uint64_t FrameNetworkingContextEfl::initiatingPageID() const

Modified: trunk/Source/WebKit/efl/WebCoreSupport/FrameNetworkingContextEfl.h (141748 => 141749)


--- trunk/Source/WebKit/efl/WebCoreSupport/FrameNetworkingContextEfl.h	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebKit/efl/WebCoreSupport/FrameNetworkingContextEfl.h	2013-02-04 09:33:30 UTC (rev 141749)
@@ -38,10 +38,11 @@
     static PassRefPtr<FrameNetworkingContextEfl> create(Frame*, Evas_Object*);
 
     WebCore::Frame* coreFrame() const { return frame(); }
-    virtual SoupSession* soupSession() const;
     virtual uint64_t initiatingPageID() const;
 
 private:
+    virtual WebCore::NetworkStorageSession& storageSession() const;
+
     FrameNetworkingContextEfl(Frame*, Evas_Object*);
 
     Evas_Object* m_ewkFrame;

Modified: trunk/Source/WebKit/efl/ewk/ewk_view.cpp (141748 => 141749)


--- trunk/Source/WebKit/efl/ewk/ewk_view.cpp	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebKit/efl/ewk/ewk_view.cpp	2013-02-04 09:33:30 UTC (rev 141749)
@@ -49,6 +49,7 @@
 #include "JSDOMBinding.h"
 #include "JSDOMWindow.h"
 #include "JSLock.h"
+#include "NetworkStorageSession.h"
 #include "Operations.h"
 #include "PageClientEfl.h"
 #include "PageGroup.h"
@@ -272,6 +273,7 @@
 #if ENABLE(NAVIGATOR_CONTENT_UTILS) || ENABLE(CUSTOM_SCHEME_HANDLER)
     OwnPtr<WebCore::NavigatorContentUtilsClientEfl> navigatorContentUtilsClient;
 #endif
+    OwnPtr<WebCore::NetworkStorageSession> storageSession;
     struct {
         Ewk_Menu menu;
         WebCore::PopupMenuClient* menuClient;
@@ -369,7 +371,6 @@
         } center;
         Ecore_Animator* animator;
     } animatedZoom;
-    SoupSession* soupSession;
     const char* cursorGroup;
     Evas_Object* cursorObject;
 #if ENABLE(INSPECTOR)
@@ -926,7 +927,7 @@
 
     priv->history = ewk_history_new(static_cast<WebCore::BackForwardListImpl*>(priv->page->backForwardList()));
 
-    priv->soupSession = WebCore::ResourceHandle::defaultSession();
+    priv->storageSession = WebCore::NetworkStorageSession::createDefaultSession();
 
     priv->pageClient = adoptPtr(new PageClientEfl(smartData->self));
 
@@ -4381,7 +4382,7 @@
 {
     EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData, 0);
     EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv, 0);
-    return priv->soupSession;
+    return priv->storageSession->soupSession();
 }
 
 void ewk_view_soup_session_set(Evas_Object* ewkView, SoupSession* session)
@@ -4393,7 +4394,7 @@
             "a SoupSessionSync was provided.");
         return;
     }
-    priv->soupSession = session;
+    priv->storageSession->setSoupSession(session);
 }
 
 Eina_Bool ewk_view_setting_enable_xss_auditor_get(const Evas_Object* ewkView)
@@ -4851,4 +4852,11 @@
     return priv->pageClient.get();
 }
 
+WebCore::NetworkStorageSession* storageSession(const Evas_Object* ewkView)
+{
+    EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData, 0);
+    EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv, 0);
+    return priv->storageSession.get();
+}
+
 } // namespace EWKPrivate

Modified: trunk/Source/WebKit/efl/ewk/ewk_view_private.h (141748 => 141749)


--- trunk/Source/WebKit/efl/ewk/ewk_view_private.h	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebKit/efl/ewk/ewk_view_private.h	2013-02-04 09:33:30 UTC (rev 141749)
@@ -23,6 +23,7 @@
 #define ewk_view_private_h
 
 #include "Frame.h"
+#include "NetworkStorageSession.h"
 #include "Page.h"
 #include "Widget.h"
 #include "ewk_paint_context_private.h"
@@ -174,6 +175,7 @@
 namespace EWKPrivate {
 WebCore::Page *corePage(const Evas_Object *ewkView);
 PlatformPageClient corePageClient(Evas_Object* ewkView);
+WebCore::NetworkStorageSession* storageSession(const Evas_Object* ewkView);
 } // namespace EWKPrivate
 
 #endif // ewk_view_private_h

Modified: trunk/Source/WebKit/gtk/ChangeLog (141748 => 141749)


--- trunk/Source/WebKit/gtk/ChangeLog	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebKit/gtk/ChangeLog	2013-02-04 09:33:30 UTC (rev 141749)
@@ -1,3 +1,15 @@
+2013-02-04  Balazs Kelemen  <kbal...@webkit.org>
+
+        [Soup] Wrap SoupSession by NetworkStorageSession
+        https://bugs.webkit.org/show_bug.cgi?id=108615
+
+        Reviewed by Alexey Proskuryakov.
+
+        * WebCoreSupport/FrameNetworkingContextGtk.cpp:
+        (WebKit::FrameNetworkingContextGtk::storageSession):
+        * WebCoreSupport/FrameNetworkingContextGtk.h:
+        (FrameNetworkingContextGtk):
+
 2013-02-03  KwangYong Choi  <ky0.c...@samsung.com>
 
         Fix build warning after r141473

Modified: trunk/Source/WebKit/gtk/WebCoreSupport/FrameNetworkingContextGtk.cpp (141748 => 141749)


--- trunk/Source/WebKit/gtk/WebCoreSupport/FrameNetworkingContextGtk.cpp	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebKit/gtk/WebCoreSupport/FrameNetworkingContextGtk.cpp	2013-02-04 09:33:30 UTC (rev 141749)
@@ -21,16 +21,16 @@
 #include "config.h"
 #include "FrameNetworkingContextGtk.h"
 
+#include "NetworkStorageSession.h"
 #include "NotImplemented.h"
-#include "ResourceHandle.h"
 
 using namespace WebCore;
 
 namespace WebKit {
 
-SoupSession* FrameNetworkingContextGtk::soupSession() const
+NetworkStorageSession& FrameNetworkingContextGtk::storageSession() const
 {
-    return ResourceHandle::defaultSession();
+    return NetworkStorageSession::defaultStorageSession();
 }
 
 uint64_t FrameNetworkingContextGtk::initiatingPageID() const

Modified: trunk/Source/WebKit/gtk/WebCoreSupport/FrameNetworkingContextGtk.h (141748 => 141749)


--- trunk/Source/WebKit/gtk/WebCoreSupport/FrameNetworkingContextGtk.h	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebKit/gtk/WebCoreSupport/FrameNetworkingContextGtk.h	2013-02-04 09:33:30 UTC (rev 141749)
@@ -32,10 +32,11 @@
     }
 
     WebCore::Frame* coreFrame() const { return frame(); }
-    virtual SoupSession* soupSession() const;
     virtual uint64_t initiatingPageID() const;
 
 private:
+    virtual WebCore::NetworkStorageSession& storageSession() const;
+
     FrameNetworkingContextGtk(WebCore::Frame* frame)
         : WebCore::FrameNetworkingContext(frame)
     {

Modified: trunk/Source/WebKit2/ChangeLog (141748 => 141749)


--- trunk/Source/WebKit2/ChangeLog	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebKit2/ChangeLog	2013-02-04 09:33:30 UTC (rev 141749)
@@ -1,3 +1,15 @@
+2013-02-04  Balazs Kelemen  <kbal...@webkit.org>
+
+        [Soup] Wrap SoupSession by NetworkStorageSession
+        https://bugs.webkit.org/show_bug.cgi?id=108615
+
+        Reviewed by Alexey Proskuryakov.
+
+        * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
+        (WebKit::WebFrameNetworkingContext::storageSession):
+        * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
+        (WebFrameNetworkingContext):
+
 2013-02-03  David Kilzer  <ddkil...@apple.com>
 
         Upstream ENABLE_PDFKIT_PLUGIN settting

Modified: trunk/Source/WebKit2/WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp (141748 => 141749)


--- trunk/Source/WebKit2/WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebKit2/WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp	2013-02-04 09:33:30 UTC (rev 141749)
@@ -28,7 +28,6 @@
 
 #include "WebFrame.h"
 #include "WebPage.h"
-#include <WebCore/ResourceHandle.h>
 
 using namespace WebCore;
 
@@ -42,9 +41,9 @@
         m_initiatingPageID = page->pageID();
 }
 
-SoupSession* WebFrameNetworkingContext::soupSession() const
+NetworkStorageSession& WebFrameNetworkingContext::storageSession() const
 {
-    return ResourceHandle::defaultSession();
+    return NetworkStorageSession::defaultStorageSession();
 }
 
 uint64_t WebFrameNetworkingContext::initiatingPageID() const

Modified: trunk/Source/WebKit2/WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h (141748 => 141749)


--- trunk/Source/WebKit2/WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h	2013-02-04 09:08:04 UTC (rev 141748)
+++ trunk/Source/WebKit2/WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h	2013-02-04 09:33:30 UTC (rev 141749)
@@ -44,7 +44,7 @@
 private:
     WebFrameNetworkingContext(WebFrame*);
 
-    virtual SoupSession* soupSession() const;
+    virtual WebCore::NetworkStorageSession& storageSession() const;
     virtual uint64_t initiatingPageID() const;
 
     uint64_t m_initiatingPageID;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to