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

Unified Diff: content/browser/indexed_db/indexed_db_factory.h

Issue 203833003: Add the IndexedDBActiveBlobRegistry, currently unused, to enable future blob (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: clang fixes Created 6 years, 9 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/indexed_db/indexed_db_factory.h
diff --git a/content/browser/indexed_db/indexed_db_factory.h b/content/browser/indexed_db/indexed_db_factory.h
index af2ba5427fdc672f22ff4eadbbd269703942f2eb..9b4a90e57ca242e8d34757103219c652bfb96cf6 100644
--- a/content/browser/indexed_db/indexed_db_factory.h
+++ b/content/browser/indexed_db/indexed_db_factory.h
@@ -18,6 +18,10 @@
#include "content/common/content_export.h"
#include "url/gurl.h"
+namespace base {
+class TaskRunner;
+}
+
namespace content {
class IndexedDBBackingStore;
@@ -38,16 +42,19 @@ class CONTENT_EXPORT IndexedDBFactory
void GetDatabaseNames(scoped_refptr<IndexedDBCallbacks> callbacks,
const GURL& origin_url,
- const base::FilePath& data_directory);
+ const base::FilePath& data_directory,
+ base::TaskRunner* task_runner);
void Open(const base::string16& name,
const IndexedDBPendingConnection& connection,
const GURL& origin_url,
- const base::FilePath& data_directory);
+ const base::FilePath& data_directory,
+ base::TaskRunner* task_runner);
void DeleteDatabase(const base::string16& name,
scoped_refptr<IndexedDBCallbacks> callbacks,
const GURL& origin_url,
- const base::FilePath& data_directory);
+ const base::FilePath& data_directory,
+ base::TaskRunner* task_runner);
void HandleBackingStoreFailure(const GURL& origin_url);
@@ -61,6 +68,10 @@ class CONTENT_EXPORT IndexedDBFactory
// Called by the IndexedDBContext destructor so the factory can do cleanup.
void ContextDestroyed();
+ // Called by the IndexedDBActiveBlobRegistry.
+ virtual void ReportOutstandingBlobs(const GURL& origin_url,
+ bool blobs_outstanding);
+
// Called by an IndexedDBDatabase when it is actually deleted.
void DatabaseDeleted(const IndexedDBDatabase::Identifier& identifier);
@@ -76,7 +87,8 @@ class CONTENT_EXPORT IndexedDBFactory
const base::FilePath& data_directory,
blink::WebIDBDataLoss* data_loss,
std::string* data_loss_reason,
- bool* disk_full);
+ bool* disk_full,
+ base::TaskRunner* task_runner);
void ReleaseBackingStore(const GURL& origin_url, bool immediate);
void CloseBackingStore(const GURL& origin_url);
@@ -120,6 +132,7 @@ class CONTENT_EXPORT IndexedDBFactory
IndexedDBBackingStoreMap backing_store_map_;
std::set<scoped_refptr<IndexedDBBackingStore> > session_only_backing_stores_;
+ IndexedDBBackingStoreMap backing_stores_with_active_blobs_;
};
} // namespace content

Powered by Google App Engine
This is Rietveld 408576698