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

Side by Side Diff: content/browser/indexed_db/indexed_db_callbacks.cc

Issue 1549113002: Switch to standard integer types in content/browser/. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 12 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 unified diff | Download patch
OLDNEW
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/indexed_db/indexed_db_callbacks.h" 5 #include "content/browser/indexed_db/indexed_db_callbacks.h"
6 6
7 #include <stddef.h>
8
7 #include <algorithm> 9 #include <algorithm>
8 10
9 #include "base/metrics/histogram.h" 11 #include "base/metrics/histogram.h"
10 #include "base/strings/utf_string_conversions.h" 12 #include "base/strings/utf_string_conversions.h"
11 #include "base/time/time.h" 13 #include "base/time/time.h"
12 #include "content/browser/child_process_security_policy_impl.h" 14 #include "content/browser/child_process_security_policy_impl.h"
13 #include "content/browser/fileapi/fileapi_message_filter.h" 15 #include "content/browser/fileapi/fileapi_message_filter.h"
14 #include "content/browser/indexed_db/indexed_db_blob_info.h" 16 #include "content/browser/indexed_db/indexed_db_blob_info.h"
15 #include "content/browser/indexed_db/indexed_db_connection.h" 17 #include "content/browser/indexed_db/indexed_db_connection.h"
16 #include "content/browser/indexed_db/indexed_db_context_impl.h" 18 #include "content/browser/indexed_db/indexed_db_context_impl.h"
17 #include "content/browser/indexed_db/indexed_db_cursor.h" 19 #include "content/browser/indexed_db/indexed_db_cursor.h"
18 #include "content/browser/indexed_db/indexed_db_database_callbacks.h" 20 #include "content/browser/indexed_db/indexed_db_database_callbacks.h"
19 #include "content/browser/indexed_db/indexed_db_database_error.h" 21 #include "content/browser/indexed_db/indexed_db_database_error.h"
20 #include "content/browser/indexed_db/indexed_db_metadata.h" 22 #include "content/browser/indexed_db/indexed_db_metadata.h"
21 #include "content/browser/indexed_db/indexed_db_return_value.h" 23 #include "content/browser/indexed_db/indexed_db_return_value.h"
22 #include "content/browser/indexed_db/indexed_db_tracing.h" 24 #include "content/browser/indexed_db/indexed_db_tracing.h"
23 #include "content/browser/indexed_db/indexed_db_value.h" 25 #include "content/browser/indexed_db/indexed_db_value.h"
24 #include "content/common/indexed_db/indexed_db_constants.h" 26 #include "content/common/indexed_db/indexed_db_constants.h"
25 #include "content/common/indexed_db/indexed_db_messages.h" 27 #include "content/common/indexed_db/indexed_db_messages.h"
26 #include "storage/browser/blob/blob_storage_context.h" 28 #include "storage/browser/blob/blob_storage_context.h"
27 #include "storage/browser/blob/shareable_file_reference.h" 29 #include "storage/browser/blob/shareable_file_reference.h"
28 #include "storage/browser/quota/quota_manager.h" 30 #include "storage/browser/quota/quota_manager.h"
29 31
30 using storage::ShareableFileReference; 32 using storage::ShareableFileReference;
31 33
32 namespace content { 34 namespace content {
33 35
34 namespace { 36 namespace {
35 const int32 kNoCursor = -1; 37 const int32_t kNoCursor = -1;
36 const int32 kNoDatabaseCallbacks = -1; 38 const int32_t kNoDatabaseCallbacks = -1;
37 const int64 kNoTransaction = -1; 39 const int64_t kNoTransaction = -1;
38 } 40 }
39 41
40 IndexedDBCallbacks::IndexedDBCallbacks(IndexedDBDispatcherHost* dispatcher_host, 42 IndexedDBCallbacks::IndexedDBCallbacks(IndexedDBDispatcherHost* dispatcher_host,
41 int32 ipc_thread_id, 43 int32_t ipc_thread_id,
42 int32 ipc_callbacks_id) 44 int32_t ipc_callbacks_id)
43 : dispatcher_host_(dispatcher_host), 45 : dispatcher_host_(dispatcher_host),
44 ipc_callbacks_id_(ipc_callbacks_id), 46 ipc_callbacks_id_(ipc_callbacks_id),
45 ipc_thread_id_(ipc_thread_id), 47 ipc_thread_id_(ipc_thread_id),
46 ipc_cursor_id_(kNoCursor), 48 ipc_cursor_id_(kNoCursor),
47 host_transaction_id_(kNoTransaction), 49 host_transaction_id_(kNoTransaction),
48 ipc_database_id_(kNoDatabase), 50 ipc_database_id_(kNoDatabase),
49 ipc_database_callbacks_id_(kNoDatabaseCallbacks), 51 ipc_database_callbacks_id_(kNoDatabaseCallbacks),
50 data_loss_(blink::WebIDBDataLossNone), 52 data_loss_(blink::WebIDBDataLossNone),
51 sent_blocked_(false) { 53 sent_blocked_(false) {}
52 }
53 54
54 IndexedDBCallbacks::IndexedDBCallbacks(IndexedDBDispatcherHost* dispatcher_host, 55 IndexedDBCallbacks::IndexedDBCallbacks(IndexedDBDispatcherHost* dispatcher_host,
55 int32 ipc_thread_id, 56 int32_t ipc_thread_id,
56 int32 ipc_callbacks_id, 57 int32_t ipc_callbacks_id,
57 int32 ipc_cursor_id) 58 int32_t ipc_cursor_id)
58 : dispatcher_host_(dispatcher_host), 59 : dispatcher_host_(dispatcher_host),
59 ipc_callbacks_id_(ipc_callbacks_id), 60 ipc_callbacks_id_(ipc_callbacks_id),
60 ipc_thread_id_(ipc_thread_id), 61 ipc_thread_id_(ipc_thread_id),
61 ipc_cursor_id_(ipc_cursor_id), 62 ipc_cursor_id_(ipc_cursor_id),
62 host_transaction_id_(kNoTransaction), 63 host_transaction_id_(kNoTransaction),
63 ipc_database_id_(kNoDatabase), 64 ipc_database_id_(kNoDatabase),
64 ipc_database_callbacks_id_(kNoDatabaseCallbacks), 65 ipc_database_callbacks_id_(kNoDatabaseCallbacks),
65 data_loss_(blink::WebIDBDataLossNone), 66 data_loss_(blink::WebIDBDataLossNone),
66 sent_blocked_(false) { 67 sent_blocked_(false) {}
67 }
68 68
69 IndexedDBCallbacks::IndexedDBCallbacks(IndexedDBDispatcherHost* dispatcher_host, 69 IndexedDBCallbacks::IndexedDBCallbacks(IndexedDBDispatcherHost* dispatcher_host,
70 int32 ipc_thread_id, 70 int32_t ipc_thread_id,
71 int32 ipc_callbacks_id, 71 int32_t ipc_callbacks_id,
72 int32 ipc_database_callbacks_id, 72 int32_t ipc_database_callbacks_id,
73 int64 host_transaction_id, 73 int64_t host_transaction_id,
74 const GURL& origin_url) 74 const GURL& origin_url)
75 : dispatcher_host_(dispatcher_host), 75 : dispatcher_host_(dispatcher_host),
76 ipc_callbacks_id_(ipc_callbacks_id), 76 ipc_callbacks_id_(ipc_callbacks_id),
77 ipc_thread_id_(ipc_thread_id), 77 ipc_thread_id_(ipc_thread_id),
78 ipc_cursor_id_(kNoCursor), 78 ipc_cursor_id_(kNoCursor),
79 host_transaction_id_(host_transaction_id), 79 host_transaction_id_(host_transaction_id),
80 origin_url_(origin_url), 80 origin_url_(origin_url),
81 ipc_database_id_(kNoDatabase), 81 ipc_database_id_(kNoDatabase),
82 ipc_database_callbacks_id_(ipc_database_callbacks_id), 82 ipc_database_callbacks_id_(ipc_database_callbacks_id),
83 data_loss_(blink::WebIDBDataLossNone), 83 data_loss_(blink::WebIDBDataLossNone),
84 sent_blocked_(false) { 84 sent_blocked_(false) {}
85 }
86 85
87 IndexedDBCallbacks::~IndexedDBCallbacks() {} 86 IndexedDBCallbacks::~IndexedDBCallbacks() {}
88 87
89 void IndexedDBCallbacks::OnError(const IndexedDBDatabaseError& error) { 88 void IndexedDBCallbacks::OnError(const IndexedDBDatabaseError& error) {
90 DCHECK(dispatcher_host_.get()); 89 DCHECK(dispatcher_host_.get());
91 90
92 dispatcher_host_->Send(new IndexedDBMsg_CallbacksError( 91 dispatcher_host_->Send(new IndexedDBMsg_CallbacksError(
93 ipc_thread_id_, ipc_callbacks_id_, error.code(), error.message())); 92 ipc_thread_id_, ipc_callbacks_id_, error.code(), error.message()));
94 dispatcher_host_ = NULL; 93 dispatcher_host_ = NULL;
95 94
(...skipping 16 matching lines...) Expand all
112 111
113 std::vector<base::string16> list; 112 std::vector<base::string16> list;
114 for (unsigned i = 0; i < value.size(); ++i) 113 for (unsigned i = 0; i < value.size(); ++i)
115 list.push_back(value[i]); 114 list.push_back(value[i]);
116 115
117 dispatcher_host_->Send(new IndexedDBMsg_CallbacksSuccessStringList( 116 dispatcher_host_->Send(new IndexedDBMsg_CallbacksSuccessStringList(
118 ipc_thread_id_, ipc_callbacks_id_, list)); 117 ipc_thread_id_, ipc_callbacks_id_, list));
119 dispatcher_host_ = NULL; 118 dispatcher_host_ = NULL;
120 } 119 }
121 120
122 void IndexedDBCallbacks::OnBlocked(int64 existing_version) { 121 void IndexedDBCallbacks::OnBlocked(int64_t existing_version) {
123 DCHECK(dispatcher_host_.get()); 122 DCHECK(dispatcher_host_.get());
124 123
125 DCHECK_EQ(kNoCursor, ipc_cursor_id_); 124 DCHECK_EQ(kNoCursor, ipc_cursor_id_);
126 // No transaction/db callbacks for DeleteDatabase. 125 // No transaction/db callbacks for DeleteDatabase.
127 DCHECK_EQ(kNoTransaction == host_transaction_id_, 126 DCHECK_EQ(kNoTransaction == host_transaction_id_,
128 kNoDatabaseCallbacks == ipc_database_callbacks_id_); 127 kNoDatabaseCallbacks == ipc_database_callbacks_id_);
129 DCHECK_EQ(kNoDatabase, ipc_database_id_); 128 DCHECK_EQ(kNoDatabase, ipc_database_id_);
130 129
131 if (sent_blocked_) 130 if (sent_blocked_)
132 return; 131 return;
(...skipping 11 matching lines...) Expand all
144 } 143 }
145 144
146 void IndexedDBCallbacks::OnDataLoss(blink::WebIDBDataLoss data_loss, 145 void IndexedDBCallbacks::OnDataLoss(blink::WebIDBDataLoss data_loss,
147 std::string data_loss_message) { 146 std::string data_loss_message) {
148 DCHECK_NE(blink::WebIDBDataLossNone, data_loss); 147 DCHECK_NE(blink::WebIDBDataLossNone, data_loss);
149 data_loss_ = data_loss; 148 data_loss_ = data_loss;
150 data_loss_message_ = data_loss_message; 149 data_loss_message_ = data_loss_message;
151 } 150 }
152 151
153 void IndexedDBCallbacks::OnUpgradeNeeded( 152 void IndexedDBCallbacks::OnUpgradeNeeded(
154 int64 old_version, 153 int64_t old_version,
155 scoped_ptr<IndexedDBConnection> connection, 154 scoped_ptr<IndexedDBConnection> connection,
156 const IndexedDBDatabaseMetadata& metadata) { 155 const IndexedDBDatabaseMetadata& metadata) {
157 DCHECK(dispatcher_host_.get()); 156 DCHECK(dispatcher_host_.get());
158 157
159 DCHECK_EQ(kNoCursor, ipc_cursor_id_); 158 DCHECK_EQ(kNoCursor, ipc_cursor_id_);
160 DCHECK_NE(kNoTransaction, host_transaction_id_); 159 DCHECK_NE(kNoTransaction, host_transaction_id_);
161 DCHECK_EQ(kNoDatabase, ipc_database_id_); 160 DCHECK_EQ(kNoDatabase, ipc_database_id_);
162 DCHECK_NE(kNoDatabaseCallbacks, ipc_database_callbacks_id_); 161 DCHECK_NE(kNoDatabaseCallbacks, ipc_database_callbacks_id_);
163 162
164 dispatcher_host_->RegisterTransactionId(host_transaction_id_, origin_url_); 163 dispatcher_host_->RegisterTransactionId(host_transaction_id_, origin_url_);
165 int32 ipc_database_id = 164 int32_t ipc_database_id =
166 dispatcher_host_->Add(connection.release(), ipc_thread_id_, origin_url_); 165 dispatcher_host_->Add(connection.release(), ipc_thread_id_, origin_url_);
167 if (ipc_database_id < 0) 166 if (ipc_database_id < 0)
168 return; 167 return;
169 ipc_database_id_ = ipc_database_id; 168 ipc_database_id_ = ipc_database_id;
170 IndexedDBMsg_CallbacksUpgradeNeeded_Params params; 169 IndexedDBMsg_CallbacksUpgradeNeeded_Params params;
171 params.ipc_thread_id = ipc_thread_id_; 170 params.ipc_thread_id = ipc_thread_id_;
172 params.ipc_callbacks_id = ipc_callbacks_id_; 171 params.ipc_callbacks_id = ipc_callbacks_id_;
173 params.ipc_database_id = ipc_database_id; 172 params.ipc_database_id = ipc_database_id;
174 params.ipc_database_callbacks_id = ipc_database_callbacks_id_; 173 params.ipc_database_callbacks_id = ipc_database_callbacks_id_;
175 params.old_version = old_version; 174 params.old_version = old_version;
(...skipping 14 matching lines...) Expand all
190 const IndexedDBDatabaseMetadata& metadata) { 189 const IndexedDBDatabaseMetadata& metadata) {
191 DCHECK(dispatcher_host_.get()); 190 DCHECK(dispatcher_host_.get());
192 191
193 DCHECK_EQ(kNoCursor, ipc_cursor_id_); 192 DCHECK_EQ(kNoCursor, ipc_cursor_id_);
194 DCHECK_NE(kNoTransaction, host_transaction_id_); 193 DCHECK_NE(kNoTransaction, host_transaction_id_);
195 DCHECK_NE(ipc_database_id_ == kNoDatabase, !connection); 194 DCHECK_NE(ipc_database_id_ == kNoDatabase, !connection);
196 DCHECK_NE(kNoDatabaseCallbacks, ipc_database_callbacks_id_); 195 DCHECK_NE(kNoDatabaseCallbacks, ipc_database_callbacks_id_);
197 196
198 scoped_refptr<IndexedDBCallbacks> self(this); 197 scoped_refptr<IndexedDBCallbacks> self(this);
199 198
200 int32 ipc_object_id = kNoDatabase; 199 int32_t ipc_object_id = kNoDatabase;
201 // Only register if the connection was not previously sent in OnUpgradeNeeded. 200 // Only register if the connection was not previously sent in OnUpgradeNeeded.
202 if (ipc_database_id_ == kNoDatabase) { 201 if (ipc_database_id_ == kNoDatabase) {
203 ipc_object_id = dispatcher_host_->Add( 202 ipc_object_id = dispatcher_host_->Add(
204 connection.release(), ipc_thread_id_, origin_url_); 203 connection.release(), ipc_thread_id_, origin_url_);
205 } 204 }
206 205
207 dispatcher_host_->Send(new IndexedDBMsg_CallbacksSuccessIDBDatabase( 206 dispatcher_host_->Send(new IndexedDBMsg_CallbacksSuccessIDBDatabase(
208 ipc_thread_id_, 207 ipc_thread_id_,
209 ipc_callbacks_id_, 208 ipc_callbacks_id_,
210 ipc_database_callbacks_id_, 209 ipc_database_callbacks_id_,
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after
341 const IndexedDBKey& primary_key, 340 const IndexedDBKey& primary_key,
342 IndexedDBValue* value) { 341 IndexedDBValue* value) {
343 DCHECK(dispatcher_host_.get()); 342 DCHECK(dispatcher_host_.get());
344 343
345 DCHECK_EQ(kNoCursor, ipc_cursor_id_); 344 DCHECK_EQ(kNoCursor, ipc_cursor_id_);
346 DCHECK_EQ(kNoTransaction, host_transaction_id_); 345 DCHECK_EQ(kNoTransaction, host_transaction_id_);
347 DCHECK_EQ(kNoDatabase, ipc_database_id_); 346 DCHECK_EQ(kNoDatabase, ipc_database_id_);
348 DCHECK_EQ(kNoDatabaseCallbacks, ipc_database_callbacks_id_); 347 DCHECK_EQ(kNoDatabaseCallbacks, ipc_database_callbacks_id_);
349 DCHECK_EQ(blink::WebIDBDataLossNone, data_loss_); 348 DCHECK_EQ(blink::WebIDBDataLossNone, data_loss_);
350 349
351 int32 ipc_object_id = dispatcher_host_->Add(cursor.get()); 350 int32_t ipc_object_id = dispatcher_host_->Add(cursor.get());
352 scoped_ptr<IndexedDBMsg_CallbacksSuccessIDBCursor_Params> params( 351 scoped_ptr<IndexedDBMsg_CallbacksSuccessIDBCursor_Params> params(
353 new IndexedDBMsg_CallbacksSuccessIDBCursor_Params()); 352 new IndexedDBMsg_CallbacksSuccessIDBCursor_Params());
354 params->ipc_thread_id = ipc_thread_id_; 353 params->ipc_thread_id = ipc_thread_id_;
355 params->ipc_callbacks_id = ipc_callbacks_id_; 354 params->ipc_callbacks_id = ipc_callbacks_id_;
356 params->ipc_cursor_id = ipc_object_id; 355 params->ipc_cursor_id = ipc_object_id;
357 params->key = key; 356 params->key = key;
358 params->primary_key = primary_key; 357 params->primary_key = primary_key;
359 if (value && !value->empty()) 358 if (value && !value->empty())
360 std::swap(params->value.bits, value->bits); 359 std::swap(params->value.bits, value->bits);
361 // TODO(alecflett): Avoid a copy here: the whole params object is 360 // TODO(alecflett): Avoid a copy here: the whole params object is
(...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after
574 DCHECK_EQ(kNoTransaction, host_transaction_id_); 573 DCHECK_EQ(kNoTransaction, host_transaction_id_);
575 DCHECK_EQ(kNoDatabase, ipc_database_id_); 574 DCHECK_EQ(kNoDatabase, ipc_database_id_);
576 DCHECK_EQ(kNoDatabaseCallbacks, ipc_database_callbacks_id_); 575 DCHECK_EQ(kNoDatabaseCallbacks, ipc_database_callbacks_id_);
577 DCHECK_EQ(blink::WebIDBDataLossNone, data_loss_); 576 DCHECK_EQ(blink::WebIDBDataLossNone, data_loss_);
578 577
579 dispatcher_host_->Send(new IndexedDBMsg_CallbacksSuccessIndexedDBKey( 578 dispatcher_host_->Send(new IndexedDBMsg_CallbacksSuccessIndexedDBKey(
580 ipc_thread_id_, ipc_callbacks_id_, value)); 579 ipc_thread_id_, ipc_callbacks_id_, value));
581 dispatcher_host_ = NULL; 580 dispatcher_host_ = NULL;
582 } 581 }
583 582
584 void IndexedDBCallbacks::OnSuccess(int64 value) { 583 void IndexedDBCallbacks::OnSuccess(int64_t value) {
585 DCHECK(dispatcher_host_.get()); 584 DCHECK(dispatcher_host_.get());
586 585
587 DCHECK_EQ(kNoCursor, ipc_cursor_id_); 586 DCHECK_EQ(kNoCursor, ipc_cursor_id_);
588 DCHECK_EQ(kNoTransaction, host_transaction_id_); 587 DCHECK_EQ(kNoTransaction, host_transaction_id_);
589 DCHECK_EQ(kNoDatabase, ipc_database_id_); 588 DCHECK_EQ(kNoDatabase, ipc_database_id_);
590 DCHECK_EQ(kNoDatabaseCallbacks, ipc_database_callbacks_id_); 589 DCHECK_EQ(kNoDatabaseCallbacks, ipc_database_callbacks_id_);
591 DCHECK_EQ(blink::WebIDBDataLossNone, data_loss_); 590 DCHECK_EQ(blink::WebIDBDataLossNone, data_loss_);
592 591
593 dispatcher_host_->Send(new IndexedDBMsg_CallbacksSuccessInteger( 592 dispatcher_host_->Send(new IndexedDBMsg_CallbacksSuccessInteger(
594 ipc_thread_id_, ipc_callbacks_id_, value)); 593 ipc_thread_id_, ipc_callbacks_id_, value));
(...skipping 13 matching lines...) Expand all
608 ipc_thread_id_, ipc_callbacks_id_)); 607 ipc_thread_id_, ipc_callbacks_id_));
609 dispatcher_host_ = NULL; 608 dispatcher_host_ = NULL;
610 } 609 }
611 610
612 void IndexedDBCallbacks::SetConnectionOpenStartTime( 611 void IndexedDBCallbacks::SetConnectionOpenStartTime(
613 const base::TimeTicks& start_time) { 612 const base::TimeTicks& start_time) {
614 connection_open_start_time_ = start_time; 613 connection_open_start_time_ = start_time;
615 } 614 }
616 615
617 } // namespace content 616 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/indexed_db/indexed_db_callbacks.h ('k') | content/browser/indexed_db/indexed_db_class_factory.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698