Changeset 80315 in webkit


Ignore:
Timestamp:
Mar 3, 2011 8:52:55 PM (13 years ago)
Author:
hans@chromium.org
Message:

2011-03-03 Hans Wennborg <hans@chromium.org>

Reviewed by Jeremy Orlow.

IndexedDB: Move last bits of SQL into IDBBackingStore
https://bugs.webkit.org/show_bug.cgi?id=55668

After this, all SQL code for IndexedDB is in IDBBackingStore.cpp.

No new tests: refactoring only.

  • storage/IDBBackingStore.cpp: (WebCore::IDBBackingStore::createTransaction):
  • storage/IDBBackingStore.h:
  • storage/IDBCursorBackendImpl.h:
  • storage/IDBDatabaseBackendImpl.cpp: (WebCore::IDBDatabaseBackendImpl::backingStore):
  • storage/IDBDatabaseBackendImpl.h:
  • storage/IDBIndexBackendImpl.h:
  • storage/IDBKey.h:
  • storage/IDBObjectStoreBackendImpl.h:
  • storage/IDBTransactionBackendImpl.cpp: (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
  • storage/IDBTransactionBackendImpl.h:
  • storage/IDBTransactionBackendInterface.h:
  • storage/IDBTransactionCoordinator.cpp:
Location:
trunk/Source/WebCore
Files:
13 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r80313 r80315  
     12011-03-03  Hans Wennborg  <hans@chromium.org>
     2
     3        Reviewed by Jeremy Orlow.
     4
     5        IndexedDB: Move last bits of SQL into IDBBackingStore
     6        https://bugs.webkit.org/show_bug.cgi?id=55668
     7
     8        After this, all SQL code for IndexedDB is in IDBBackingStore.cpp.
     9
     10        No new tests: refactoring only.
     11
     12        * storage/IDBBackingStore.cpp:
     13        (WebCore::IDBBackingStore::createTransaction):
     14        * storage/IDBBackingStore.h:
     15        * storage/IDBCursorBackendImpl.h:
     16        * storage/IDBDatabaseBackendImpl.cpp:
     17        (WebCore::IDBDatabaseBackendImpl::backingStore):
     18        * storage/IDBDatabaseBackendImpl.h:
     19        * storage/IDBIndexBackendImpl.h:
     20        * storage/IDBKey.h:
     21        * storage/IDBObjectStoreBackendImpl.h:
     22        * storage/IDBTransactionBackendImpl.cpp:
     23        (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
     24        * storage/IDBTransactionBackendImpl.h:
     25        * storage/IDBTransactionBackendInterface.h:
     26        * storage/IDBTransactionCoordinator.cpp:
     27
    1282011-03-03  Adam Klein  <adamk@chromium.org>
    229
  • trunk/Source/WebCore/storage/IDBBackingStore.cpp

    r80308 r80315  
    967967}
    968968
     969namespace {
     970
     971class TransactionImpl : public IDBBackingStore::Transaction {
     972public:
     973    TransactionImpl(SQLiteDatabase& db)
     974        : m_transaction(db)
     975    {
     976    }
     977
     978    // IDBBackingStore::Transaction
     979    virtual void begin() { m_transaction.begin(); }
     980    virtual void commit() { m_transaction.commit(); }
     981    virtual void rollback() { m_transaction.rollback(); }
     982
     983private:
     984    SQLiteTransaction m_transaction;
     985};
     986
     987} // namespace
     988
     989PassRefPtr<IDBBackingStore::Transaction> IDBBackingStore::createTransaction()
     990{
     991    return adoptRef(new TransactionImpl(m_db));
     992}
     993
    969994} // namespace WebCore
    970995
  • trunk/Source/WebCore/storage/IDBBackingStore.h

    r80220 r80315  
    9292    PassRefPtr<Cursor> openIndexCursor(int64_t indexId, const IDBKeyRange*, IDBCursor::Direction);
    9393
    94     SQLiteDatabase& db() { return m_db; }
     94    class Transaction : public RefCounted<Transaction> {
     95    public:
     96        virtual void begin() = 0;
     97        virtual void commit() = 0;
     98        virtual void rollback() = 0;
     99    };
     100    PassRefPtr<Transaction> createTransaction();
    95101
    96102private:
  • trunk/Source/WebCore/storage/IDBCursorBackendImpl.h

    r80220 r80315  
    4545class IDBBackingStore;
    4646class IDBTransactionBackendInterface;
    47 class SQLiteDatabase;
    48 class SQLiteStatement;
    4947class SerializedScriptValue;
    5048
  • trunk/Source/WebCore/storage/IDBDatabaseBackendImpl.cpp

    r80183 r80315  
    8585}
    8686
    87 SQLiteDatabase& IDBDatabaseBackendImpl::sqliteDatabase() const
    88 {
    89     return m_backingStore->db();
     87PassRefPtr<IDBBackingStore> IDBDatabaseBackendImpl::backingStore() const
     88{
     89    return m_backingStore;
    9090}
    9191
  • trunk/Source/WebCore/storage/IDBDatabaseBackendImpl.h

    r80183 r80315  
    4242class IDBObjectStoreBackendImpl;
    4343class IDBTransactionCoordinator;
    44 class SQLiteDatabase;
    4544
    4645class IDBDatabaseBackendImpl : public IDBDatabaseBackendInterface {
     
    5251    virtual ~IDBDatabaseBackendImpl();
    5352
    54     SQLiteDatabase& sqliteDatabase() const;
     53    PassRefPtr<IDBBackingStore> backingStore() const;
    5554
    5655    static const int64_t InvalidId = 0;
  • trunk/Source/WebCore/storage/IDBIndexBackendImpl.h

    r80220 r80315  
    3737class IDBKey;
    3838class IDBObjectStoreBackendImpl;
    39 class SQLiteDatabase;
    4039class ScriptExecutionContext;
    4140
  • trunk/Source/WebCore/storage/IDBKey.h

    r80308 r80315  
    3434
    3535namespace WebCore {
    36 
    37 class SQLiteStatement;
    3836
    3937class IDBKey : public ThreadSafeShared<IDBKey> {
  • trunk/Source/WebCore/storage/IDBObjectStoreBackendImpl.h

    r80220 r80315  
    3939class IDBIndexBackendImpl;
    4040class IDBTransactionBackendInterface;
    41 class SQLiteDatabase;
    4241class ScriptExecutionContext;
    4342
  • trunk/Source/WebCore/storage/IDBTransactionBackendImpl.cpp

    r77688 r80315  
    2929#if ENABLE(INDEXED_DATABASE)
    3030
     31#include "IDBBackingStore.h"
    3132#include "IDBDatabaseBackendImpl.h"
    3233#include "IDBDatabaseException.h"
    3334#include "IDBTransactionCoordinator.h"
    34 #include "SQLiteDatabase.h"
    3535
    3636namespace WebCore {
     
    4646    , m_state(Unused)
    4747    , m_database(database)
    48     , m_transaction(new SQLiteTransaction(database->sqliteDatabase()))
     48    , m_transaction(database->backingStore()->createTransaction())
    4949    , m_taskTimer(this, &IDBTransactionBackendImpl::taskTimerFired)
    5050    , m_taskEventTimer(this, &IDBTransactionBackendImpl::taskEventTimerFired)
  • trunk/Source/WebCore/storage/IDBTransactionBackendImpl.h

    r77647 r80315  
    3030
    3131#include "DOMStringList.h"
     32#include "IDBBackingStore.h"
    3233#include "IDBTransactionBackendInterface.h"
    3334#include "IDBTransactionCallbacks.h"
    34 #include "SQLiteTransaction.h"
    3535#include "Timer.h"
    3636#include <wtf/Deque.h>
     
    8282    TaskQueue m_abortTaskQueue;
    8383
    84     OwnPtr<SQLiteTransaction> m_transaction;
     84    RefPtr<IDBBackingStore::Transaction> m_transaction;
    8585
    8686    // FIXME: delete the timer once we have threads instead.
  • trunk/Source/WebCore/storage/IDBTransactionBackendInterface.h

    r72765 r80315  
    3939class IDBObjectStoreBackendInterface;
    4040class IDBTransactionCallbacks;
    41 class SQLiteDatabase;
    4241
    4342// This class is shared by IDBTransaction (async) and IDBTransactionSync (sync).
     
    6261
    6362#endif // IDBTransactionBackendInterface_h
    64 
  • trunk/Source/WebCore/storage/IDBTransactionCoordinator.cpp

    r71412 r80315  
    3232#include "IDBObjectStoreBackendInterface.h"
    3333#include "IDBTransactionBackendImpl.h"
    34 #include "SQLiteDatabase.h"
    3534#include "ScriptExecutionContext.h"
    3635
Note: See TracChangeset for help on using the changeset viewer.