Use "= default" to denote default constructor or destructor
[WebKit-https.git] / Source / WebCore / storage / StorageNamespace.h
index cb5df85..409a433 100644 (file)
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#ifndef StorageNamespace_h
-#define StorageNamespace_h
+#pragma once
 
-#if ENABLE(DOM_STORAGE)
-
-#include "PlatformString.h"
-
-#include <wtf/PassRefPtr.h>
+#include <wtf/Forward.h>
 #include <wtf/RefCounted.h>
 
 namespace WebCore {
 
 class Page;
-class SecurityOrigin;
 class StorageArea;
+struct SecurityOriginData;
 
-// This interface is required for Chromium since these actions need to be proxied between processes.
 class StorageNamespace : public RefCounted<StorageNamespace> {
 public:
-    static PassRefPtr<StorageNamespace> localStorageNamespace(const String& path, unsigned quota);
-    static PassRefPtr<StorageNamespace> sessionStorageNamespace(Page*, unsigned quota);
-
-    virtual ~StorageNamespace() { }
-    virtual PassRefPtr<StorageArea> storageArea(PassRefPtr<SecurityOrigin>) = 0;
-    virtual PassRefPtr<StorageNamespace> copy() = 0;
-    virtual void close() = 0;
-    virtual void unlock() = 0;
-    virtual void clearOriginForDeletion(SecurityOrigin*) = 0;
-    virtual void clearAllOriginsForDeletion() = 0;
-    virtual void sync() = 0;
+    virtual ~StorageNamespace() = default;
+    virtual RefPtr<StorageArea> storageArea(const SecurityOriginData&) = 0;
+    virtual RefPtr<StorageNamespace> copy(Page* newPage) = 0;
 };
 
 } // namespace WebCore
-
-#endif // ENABLE(DOM_STORAGE)
-
-#endif // StorageNamespace_h