Changeset 187996 in webkit
- Timestamp:
- Aug 5, 2015 3:58:52 PM (9 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r187994 r187996 1 2015-08-05 Anders Carlsson <andersca@apple.com> 2 3 Move some more DatabaseBackendBase functions to Database 4 https://bugs.webkit.org/show_bug.cgi?id=147702 5 6 Reviewed by Tim Horton. 7 8 * Modules/webdatabase/Database.cpp: 9 (WebCore::formatErrorMessage): 10 (WebCore::Database::disableAuthorizer): 11 (WebCore::Database::enableAuthorizer): 12 (WebCore::Database::setAuthorizerPermissions): 13 (WebCore::Database::lastActionChangedDatabase): 14 (WebCore::Database::lastActionWasInsert): 15 (WebCore::Database::resetDeletes): 16 (WebCore::Database::hadDeletes): 17 (WebCore::Database::resetAuthorizer): 18 (WebCore::Database::incrementalVacuumIfNeeded): 19 * Modules/webdatabase/Database.h: 20 * Modules/webdatabase/DatabaseBackendBase.cpp: 21 (WebCore::DatabaseBackendBase::disableAuthorizer): Deleted. 22 (WebCore::DatabaseBackendBase::enableAuthorizer): Deleted. 23 (WebCore::DatabaseBackendBase::setAuthorizerPermissions): Deleted. 24 (WebCore::DatabaseBackendBase::lastActionChangedDatabase): Deleted. 25 (WebCore::DatabaseBackendBase::lastActionWasInsert): Deleted. 26 (WebCore::DatabaseBackendBase::resetDeletes): Deleted. 27 (WebCore::DatabaseBackendBase::hadDeletes): Deleted. 28 (WebCore::DatabaseBackendBase::resetAuthorizer): Deleted. 29 (WebCore::DatabaseBackendBase::incrementalVacuumIfNeeded): Deleted. 30 * Modules/webdatabase/DatabaseBackendBase.h: 31 1 32 2015-08-05 Zalan Bujtas <zalan@apple.com> 2 33 -
trunk/Source/WebCore/Modules/webdatabase/Database.cpp
r187984 r187996 32 32 #include "ChangeVersionData.h" 33 33 #include "ChangeVersionWrapper.h" 34 #include "DatabaseAuthorizer.h" 34 35 #include "DatabaseCallback.h" 35 36 #include "DatabaseContext.h" … … 46 47 #include "SQLTransactionCallback.h" 47 48 #include "SQLTransactionErrorCallback.h" 49 #include "SQLiteDatabaseTracker.h" 48 50 #include "SQLiteStatement.h" 49 51 #include "ScriptExecutionContext.h" … … 55 57 #include <wtf/text/CString.h> 56 58 57 #if PLATFORM(IOS)58 #include "SQLiteDatabaseTracker.h"59 #endif60 61 59 namespace WebCore { 60 61 static String formatErrorMessage(const char* message, int sqliteErrorCode, const char* sqliteErrorMessage) 62 { 63 return String::format("%s (%d %s)", message, sqliteErrorCode, sqliteErrorMessage); 64 } 62 65 63 66 Database::Database(PassRefPtr<DatabaseContext> databaseContext, const String& name, const String& expectedVersion, const String& displayName, unsigned long estimatedSize) … … 261 264 } 262 265 266 void Database::disableAuthorizer() 267 { 268 ASSERT(m_databaseAuthorizer); 269 m_databaseAuthorizer->disable(); 270 } 271 272 void Database::enableAuthorizer() 273 { 274 ASSERT(m_databaseAuthorizer); 275 m_databaseAuthorizer->enable(); 276 } 277 278 void Database::setAuthorizerPermissions(int permissions) 279 { 280 ASSERT(m_databaseAuthorizer); 281 m_databaseAuthorizer->setPermissions(permissions); 282 } 283 284 bool Database::lastActionChangedDatabase() 285 { 286 ASSERT(m_databaseAuthorizer); 287 return m_databaseAuthorizer->lastActionChangedDatabase(); 288 } 289 290 bool Database::lastActionWasInsert() 291 { 292 ASSERT(m_databaseAuthorizer); 293 return m_databaseAuthorizer->lastActionWasInsert(); 294 } 295 296 void Database::resetDeletes() 297 { 298 ASSERT(m_databaseAuthorizer); 299 m_databaseAuthorizer->resetDeletes(); 300 } 301 302 bool Database::hadDeletes() 303 { 304 ASSERT(m_databaseAuthorizer); 305 return m_databaseAuthorizer->hadDeletes(); 306 } 307 308 void Database::resetAuthorizer() 309 { 310 if (m_databaseAuthorizer) 311 m_databaseAuthorizer->reset(); 312 } 313 263 314 void Database::runTransaction(RefPtr<SQLTransactionCallback>&& callback, RefPtr<SQLTransactionErrorCallback>&& errorCallback, RefPtr<VoidCallback>&& successCallback, bool readOnly, const ChangeVersionData* changeVersionData) 264 315 { … … 311 362 } 312 363 364 void Database::incrementalVacuumIfNeeded() 365 { 366 SQLiteTransactionInProgressAutoCounter transactionCounter; 367 368 int64_t freeSpaceSize = m_sqliteDatabase.freeSpaceSize(); 369 int64_t totalSize = m_sqliteDatabase.totalSize(); 370 if (totalSize <= 10 * freeSpaceSize) { 371 int result = m_sqliteDatabase.runIncrementalVacuumCommand(); 372 if (result != SQLITE_OK) 373 logErrorMessage(formatErrorMessage("error vacuuming database", result, m_sqliteDatabase.lastErrorMsg())); 374 } 375 } 376 313 377 void Database::logErrorMessage(const String& message) 314 378 { -
trunk/Source/WebCore/Modules/webdatabase/Database.h
r187984 r187996 78 78 79 79 // Internal engine support 80 void disableAuthorizer(); 81 void enableAuthorizer(); 82 void setAuthorizerPermissions(int); 83 bool lastActionChangedDatabase(); 84 bool lastActionWasInsert(); 85 void resetDeletes(); 86 bool hadDeletes(); 87 void resetAuthorizer(); 88 80 89 DatabaseContext* databaseContext() const { return m_databaseContext.get(); } 81 90 … … 94 103 virtual bool performOpenAndVerify(bool setVersionInNewDatabase, DatabaseError&, String& errorMessage); 95 104 Vector<String> performGetTableNames(); 105 106 void incrementalVacuumIfNeeded(); 96 107 97 108 private: -
trunk/Source/WebCore/Modules/webdatabase/DatabaseBackendBase.cpp
r187993 r187996 521 521 } 522 522 523 void DatabaseBackendBase::disableAuthorizer()524 {525 ASSERT(m_databaseAuthorizer);526 m_databaseAuthorizer->disable();527 }528 529 void DatabaseBackendBase::enableAuthorizer()530 {531 ASSERT(m_databaseAuthorizer);532 m_databaseAuthorizer->enable();533 }534 535 void DatabaseBackendBase::setAuthorizerPermissions(int permissions)536 {537 ASSERT(m_databaseAuthorizer);538 m_databaseAuthorizer->setPermissions(permissions);539 }540 541 bool DatabaseBackendBase::lastActionChangedDatabase()542 {543 ASSERT(m_databaseAuthorizer);544 return m_databaseAuthorizer->lastActionChangedDatabase();545 }546 547 bool DatabaseBackendBase::lastActionWasInsert()548 {549 ASSERT(m_databaseAuthorizer);550 return m_databaseAuthorizer->lastActionWasInsert();551 }552 553 void DatabaseBackendBase::resetDeletes()554 {555 ASSERT(m_databaseAuthorizer);556 m_databaseAuthorizer->resetDeletes();557 }558 559 bool DatabaseBackendBase::hadDeletes()560 {561 ASSERT(m_databaseAuthorizer);562 return m_databaseAuthorizer->hadDeletes();563 }564 565 void DatabaseBackendBase::resetAuthorizer()566 {567 if (m_databaseAuthorizer)568 m_databaseAuthorizer->reset();569 }570 571 523 unsigned long long DatabaseBackendBase::maximumSize() const 572 524 { … … 574 526 } 575 527 576 void DatabaseBackendBase::incrementalVacuumIfNeeded()577 {578 SQLiteTransactionInProgressAutoCounter transactionCounter;579 580 int64_t freeSpaceSize = m_sqliteDatabase.freeSpaceSize();581 int64_t totalSize = m_sqliteDatabase.totalSize();582 if (totalSize <= 10 * freeSpaceSize) {583 int result = m_sqliteDatabase.runIncrementalVacuumCommand();584 if (result != SQLITE_OK)585 m_frontend->logErrorMessage(formatErrorMessage("error vacuuming database", result, m_sqliteDatabase.lastErrorMsg()));586 }587 }588 589 528 } // namespace WebCore -
trunk/Source/WebCore/Modules/webdatabase/DatabaseBackendBase.h
r187993 r187996 65 65 66 66 unsigned long long maximumSize() const; 67 void incrementalVacuumIfNeeded();68 69 void disableAuthorizer();70 void enableAuthorizer();71 void setAuthorizerPermissions(int permissions);72 bool lastActionChangedDatabase();73 bool lastActionWasInsert();74 void resetDeletes();75 bool hadDeletes();76 void resetAuthorizer();77 67 78 68 DatabaseContext* databaseContext() const { return m_databaseContext.get(); } … … 117 107 Database* m_frontend; 118 108 119 private:120 109 DatabaseGuid m_guid; 121 110 bool m_opened;
Note: See TracChangeset
for help on using the changeset viewer.