| 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 | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * | 7 * |
| 8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. 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 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 61 namespace { | 61 namespace { |
| 62 | 62 |
| 63 void reportTransactionFailed(ExecuteSQLCallback* requestCallback, SQLError* erro
r) | 63 void reportTransactionFailed(ExecuteSQLCallback* requestCallback, SQLError* erro
r) |
| 64 { | 64 { |
| 65 RefPtr<TypeBuilder::Database::Error> errorObject = TypeBuilder::Database::Er
ror::create() | 65 RefPtr<TypeBuilder::Database::Error> errorObject = TypeBuilder::Database::Er
ror::create() |
| 66 .setMessage(error->message()) | 66 .setMessage(error->message()) |
| 67 .setCode(error->code()); | 67 .setCode(error->code()); |
| 68 requestCallback->sendSuccess(0, 0, errorObject.release()); | 68 requestCallback->sendSuccess(0, 0, errorObject.release()); |
| 69 } | 69 } |
| 70 | 70 |
| 71 class StatementCallback : public SQLStatementCallback { | 71 class StatementCallback FINAL : public SQLStatementCallback { |
| 72 public: | 72 public: |
| 73 static PassOwnPtr<StatementCallback> create(PassRefPtr<ExecuteSQLCallback> r
equestCallback) | 73 static PassOwnPtr<StatementCallback> create(PassRefPtr<ExecuteSQLCallback> r
equestCallback) |
| 74 { | 74 { |
| 75 return adoptPtr(new StatementCallback(requestCallback)); | 75 return adoptPtr(new StatementCallback(requestCallback)); |
| 76 } | 76 } |
| 77 | 77 |
| 78 virtual ~StatementCallback() { } | 78 virtual ~StatementCallback() { } |
| 79 | 79 |
| 80 virtual bool handleEvent(SQLTransaction*, SQLResultSet* resultSet) | 80 virtual bool handleEvent(SQLTransaction*, SQLResultSet* resultSet) OVERRIDE |
| 81 { | 81 { |
| 82 SQLResultSetRowList* rowList = resultSet->rows(); | 82 SQLResultSetRowList* rowList = resultSet->rows(); |
| 83 | 83 |
| 84 RefPtr<TypeBuilder::Array<String> > columnNames = TypeBuilder::Array<Str
ing>::create(); | 84 RefPtr<TypeBuilder::Array<String> > columnNames = TypeBuilder::Array<Str
ing>::create(); |
| 85 const Vector<String>& columns = rowList->columnNames(); | 85 const Vector<String>& columns = rowList->columnNames(); |
| 86 for (size_t i = 0; i < columns.size(); ++i) | 86 for (size_t i = 0; i < columns.size(); ++i) |
| 87 columnNames->addItem(columns[i]); | 87 columnNames->addItem(columns[i]); |
| 88 | 88 |
| 89 RefPtr<TypeBuilder::Array<JSONValue> > values = TypeBuilder::Array<JSONV
alue>::create(); | 89 RefPtr<TypeBuilder::Array<JSONValue> > values = TypeBuilder::Array<JSONV
alue>::create(); |
| 90 const Vector<SQLValue>& data = rowList->values(); | 90 const Vector<SQLValue>& data = rowList->values(); |
| 91 for (size_t i = 0; i < data.size(); ++i) { | 91 for (size_t i = 0; i < data.size(); ++i) { |
| 92 const SQLValue& value = rowList->values()[i]; | 92 const SQLValue& value = rowList->values()[i]; |
| 93 switch (value.type()) { | 93 switch (value.type()) { |
| 94 case SQLValue::StringValue: values->addItem(JSONString::create(value
.string())); break; | 94 case SQLValue::StringValue: values->addItem(JSONString::create(value
.string())); break; |
| 95 case SQLValue::NumberValue: values->addItem(JSONBasicValue::create(v
alue.number())); break; | 95 case SQLValue::NumberValue: values->addItem(JSONBasicValue::create(v
alue.number())); break; |
| 96 case SQLValue::NullValue: values->addItem(JSONValue::null()); break; | 96 case SQLValue::NullValue: values->addItem(JSONValue::null()); break; |
| 97 } | 97 } |
| 98 } | 98 } |
| 99 m_requestCallback->sendSuccess(columnNames.release(), values.release(),
0); | 99 m_requestCallback->sendSuccess(columnNames.release(), values.release(),
0); |
| 100 return true; | 100 return true; |
| 101 } | 101 } |
| 102 | 102 |
| 103 private: | 103 private: |
| 104 StatementCallback(PassRefPtr<ExecuteSQLCallback> requestCallback) | 104 StatementCallback(PassRefPtr<ExecuteSQLCallback> requestCallback) |
| 105 : m_requestCallback(requestCallback) { } | 105 : m_requestCallback(requestCallback) { } |
| 106 RefPtr<ExecuteSQLCallback> m_requestCallback; | 106 RefPtr<ExecuteSQLCallback> m_requestCallback; |
| 107 }; | 107 }; |
| 108 | 108 |
| 109 class StatementErrorCallback : public SQLStatementErrorCallback { | 109 class StatementErrorCallback FINAL : public SQLStatementErrorCallback { |
| 110 public: | 110 public: |
| 111 static PassOwnPtr<StatementErrorCallback> create(PassRefPtr<ExecuteSQLCallba
ck> requestCallback) | 111 static PassOwnPtr<StatementErrorCallback> create(PassRefPtr<ExecuteSQLCallba
ck> requestCallback) |
| 112 { | 112 { |
| 113 return adoptPtr(new StatementErrorCallback(requestCallback)); | 113 return adoptPtr(new StatementErrorCallback(requestCallback)); |
| 114 } | 114 } |
| 115 | 115 |
| 116 virtual ~StatementErrorCallback() { } | 116 virtual ~StatementErrorCallback() { } |
| 117 | 117 |
| 118 virtual bool handleEvent(SQLTransaction*, SQLError* error) | 118 virtual bool handleEvent(SQLTransaction*, SQLError* error) OVERRIDE |
| 119 { | 119 { |
| 120 reportTransactionFailed(m_requestCallback.get(), error); | 120 reportTransactionFailed(m_requestCallback.get(), error); |
| 121 return true; | 121 return true; |
| 122 } | 122 } |
| 123 | 123 |
| 124 private: | 124 private: |
| 125 StatementErrorCallback(PassRefPtr<ExecuteSQLCallback> requestCallback) | 125 StatementErrorCallback(PassRefPtr<ExecuteSQLCallback> requestCallback) |
| 126 : m_requestCallback(requestCallback) { } | 126 : m_requestCallback(requestCallback) { } |
| 127 RefPtr<ExecuteSQLCallback> m_requestCallback; | 127 RefPtr<ExecuteSQLCallback> m_requestCallback; |
| 128 }; | 128 }; |
| 129 | 129 |
| 130 class TransactionCallback : public SQLTransactionCallback { | 130 class TransactionCallback FINAL : public SQLTransactionCallback { |
| 131 public: | 131 public: |
| 132 static PassOwnPtr<TransactionCallback> create(const String& sqlStatement, Pa
ssRefPtr<ExecuteSQLCallback> requestCallback) | 132 static PassOwnPtr<TransactionCallback> create(const String& sqlStatement, Pa
ssRefPtr<ExecuteSQLCallback> requestCallback) |
| 133 { | 133 { |
| 134 return adoptPtr(new TransactionCallback(sqlStatement, requestCallback)); | 134 return adoptPtr(new TransactionCallback(sqlStatement, requestCallback)); |
| 135 } | 135 } |
| 136 | 136 |
| 137 virtual ~TransactionCallback() { } | 137 virtual ~TransactionCallback() { } |
| 138 | 138 |
| 139 virtual bool handleEvent(SQLTransaction* transaction) | 139 virtual bool handleEvent(SQLTransaction* transaction) OVERRIDE |
| 140 { | 140 { |
| 141 if (!m_requestCallback->isActive()) | 141 if (!m_requestCallback->isActive()) |
| 142 return true; | 142 return true; |
| 143 | 143 |
| 144 Vector<SQLValue> sqlValues; | 144 Vector<SQLValue> sqlValues; |
| 145 OwnPtr<SQLStatementCallback> callback(StatementCallback::create(m_reques
tCallback.get())); | 145 OwnPtr<SQLStatementCallback> callback(StatementCallback::create(m_reques
tCallback.get())); |
| 146 OwnPtr<SQLStatementErrorCallback> errorCallback(StatementErrorCallback::
create(m_requestCallback.get())); | 146 OwnPtr<SQLStatementErrorCallback> errorCallback(StatementErrorCallback::
create(m_requestCallback.get())); |
| 147 transaction->executeSQL(m_sqlStatement, sqlValues, callback.release(), e
rrorCallback.release(), IGNORE_EXCEPTION); | 147 transaction->executeSQL(m_sqlStatement, sqlValues, callback.release(), e
rrorCallback.release(), IGNORE_EXCEPTION); |
| 148 return true; | 148 return true; |
| 149 } | 149 } |
| 150 private: | 150 private: |
| 151 TransactionCallback(const String& sqlStatement, PassRefPtr<ExecuteSQLCallbac
k> requestCallback) | 151 TransactionCallback(const String& sqlStatement, PassRefPtr<ExecuteSQLCallbac
k> requestCallback) |
| 152 : m_sqlStatement(sqlStatement) | 152 : m_sqlStatement(sqlStatement) |
| 153 , m_requestCallback(requestCallback) { } | 153 , m_requestCallback(requestCallback) { } |
| 154 String m_sqlStatement; | 154 String m_sqlStatement; |
| 155 RefPtr<ExecuteSQLCallback> m_requestCallback; | 155 RefPtr<ExecuteSQLCallback> m_requestCallback; |
| 156 }; | 156 }; |
| 157 | 157 |
| 158 class TransactionErrorCallback : public SQLTransactionErrorCallback { | 158 class TransactionErrorCallback FINAL : public SQLTransactionErrorCallback { |
| 159 public: | 159 public: |
| 160 static PassOwnPtr<TransactionErrorCallback> create(PassRefPtr<ExecuteSQLCall
back> requestCallback) | 160 static PassOwnPtr<TransactionErrorCallback> create(PassRefPtr<ExecuteSQLCall
back> requestCallback) |
| 161 { | 161 { |
| 162 return adoptPtr(new TransactionErrorCallback(requestCallback)); | 162 return adoptPtr(new TransactionErrorCallback(requestCallback)); |
| 163 } | 163 } |
| 164 | 164 |
| 165 virtual ~TransactionErrorCallback() { } | 165 virtual ~TransactionErrorCallback() { } |
| 166 | 166 |
| 167 virtual bool handleEvent(SQLError* error) | 167 virtual bool handleEvent(SQLError* error) OVERRIDE |
| 168 { | 168 { |
| 169 reportTransactionFailed(m_requestCallback.get(), error); | 169 reportTransactionFailed(m_requestCallback.get(), error); |
| 170 return true; | 170 return true; |
| 171 } | 171 } |
| 172 private: | 172 private: |
| 173 TransactionErrorCallback(PassRefPtr<ExecuteSQLCallback> requestCallback) | 173 TransactionErrorCallback(PassRefPtr<ExecuteSQLCallback> requestCallback) |
| 174 : m_requestCallback(requestCallback) { } | 174 : m_requestCallback(requestCallback) { } |
| 175 RefPtr<ExecuteSQLCallback> m_requestCallback; | 175 RefPtr<ExecuteSQLCallback> m_requestCallback; |
| 176 }; | 176 }; |
| 177 | 177 |
| 178 class TransactionSuccessCallback : public VoidCallback { | 178 class TransactionSuccessCallback FINAL : public VoidCallback { |
| 179 public: | 179 public: |
| 180 static PassOwnPtr<TransactionSuccessCallback> create() | 180 static PassOwnPtr<TransactionSuccessCallback> create() |
| 181 { | 181 { |
| 182 return adoptPtr(new TransactionSuccessCallback()); | 182 return adoptPtr(new TransactionSuccessCallback()); |
| 183 } | 183 } |
| 184 | 184 |
| 185 virtual ~TransactionSuccessCallback() { } | 185 virtual ~TransactionSuccessCallback() { } |
| 186 | 186 |
| 187 virtual void handleEvent() { } | 187 virtual void handleEvent() OVERRIDE { } |
| 188 | 188 |
| 189 private: | 189 private: |
| 190 TransactionSuccessCallback() { } | 190 TransactionSuccessCallback() { } |
| 191 }; | 191 }; |
| 192 | 192 |
| 193 } // namespace | 193 } // namespace |
| 194 | 194 |
| 195 void InspectorDatabaseAgent::didOpenDatabase(PassRefPtr<Database> database, cons
t String& domain, const String& name, const String& version) | 195 void InspectorDatabaseAgent::didOpenDatabase(PassRefPtr<Database> database, cons
t String& domain, const String& name, const String& version) |
| 196 { | 196 { |
| 197 if (InspectorDatabaseResource* resource = findByFileName(database->fileName(
))) { | 197 if (InspectorDatabaseResource* resource = findByFileName(database->fileName(
))) { |
| (...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 325 | 325 |
| 326 Database* InspectorDatabaseAgent::databaseForId(const String& databaseId) | 326 Database* InspectorDatabaseAgent::databaseForId(const String& databaseId) |
| 327 { | 327 { |
| 328 DatabaseResourcesMap::iterator it = m_resources.find(databaseId); | 328 DatabaseResourcesMap::iterator it = m_resources.find(databaseId); |
| 329 if (it == m_resources.end()) | 329 if (it == m_resources.end()) |
| 330 return 0; | 330 return 0; |
| 331 return it->value->database(); | 331 return it->value->database(); |
| 332 } | 332 } |
| 333 | 333 |
| 334 } // namespace WebCore | 334 } // namespace WebCore |
| OLD | NEW |