| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "content/browser/in_process_webkit/indexed_db_callbacks.h" | 5 #include "content/browser/in_process_webkit/indexed_db_callbacks.h" |
| 6 | 6 |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "content/browser/indexed_db/webidbdatabase_impl.h" |
| 9 #include "content/common/indexed_db/indexed_db_messages.h" | 10 #include "content/common/indexed_db/indexed_db_messages.h" |
| 10 #include "webkit/browser/quota/quota_manager.h" | 11 #include "webkit/browser/quota/quota_manager.h" |
| 11 | 12 |
| 13 using WebKit::WebData; |
| 14 using WebKit::WebString; |
| 15 using WebKit::WebVector; |
| 16 |
| 12 namespace content { | 17 namespace content { |
| 13 | 18 |
| 14 namespace { | 19 namespace { |
| 15 const int32 kDatabaseNotAdded = -1; | 20 const int32 kDatabaseNotAdded = -1; |
| 16 } | 21 } |
| 17 | 22 |
| 18 IndexedDBCallbacksBase::IndexedDBCallbacksBase( | 23 IndexedDBCallbacksBase::IndexedDBCallbacksBase( |
| 19 IndexedDBDispatcherHost* dispatcher_host, | 24 IndexedDBDispatcherHost* dispatcher_host, |
| 20 int32 ipc_thread_id, | 25 int32 ipc_thread_id, |
| 21 int32 ipc_callbacks_id) | 26 int32 ipc_callbacks_id) |
| 22 : dispatcher_host_(dispatcher_host), | 27 : dispatcher_host_(dispatcher_host), |
| 23 ipc_callbacks_id_(ipc_callbacks_id), | 28 ipc_callbacks_id_(ipc_callbacks_id), |
| 24 ipc_thread_id_(ipc_thread_id) { | 29 ipc_thread_id_(ipc_thread_id) {} |
| 25 } | |
| 26 | 30 |
| 27 IndexedDBCallbacksBase::~IndexedDBCallbacksBase() {} | 31 IndexedDBCallbacksBase::~IndexedDBCallbacksBase() {} |
| 28 | 32 |
| 29 void IndexedDBCallbacksBase::onError(const WebKit::WebIDBDatabaseError& error) { | 33 void IndexedDBCallbacksBase::onError(const WebKit::WebIDBDatabaseError& error) { |
| 30 dispatcher_host_->Send(new IndexedDBMsg_CallbacksError( | 34 dispatcher_host_->Send(new IndexedDBMsg_CallbacksError( |
| 31 ipc_thread_id_, ipc_callbacks_id_, error.code(), error.message())); | 35 ipc_thread_id_, ipc_callbacks_id_, error.code(), error.message())); |
| 32 } | 36 } |
| 33 | 37 |
| 34 void IndexedDBCallbacksBase::onBlocked(long long old_version) { | 38 void IndexedDBCallbacksBase::onBlocked(long long old_version) { |
| 35 dispatcher_host_->Send(new IndexedDBMsg_CallbacksIntBlocked( | 39 dispatcher_host_->Send(new IndexedDBMsg_CallbacksIntBlocked( |
| 36 ipc_thread_id_, ipc_callbacks_id_, old_version)); | 40 ipc_thread_id_, ipc_callbacks_id_, old_version)); |
| 37 } | 41 } |
| 38 | 42 |
| 43 void IndexedDBCallbacksBase::onSuccess( |
| 44 const WebVector<WebString>& value) { |
| 45 NOTREACHED(); |
| 46 } |
| 47 |
| 48 void IndexedDBCallbacksBase::onSuccess(WebIDBDatabaseImpl* idb_object, |
| 49 const WebKit::WebIDBMetadata& metadata) { |
| 50 NOTREACHED(); |
| 51 } |
| 52 |
| 53 void IndexedDBCallbacksBase::onUpgradeNeeded(long long old_version, |
| 54 WebIDBDatabaseImpl* database, |
| 55 const WebKit::WebIDBMetadata&) { |
| 56 NOTREACHED(); |
| 57 } |
| 58 |
| 59 void IndexedDBCallbacksBase::onSuccess(WebIDBCursorImpl* idb_object, |
| 60 const WebKit::WebIDBKey& key, |
| 61 const WebKit::WebIDBKey& primaryKey, |
| 62 const WebData& value) { |
| 63 NOTREACHED(); |
| 64 } |
| 65 |
| 66 void IndexedDBCallbacksBase::onSuccess(const WebKit::WebIDBKey& key, |
| 67 const WebKit::WebIDBKey& primaryKey, |
| 68 const WebData& value) { |
| 69 NOTREACHED(); |
| 70 } |
| 71 |
| 72 void IndexedDBCallbacksBase::onSuccess(const WebData& value) { |
| 73 NOTREACHED(); |
| 74 } |
| 75 |
| 76 void IndexedDBCallbacksBase::onSuccessWithPrefetch( |
| 77 const WebVector<WebKit::WebIDBKey>& keys, |
| 78 const WebVector<WebKit::WebIDBKey>& primaryKeys, |
| 79 const WebVector<WebData>& values) { |
| 80 NOTREACHED(); |
| 81 } |
| 82 |
| 83 void IndexedDBCallbacksBase::onSuccess(const WebKit::WebIDBKey& value) { |
| 84 NOTREACHED(); |
| 85 } |
| 86 |
| 87 void IndexedDBCallbacksBase::onSuccess(const WebData& value, |
| 88 const WebKit::WebIDBKey& key, |
| 89 const WebKit::WebIDBKeyPath& keyPath) { |
| 90 NOTREACHED(); |
| 91 } |
| 92 |
| 93 void IndexedDBCallbacksBase::onSuccess(long long value) { NOTREACHED(); } |
| 94 |
| 95 void IndexedDBCallbacksBase::onSuccess() { NOTREACHED(); } |
| 96 |
| 39 IndexedDBCallbacksDatabase::IndexedDBCallbacksDatabase( | 97 IndexedDBCallbacksDatabase::IndexedDBCallbacksDatabase( |
| 40 IndexedDBDispatcherHost* dispatcher_host, | 98 IndexedDBDispatcherHost* dispatcher_host, |
| 41 int32 ipc_thread_id, | 99 int32 ipc_thread_id, |
| 42 int32 ipc_callbacks_id, | 100 int32 ipc_callbacks_id, |
| 43 int32 ipc_database_callbacks_id, | 101 int32 ipc_database_callbacks_id, |
| 44 int64 host_transaction_id, | 102 int64 host_transaction_id, |
| 45 const GURL& origin_url) | 103 const GURL& origin_url) |
| 46 : IndexedDBCallbacksBase(dispatcher_host, ipc_thread_id, ipc_callbacks_id), | 104 : IndexedDBCallbacksBase(dispatcher_host, ipc_thread_id, ipc_callbacks_id), |
| 47 host_transaction_id_(host_transaction_id), | 105 host_transaction_id_(host_transaction_id), |
| 48 origin_url_(origin_url), | 106 origin_url_(origin_url), |
| 49 ipc_database_id_(kDatabaseNotAdded), | 107 ipc_database_id_(kDatabaseNotAdded), |
| 50 ipc_database_callbacks_id_(ipc_database_callbacks_id) { | 108 ipc_database_callbacks_id_(ipc_database_callbacks_id) {} |
| 51 } | |
| 52 | 109 |
| 53 void IndexedDBCallbacksDatabase::onSuccess( | 110 void IndexedDBCallbacksDatabase::onSuccess( |
| 54 WebKit::WebIDBDatabase* idb_object, | 111 WebIDBDatabaseImpl* idb_object, |
| 55 const WebKit::WebIDBMetadata& metadata) { | 112 const WebKit::WebIDBMetadata& metadata) { |
| 56 int32 ipc_object_id = ipc_database_id_; | 113 int32 ipc_object_id = ipc_database_id_; |
| 57 if (ipc_object_id == kDatabaseNotAdded) { | 114 if (ipc_object_id == kDatabaseNotAdded) { |
| 58 ipc_object_id = dispatcher_host()->Add(idb_object, ipc_thread_id(), | 115 ipc_object_id = |
| 59 origin_url_); | 116 dispatcher_host()->Add(idb_object, ipc_thread_id(), origin_url_); |
| 60 } else { | 117 } else { |
| 61 // We already have this database and don't need a new copy of it. | 118 // We already have this database and don't need a new copy of it. |
| 62 delete idb_object; | 119 delete idb_object; |
| 63 } | 120 } |
| 64 IndexedDBDatabaseMetadata idb_metadata = | 121 const ::IndexedDBDatabaseMetadata idb_metadata = |
| 65 IndexedDBDispatcherHost::ConvertMetadata(metadata); | 122 IndexedDBDispatcherHost::ConvertMetadata(metadata); |
| 66 | 123 |
| 67 dispatcher_host()->Send( | 124 dispatcher_host()->Send( |
| 68 new IndexedDBMsg_CallbacksSuccessIDBDatabase(ipc_thread_id(), | 125 new IndexedDBMsg_CallbacksSuccessIDBDatabase(ipc_thread_id(), |
| 69 ipc_callbacks_id(), | 126 ipc_callbacks_id(), |
| 70 ipc_database_callbacks_id_, | 127 ipc_database_callbacks_id_, |
| 71 ipc_object_id, | 128 ipc_object_id, |
| 72 idb_metadata)); | 129 idb_metadata)); |
| 73 } | 130 } |
| 74 | 131 |
| 75 void IndexedDBCallbacksDatabase::onUpgradeNeeded( | 132 void IndexedDBCallbacksDatabase::onUpgradeNeeded( |
| 76 long long old_version, | 133 long long old_version, |
| 77 WebKit::WebIDBDatabase* database, | 134 WebIDBDatabaseImpl* database, |
| 78 const WebKit::WebIDBMetadata& metadata) { | 135 const WebKit::WebIDBMetadata& metadata) { |
| 79 dispatcher_host()->RegisterTransactionId(host_transaction_id_, origin_url_); | 136 dispatcher_host()->RegisterTransactionId(host_transaction_id_, origin_url_); |
| 80 int32 ipc_database_id = dispatcher_host()->Add(database, ipc_thread_id(), | 137 int32 ipc_database_id = |
| 81 origin_url_); | 138 dispatcher_host()->Add(database, ipc_thread_id(), origin_url_); |
| 82 ipc_database_id_ = ipc_database_id; | 139 ipc_database_id_ = ipc_database_id; |
| 83 IndexedDBMsg_CallbacksUpgradeNeeded_Params params; | 140 IndexedDBMsg_CallbacksUpgradeNeeded_Params params; |
| 84 params.ipc_thread_id = ipc_thread_id(); | 141 params.ipc_thread_id = ipc_thread_id(); |
| 85 params.ipc_callbacks_id = ipc_callbacks_id(); | 142 params.ipc_callbacks_id = ipc_callbacks_id(); |
| 86 params.ipc_database_id = ipc_database_id; | 143 params.ipc_database_id = ipc_database_id; |
| 87 params.ipc_database_callbacks_id = ipc_database_callbacks_id_; | 144 params.ipc_database_callbacks_id = ipc_database_callbacks_id_; |
| 88 params.old_version = old_version; | 145 params.old_version = old_version; |
| 89 params.idb_metadata = IndexedDBDispatcherHost::ConvertMetadata(metadata); | 146 params.idb_metadata = IndexedDBDispatcherHost::ConvertMetadata(metadata); |
| 90 dispatcher_host()->Send(new IndexedDBMsg_CallbacksUpgradeNeeded(params)); | 147 dispatcher_host()->Send(new IndexedDBMsg_CallbacksUpgradeNeeded(params)); |
| 91 } | 148 } |
| 92 | 149 |
| 93 void IndexedDBCallbacks<WebKit::WebIDBCursor>::onSuccess( | 150 void IndexedDBCallbacks<WebIDBCursorImpl>::onSuccess( |
| 94 WebKit::WebIDBCursor* idb_cursor, | 151 WebIDBCursorImpl* idb_cursor, |
| 95 const WebKit::WebIDBKey& key, | 152 const WebKit::WebIDBKey& key, |
| 96 const WebKit::WebIDBKey& primaryKey, | 153 const WebKit::WebIDBKey& primaryKey, |
| 97 const WebKit::WebData& value) { | 154 const WebData& value) { |
| 98 int32 ipc_object_id = dispatcher_host()->Add(idb_cursor); | 155 int32 ipc_object_id = dispatcher_host()->Add(idb_cursor); |
| 99 IndexedDBMsg_CallbacksSuccessIDBCursor_Params params; | 156 IndexedDBMsg_CallbacksSuccessIDBCursor_Params params; |
| 100 params.ipc_thread_id = ipc_thread_id(); | 157 params.ipc_thread_id = ipc_thread_id(); |
| 101 params.ipc_callbacks_id = ipc_callbacks_id(); | 158 params.ipc_callbacks_id = ipc_callbacks_id(); |
| 102 params.ipc_cursor_id = ipc_object_id; | 159 params.ipc_cursor_id = ipc_object_id; |
| 103 params.key = IndexedDBKey(key); | 160 params.key = IndexedDBKey(key); |
| 104 params.primary_key = IndexedDBKey(primaryKey); | 161 params.primary_key = IndexedDBKey(primaryKey); |
| 105 params.value.assign(value.data(), value.data() + value.size()); | 162 params.value.assign(value.data(), value.data() + value.size()); |
| 106 dispatcher_host()->Send(new IndexedDBMsg_CallbacksSuccessIDBCursor(params)); | 163 dispatcher_host()->Send(new IndexedDBMsg_CallbacksSuccessIDBCursor(params)); |
| 107 } | 164 } |
| 108 | 165 |
| 109 void IndexedDBCallbacks<WebKit::WebIDBCursor>::onSuccess( | 166 void IndexedDBCallbacks<WebIDBCursorImpl>::onSuccess( |
| 110 const WebKit::WebData& webValue) { | 167 const WebData& webValue) { |
| 111 std::vector<char> value(webValue.data(), webValue.data() + webValue.size()); | 168 std::vector<char> value(webValue.data(), webValue.data() + webValue.size()); |
| 112 dispatcher_host()->Send( | 169 dispatcher_host()->Send(new IndexedDBMsg_CallbacksSuccessValue( |
| 113 new IndexedDBMsg_CallbacksSuccessValue( | 170 ipc_thread_id(), ipc_callbacks_id(), value)); |
| 114 ipc_thread_id(), ipc_callbacks_id(), value)); | |
| 115 } | 171 } |
| 116 | 172 |
| 117 void IndexedDBCallbacks<WebKit::WebIDBCursor>::onSuccess( | 173 void IndexedDBCallbacks<WebIDBCursorImpl>::onSuccess( |
| 118 const WebKit::WebIDBKey& key, | 174 const WebKit::WebIDBKey& key, |
| 119 const WebKit::WebIDBKey& primaryKey, | 175 const WebKit::WebIDBKey& primaryKey, |
| 120 const WebKit::WebData& value) { | 176 const WebData& value) { |
| 121 DCHECK_NE(ipc_cursor_id_, -1); | 177 DCHECK_NE(ipc_cursor_id_, -1); |
| 122 WebKit::WebIDBCursor* idb_cursor = dispatcher_host()->GetCursorFromId( | 178 WebIDBCursorImpl* idb_cursor = |
| 123 ipc_cursor_id_); | 179 dispatcher_host()->GetCursorFromId(ipc_cursor_id_); |
| 124 | 180 |
| 125 DCHECK(idb_cursor); | 181 DCHECK(idb_cursor); |
| 126 if (!idb_cursor) | 182 if (!idb_cursor) |
| 127 return; | 183 return; |
| 128 IndexedDBMsg_CallbacksSuccessCursorContinue_Params params; | 184 IndexedDBMsg_CallbacksSuccessCursorContinue_Params params; |
| 129 params.ipc_thread_id = ipc_thread_id(); | 185 params.ipc_thread_id = ipc_thread_id(); |
| 130 params.ipc_callbacks_id = ipc_callbacks_id(); | 186 params.ipc_callbacks_id = ipc_callbacks_id(); |
| 131 params.ipc_cursor_id = ipc_cursor_id_; | 187 params.ipc_cursor_id = ipc_cursor_id_; |
| 132 params.key = IndexedDBKey(key); | 188 params.key = IndexedDBKey(key); |
| 133 params.primary_key = IndexedDBKey(primaryKey); | 189 params.primary_key = IndexedDBKey(primaryKey); |
| 134 params.value.assign(value.data(), value.data() + value.size()); | 190 params.value.assign(value.data(), value.data() + value.size()); |
| 135 dispatcher_host()->Send( | 191 dispatcher_host()->Send( |
| 136 new IndexedDBMsg_CallbacksSuccessCursorContinue(params)); | 192 new IndexedDBMsg_CallbacksSuccessCursorContinue(params)); |
| 137 } | 193 } |
| 138 | 194 |
| 139 void IndexedDBCallbacks<WebKit::WebIDBCursor>::onSuccessWithPrefetch( | 195 void IndexedDBCallbacks<WebIDBCursorImpl>::onSuccessWithPrefetch( |
| 140 const WebKit::WebVector<WebKit::WebIDBKey>& keys, | 196 const WebVector<WebKit::WebIDBKey>& keys, |
| 141 const WebKit::WebVector<WebKit::WebIDBKey>& primaryKeys, | 197 const WebVector<WebKit::WebIDBKey>& primaryKeys, |
| 142 const WebKit::WebVector<WebKit::WebData>& values) { | 198 const WebVector<WebData>& values) { |
| 143 DCHECK_NE(ipc_cursor_id_, -1); | 199 DCHECK_NE(ipc_cursor_id_, -1); |
| 144 | 200 |
| 145 std::vector<IndexedDBKey> msgKeys; | 201 std::vector<IndexedDBKey> msgKeys; |
| 146 std::vector<IndexedDBKey> msgPrimaryKeys; | 202 std::vector<IndexedDBKey> msgPrimaryKeys; |
| 147 std::vector<std::vector<char> > msgValues; | 203 std::vector<std::vector<char> > msgValues; |
| 148 | 204 |
| 149 for (size_t i = 0; i < keys.size(); ++i) { | 205 for (size_t i = 0; i < keys.size(); ++i) { |
| 150 msgKeys.push_back(IndexedDBKey(keys[i])); | 206 msgKeys.push_back(IndexedDBKey(keys[i])); |
| 151 msgPrimaryKeys.push_back(IndexedDBKey(primaryKeys[i])); | 207 msgPrimaryKeys.push_back(IndexedDBKey(primaryKeys[i])); |
| 152 msgValues.push_back( | 208 msgValues.push_back(std::vector<char>(values[i].data(), |
| 153 std::vector<char>(values[i].data(), | 209 values[i].data() + values[i].size())); |
| 154 values[i].data() + values[i].size())); | |
| 155 } | 210 } |
| 156 | 211 |
| 157 IndexedDBMsg_CallbacksSuccessCursorPrefetch_Params params; | 212 IndexedDBMsg_CallbacksSuccessCursorPrefetch_Params params; |
| 158 params.ipc_thread_id = ipc_thread_id(); | 213 params.ipc_thread_id = ipc_thread_id(); |
| 159 params.ipc_callbacks_id = ipc_callbacks_id(); | 214 params.ipc_callbacks_id = ipc_callbacks_id(); |
| 160 params.ipc_cursor_id = ipc_cursor_id_; | 215 params.ipc_cursor_id = ipc_cursor_id_; |
| 161 params.keys = msgKeys; | 216 params.keys = msgKeys; |
| 162 params.primary_keys = msgPrimaryKeys; | 217 params.primary_keys = msgPrimaryKeys; |
| 163 params.values = msgValues; | 218 params.values = msgValues; |
| 164 dispatcher_host()->Send( | 219 dispatcher_host()->Send( |
| 165 new IndexedDBMsg_CallbacksSuccessCursorPrefetch(params)); | 220 new IndexedDBMsg_CallbacksSuccessCursorPrefetch(params)); |
| 166 } | 221 } |
| 167 | 222 |
| 168 void IndexedDBCallbacks<WebKit::WebIDBKey>::onSuccess( | 223 void IndexedDBCallbacks<WebKit::WebIDBKey>::onSuccess( |
| 169 const WebKit::WebIDBKey& value) { | 224 const WebKit::WebIDBKey& value) { |
| 170 dispatcher_host()->Send( | 225 dispatcher_host()->Send(new IndexedDBMsg_CallbacksSuccessIndexedDBKey( |
| 171 new IndexedDBMsg_CallbacksSuccessIndexedDBKey( | 226 ipc_thread_id(), ipc_callbacks_id(), IndexedDBKey(value))); |
| 172 ipc_thread_id(), ipc_callbacks_id(), IndexedDBKey(value))); | |
| 173 } | 227 } |
| 174 | 228 |
| 175 void IndexedDBCallbacks<WebKit::WebVector<WebKit::WebString> >::onSuccess( | 229 void IndexedDBCallbacks<WebVector<WebString> >::onSuccess( |
| 176 const WebKit::WebVector<WebKit::WebString>& value) { | 230 const WebVector<WebString>& value) { |
| 177 | 231 |
| 178 std::vector<string16> list; | 232 std::vector<string16> list; |
| 179 for (unsigned i = 0; i < value.size(); ++i) | 233 for (unsigned i = 0; i < value.size(); ++i) |
| 180 list.push_back(value[i]); | 234 list.push_back(value[i]); |
| 181 | 235 |
| 182 dispatcher_host()->Send( | 236 dispatcher_host()->Send(new IndexedDBMsg_CallbacksSuccessStringList( |
| 183 new IndexedDBMsg_CallbacksSuccessStringList( | 237 ipc_thread_id(), ipc_callbacks_id(), list)); |
| 184 ipc_thread_id(), ipc_callbacks_id(), list)); | |
| 185 } | 238 } |
| 186 | 239 |
| 187 void IndexedDBCallbacks<WebKit::WebData>::onSuccess( | 240 void IndexedDBCallbacks<WebData>::onSuccess( |
| 188 const WebKit::WebData& value) { | 241 const WebData& value) { |
| 189 dispatcher_host()->Send( | 242 dispatcher_host()->Send(new IndexedDBMsg_CallbacksSuccessValue( |
| 190 new IndexedDBMsg_CallbacksSuccessValue( | 243 ipc_thread_id(), |
| 191 ipc_thread_id(), ipc_callbacks_id(), | 244 ipc_callbacks_id(), |
| 192 std::vector<char>(value.data(), value.data() + value.size()))); | 245 std::vector<char>(value.data(), value.data() + value.size()))); |
| 193 } | 246 } |
| 194 | 247 |
| 195 void IndexedDBCallbacks<WebKit::WebData>::onSuccess( | 248 void IndexedDBCallbacks<WebData>::onSuccess( |
| 196 const WebKit::WebData& value, | 249 const WebData& value, |
| 197 const WebKit::WebIDBKey& primaryKey, | 250 const WebKit::WebIDBKey& primaryKey, |
| 198 const WebKit::WebIDBKeyPath& keyPath) { | 251 const WebKit::WebIDBKeyPath& keyPath) { |
| 199 dispatcher_host()->Send( | 252 dispatcher_host()->Send(new IndexedDBMsg_CallbacksSuccessValueWithKey( |
| 200 new IndexedDBMsg_CallbacksSuccessValueWithKey( | 253 ipc_thread_id(), |
| 201 ipc_thread_id(), ipc_callbacks_id(), | 254 ipc_callbacks_id(), |
| 202 std::vector<char>(value.data(), value.data() + value.size()), | 255 std::vector<char>(value.data(), value.data() + value.size()), |
| 203 IndexedDBKey(primaryKey), IndexedDBKeyPath(keyPath))); | 256 IndexedDBKey(primaryKey), |
| 257 IndexedDBKeyPath(keyPath))); |
| 204 } | 258 } |
| 205 | 259 |
| 206 void IndexedDBCallbacks<WebKit::WebData>::onSuccess( | 260 void IndexedDBCallbacks<WebData>::onSuccess(long long value) { |
| 207 long long value) { | 261 dispatcher_host()->Send(new IndexedDBMsg_CallbacksSuccessInteger( |
| 208 dispatcher_host()->Send( | 262 ipc_thread_id(), ipc_callbacks_id(), value)); |
| 209 new IndexedDBMsg_CallbacksSuccessInteger(ipc_thread_id(), | |
| 210 ipc_callbacks_id(), | |
| 211 value)); | |
| 212 } | 263 } |
| 213 | 264 |
| 214 void IndexedDBCallbacks<WebKit::WebData>::onSuccess() { | 265 void IndexedDBCallbacks<WebData>::onSuccess() { |
| 215 dispatcher_host()->Send( | 266 dispatcher_host()->Send(new IndexedDBMsg_CallbacksSuccessUndefined( |
| 216 new IndexedDBMsg_CallbacksSuccessUndefined(ipc_thread_id(), | 267 ipc_thread_id(), ipc_callbacks_id())); |
| 217 ipc_callbacks_id())); | |
| 218 } | 268 } |
| 219 | 269 |
| 220 void IndexedDBCallbacks<WebKit::WebData>::onSuccess( | 270 void IndexedDBCallbacks<WebData>::onSuccess( |
| 221 const WebKit::WebIDBKey& value) { | 271 const WebKit::WebIDBKey& value) { |
| 222 dispatcher_host()->Send( | 272 dispatcher_host()->Send(new IndexedDBMsg_CallbacksSuccessIndexedDBKey( |
| 223 new IndexedDBMsg_CallbacksSuccessIndexedDBKey( | 273 ipc_thread_id(), ipc_callbacks_id(), IndexedDBKey(value))); |
| 224 ipc_thread_id(), ipc_callbacks_id(), IndexedDBKey(value))); | |
| 225 } | 274 } |
| 226 | 275 |
| 227 } // namespace content | 276 } // namespace content |
| OLD | NEW |