Skip to content
  • alecflett@chromium.org's avatar
    IndexedDB: Switch to new createTransaction call · 26393b19
    alecflett@chromium.org authored
    https://bugs.webkit.org/show_bug.cgi?id=107311
    
    Reviewed by Tony Chang.
    
    Source/WebCore:
    
    Convert frontend callers to use the new backend createTransaction
    call which is the final divorce between the frontend and backend
    transaction objects. This allows an asynchronous call in Chromium
    and allows the front and backend to have their own lifecycle,
    allowing the backend to be cleaned up as soon as a transaction is complete,
    rather than waiting for the JS object to get cleaned up.
    
    No new tests, this is a refactor covered by existing tests.
    
    * Modules/indexeddb/IDBDatabase.cpp:
    (WebCore::IDBDatabase::transaction):
    * Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
    (WebCore::IDBDatabaseBackendImpl::commit):
    (WebCore::IDBDatabaseBackendImpl::abort):
    (WebCore::IDBDatabaseBackendImpl::createTransaction):
    (WebCore::IDBDatabaseBackendImpl::runIntVersionChangeTransaction):
    * Modules/indexeddb/IDBDatabaseCallbacksImpl.cpp:
    (WebCore::IDBDatabaseCallbacksImpl::onAbort):
    (WebCore::IDBDatabaseCallbacksImpl::onComplete):
    * Modules/indexeddb/IDBOpenDBRequest.cpp:
    (WebCore::IDBOpenDBRequest::onUpgradeNeeded):
    * Modules/indexeddb/IDBTransaction.cpp:
    (WebCore::IDBTransaction::create):
    (WebCore::IDBTransaction::IDBTransaction):
    (WebCore::IDBTransaction::setActive):
    (WebCore::IDBTransaction::abort):
    * Modules/indexeddb/IDBTransaction.h:
    (WebCore):
    (IDBTransaction):
    * Modules/indexeddb/IDBTransactionBackendImpl.cpp:
    (WebCore::IDBTransactionBackendImpl::create):
    (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
    (WebCore::IDBTransactionBackendImpl::abort):
    (WebCore::IDBTransactionBackendImpl::commit):
    * Modules/indexeddb/IDBTransactionBackendImpl.h:
    (IDBTransactionBackendImpl):
    (WebCore::IDBTransactionBackendImpl::setCallbacks):
    
    Source/WebKit/chromium:
    
    * public/WebIDBTransaction.h:
    
    Remove an old method that nobody calls.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140219 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    26393b19