Title: [177157] trunk/Source/WebKit
Revision
177157
Author
[email protected]
Date
2014-12-11 10:15:36 -0800 (Thu, 11 Dec 2014)

Log Message

Replicate a bunch of PageGroup functions in WebStorageNamespaceProvider
https://bugs.webkit.org/show_bug.cgi?id=139544

Reviewed by Antti Koivisto.

This code is currently unused but will be called by StorageTracker once that class has been
moved from WebCore to WebKit.

* Storage/WebStorageNamespaceProvider.cpp:
(WebStorageNamespaceProvider::clearLocalStorageForAllOrigins):
(WebStorageNamespaceProvider::clearLocalStorageForOrigin):
(WebStorageNamespaceProvider::closeIdleLocalStorageDatabases):
(WebStorageNamespaceProvider::syncLocalStorage):
* Storage/WebStorageNamespaceProvider.h:

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (177156 => 177157)


--- trunk/Source/WebKit/ChangeLog	2014-12-11 18:02:53 UTC (rev 177156)
+++ trunk/Source/WebKit/ChangeLog	2014-12-11 18:15:36 UTC (rev 177157)
@@ -1,3 +1,20 @@
+2014-12-11  Anders Carlsson  <[email protected]>
+
+        Replicate a bunch of PageGroup functions in WebStorageNamespaceProvider
+        https://bugs.webkit.org/show_bug.cgi?id=139544
+
+        Reviewed by Antti Koivisto.
+
+        This code is currently unused but will be called by StorageTracker once that class has been
+        moved from WebCore to WebKit.
+
+        * Storage/WebStorageNamespaceProvider.cpp:
+        (WebStorageNamespaceProvider::clearLocalStorageForAllOrigins):
+        (WebStorageNamespaceProvider::clearLocalStorageForOrigin):
+        (WebStorageNamespaceProvider::closeIdleLocalStorageDatabases):
+        (WebStorageNamespaceProvider::syncLocalStorage):
+        * Storage/WebStorageNamespaceProvider.h:
+
 2014-12-10  Beth Dakin  <[email protected]>
 
         WK1: Add initial support for immediate actions

Modified: trunk/Source/WebKit/Storage/WebStorageNamespaceProvider.cpp (177156 => 177157)


--- trunk/Source/WebKit/Storage/WebStorageNamespaceProvider.cpp	2014-12-11 18:02:53 UTC (rev 177156)
+++ trunk/Source/WebKit/Storage/WebStorageNamespaceProvider.cpp	2014-12-11 18:15:36 UTC (rev 177157)
@@ -62,6 +62,38 @@
     }
 }
 
+void WebStorageNamespaceProvider::clearLocalStorageForAllOrigins()
+{
+    for (const auto& storageNamespaceProvider : storageNamespaceProviders()) {
+        if (auto* localStorageNamespace = storageNamespaceProvider->optionalLocalStorageNamespace())
+            localStorageNamespace->clearAllOriginsForDeletion();
+    }
+}
+
+void WebStorageNamespaceProvider::clearLocalStorageForOrigin(SecurityOrigin* origin)
+{
+    for (const auto& storageNamespaceProvider : storageNamespaceProviders()) {
+        if (auto* localStorageNamespace = storageNamespaceProvider->optionalLocalStorageNamespace())
+            localStorageNamespace->clearOriginForDeletion(origin);
+    }
+}
+
+void WebStorageNamespaceProvider::closeIdleLocalStorageDatabases()
+{
+    for (const auto& storageNamespaceProvider : storageNamespaceProviders()) {
+        if (auto* localStorageNamespace = storageNamespaceProvider->optionalLocalStorageNamespace())
+            localStorageNamespace->closeIdleLocalStorageDatabases();
+    }
+}
+
+void WebStorageNamespaceProvider::syncLocalStorage()
+{
+    for (const auto& storageNamespaceProvider : storageNamespaceProviders()) {
+        if (auto* localStorageNamespace = storageNamespaceProvider->optionalLocalStorageNamespace())
+            localStorageNamespace->sync();
+    }
+}
+
 RefPtr<StorageNamespace> WebStorageNamespaceProvider::createSessionStorageNamespace(Page&, unsigned quota)
 {
     return StorageNamespaceImpl::createSessionStorageNamespace(quota);

Modified: trunk/Source/WebKit/Storage/WebStorageNamespaceProvider.h (177156 => 177157)


--- trunk/Source/WebKit/Storage/WebStorageNamespaceProvider.h	2014-12-11 18:02:53 UTC (rev 177156)
+++ trunk/Source/WebKit/Storage/WebStorageNamespaceProvider.h	2014-12-11 18:15:36 UTC (rev 177157)
@@ -35,6 +35,12 @@
 
     static void closeLocalStorage();
 
+    static void clearLocalStorageForAllOrigins();
+    static void clearLocalStorageForOrigin(SecurityOrigin*);
+    static void closeIdleLocalStorageDatabases();
+    // DumpRenderTree helper that triggers a StorageArea sync.
+    static void syncLocalStorage();
+
 private:
     explicit WebStorageNamespaceProvider(const String& localStorageDatabasePath);
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to