Chromium Code Reviews| 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 "content/common/indexed_db/indexed_db_messages.h" | 7 #include "content/common/indexed_db/indexed_db_messages.h" |
| 8 #include "webkit/quota/quota_manager.h" | 8 #include "webkit/quota/quota_manager.h" |
| 9 | 9 |
| 10 using content::IndexedDBKey; | 10 using content::IndexedDBKey; |
| 11 using content::IndexedDBKeyPath; | 11 using content::IndexedDBKeyPath; |
| 12 using content::SerializedScriptValue; | 12 using content::SerializedScriptValue; |
| 13 | 13 |
| 14 namespace { | |
| 15 int32 kDatabaseNotAdded = -1; | |
|
jsbell
2012/08/29 15:50:07
const?
dgrogan
2012/08/29 18:43:23
Done.
| |
| 16 } | |
| 17 | |
| 14 IndexedDBCallbacksBase::IndexedDBCallbacksBase( | 18 IndexedDBCallbacksBase::IndexedDBCallbacksBase( |
| 15 IndexedDBDispatcherHost* dispatcher_host, | 19 IndexedDBDispatcherHost* dispatcher_host, |
| 16 int32 thread_id, | 20 int32 thread_id, |
| 17 int32 response_id) | 21 int32 response_id) |
| 18 : dispatcher_host_(dispatcher_host), | 22 : dispatcher_host_(dispatcher_host), |
| 19 response_id_(response_id), | 23 response_id_(response_id), |
| 20 thread_id_(thread_id) { | 24 thread_id_(thread_id) { |
| 21 } | 25 } |
| 22 | 26 |
| 23 IndexedDBCallbacksBase::~IndexedDBCallbacksBase() {} | 27 IndexedDBCallbacksBase::~IndexedDBCallbacksBase() {} |
| 24 | 28 |
| 25 void IndexedDBCallbacksBase::onError(const WebKit::WebIDBDatabaseError& error) { | 29 void IndexedDBCallbacksBase::onError(const WebKit::WebIDBDatabaseError& error) { |
| 26 dispatcher_host_->Send(new IndexedDBMsg_CallbacksError( | 30 dispatcher_host_->Send(new IndexedDBMsg_CallbacksError( |
| 27 thread_id_, response_id_, error.code(), error.message())); | 31 thread_id_, response_id_, error.code(), error.message())); |
| 28 } | 32 } |
| 29 | 33 |
| 30 void IndexedDBCallbacksBase::onBlocked(long long old_version) { | 34 void IndexedDBCallbacksBase::onBlocked(long long old_version) { |
| 31 dispatcher_host_->Send(new IndexedDBMsg_CallbacksIntBlocked( | 35 dispatcher_host_->Send(new IndexedDBMsg_CallbacksIntBlocked( |
| 32 thread_id_, response_id_, old_version)); | 36 thread_id_, response_id_, old_version)); |
| 33 } | 37 } |
| 34 | 38 |
| 35 void IndexedDBCallbacksBase::onBlocked() { | 39 void IndexedDBCallbacksBase::onBlocked() { |
| 36 dispatcher_host_->Send(new IndexedDBMsg_CallbacksBlocked(thread_id_, | 40 dispatcher_host_->Send(new IndexedDBMsg_CallbacksBlocked(thread_id_, |
| 37 response_id_)); | 41 response_id_)); |
| 38 } | 42 } |
| 39 | 43 |
| 40 template<> | 44 IndexedDBCallbacksTransaction::IndexedDBCallbacksTransaction( |
| 41 void IndexedDBCallbacks<WebKit::WebIDBDatabase>::onUpgradeNeeded( | 45 IndexedDBDispatcherHost* dispatcher_host, |
| 46 int32 thread_id, | |
| 47 int32 response_id, | |
| 48 const GURL& origin_url) | |
| 49 : IndexedDBCallbacksBase(dispatcher_host, thread_id, response_id), | |
| 50 origin_url_(origin_url) { | |
|
jsbell
2012/08/29 15:50:07
Indenting.
dgrogan
2012/08/29 18:43:23
Done.
| |
| 51 } | |
| 52 | |
| 53 void IndexedDBCallbacksTransaction::onSuccess( | |
| 54 WebKit::WebIDBTransaction* idb_object) { | |
| 55 int32 object_id = | |
| 56 dispatcher_host()->Add(idb_object, thread_id(), origin_url_); | |
| 57 dispatcher_host()->Send( | |
| 58 new IndexedDBMsg_CallbacksSuccessIDBTransaction(thread_id(), | |
| 59 response_id(), object_id)); | |
| 60 } | |
| 61 | |
| 62 IndexedDBCallbacksDatabase::IndexedDBCallbacksDatabase( | |
| 63 IndexedDBDispatcherHost* dispatcher_host, | |
| 64 int32 thread_id, | |
| 65 int32 response_id, | |
| 66 const GURL& origin_url) | |
| 67 : IndexedDBCallbacksBase(dispatcher_host, thread_id, response_id), | |
| 68 origin_url_(origin_url), | |
|
jsbell
2012/08/29 15:50:07
Indenting.
dgrogan
2012/08/29 18:43:23
Done.
| |
| 69 database_id_(kDatabaseNotAdded) { | |
|
jsbell
2012/08/29 15:50:07
Ditto.
dgrogan
2012/08/29 18:43:23
Done.
| |
| 70 } | |
| 71 | |
| 72 void IndexedDBCallbacksDatabase::onSuccess( | |
| 73 WebKit::WebIDBDatabase* idb_object) { | |
| 74 int32 object_id = database_id_; | |
| 75 if (object_id == kDatabaseNotAdded) { | |
| 76 object_id = dispatcher_host()->Add(idb_object, thread_id(), origin_url_); | |
| 77 } else { | |
| 78 // We already have this database and don't need a new copy of it. | |
| 79 delete idb_object; | |
| 80 } | |
| 81 dispatcher_host()->Send( | |
| 82 new IndexedDBMsg_CallbacksSuccessIDBDatabase(thread_id(), response_id(), | |
| 83 object_id)); | |
| 84 } | |
| 85 | |
| 86 void IndexedDBCallbacksDatabase::onUpgradeNeeded( | |
| 42 long long old_version, | 87 long long old_version, |
| 43 WebKit::WebIDBTransaction* transaction, | 88 WebKit::WebIDBTransaction* transaction, |
| 44 WebKit::WebIDBDatabase* database) { | 89 WebKit::WebIDBDatabase* database) { |
| 45 int32 transaction_id = dispatcher_host()->Add(transaction, thread_id(), | 90 int32 transaction_id = dispatcher_host()->Add(transaction, thread_id(), |
| 46 origin_url_); | 91 origin_url_); |
| 47 int32 database_id = dispatcher_host()->Add(database, thread_id(), | 92 int32 database_id = dispatcher_host()->Add(database, thread_id(), |
| 48 origin_url_); | 93 origin_url_); |
| 49 database_id_ = database_id; | 94 database_id_ = database_id; |
| 50 dispatcher_host()->Send( | 95 dispatcher_host()->Send( |
| 51 new IndexedDBMsg_CallbacksUpgradeNeeded( | 96 new IndexedDBMsg_CallbacksUpgradeNeeded( |
| (...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 153 | 198 |
| 154 void IndexedDBCallbacks<WebKit::WebSerializedScriptValue>::onSuccess( | 199 void IndexedDBCallbacks<WebKit::WebSerializedScriptValue>::onSuccess( |
| 155 const WebKit::WebSerializedScriptValue& value, | 200 const WebKit::WebSerializedScriptValue& value, |
| 156 const WebKit::WebIDBKey& primaryKey, | 201 const WebKit::WebIDBKey& primaryKey, |
| 157 const WebKit::WebIDBKeyPath& keyPath) { | 202 const WebKit::WebIDBKeyPath& keyPath) { |
| 158 dispatcher_host()->Send( | 203 dispatcher_host()->Send( |
| 159 new IndexedDBMsg_CallbacksSuccessSerializedScriptValueWithKey( | 204 new IndexedDBMsg_CallbacksSuccessSerializedScriptValueWithKey( |
| 160 thread_id(), response_id(), SerializedScriptValue(value), | 205 thread_id(), response_id(), SerializedScriptValue(value), |
| 161 IndexedDBKey(primaryKey), IndexedDBKeyPath(keyPath))); | 206 IndexedDBKey(primaryKey), IndexedDBKeyPath(keyPath))); |
| 162 } | 207 } |
| OLD | NEW |