Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1322)

Unified Diff: content/browser/in_process_webkit/dom_storage_namespace.h

Issue 8929007: Restore sessionStorage when chrome restarts. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Code review. Created 8 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/in_process_webkit/dom_storage_namespace.h
diff --git a/content/browser/in_process_webkit/dom_storage_namespace.h b/content/browser/in_process_webkit/dom_storage_namespace.h
index 343d73750f36bd089d59a7788adbc6fa1c594053..e6ac67b2e25f0827a7ed0b9216e3d0c57c4e1903 100644
--- a/content/browser/in_process_webkit/dom_storage_namespace.h
+++ b/content/browser/in_process_webkit/dom_storage_namespace.h
@@ -6,6 +6,7 @@
#define CONTENT_BROWSER_IN_PROCESS_WEBKIT_DOM_STORAGE_NAMESPACE_H_
#pragma once
+#include "base/file_path.h"
#include "base/hash_tables.h"
#include "base/memory/scoped_ptr.h"
#include "base/string16.h"
@@ -27,7 +28,8 @@ class DOMStorageNamespace {
static DOMStorageNamespace* CreateLocalStorageNamespace(
DOMStorageContext* dom_storage_context, const FilePath& data_dir_path);
static DOMStorageNamespace* CreateSessionStorageNamespace(
- DOMStorageContext* dom_storage_context, int64 namespace_id);
+ DOMStorageContext* dom_storage_context, const FilePath& data_dir_path,
+ int64 namespace_id);
~DOMStorageNamespace();
@@ -42,6 +44,9 @@ class DOMStorageNamespace {
int64 id() const { return id_; }
const WebKit::WebString& data_dir_path() const { return data_dir_path_; }
DOMStorageType dom_storage_type() const { return dom_storage_type_; }
+ FilePath session_storage_directory() const {
+ return session_storage_directory_;
+ }
// Creates a WebStorageArea for the given origin. This should only be called
// by an owned DOMStorageArea.
@@ -51,6 +56,7 @@ class DOMStorageNamespace {
// Called by the static factory methods above.
DOMStorageNamespace(DOMStorageContext* dom_storage_context,
int64 id,
+ const FilePath& session_storage_directory,
const WebKit::WebString& data_dir_path,
DOMStorageType storage_type);
@@ -70,6 +76,10 @@ class DOMStorageNamespace {
// Our id. Unique to our parent WebKitContext class.
int64 id_;
+ // Identifies the directory where the sessionStorage databases reside. Empty
+ // for localStorage.
+ FilePath session_storage_directory_;
+
// The path used to create us, so we can recreate our WebStorageNamespace on
// demand.
WebKit::WebString data_dir_path_;
@@ -80,4 +90,13 @@ class DOMStorageNamespace {
DISALLOW_IMPLICIT_CONSTRUCTORS(DOMStorageNamespace);
};
+struct SessionStorageCreatedDetails {
+ int64 id;
+ FilePath session_storage_directory;
+ SessionStorageCreatedDetails();
+ SessionStorageCreatedDetails(int64 id,
+ const FilePath& session_storage_directory);
+ ~SessionStorageCreatedDetails();
+};
+
#endif // CONTENT_BROWSER_IN_PROCESS_WEBKIT_DOM_STORAGE_NAMESPACE_H_

Powered by Google App Engine
This is Rietveld 408576698