Index: content/renderer/indexed_db_dispatcher.h |
diff --git a/content/renderer/indexed_db_dispatcher.h b/content/renderer/indexed_db_dispatcher.h |
index e30fa95df5003552bab12d521b3746b69229568f..53a2f1801fc95e9443ec680f092fbb29e1899525 100644 |
--- a/content/renderer/indexed_db_dispatcher.h |
+++ b/content/renderer/indexed_db_dispatcher.h |
@@ -14,6 +14,7 @@ |
#include "third_party/WebKit/Source/WebKit/chromium/public/WebIDBDatabase.h" |
#include "third_party/WebKit/Source/WebKit/chromium/public/WebIDBObjectStore.h" |
#include "third_party/WebKit/Source/WebKit/chromium/public/WebIDBTransactionCallbacks.h" |
+#include <map> |
class IndexedDBKey; |
@@ -153,6 +154,11 @@ class IndexedDBDispatcher : public IPC::Channel::Listener { |
static int32 TransactionId(const WebKit::WebIDBTransaction& transaction); |
+ IndexedDBKey getCursorKey(int32 cursor_id); |
+ IndexedDBKey getCursorPrimaryKey(int32 cursor_id); |
+ content::SerializedScriptValue getCursorValue(int32 cursor_id); |
+ void CursorDestroyed(int32 cursor_id); |
+ |
private: |
// IDBCallback message handlers. |
void OnSuccessNull(int32 response_id); |
@@ -163,6 +169,10 @@ class IndexedDBDispatcher : public IPC::Channel::Listener { |
const IndexedDBKey& key, |
const IndexedDBKey& primary_key, |
const content::SerializedScriptValue& value); |
+ void OnSuccessCursorContinue(int32 response_id, |
+ const IndexedDBKey& key, |
+ const IndexedDBKey& primary_key, |
+ const content::SerializedScriptValue& value); |
void OnSuccessStringList(int32 response_id, |
const std::vector<string16>& value); |
void OnSuccessSerializedScriptValue( |
@@ -182,6 +192,14 @@ class IndexedDBDispatcher : public IPC::Channel::Listener { |
IDMap<WebKit::WebIDBDatabaseCallbacks, IDMapOwnPointer> |
pending_database_callbacks_; |
+ // Map from response id to cursor id. |
+ std::map<int32,int32> pending_cursor_continues_; |
+ |
+ // FIXME: Double check these are only used on WebKit thread. |
dgrogan
2011/10/29 00:54:28
You could use IDMap and AddWithID. IDMap ensures
hans
2011/10/31 16:11:52
OK, thanks.
|
+ std::map<int32, IndexedDBKey> cursor_key_; // Map from cursor id to key. |
+ std::map<int32, IndexedDBKey> cursor_primary_key_; |
+ std::map<int32, content::SerializedScriptValue> cursor_value_; |
+ |
DISALLOW_COPY_AND_ASSIGN(IndexedDBDispatcher); |
}; |