Title: [141834] trunk/Source/WebKit2
Revision
141834
Author
[email protected]
Date
2013-02-04 17:13:18 -0800 (Mon, 04 Feb 2013)

Log Message

Set up the storage manager as a connection queue
https://bugs.webkit.org/show_bug.cgi?id=108879

Reviewed by Sam Weinig.

* UIProcess/Storage/StorageManager.cpp:
(WebKit::StorageManager::processWillOpenConnection):
Add the storage manager as a connection queue client.

(WebKit::StorageManager::processWillCloseConnection):
Remove the storage manager.

* UIProcess/WebContext.cpp:
(WebKit::WebContext::processWillOpenConnection):
Call the storage manager.

(WebKit::WebContext::processWillCloseConnection):
Call the storage manager.

* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::connectionWillOpen):
Call the context.

(WebKit::WebProcessProxy::connectionWillClose):
Call the context.

(WebKit::WebProcessProxy::didFinishLaunching):
Remove a comment.

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (141833 => 141834)


--- trunk/Source/WebKit2/ChangeLog	2013-02-05 00:54:34 UTC (rev 141833)
+++ trunk/Source/WebKit2/ChangeLog	2013-02-05 01:13:18 UTC (rev 141834)
@@ -1,5 +1,36 @@
 2013-02-04  Anders Carlsson  <[email protected]>
 
+        Set up the storage manager as a connection queue
+        https://bugs.webkit.org/show_bug.cgi?id=108879
+
+        Reviewed by Sam Weinig.
+
+        * UIProcess/Storage/StorageManager.cpp:
+        (WebKit::StorageManager::processWillOpenConnection):
+        Add the storage manager as a connection queue client.
+
+        (WebKit::StorageManager::processWillCloseConnection):
+        Remove the storage manager.
+
+        * UIProcess/WebContext.cpp:
+        (WebKit::WebContext::processWillOpenConnection):
+        Call the storage manager.
+
+        (WebKit::WebContext::processWillCloseConnection):
+        Call the storage manager.
+
+        * UIProcess/WebProcessProxy.cpp:
+        (WebKit::WebProcessProxy::connectionWillOpen):
+        Call the context.
+
+        (WebKit::WebProcessProxy::connectionWillClose):
+        Call the context.
+
+        (WebKit::WebProcessProxy::didFinishLaunching):
+        Remove a comment.
+
+2013-02-04  Anders Carlsson  <[email protected]>
+
         Send message when creating and destroying StorageAreaProxy objects
         https://bugs.webkit.org/show_bug.cgi?id=108874
 

Modified: trunk/Source/WebKit2/UIProcess/Storage/StorageManager.cpp (141833 => 141834)


--- trunk/Source/WebKit2/UIProcess/Storage/StorageManager.cpp	2013-02-05 00:54:34 UTC (rev 141833)
+++ trunk/Source/WebKit2/UIProcess/Storage/StorageManager.cpp	2013-02-05 01:13:18 UTC (rev 141834)
@@ -27,6 +27,7 @@
 #include "StorageManager.h"
 
 #include "StorageManagerMessages.h"
+#include "WebProcessProxy.h"
 #include "WorkQueue.h"
 
 namespace WebKit {
@@ -45,6 +46,16 @@
 {
 }
 
+void StorageManager::processWillOpenConnection(WebProcessProxy* webProcessProxy)
+{
+    webProcessProxy->connection()->addQueueClient(this);
+}
+
+void StorageManager::processWillCloseConnection(WebProcessProxy* webProcessProxy)
+{
+    webProcessProxy->connection()->removeQueueClient(this);
+}
+
 void StorageManager::didReceiveMessageOnConnectionWorkQueue(CoreIPC::Connection* connection, OwnPtr<CoreIPC::MessageDecoder>& decoder)
 {
     if (decoder->messageReceiverName() == Messages::StorageManager::messageReceiverName()) {

Modified: trunk/Source/WebKit2/UIProcess/Storage/StorageManager.h (141833 => 141834)


--- trunk/Source/WebKit2/UIProcess/Storage/StorageManager.h	2013-02-05 00:54:34 UTC (rev 141833)
+++ trunk/Source/WebKit2/UIProcess/Storage/StorageManager.h	2013-02-05 01:13:18 UTC (rev 141834)
@@ -35,12 +35,16 @@
 namespace WebKit {
 
 struct SecurityOriginData;
+class WebProcessProxy;
 
-class StorageManager : public ThreadSafeRefCounted<StorageManager>, public CoreIPC::Connection::QueueClient {
+class StorageManager : public ThreadSafeRefCounted<StorageManager>, private CoreIPC::Connection::QueueClient {
 public:
     static PassRefPtr<StorageManager> create();
     ~StorageManager();
 
+    void processWillOpenConnection(WebProcessProxy*);
+    void processWillCloseConnection(WebProcessProxy*);
+
 private:
     StorageManager();
 

Modified: trunk/Source/WebKit2/UIProcess/WebContext.cpp (141833 => 141834)


--- trunk/Source/WebKit2/UIProcess/WebContext.cpp	2013-02-05 00:54:34 UTC (rev 141833)
+++ trunk/Source/WebKit2/UIProcess/WebContext.cpp	2013-02-05 01:13:18 UTC (rev 141834)
@@ -588,6 +588,16 @@
     return true;
 }
 
+void WebContext::processWillOpenConnection(WebProcessProxy* process)
+{
+    m_storageManager->processWillOpenConnection(process);
+}
+
+void WebContext::processWillCloseConnection(WebProcessProxy* process)
+{
+    m_storageManager->processWillCloseConnection(process);
+}
+
 void WebContext::processDidFinishLaunching(WebProcessProxy* process)
 {
     ASSERT(m_processes.contains(process));

Modified: trunk/Source/WebKit2/UIProcess/WebContext.h (141833 => 141834)


--- trunk/Source/WebKit2/UIProcess/WebContext.h	2013-02-05 00:54:34 UTC (rev 141833)
+++ trunk/Source/WebKit2/UIProcess/WebContext.h	2013-02-05 01:13:18 UTC (rev 141834)
@@ -132,7 +132,9 @@
     // Sends the message to WebProcess or NetworkProcess as approporiate for current process model.
     template<typename U> void sendToNetworkingProcess(const U& message);
     template<typename U> void sendToNetworkingProcessRelaunchingIfNecessary(const U& message);
-    
+
+    void processWillOpenConnection(WebProcessProxy*);
+    void processWillCloseConnection(WebProcessProxy*);
     void processDidFinishLaunching(WebProcessProxy*);
 
     // Disconnect the process from the context.

Modified: trunk/Source/WebKit2/UIProcess/WebProcessProxy.cpp (141833 => 141834)


--- trunk/Source/WebKit2/UIProcess/WebProcessProxy.cpp	2013-02-05 00:54:34 UTC (rev 141833)
+++ trunk/Source/WebKit2/UIProcess/WebProcessProxy.cpp	2013-02-05 01:13:18 UTC (rev 141834)
@@ -129,11 +129,17 @@
 
 void WebProcessProxy::connectionWillOpen(CoreIPC::Connection* connection)
 {
+    ASSERT(this->connection() == connection);
+
+    m_context->processWillOpenConnection(this);
     connection->addQueueClient(this);
 }
 
 void WebProcessProxy::connectionWillClose(CoreIPC::Connection* connection)
 {
+    ASSERT(this->connection() == connection);
+
+    m_context->processWillCloseConnection(this);
     connection->removeQueueClient(this);
 }
 
@@ -531,7 +537,6 @@
 
     m_webConnection = WebConnectionToWebProcess::create(this);
 
-    // Tell the context that we finished launching.
     m_context->processDidFinishLaunching(this);
 
 #if PLATFORM(MAC)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to