Chromium Code Reviews| Index: content/browser/in_process_webkit/indexed_db_callbacks.cc |
| diff --git a/content/browser/in_process_webkit/indexed_db_callbacks.cc b/content/browser/in_process_webkit/indexed_db_callbacks.cc |
| index 4f7fe94f38e506c3441c08c717342e8cfa9f0d1d..1d7f93126bd358a09ad95c54eb0107a51715755b 100644 |
| --- a/content/browser/in_process_webkit/indexed_db_callbacks.cc |
| +++ b/content/browser/in_process_webkit/indexed_db_callbacks.cc |
| @@ -7,6 +7,7 @@ |
| #include <vector> |
| #include "content/common/indexed_db/indexed_db_messages.h" |
| +#include "third_party/WebKit/Source/WebKit/chromium/public/WebSerializedScriptValue.h" |
|
jsbell
2013/02/20 23:52:08
Odd to see this line added. Temporary?
alecflett
2013/02/21 00:14:16
I believe this is because we're removing reference
|
| #include "webkit/quota/quota_manager.h" |
| namespace content { |
| @@ -93,13 +94,30 @@ void IndexedDBCallbacks<WebKit::WebIDBCursor>::onSuccess( |
| const WebKit::WebIDBKey& primaryKey, |
| const WebKit::WebSerializedScriptValue& value) { |
| int32 ipc_object_id = dispatcher_host()->Add(idb_cursor); |
| - IndexedDBMsg_CallbacksSuccessIDBCursor_Params params; |
| + IndexedDBMsg_CallbacksSuccessIDBCursorOld_Params params; |
| params.ipc_thread_id = ipc_thread_id(); |
| params.ipc_response_id = ipc_response_id(); |
| params.ipc_cursor_id = ipc_object_id; |
| params.key = IndexedDBKey(key); |
| params.primary_key = IndexedDBKey(primaryKey); |
| params.serialized_value = SerializedScriptValue(value); |
| + dispatcher_host()->Send( |
| + new IndexedDBMsg_CallbacksSuccessIDBCursorOld(params)); |
| +} |
| + |
| +void IndexedDBCallbacks<WebKit::WebIDBCursor>::onSuccess( |
| + WebKit::WebIDBCursor* idb_cursor, |
| + const WebKit::WebIDBKey& key, |
| + const WebKit::WebIDBKey& primaryKey, |
| + const WebKit::WebData& value) { |
| + int32 ipc_object_id = dispatcher_host()->Add(idb_cursor); |
| + IndexedDBMsg_CallbacksSuccessIDBCursor_Params params; |
| + params.ipc_thread_id = ipc_thread_id(); |
| + params.ipc_response_id = ipc_response_id(); |
| + params.ipc_cursor_id = ipc_object_id; |
| + params.key = IndexedDBKey(key); |
| + params.primary_key = IndexedDBKey(primaryKey); |
| + params.value.assign(value.data(), value.data() + value.size()); |
| dispatcher_host()->Send(new IndexedDBMsg_CallbacksSuccessIDBCursor(params)); |
| } |
| @@ -111,6 +129,14 @@ void IndexedDBCallbacks<WebKit::WebIDBCursor>::onSuccess( |
| } |
| void IndexedDBCallbacks<WebKit::WebIDBCursor>::onSuccess( |
| + const WebKit::WebData& webValue) { |
| + std::vector<char> value(webValue.data(), webValue.data() + webValue.size()); |
| + dispatcher_host()->Send( |
| + new IndexedDBMsg_CallbacksSuccessValue( |
| + ipc_thread_id(), ipc_response_id(), value)); |
| +} |
| + |
| +void IndexedDBCallbacks<WebKit::WebIDBCursor>::onSuccess( |
| const WebKit::WebIDBKey& key, |
| const WebKit::WebIDBKey& primaryKey, |
| const WebKit::WebSerializedScriptValue& value) { |
| @@ -121,7 +147,7 @@ void IndexedDBCallbacks<WebKit::WebIDBCursor>::onSuccess( |
| DCHECK(idb_cursor); |
| if (!idb_cursor) |
| return; |
| - IndexedDBMsg_CallbacksSuccessCursorContinue_Params params; |
| + IndexedDBMsg_CallbacksSuccessCursorContinueOld_Params params; |
| params.ipc_thread_id = ipc_thread_id(); |
| params.ipc_response_id = ipc_response_id(); |
| params.ipc_cursor_id = ipc_cursor_id_; |
| @@ -129,6 +155,28 @@ void IndexedDBCallbacks<WebKit::WebIDBCursor>::onSuccess( |
| params.primary_key = IndexedDBKey(primaryKey); |
| params.serialized_value = SerializedScriptValue(value); |
| dispatcher_host()->Send( |
| + new IndexedDBMsg_CallbacksSuccessCursorContinueOld(params)); |
| +} |
| + |
| +void IndexedDBCallbacks<WebKit::WebIDBCursor>::onSuccess( |
| + const WebKit::WebIDBKey& key, |
| + const WebKit::WebIDBKey& primaryKey, |
| + const WebKit::WebData& value) { |
| + DCHECK_NE(ipc_cursor_id_, -1); |
| + WebKit::WebIDBCursor* idb_cursor = dispatcher_host()->GetCursorFromId( |
| + ipc_cursor_id_); |
| + |
| + DCHECK(idb_cursor); |
| + if (!idb_cursor) |
| + return; |
| + IndexedDBMsg_CallbacksSuccessCursorContinue_Params params; |
| + params.ipc_thread_id = ipc_thread_id(); |
| + params.ipc_response_id = ipc_response_id(); |
| + params.ipc_cursor_id = ipc_cursor_id_; |
| + params.key = IndexedDBKey(key); |
| + params.primary_key = IndexedDBKey(primaryKey); |
| + params.value.assign(value.data(), value.data() + value.size()); |
| + dispatcher_host()->Send( |
| new IndexedDBMsg_CallbacksSuccessCursorContinue(params)); |
| } |
| @@ -148,6 +196,35 @@ void IndexedDBCallbacks<WebKit::WebIDBCursor>::onSuccessWithPrefetch( |
| msgValues.push_back(SerializedScriptValue(values[i])); |
| } |
| + IndexedDBMsg_CallbacksSuccessCursorPrefetchOld_Params params; |
| + params.ipc_thread_id = ipc_thread_id(); |
| + params.ipc_response_id = ipc_response_id(); |
| + params.ipc_cursor_id = ipc_cursor_id_; |
| + params.keys = msgKeys; |
| + params.primary_keys = msgPrimaryKeys; |
| + params.values = msgValues; |
| + dispatcher_host()->Send( |
| + new IndexedDBMsg_CallbacksSuccessCursorPrefetchOld(params)); |
| +} |
| + |
| +void IndexedDBCallbacks<WebKit::WebIDBCursor>::onSuccessWithPrefetch( |
| + const WebKit::WebVector<WebKit::WebIDBKey>& keys, |
| + const WebKit::WebVector<WebKit::WebIDBKey>& primaryKeys, |
| + const WebKit::WebVector<WebKit::WebData>& values) { |
| + DCHECK_NE(ipc_cursor_id_, -1); |
| + |
| + std::vector<IndexedDBKey> msgKeys; |
| + std::vector<IndexedDBKey> msgPrimaryKeys; |
| + std::vector<std::vector<char> > msgValues; |
| + |
| + for (size_t i = 0; i < keys.size(); ++i) { |
| + msgKeys.push_back(IndexedDBKey(keys[i])); |
| + msgPrimaryKeys.push_back(IndexedDBKey(primaryKeys[i])); |
| + msgValues.push_back( |
| + std::vector<char>(values[i].data(), |
| + values[i].data() + values[i].size())); |
| + } |
| + |
| IndexedDBMsg_CallbacksSuccessCursorPrefetch_Params params; |
| params.ipc_thread_id = ipc_thread_id(); |
| params.ipc_response_id = ipc_response_id(); |
| @@ -185,6 +262,14 @@ void IndexedDBCallbacks<WebKit::WebSerializedScriptValue>::onSuccess( |
| ipc_thread_id(), ipc_response_id(), SerializedScriptValue(value))); |
| } |
| +void IndexedDBCallbacks<WebKit::WebData>::onSuccess( |
| + const WebKit::WebData& value) { |
| + dispatcher_host()->Send( |
| + new IndexedDBMsg_CallbacksSuccessValue( |
| + ipc_thread_id(), ipc_response_id(), |
| + std::vector<char>(value.data(), value.data() + value.size()))); |
| +} |
| + |
| void IndexedDBCallbacks<WebKit::WebSerializedScriptValue>::onSuccess( |
| const WebKit::WebSerializedScriptValue& value, |
| const WebKit::WebIDBKey& primaryKey, |
| @@ -195,6 +280,17 @@ void IndexedDBCallbacks<WebKit::WebSerializedScriptValue>::onSuccess( |
| IndexedDBKey(primaryKey), IndexedDBKeyPath(keyPath))); |
| } |
| +void IndexedDBCallbacks<WebKit::WebData>::onSuccess( |
| + const WebKit::WebData& value, |
| + const WebKit::WebIDBKey& primaryKey, |
| + const WebKit::WebIDBKeyPath& keyPath) { |
| + dispatcher_host()->Send( |
| + new IndexedDBMsg_CallbacksSuccessValueWithKey( |
| + ipc_thread_id(), ipc_response_id(), |
| + std::vector<char>(value.data(), value.data() + value.size()), |
| + IndexedDBKey(primaryKey), IndexedDBKeyPath(keyPath))); |
| +} |
| + |
| void IndexedDBCallbacks<WebKit::WebSerializedScriptValue>::onSuccess( |
| long long value) { |
| dispatcher_host()->Send( |
| @@ -203,12 +299,26 @@ void IndexedDBCallbacks<WebKit::WebSerializedScriptValue>::onSuccess( |
| value)); |
| } |
| +void IndexedDBCallbacks<WebKit::WebData>::onSuccess( |
| + long long value) { |
| + dispatcher_host()->Send( |
| + new IndexedDBMsg_CallbacksSuccessInteger(ipc_thread_id(), |
| + ipc_response_id(), |
| + value)); |
| +} |
| + |
| void IndexedDBCallbacks<WebKit::WebSerializedScriptValue>::onSuccess() { |
| dispatcher_host()->Send( |
| new IndexedDBMsg_CallbacksSuccessUndefined(ipc_thread_id(), |
| ipc_response_id())); |
| } |
| +void IndexedDBCallbacks<WebKit::WebData>::onSuccess() { |
| + dispatcher_host()->Send( |
| + new IndexedDBMsg_CallbacksSuccessUndefined(ipc_thread_id(), |
| + ipc_response_id())); |
| +} |
| + |
| void IndexedDBCallbacks<WebKit::WebSerializedScriptValue>::onSuccess( |
| const WebKit::WebIDBKey& value) { |
| dispatcher_host()->Send( |
| @@ -216,4 +326,11 @@ void IndexedDBCallbacks<WebKit::WebSerializedScriptValue>::onSuccess( |
| ipc_thread_id(), ipc_response_id(), IndexedDBKey(value))); |
| } |
| +void IndexedDBCallbacks<WebKit::WebData>::onSuccess( |
| + const WebKit::WebIDBKey& value) { |
| + dispatcher_host()->Send( |
| + new IndexedDBMsg_CallbacksSuccessIndexedDBKey( |
| + ipc_thread_id(), ipc_response_id(), IndexedDBKey(value))); |
| +} |
| + |
| } // namespace content |