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

Side by Side Diff: Source/modules/webdatabase/DatabaseSync.cpp

Issue 72363002: Rename es => exceptionState in other than bindings/ (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Retry Created 7 years, 1 month 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 /* 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 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 DatabaseSync::~DatabaseSync() 67 DatabaseSync::~DatabaseSync()
68 { 68 {
69 ASSERT(m_executionContext->isContextThread()); 69 ASSERT(m_executionContext->isContextThread());
70 } 70 }
71 71
72 PassRefPtr<DatabaseBackendSync> DatabaseSync::backend() 72 PassRefPtr<DatabaseBackendSync> DatabaseSync::backend()
73 { 73 {
74 return this; 74 return this;
75 } 75 }
76 76
77 void DatabaseSync::changeVersion(const String& oldVersion, const String& newVers ion, PassRefPtr<SQLTransactionSyncCallback> changeVersionCallback, ExceptionStat e& es) 77 void DatabaseSync::changeVersion(const String& oldVersion, const String& newVers ion, PassRefPtr<SQLTransactionSyncCallback> changeVersionCallback, ExceptionStat e& exceptionState)
78 { 78 {
79 ASSERT(m_executionContext->isContextThread()); 79 ASSERT(m_executionContext->isContextThread());
80 80
81 if (sqliteDatabase().transactionInProgress()) { 81 if (sqliteDatabase().transactionInProgress()) {
82 reportChangeVersionResult(1, SQLError::DATABASE_ERR, 0); 82 reportChangeVersionResult(1, SQLError::DATABASE_ERR, 0);
83 setLastErrorMessage("unable to changeVersion from within a transaction") ; 83 setLastErrorMessage("unable to changeVersion from within a transaction") ;
84 es.throwUninformativeAndGenericDOMException(SQLDatabaseError); 84 exceptionState.throwUninformativeAndGenericDOMException(SQLDatabaseError );
85 return; 85 return;
86 } 86 }
87 87
88 RefPtr<SQLTransactionSync> transaction = SQLTransactionSync::create(this, ch angeVersionCallback, false); 88 RefPtr<SQLTransactionSync> transaction = SQLTransactionSync::create(this, ch angeVersionCallback, false);
89 transaction->begin(es); 89 transaction->begin(exceptionState);
90 if (es.hadException()) { 90 if (exceptionState.hadException()) {
91 ASSERT(!lastErrorMessage().isEmpty()); 91 ASSERT(!lastErrorMessage().isEmpty());
92 return; 92 return;
93 } 93 }
94 94
95 String actualVersion; 95 String actualVersion;
96 if (!getVersionFromDatabase(actualVersion)) { 96 if (!getVersionFromDatabase(actualVersion)) {
97 reportChangeVersionResult(2, SQLError::UNKNOWN_ERR, sqliteDatabase().las tError()); 97 reportChangeVersionResult(2, SQLError::UNKNOWN_ERR, sqliteDatabase().las tError());
98 setLastErrorMessage("unable to read the current version", sqliteDatabase ().lastError(), sqliteDatabase().lastErrorMsg()); 98 setLastErrorMessage("unable to read the current version", sqliteDatabase ().lastError(), sqliteDatabase().lastErrorMsg());
99 es.throwDOMException(UnknownError, SQLError::unknownErrorMessage); 99 exceptionState.throwDOMException(UnknownError, SQLError::unknownErrorMes sage);
100 return; 100 return;
101 } 101 }
102 102
103 if (actualVersion != oldVersion) { 103 if (actualVersion != oldVersion) {
104 reportChangeVersionResult(3, SQLError::VERSION_ERR, 0); 104 reportChangeVersionResult(3, SQLError::VERSION_ERR, 0);
105 setLastErrorMessage("current version of the database and `oldVersion` ar gument do not match"); 105 setLastErrorMessage("current version of the database and `oldVersion` ar gument do not match");
106 es.throwDOMException(VersionError, SQLError::versionErrorMessage); 106 exceptionState.throwDOMException(VersionError, SQLError::versionErrorMes sage);
107 return; 107 return;
108 } 108 }
109 109
110 110
111 transaction->execute(es); 111 transaction->execute(exceptionState);
112 if (es.hadException()) { 112 if (exceptionState.hadException()) {
113 ASSERT(!lastErrorMessage().isEmpty()); 113 ASSERT(!lastErrorMessage().isEmpty());
114 return; 114 return;
115 } 115 }
116 116
117 if (!setVersionInDatabase(newVersion)) { 117 if (!setVersionInDatabase(newVersion)) {
118 reportChangeVersionResult(4, SQLError::UNKNOWN_ERR, sqliteDatabase().las tError()); 118 reportChangeVersionResult(4, SQLError::UNKNOWN_ERR, sqliteDatabase().las tError());
119 setLastErrorMessage("unable to set the new version", sqliteDatabase().la stError(), sqliteDatabase().lastErrorMsg()); 119 setLastErrorMessage("unable to set the new version", sqliteDatabase().la stError(), sqliteDatabase().lastErrorMsg());
120 es.throwDOMException(UnknownError, SQLError::unknownErrorMessage); 120 exceptionState.throwDOMException(UnknownError, SQLError::unknownErrorMes sage);
121 return; 121 return;
122 } 122 }
123 123
124 transaction->commit(es); 124 transaction->commit(exceptionState);
125 if (es.hadException()) { 125 if (exceptionState.hadException()) {
126 ASSERT(!lastErrorMessage().isEmpty()); 126 ASSERT(!lastErrorMessage().isEmpty());
127 setCachedVersion(oldVersion); 127 setCachedVersion(oldVersion);
128 return; 128 return;
129 } 129 }
130 130
131 reportChangeVersionResult(0, -1, 0); // OK 131 reportChangeVersionResult(0, -1, 0); // OK
132 132
133 setExpectedVersion(newVersion); 133 setExpectedVersion(newVersion);
134 setLastErrorMessage(""); 134 setLastErrorMessage("");
135 } 135 }
136 136
137 void DatabaseSync::transaction(PassRefPtr<SQLTransactionSyncCallback> callback, ExceptionState& es) 137 void DatabaseSync::transaction(PassRefPtr<SQLTransactionSyncCallback> callback, ExceptionState& exceptionState)
138 { 138 {
139 runTransaction(callback, false, es); 139 runTransaction(callback, false, exceptionState);
140 } 140 }
141 141
142 void DatabaseSync::readTransaction(PassRefPtr<SQLTransactionSyncCallback> callba ck, ExceptionState& es) 142 void DatabaseSync::readTransaction(PassRefPtr<SQLTransactionSyncCallback> callba ck, ExceptionState& exceptionState)
143 { 143 {
144 runTransaction(callback, true, es); 144 runTransaction(callback, true, exceptionState);
145 } 145 }
146 146
147 void DatabaseSync::rollbackTransaction(PassRefPtr<SQLTransactionSync> transactio n) 147 void DatabaseSync::rollbackTransaction(PassRefPtr<SQLTransactionSync> transactio n)
148 { 148 {
149 ASSERT(!lastErrorMessage().isEmpty()); 149 ASSERT(!lastErrorMessage().isEmpty());
150 transaction->rollback(); 150 transaction->rollback();
151 setLastErrorMessage(""); 151 setLastErrorMessage("");
152 return; 152 return;
153 } 153 }
154 154
155 void DatabaseSync::runTransaction(PassRefPtr<SQLTransactionSyncCallback> callbac k, bool readOnly, ExceptionState& es) 155 void DatabaseSync::runTransaction(PassRefPtr<SQLTransactionSyncCallback> callbac k, bool readOnly, ExceptionState& exceptionState)
156 { 156 {
157 ASSERT(m_executionContext->isContextThread()); 157 ASSERT(m_executionContext->isContextThread());
158 158
159 if (sqliteDatabase().transactionInProgress()) { 159 if (sqliteDatabase().transactionInProgress()) {
160 setLastErrorMessage("unable to start a transaction from within a transac tion"); 160 setLastErrorMessage("unable to start a transaction from within a transac tion");
161 es.throwUninformativeAndGenericDOMException(SQLDatabaseError); 161 exceptionState.throwUninformativeAndGenericDOMException(SQLDatabaseError );
162 return; 162 return;
163 } 163 }
164 164
165 RefPtr<SQLTransactionSync> transaction = SQLTransactionSync::create(this, ca llback, readOnly); 165 RefPtr<SQLTransactionSync> transaction = SQLTransactionSync::create(this, ca llback, readOnly);
166 transaction->begin(es); 166 transaction->begin(exceptionState);
167 if (es.hadException()) { 167 if (exceptionState.hadException()) {
168 rollbackTransaction(transaction); 168 rollbackTransaction(transaction);
169 return; 169 return;
170 } 170 }
171 171
172 transaction->execute(es); 172 transaction->execute(exceptionState);
173 if (es.hadException()) { 173 if (exceptionState.hadException()) {
174 rollbackTransaction(transaction); 174 rollbackTransaction(transaction);
175 return; 175 return;
176 } 176 }
177 177
178 transaction->commit(es); 178 transaction->commit(exceptionState);
179 if (es.hadException()) { 179 if (exceptionState.hadException()) {
180 rollbackTransaction(transaction); 180 rollbackTransaction(transaction);
181 return; 181 return;
182 } 182 }
183 183
184 setLastErrorMessage(""); 184 setLastErrorMessage("");
185 } 185 }
186 186
187 void DatabaseSync::markAsDeletedAndClose() 187 void DatabaseSync::markAsDeletedAndClose()
188 { 188 {
189 // FIXME: need to do something similar to closeImmediately(), but in a sync way 189 // FIXME: need to do something similar to closeImmediately(), but in a sync way
(...skipping 25 matching lines...) Expand all
215 ASSERT(m_executionContext->isContextThread()); 215 ASSERT(m_executionContext->isContextThread());
216 216
217 if (!opened()) 217 if (!opened())
218 return; 218 return;
219 219
220 logErrorMessage("forcibly closing database"); 220 logErrorMessage("forcibly closing database");
221 closeDatabase(); 221 closeDatabase();
222 } 222 }
223 223
224 } // namespace WebCore 224 } // namespace WebCore
OLDNEW
« no previous file with comments | « Source/modules/webdatabase/DatabaseManager.cpp ('k') | Source/modules/webdatabase/SQLResultSet.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698