| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2010 Google Inc. All rights reserved. | 2 * Copyright (C) 2010 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 60 | 60 |
| 61 if (!database->performOpenAndVerify(!creationCallback, ec)) { | 61 if (!database->performOpenAndVerify(!creationCallback, ec)) { |
| 62 LOG(StorageAPI, "Failed to open and verify version (expected %s) of data
base %s", expectedVersion.ascii().data(), database->databaseDebugName().ascii().
data()); | 62 LOG(StorageAPI, "Failed to open and verify version (expected %s) of data
base %s", expectedVersion.ascii().data(), database->databaseDebugName().ascii().
data()); |
| 63 DatabaseTracker::tracker().removeOpenDatabase(database.get()); | 63 DatabaseTracker::tracker().removeOpenDatabase(database.get()); |
| 64 return 0; | 64 return 0; |
| 65 } | 65 } |
| 66 | 66 |
| 67 DatabaseTracker::tracker().setDatabaseDetails(context->securityOrigin(), nam
e, displayName, estimatedSize); | 67 DatabaseTracker::tracker().setDatabaseDetails(context->securityOrigin(), nam
e, displayName, estimatedSize); |
| 68 | 68 |
| 69 if (database->isNew() && creationCallback.get()) { | 69 if (database->isNew() && creationCallback.get()) { |
| 70 database->m_expectedVersion = ""; | |
| 71 LOG(StorageAPI, "Invoking the creation callback for database %p\n", data
base.get()); | 70 LOG(StorageAPI, "Invoking the creation callback for database %p\n", data
base.get()); |
| 72 creationCallback->handleEvent(database.get()); | 71 creationCallback->handleEvent(database.get()); |
| 73 } | 72 } |
| 74 | 73 |
| 75 return database; | 74 return database; |
| 76 } | 75 } |
| 77 | 76 |
| 78 DatabaseSync::DatabaseSync(ScriptExecutionContext* context, const String& name,
const String& expectedVersion, | 77 DatabaseSync::DatabaseSync(ScriptExecutionContext* context, const String& name,
const String& expectedVersion, |
| 79 const String& displayName, unsigned long estimatedSiz
e) | 78 const String& displayName, unsigned long estimatedSiz
e) |
| 80 : AbstractDatabase(context, name, expectedVersion, displayName, estimatedSiz
e) | 79 : AbstractDatabase(context, name, expectedVersion, displayName, estimatedSiz
e) |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 116 } | 115 } |
| 117 | 116 |
| 118 if ((ec = transaction->execute())) | 117 if ((ec = transaction->execute())) |
| 119 return; | 118 return; |
| 120 | 119 |
| 121 if (!setVersionInDatabase(newVersion)) { | 120 if (!setVersionInDatabase(newVersion)) { |
| 122 ec = SQLException::UNKNOWN_ERR; | 121 ec = SQLException::UNKNOWN_ERR; |
| 123 return; | 122 return; |
| 124 } | 123 } |
| 125 | 124 |
| 126 if ((ec = transaction->commit())) | 125 if ((ec = transaction->commit())) { |
| 126 setCachedVersion(oldVersion); |
| 127 return; | 127 return; |
| 128 } |
| 128 | 129 |
| 129 setExpectedVersion(newVersion); | 130 setExpectedVersion(newVersion); |
| 130 } | 131 } |
| 131 | 132 |
| 132 void DatabaseSync::transaction(PassRefPtr<SQLTransactionSyncCallback> callback,
ExceptionCode& ec) | 133 void DatabaseSync::transaction(PassRefPtr<SQLTransactionSyncCallback> callback,
ExceptionCode& ec) |
| 133 { | 134 { |
| 134 runTransaction(callback, false, ec); | 135 runTransaction(callback, false, ec); |
| 135 } | 136 } |
| 136 | 137 |
| 137 void DatabaseSync::readTransaction(PassRefPtr<SQLTransactionSyncCallback> callba
ck, ExceptionCode& ec) | 138 void DatabaseSync::readTransaction(PassRefPtr<SQLTransactionSyncCallback> callba
ck, ExceptionCode& ec) |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 190 return; | 191 return; |
| 191 | 192 |
| 192 DatabaseTracker::tracker().removeOpenDatabase(this); | 193 DatabaseTracker::tracker().removeOpenDatabase(this); |
| 193 | 194 |
| 194 closeDatabase(); | 195 closeDatabase(); |
| 195 } | 196 } |
| 196 | 197 |
| 197 } // namespace WebCore | 198 } // namespace WebCore |
| 198 | 199 |
| 199 #endif // ENABLE(DATABASE) | 200 #endif // ENABLE(DATABASE) |
| OLD | NEW |