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

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

Issue 9249025: Database usage adjustment for .../webkit (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merge to head 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
« no previous file with comments | « webkit/database/databases_table.cc ('k') | webkit/quota/quota_database.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 if (statement.is_valid() && 27 statement.BindString16(0, origin_identifier);
28 statement.BindString(0, UTF16ToUTF8(origin_identifier)) && 28
29 statement.Step()) { 29 if (statement.Step()) {
30 return statement.ColumnInt64(0); 30 return statement.ColumnInt64(0);
31 } 31 }
32 32
33 return -1; 33 return -1;
34 } 34 }
35 35
36 bool QuotaTable::SetOriginQuota(const string16& origin_identifier, 36 bool QuotaTable::SetOriginQuota(const string16& origin_identifier,
37 int64 quota) { 37 int64 quota) {
38 DCHECK(quota >= 0); 38 DCHECK(quota >= 0);
39 39
40 // Insert or update the quota for this origin. 40 // Insert or update the quota for this origin.
41 sql::Statement replace_statement(db_->GetCachedStatement( 41 sql::Statement replace_statement(db_->GetCachedStatement(
42 SQL_FROM_HERE, "REPLACE INTO Quota VALUES (?, ?)")); 42 SQL_FROM_HERE, "REPLACE INTO Quota VALUES (?, ?)"));
43 if (replace_statement.is_valid() && 43 replace_statement.BindString16(0, origin_identifier);
44 replace_statement.BindString(0, UTF16ToUTF8(origin_identifier)) && 44 replace_statement.BindInt64(1, quota);
45 replace_statement.BindInt64(1, quota)) {
46 return replace_statement.Run();
47 }
48 45
49 return false; 46 return replace_statement.Run();
50 } 47 }
51 48
52 bool QuotaTable::ClearOriginQuota(const string16& origin_identifier) { 49 bool QuotaTable::ClearOriginQuota(const string16& origin_identifier) {
53 sql::Statement statement(db_->GetCachedStatement( 50 sql::Statement statement(db_->GetCachedStatement(
54 SQL_FROM_HERE, "DELETE FROM Quota WHERE origin = ?")); 51 SQL_FROM_HERE, "DELETE FROM Quota WHERE origin = ?"));
55 if (statement.is_valid() && 52 statement.BindString16(0, origin_identifier);
56 statement.BindString(0, UTF16ToUTF8(origin_identifier))) {
57 return (statement.Run() && db_->GetLastChangeCount());
58 }
59 53
60 return false; 54 return (statement.Run() && db_->GetLastChangeCount());
61 } 55 }
62 56
63 } // namespace webkit_database 57 } // namespace webkit_database
OLDNEW
« no previous file with comments | « webkit/database/databases_table.cc ('k') | webkit/quota/quota_database.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698