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

Side by Side Diff: webkit/database/quota_table.cc

Issue 9365030: More SQL statement usage regularization. Back-touch some (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Review comments Created 8 years, 10 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 | Annotate | Revision Log
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 "webkit/database/quota_table.h" 5 #include "webkit/database/quota_table.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "base/utf_string_conversions.h" 8 #include "base/utf_string_conversions.h"
9 #include "sql/statement.h" 9 #include "sql/statement.h"
10 10
11 namespace webkit_database { 11 namespace webkit_database {
12 12
13 bool QuotaTable::Init() { 13 bool QuotaTable::Init() {
14 // 'Quota' schema: 14 // 'Quota' schema:
15 // origin The origin. 15 // origin The origin.
16 // quota The quota for this origin. 16 // quota The quota for this origin.
17 return db_->DoesTableExist("Quota") || 17 return db_->DoesTableExist("Quota") ||
18 db_->Execute( 18 db_->Execute(
19 "CREATE TABLE Quota (" 19 "CREATE TABLE Quota ("
20 "origin TEXT NOT NULL PRIMARY KEY, " 20 "origin TEXT NOT NULL PRIMARY KEY, "
21 "quota INTEGER NOT NULL)"); 21 "quota INTEGER NOT NULL)");
22 } 22 }
23 23
24 int64 QuotaTable::GetOriginQuota(const string16& origin_identifier) { 24 int64 QuotaTable::GetOriginQuota(const string16& origin_identifier) {
25 sql::Statement statement(db_->GetCachedStatement( 25 sql::Statement statement(db_->GetCachedStatement(
26 SQL_FROM_HERE, "SELECT quota FROM Quota WHERE origin = ?")); 26 SQL_FROM_HERE, "SELECT quota FROM Quota WHERE origin = ?"));
27 statement.BindString16(0, origin_identifier); 27 statement.BindString16(0, origin_identifier);
28
29 if (statement.Step()) { 28 if (statement.Step()) {
30 return statement.ColumnInt64(0); 29 return statement.ColumnInt64(0);
31 } 30 }
32 31
33 return -1; 32 return -1;
34 } 33 }
35 34
36 bool QuotaTable::SetOriginQuota(const string16& origin_identifier, 35 bool QuotaTable::SetOriginQuota(const string16& origin_identifier,
37 int64 quota) { 36 int64 quota) {
38 DCHECK(quota >= 0); 37 DCHECK(quota >= 0);
39 38
40 // Insert or update the quota for this origin. 39 // Insert or update the quota for this origin.
41 sql::Statement replace_statement(db_->GetCachedStatement( 40 sql::Statement replace_statement(db_->GetCachedStatement(
42 SQL_FROM_HERE, "REPLACE INTO Quota VALUES (?, ?)")); 41 SQL_FROM_HERE, "REPLACE INTO Quota VALUES (?, ?)"));
43 replace_statement.BindString16(0, origin_identifier); 42 replace_statement.BindString16(0, origin_identifier);
44 replace_statement.BindInt64(1, quota); 43 replace_statement.BindInt64(1, quota);
45
46 return replace_statement.Run(); 44 return replace_statement.Run();
47 } 45 }
48 46
49 bool QuotaTable::ClearOriginQuota(const string16& origin_identifier) { 47 bool QuotaTable::ClearOriginQuota(const string16& origin_identifier) {
50 sql::Statement statement(db_->GetCachedStatement( 48 sql::Statement statement(db_->GetCachedStatement(
51 SQL_FROM_HERE, "DELETE FROM Quota WHERE origin = ?")); 49 SQL_FROM_HERE, "DELETE FROM Quota WHERE origin = ?"));
52 statement.BindString16(0, origin_identifier); 50 statement.BindString16(0, origin_identifier);
53 51
54 return (statement.Run() && db_->GetLastChangeCount()); 52 return (statement.Run() && db_->GetLastChangeCount());
55 } 53 }
56 54
57 } // namespace webkit_database 55 } // namespace webkit_database
OLDNEW
« chrome/browser/net/sqlite_origin_bound_cert_store.cc ('K') | « webkit/database/databases_table.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698