More refactoring to make the LevelDB dependencies of IDB more obvious.
authorbeidson@apple.com <beidson@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 25 Sep 2013 18:02:58 +0000 (18:02 +0000)
committerbeidson@apple.com <beidson@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 25 Sep 2013 18:02:58 +0000 (18:02 +0000)
https://bugs.webkit.org/show_bug.cgi?id=121880

Reviewed by Alexey Proskuryakov.

This patch does three things:
1 - Moves some files to the indexeddb/leveldb subdirectory, renaming them in the process.
2 - Renames some classes.
3 - Adds "USE(LEVELDB)" guards in addition to the ENABLE(INDEXED_DATABASE) guard for those files.

Project file updates:
* GNUmakefile.am:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.xcodeproj/project.pbxproj:
* WebCore.vcxproj/WebCore.vcxproj:

File renames, class renames, and USE(LEVELDB) guards:
* Modules/indexeddb/IDBBackingStore.cpp: Removed.
* Modules/indexeddb/IDBFactoryBackendInterface.cpp:
(WebCore::IDBFactoryBackendInterface::create): Add a null return if USE(LEVELDB) is disabled as a stop gap measure until
  there is a non-LevelDB impl.
* Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
* Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBBackingStore.h.
* Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBCursorBackendImpl.cpp.
* Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBCursorBackendImpl.h.
* Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp.
* Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.h.
* Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.cpp.
* Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.h.
* Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp:
* Modules/indexeddb/leveldb/IDBLevelDBCoding.h:
* Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.cpp.
* Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.h.
* Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.cpp.
* Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.h.
* Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBTransactionCoordinator.cpp.
* Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBTransactionCoordinator.h.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@156406 268f45cc-cd09-0410-ab3c-d52691b4dbfc

25 files changed:
Source/WebCore/CMakeLists.txt
Source/WebCore/ChangeLog
Source/WebCore/GNUmakefile.am
Source/WebCore/GNUmakefile.list.am
Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp [deleted file]
Source/WebCore/Modules/indexeddb/IDBFactoryBackendInterface.cpp
Source/WebCore/Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp
Source/WebCore/Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h [moved from Source/WebCore/Modules/indexeddb/IDBBackingStore.h with 98% similarity]
Source/WebCore/Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp [moved from Source/WebCore/Modules/indexeddb/IDBCursorBackendImpl.cpp with 65% similarity]
Source/WebCore/Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h [moved from Source/WebCore/Modules/indexeddb/IDBCursorBackendImpl.h with 66% similarity]
Source/WebCore/Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp [moved from Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp with 73% similarity]
Source/WebCore/Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h [moved from Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.h with 81% similarity]
Source/WebCore/Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp [moved from Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.cpp with 78% similarity]
Source/WebCore/Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h [moved from Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.h with 82% similarity]
Source/WebCore/Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp
Source/WebCore/Modules/indexeddb/leveldb/IDBLevelDBCoding.h
Source/WebCore/Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp [moved from Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.cpp with 72% similarity]
Source/WebCore/Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.h [moved from Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.h with 74% similarity]
Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp [moved from Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.cpp with 78% similarity]
Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h [moved from Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.h with 80% similarity]
Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.cpp [moved from Source/WebCore/Modules/indexeddb/IDBTransactionCoordinator.cpp with 72% similarity]
Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.h [moved from Source/WebCore/Modules/indexeddb/IDBTransactionCoordinator.h with 67% similarity]
Source/WebCore/Target.pri
Source/WebCore/WebCore.vcxproj/WebCore.vcxproj
Source/WebCore/WebCore.xcodeproj/project.pbxproj

index 79c79e602a1793ac92de4bfaf99f98b367e1408d..66794d301d7376679640978faebf83133c03c748 100644 (file)
@@ -5,6 +5,7 @@ set(WebCore_INCLUDE_DIRECTORIES
     "${WEBCORE_DIR}/Modules/gamepad"
     "${WEBCORE_DIR}/Modules/geolocation"
     "${WEBCORE_DIR}/Modules/indexeddb"
+    "${WEBCORE_DIR}/Modules/indexeddb/leveldb"
     "${WEBCORE_DIR}/Modules/indieui"
     "${WEBCORE_DIR}/Modules/mediasource"
     "${WEBCORE_DIR}/Modules/mediastream"
@@ -803,33 +804,33 @@ set(WebCore_SOURCES
     Modules/indexeddb/DOMWindowIndexedDatabase.cpp
     Modules/indexeddb/IDBAny.cpp
     Modules/indexeddb/IDBCursor.cpp
-    Modules/indexeddb/IDBCursorBackendImpl.cpp
     Modules/indexeddb/IDBCursorWithValue.cpp
     Modules/indexeddb/IDBDatabase.cpp
-    Modules/indexeddb/IDBDatabaseBackendImpl.cpp
     Modules/indexeddb/IDBDatabaseCallbacksImpl.cpp
     Modules/indexeddb/IDBDatabaseException.cpp
     Modules/indexeddb/IDBEventDispatcher.cpp
     Modules/indexeddb/IDBFactory.cpp
-    Modules/indexeddb/IDBFactoryBackendImpl.cpp
     Modules/indexeddb/IDBFactoryBackendInterface.cpp
     Modules/indexeddb/IDBIndex.cpp
     Modules/indexeddb/IDBKey.cpp
     Modules/indexeddb/IDBKeyPath.cpp
     Modules/indexeddb/IDBKeyRange.cpp
     Modules/indexeddb/IDBObjectStore.cpp
-    Modules/indexeddb/IDBObjectStoreBackendImpl.cpp
     Modules/indexeddb/IDBOpenDBRequest.cpp
     Modules/indexeddb/IDBPendingTransactionMonitor.cpp
     Modules/indexeddb/IDBRequest.cpp
     Modules/indexeddb/IDBTransaction.cpp
-    Modules/indexeddb/IDBTransactionBackendImpl.cpp
-    Modules/indexeddb/IDBTransactionCoordinator.cpp
     Modules/indexeddb/IDBVersionChangeEvent.cpp
     Modules/indexeddb/PageGroupIndexedDatabase.cpp
     Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.cpp
     Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp
+    Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp
+    Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp
+    Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp
     Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp
+    Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp
+    Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp
+    Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.cpp
 
     Modules/mediasource/MediaSource.cpp
     Modules/mediasource/MediaSourceRegistry.cpp
index 5e132b9c7253b6fb31666dd649313fb33d65bf80..e23cd68a5d8137aba5b1fc194ba98b7e348cca44 100644 (file)
@@ -1,3 +1,45 @@
+2013-09-25  Brady Eidson  <beidson@apple.com>
+
+        More refactoring to make the LevelDB dependencies of IDB more obvious.
+        https://bugs.webkit.org/show_bug.cgi?id=121880
+
+        Reviewed by Alexey Proskuryakov.
+
+        This patch does three things:
+        1 - Moves some files to the indexeddb/leveldb subdirectory, renaming them in the process.
+        2 - Renames some classes.
+        3 - Adds "USE(LEVELDB)" guards in addition to the ENABLE(INDEXED_DATABASE) guard for those files.
+
+        Project file updates:
+        * GNUmakefile.am:
+        * GNUmakefile.list.am:
+        * Target.pri:
+        * WebCore.xcodeproj/project.pbxproj:
+        * WebCore.vcxproj/WebCore.vcxproj:
+
+        File renames, class renames, and USE(LEVELDB) guards:
+        * Modules/indexeddb/IDBBackingStore.cpp: Removed.
+        * Modules/indexeddb/IDBFactoryBackendInterface.cpp:
+        (WebCore::IDBFactoryBackendInterface::create): Add a null return if USE(LEVELDB) is disabled as a stop gap measure until
+          there is a non-LevelDB impl.
+        * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
+        * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBBackingStore.h.
+        * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBCursorBackendImpl.cpp.
+        * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBCursorBackendImpl.h.
+        * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp.
+        * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.h.
+        * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.cpp.
+        * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.h.
+        * Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp:
+        * Modules/indexeddb/leveldb/IDBLevelDBCoding.h:
+        * Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.cpp.
+        * Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.h.
+        * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.cpp.
+        * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.h.
+        * Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBTransactionCoordinator.cpp.
+        * Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.h: Renamed from Source/WebCore/Modules/indexeddb/IDBTransactionCoordinator.h.
+
+
 2013-09-25  Antti Koivisto  <antti@apple.com>
 
         REGRESSION (r156355) Links / interactive elements inside nested tables are unclickable
index 729c7e9d6f9e0c8863d3d246643ca80a812eaf9d..9c20ddf80f3dd51c7bbe2328cc8435bc6d725efb 100644 (file)
@@ -14,6 +14,7 @@ webcore_cppflags += \
        -I$(srcdir)/Source/WebCore/Modules/gamepad \
        -I$(srcdir)/Source/WebCore/Modules/geolocation \
        -I$(srcdir)/Source/WebCore/Modules/indexeddb \
+       -I$(srcdir)/Source/WebCore/Modules/indexeddb/leveldb \
        -I$(srcdir)/Source/WebCore/Modules/indieui \
        -I$(srcdir)/Source/WebCore/Modules/mediasource \
        -I$(srcdir)/Source/WebCore/Modules/mediastream \
index 21b648d2e3388858cc165011a23e0e2ae1fac6ac..a7bc8aa07bbbbc385a2e75091254af702b2557cf 100644 (file)
@@ -1883,17 +1883,17 @@ webcore_modules_sources += \
        Source/WebCore/Modules/indexeddb/IDBAny.cpp \
        Source/WebCore/Modules/indexeddb/IDBAny.h \
        Source/WebCore/Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp \
-       Source/WebCore/Modules/indexeddb/IDBBackingStore.h \
+       Source/WebCore/Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h \
        Source/WebCore/Modules/indexeddb/IDBCallbacks.h \
-       Source/WebCore/Modules/indexeddb/IDBCursorBackendImpl.cpp \
-       Source/WebCore/Modules/indexeddb/IDBCursorBackendImpl.h \
+       Source/WebCore/Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp \
+       Source/WebCore/Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h \
        Source/WebCore/Modules/indexeddb/IDBCursorBackendInterface.h \
        Source/WebCore/Modules/indexeddb/IDBCursor.cpp \
        Source/WebCore/Modules/indexeddb/IDBCursor.h \
        Source/WebCore/Modules/indexeddb/IDBCursorWithValue.cpp \
        Source/WebCore/Modules/indexeddb/IDBCursorWithValue.h \
-       Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp \
-       Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.h \
+       Source/WebCore/Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp \
+       Source/WebCore/Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h \
        Source/WebCore/Modules/indexeddb/IDBDatabaseBackendInterface.h \
        Source/WebCore/Modules/indexeddb/IDBDatabaseCallbacks.h \
        Source/WebCore/Modules/indexeddb/IDBDatabaseCallbacksImpl.cpp \
@@ -1905,8 +1905,8 @@ webcore_modules_sources += \
        Source/WebCore/Modules/indexeddb/IDBDatabase.h \
        Source/WebCore/Modules/indexeddb/IDBEventDispatcher.cpp \
        Source/WebCore/Modules/indexeddb/IDBEventDispatcher.h \
-       Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.cpp \
-       Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.h \
+       Source/WebCore/Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp \
+       Source/WebCore/Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h \
        Source/WebCore/Modules/indexeddb/IDBFactoryBackendInterface.cpp \
        Source/WebCore/Modules/indexeddb/IDBFactoryBackendInterface.h \
        Source/WebCore/Modules/indexeddb/IDBFactory.cpp \
@@ -1923,8 +1923,8 @@ webcore_modules_sources += \
        Source/WebCore/Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp \
        Source/WebCore/Modules/indexeddb/leveldb/IDBLevelDBCoding.h \
        Source/WebCore/Modules/indexeddb/IDBMetadata.h \
-       Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.cpp \
-       Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.h \
+       Source/WebCore/Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp \
+       Source/WebCore/Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.h \
        Source/WebCore/Modules/indexeddb/IDBObjectStore.cpp \
        Source/WebCore/Modules/indexeddb/IDBObjectStore.h \
        Source/WebCore/Modules/indexeddb/IDBOpenDBRequest.cpp \
@@ -1934,10 +1934,10 @@ webcore_modules_sources += \
        Source/WebCore/Modules/indexeddb/IDBRequest.cpp \
        Source/WebCore/Modules/indexeddb/IDBRequest.h \
        Source/WebCore/Modules/indexeddb/IDBTracing.h \
-       Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.cpp \
-       Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.h \
-       Source/WebCore/Modules/indexeddb/IDBTransactionCoordinator.cpp \
-       Source/WebCore/Modules/indexeddb/IDBTransactionCoordinator.h \
+       Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp \
+       Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h \
+       Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.cpp \
+       Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.h \
        Source/WebCore/Modules/indexeddb/IDBTransaction.cpp \
        Source/WebCore/Modules/indexeddb/IDBTransaction.h \
        Source/WebCore/Modules/indexeddb/IDBVersionChangeEvent.cpp \
diff --git a/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp b/Source/WebCore/Modules/indexeddb/IDBBackingStore.cpp
deleted file mode 100644 (file)
index caee8d0..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * Copyright (C) 2013 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1.  Redistributions of source code must retain the above copyright
- *     notice, this list of conditions and the following disclaimer.
- * 2.  Redistributions in binary form must reproduce the above copyright
- *     notice, this list of conditions and the following disclaimer in the
- *     documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-#include "IDBBackingStore.h"
-
-#if ENABLE(INDEXED_DATABASE)
-
-namespace WebCore {
-
-PassRefPtr<IDBBackingStore> IDBBackingStore::open(SecurityOrigin*, const String&, const String&)
-{
-    LOG_ERROR("The default implementation of IDBBackingStore::open is currently empty");
-    return PassRefPtr<IDBBackingStore>();
-}
-
-PassRefPtr<IDBBackingStore> IDBBackingStore::openInMemory(SecurityOrigin*, const String&)
-{
-    LOG_ERROR("The default implementation of IDBBackingStore::openInMemory is currently empty");
-    return PassRefPtr<IDBBackingStore>();
-}
-
-bool IDBBackingStore::getObjectStores(int64_t, IDBDatabaseMetadata::ObjectStoreMap*)
-{
-    LOG_ERROR("The default implementation of IDBBackingStore::getObjectStores is currently empty");
-    return false;
-}
-
-bool IDBBackingStore::Cursor::advance(unsigned long)
-{
-    LOG_ERROR("The default implementation of IDBBackingStore::Cursor::advance is currently empty");
-    return false;
-}
-
-bool IDBBackingStore::Cursor::continueFunction(const IDBKey*, IteratorState)
-{
-    LOG_ERROR("The default implementation of IDBBackingStore::Cursor::continueFunction is currently empty");
-    return false;
-}
-
-IDBBackingStore::Transaction::Transaction(IDBBackingStore* backingStore)
-    : m_backingStore(backingStore)
-{
-}
-
-void IDBBackingStore::Transaction::begin()
-{
-    LOG_ERROR("The default implementation of IDBBackingStore::Transaction::begin is currently empty");
-}
-
-bool IDBBackingStore::Transaction::commit()
-{
-    LOG_ERROR("The default implementation of IDBBackingStore::Transaction::commit is currently empty");
-
-    return false;
-}
-
-void IDBBackingStore::Transaction::rollback()
-{
-    LOG_ERROR("The default implementation of IDBBackingStore::Transaction::rollback is currently empty");
-}
-
-} // namespace WebCore
-
-#endif // ENABLE(INDEXED_DATABASE)
index 995e83d56200556c2aac3be85d6cac8d15e42df5..96344eb5a8f32394b7b4881d7142adb62f0c1a6c 100644 (file)
 #include "config.h"
 #include "IDBFactoryBackendInterface.h"
 
-#include "IDBFactoryBackendImpl.h"
-
 #if ENABLE(INDEXED_DATABASE)
 
+#if USE(LEVELDB)
+#include "IDBFactoryBackendLevelDB.h"
+#endif
+
 namespace WebCore {
 
 PassRefPtr<IDBFactoryBackendInterface> IDBFactoryBackendInterface::create()
 {
-    return IDBFactoryBackendImpl::create();
+    // FIXME: Need a better platform abstraction here, but this stop gap will work for now.
+#if USE(LEVELDB)
+    return IDBFactoryBackendLevelDB::create();
+#else
+    return 0;
+#endif
 }
 
 } // namespace WebCore
index 48e0d3162c63129c5261c59a5206513792082ae3..52505495bb03c046831ae403a1a48b4882bf4718 100644 (file)
@@ -24,9 +24,9 @@
  */
 
 #include "config.h"
-#include "IDBBackingStore.h"
+#include "IDBBackingStoreLevelDB.h"
 
-#if ENABLE(INDEXED_DATABASE)
+#if ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
 #include "FileSystem.h"
 #include "HistogramSupport.h"
@@ -1993,4 +1993,4 @@ void IDBBackingStore::Transaction::rollback()
 
 } // namespace WebCore
 
-#endif // ENABLE(INDEXED_DATABASE)
+#endif // ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
similarity index 98%
rename from Source/WebCore/Modules/indexeddb/IDBBackingStore.h
rename to Source/WebCore/Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h
index 7670fda8734c8552545f06cc44d46544481deb26..11601bfa99162fb7469af7590e8ec1eaee3a6b6f 100644 (file)
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#ifndef IDBBackingStore_h
-#define IDBBackingStore_h
+#ifndef IDBBackingStoreLevelDB_h
+#define IDBBackingStoreLevelDB_h
 
-#if ENABLE(INDEXED_DATABASE)
+#if ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
 #include "IDBKey.h"
 #include "IDBMetadata.h"
@@ -215,6 +215,6 @@ private:
 
 } // namespace WebCore
 
-#endif // ENABLE(INDEXED_DATABASE)
+#endif // ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
-#endif // IDBBackingStore_h
+#endif // IDBBackingStoreLevelDB_h
similarity index 65%
rename from Source/WebCore/Modules/indexeddb/IDBCursorBackendImpl.cpp
rename to Source/WebCore/Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp
index 31a3cf663baaa478c4cbf46c9493d866e58a78ee..86c67d7c70708fb1fd4003c85bef5c66ccda4760 100644 (file)
  */
 
 #include "config.h"
-#include "IDBCursorBackendImpl.h"
+#include "IDBCursorBackendLevelDB.h"
 
-#if ENABLE(INDEXED_DATABASE)
+#if ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
-#include "IDBBackingStore.h"
+#include "IDBBackingStoreLevelDB.h"
 #include "IDBCallbacks.h"
-#include "IDBDatabaseBackendImpl.h"
+#include "IDBDatabaseBackendLevelDB.h"
 #include "IDBDatabaseError.h"
 #include "IDBDatabaseException.h"
 #include "IDBKeyRange.h"
 #include "IDBTracing.h"
-#include "IDBTransactionBackendImpl.h"
+#include "IDBTransactionBackendLevelDB.h"
 #include "SharedBuffer.h"
 
 namespace WebCore {
 
-class IDBCursorBackendImpl::CursorIterationOperation : public IDBTransactionBackendImpl::Operation {
+class IDBCursorBackendLevelDB::CursorIterationOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(PassRefPtr<IDBCursorBackendImpl> cursor, PassRefPtr<IDBKey> key, PassRefPtr<IDBCallbacks> callbacks)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(PassRefPtr<IDBCursorBackendLevelDB> cursor, PassRefPtr<IDBKey> key, PassRefPtr<IDBCallbacks> callbacks)
     {
         return adoptPtr(new CursorIterationOperation(cursor, key, callbacks));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
-    CursorIterationOperation(PassRefPtr<IDBCursorBackendImpl> cursor, PassRefPtr<IDBKey> key, PassRefPtr<IDBCallbacks> callbacks)
+    CursorIterationOperation(PassRefPtr<IDBCursorBackendLevelDB> cursor, PassRefPtr<IDBKey> key, PassRefPtr<IDBCallbacks> callbacks)
         : m_cursor(cursor)
         , m_key(key)
         , m_callbacks(callbacks)
     {
     }
 
-    RefPtr<IDBCursorBackendImpl> m_cursor;
+    RefPtr<IDBCursorBackendLevelDB> m_cursor;
     RefPtr<IDBKey> m_key;
     RefPtr<IDBCallbacks> m_callbacks;
 };
 
-class IDBCursorBackendImpl::CursorAdvanceOperation : public IDBTransactionBackendImpl::Operation {
+class IDBCursorBackendLevelDB::CursorAdvanceOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(PassRefPtr<IDBCursorBackendImpl> cursor, unsigned long count, PassRefPtr<IDBCallbacks> callbacks)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(PassRefPtr<IDBCursorBackendLevelDB> cursor, unsigned long count, PassRefPtr<IDBCallbacks> callbacks)
     {
         return adoptPtr(new CursorAdvanceOperation(cursor, count, callbacks));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
-    CursorAdvanceOperation(PassRefPtr<IDBCursorBackendImpl> cursor, unsigned long count, PassRefPtr<IDBCallbacks> callbacks)
+    CursorAdvanceOperation(PassRefPtr<IDBCursorBackendLevelDB> cursor, unsigned long count, PassRefPtr<IDBCallbacks> callbacks)
         : m_cursor(cursor)
         , m_count(count)
         , m_callbacks(callbacks)
     {
     }
 
-    RefPtr<IDBCursorBackendImpl> m_cursor;
+    RefPtr<IDBCursorBackendLevelDB> m_cursor;
     unsigned long m_count;
     RefPtr<IDBCallbacks> m_callbacks;
 };
 
-class IDBCursorBackendImpl::CursorPrefetchIterationOperation : public IDBTransactionBackendImpl::Operation {
+class IDBCursorBackendLevelDB::CursorPrefetchIterationOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(PassRefPtr<IDBCursorBackendImpl> cursor, int numberToFetch, PassRefPtr<IDBCallbacks> callbacks)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(PassRefPtr<IDBCursorBackendLevelDB> cursor, int numberToFetch, PassRefPtr<IDBCallbacks> callbacks)
     {
         return adoptPtr(new CursorPrefetchIterationOperation(cursor, numberToFetch, callbacks));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
-    CursorPrefetchIterationOperation(PassRefPtr<IDBCursorBackendImpl> cursor, int numberToFetch, PassRefPtr<IDBCallbacks> callbacks)
+    CursorPrefetchIterationOperation(PassRefPtr<IDBCursorBackendLevelDB> cursor, int numberToFetch, PassRefPtr<IDBCallbacks> callbacks)
         : m_cursor(cursor)
         , m_numberToFetch(numberToFetch)
         , m_callbacks(callbacks)
     {
     }
 
-    RefPtr<IDBCursorBackendImpl> m_cursor;
+    RefPtr<IDBCursorBackendLevelDB> m_cursor;
     int m_numberToFetch;
     RefPtr<IDBCallbacks> m_callbacks;
 };
 
-IDBCursorBackendImpl::IDBCursorBackendImpl(PassRefPtr<IDBBackingStore::Cursor> cursor, IndexedDB::CursorType cursorType, IDBDatabaseBackendInterface::TaskType taskType, IDBTransactionBackendImpl* transaction, int64_t objectStoreId)
+IDBCursorBackendLevelDB::IDBCursorBackendLevelDB(PassRefPtr<IDBBackingStore::Cursor> cursor, IndexedDB::CursorType cursorType, IDBDatabaseBackendInterface::TaskType taskType, IDBTransactionBackendLevelDB* transaction, int64_t objectStoreId)
     : m_taskType(taskType)
     , m_cursorType(cursorType)
     , m_database(transaction->database())
@@ -112,27 +112,27 @@ IDBCursorBackendImpl::IDBCursorBackendImpl(PassRefPtr<IDBBackingStore::Cursor> c
     m_transaction->registerOpenCursor(this);
 }
 
-IDBCursorBackendImpl::~IDBCursorBackendImpl()
+IDBCursorBackendLevelDB::~IDBCursorBackendLevelDB()
 {
     m_transaction->unregisterOpenCursor(this);
 }
 
 
-void IDBCursorBackendImpl::continueFunction(PassRefPtr<IDBKey> key, PassRefPtr<IDBCallbacks> prpCallbacks, ExceptionCode&)
+void IDBCursorBackendLevelDB::continueFunction(PassRefPtr<IDBKey> key, PassRefPtr<IDBCallbacks> prpCallbacks, ExceptionCode&)
 {
-    IDB_TRACE("IDBCursorBackendImpl::continue");
+    IDB_TRACE("IDBCursorBackendLevelDB::continue");
     RefPtr<IDBCallbacks> callbacks = prpCallbacks;
     m_transaction->scheduleTask(m_taskType, CursorIterationOperation::create(this, key, callbacks));
 }
 
-void IDBCursorBackendImpl::advance(unsigned long count, PassRefPtr<IDBCallbacks> prpCallbacks, ExceptionCode&)
+void IDBCursorBackendLevelDB::advance(unsigned long count, PassRefPtr<IDBCallbacks> prpCallbacks, ExceptionCode&)
 {
-    IDB_TRACE("IDBCursorBackendImpl::advance");
+    IDB_TRACE("IDBCursorBackendLevelDB::advance");
     RefPtr<IDBCallbacks> callbacks = prpCallbacks;
     m_transaction->scheduleTask(CursorAdvanceOperation::create(this, count, callbacks));
 }
 
-void IDBCursorBackendImpl::CursorAdvanceOperation::perform(IDBTransactionBackendImpl*)
+void IDBCursorBackendLevelDB::CursorAdvanceOperation::perform(IDBTransactionBackendLevelDB*)
 {
     IDB_TRACE("CursorAdvanceOperation");
     if (!m_cursor->m_cursor || !m_cursor->m_cursor->advance(m_count)) {
@@ -144,7 +144,7 @@ void IDBCursorBackendImpl::CursorAdvanceOperation::perform(IDBTransactionBackend
     m_callbacks->onSuccess(m_cursor->key(), m_cursor->primaryKey(), m_cursor->value());
 }
 
-void IDBCursorBackendImpl::CursorIterationOperation::perform(IDBTransactionBackendImpl*)
+void IDBCursorBackendLevelDB::CursorIterationOperation::perform(IDBTransactionBackendLevelDB*)
 {
     IDB_TRACE("CursorIterationOperation");
     if (!m_cursor->m_cursor || !m_cursor->m_cursor->continueFunction(m_key.get())) {
@@ -156,22 +156,22 @@ void IDBCursorBackendImpl::CursorIterationOperation::perform(IDBTransactionBacke
     m_callbacks->onSuccess(m_cursor->key(), m_cursor->primaryKey(), m_cursor->value());
 }
 
-void IDBCursorBackendImpl::deleteFunction(PassRefPtr<IDBCallbacks> prpCallbacks, ExceptionCode&)
+void IDBCursorBackendLevelDB::deleteFunction(PassRefPtr<IDBCallbacks> prpCallbacks, ExceptionCode&)
 {
-    IDB_TRACE("IDBCursorBackendImpl::delete");
+    IDB_TRACE("IDBCursorBackendLevelDB::delete");
     ASSERT(m_transaction->mode() != IndexedDB::TransactionReadOnly);
     RefPtr<IDBKeyRange> keyRange = IDBKeyRange::create(m_cursor->primaryKey());
     m_database->deleteRange(m_transaction->id(), m_objectStoreId, keyRange.release(), prpCallbacks);
 }
 
-void IDBCursorBackendImpl::prefetchContinue(int numberToFetch, PassRefPtr<IDBCallbacks> prpCallbacks, ExceptionCode&)
+void IDBCursorBackendLevelDB::prefetchContinue(int numberToFetch, PassRefPtr<IDBCallbacks> prpCallbacks, ExceptionCode&)
 {
-    IDB_TRACE("IDBCursorBackendImpl::prefetchContinue");
+    IDB_TRACE("IDBCursorBackendLevelDB::prefetchContinue");
     RefPtr<IDBCallbacks> callbacks = prpCallbacks;
     m_transaction->scheduleTask(m_taskType, CursorPrefetchIterationOperation::create(this, numberToFetch, callbacks));
 }
 
-void IDBCursorBackendImpl::CursorPrefetchIterationOperation::perform(IDBTransactionBackendImpl*)
+void IDBCursorBackendLevelDB::CursorPrefetchIterationOperation::perform(IDBTransactionBackendLevelDB*)
 {
     IDB_TRACE("CursorPrefetchIterationOperation");
 
@@ -220,9 +220,9 @@ void IDBCursorBackendImpl::CursorPrefetchIterationOperation::perform(IDBTransact
     m_callbacks->onSuccessWithPrefetch(foundKeys, foundPrimaryKeys, foundValues);
 }
 
-void IDBCursorBackendImpl::prefetchReset(int usedPrefetches, int)
+void IDBCursorBackendLevelDB::prefetchReset(int usedPrefetches, int)
 {
-    IDB_TRACE("IDBCursorBackendImpl::prefetchReset");
+    IDB_TRACE("IDBCursorBackendLevelDB::prefetchReset");
     m_cursor = m_savedCursor;
     m_savedCursor = 0;
 
@@ -236,9 +236,9 @@ void IDBCursorBackendImpl::prefetchReset(int usedPrefetches, int)
     }
 }
 
-void IDBCursorBackendImpl::close()
+void IDBCursorBackendLevelDB::close()
 {
-    IDB_TRACE("IDBCursorBackendImpl::close");
+    IDB_TRACE("IDBCursorBackendLevelDB::close");
     m_closed = true;
     m_cursor.clear();
     m_savedCursor.clear();
@@ -246,4 +246,4 @@ void IDBCursorBackendImpl::close()
 
 } // namespace WebCore
 
-#endif // ENABLE(INDEXED_DATABASE)
+#endif // ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
similarity index 66%
rename from Source/WebCore/Modules/indexeddb/IDBCursorBackendImpl.h
rename to Source/WebCore/Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h
index 55e26bb7d448fd4b1e165a5cbd36e838ca2e3546..7bc77190971d2204685715a0f150852a5e822b97 100644 (file)
  */
 
 
-#ifndef IDBCursorBackendImpl_h
-#define IDBCursorBackendImpl_h
+#ifndef IDBCursorBackendLevelDB_h
+#define IDBCursorBackendLevelDB_h
 
-#if ENABLE(INDEXED_DATABASE)
+#if ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
-#include "IDBBackingStore.h"
+#include "IDBBackingStoreLevelDB.h"
 #include "IDBCursorBackendInterface.h"
-#include "IDBTransactionBackendImpl.h"
+#include "IDBTransactionBackendLevelDB.h"
 #include "SharedBuffer.h"
 #include <wtf/OwnPtr.h>
 #include <wtf/PassOwnPtr.h>
 
 namespace WebCore {
 
-class IDBDatabaseBackendImpl;
+class IDBDatabaseBackendLevelDB;
 class IDBKeyRange;
 
-class IDBCursorBackendImpl : public IDBCursorBackendInterface {
+class IDBCursorBackendLevelDB : public IDBCursorBackendInterface {
 public:
-    static PassRefPtr<IDBCursorBackendImpl> create(PassRefPtr<IDBBackingStore::Cursor> cursor, IndexedDB::CursorType cursorType, IDBTransactionBackendImpl* transaction, int64_t objectStoreId)
+    static PassRefPtr<IDBCursorBackendLevelDB> create(PassRefPtr<IDBBackingStore::Cursor> cursor, IndexedDB::CursorType cursorType, IDBTransactionBackendLevelDB* transaction, int64_t objectStoreId)
     {
-        return adoptRef(new IDBCursorBackendImpl(cursor, cursorType, IDBDatabaseBackendInterface::NormalTask, transaction, objectStoreId));
+        return adoptRef(new IDBCursorBackendLevelDB(cursor, cursorType, IDBDatabaseBackendInterface::NormalTask, transaction, objectStoreId));
     }
-    static PassRefPtr<IDBCursorBackendImpl> create(PassRefPtr<IDBBackingStore::Cursor> cursor, IndexedDB::CursorType cursorType, IDBDatabaseBackendInterface::TaskType taskType, IDBTransactionBackendImpl* transaction, int64_t objectStoreId)
+    static PassRefPtr<IDBCursorBackendLevelDB> create(PassRefPtr<IDBBackingStore::Cursor> cursor, IndexedDB::CursorType cursorType, IDBDatabaseBackendInterface::TaskType taskType, IDBTransactionBackendLevelDB* transaction, int64_t objectStoreId)
     {
-        return adoptRef(new IDBCursorBackendImpl(cursor, cursorType, taskType, transaction, objectStoreId));
+        return adoptRef(new IDBCursorBackendLevelDB(cursor, cursorType, taskType, transaction, objectStoreId));
     }
-    virtual ~IDBCursorBackendImpl();
+    virtual ~IDBCursorBackendLevelDB();
 
     // IDBCursorBackendInterface
     virtual void advance(unsigned long, PassRefPtr<IDBCallbacks>, ExceptionCode&);
@@ -68,7 +68,7 @@ public:
     void close();
 
 private:
-    IDBCursorBackendImpl(PassRefPtr<IDBBackingStore::Cursor>, IndexedDB::CursorType, IDBDatabaseBackendInterface::TaskType, IDBTransactionBackendImpl*, int64_t objectStoreId);
+    IDBCursorBackendLevelDB(PassRefPtr<IDBBackingStore::Cursor>, IndexedDB::CursorType, IDBDatabaseBackendInterface::TaskType, IDBTransactionBackendLevelDB*, int64_t objectStoreId);
 
     class CursorIterationOperation;
     class CursorAdvanceOperation;
@@ -76,8 +76,8 @@ private:
 
     IDBDatabaseBackendInterface::TaskType m_taskType;
     IndexedDB::CursorType m_cursorType;
-    const RefPtr<IDBDatabaseBackendImpl> m_database;
-    const RefPtr<IDBTransactionBackendImpl> m_transaction;
+    const RefPtr<IDBDatabaseBackendLevelDB> m_database;
+    const RefPtr<IDBTransactionBackendLevelDB> m_transaction;
     const int64_t m_objectStoreId;
 
     RefPtr<IDBBackingStore::Cursor> m_cursor; // Must be destroyed before m_transaction.
@@ -88,6 +88,6 @@ private:
 
 } // namespace WebCore
 
-#endif // ENABLE(INDEXED_DATABASE)
+#endif // ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
-#endif // IDBCursorBackendImpl_h
+#endif // IDBCursorBackendLevelDB_h
similarity index 73%
rename from Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.cpp
rename to Source/WebCore/Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp
index 497437a27760e31c91ac3f1b6b47f386449ca35f..9d99dad0c42b3f88b9a923cd1f90d04faa21dd08 100644 (file)
  */
 
 #include "config.h"
-#include "IDBDatabaseBackendImpl.h"
+#include "IDBDatabaseBackendLevelDB.h"
 
-#if ENABLE(INDEXED_DATABASE)
+#if ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
-#include "IDBBackingStore.h"
-#include "IDBCursorBackendImpl.h"
+#include "IDBBackingStoreLevelDB.h"
+#include "IDBCursorBackendLevelDB.h"
 #include "IDBDatabaseException.h"
-#include "IDBFactoryBackendImpl.h"
+#include "IDBFactoryBackendLevelDB.h"
 #include "IDBKeyRange.h"
-#include "IDBObjectStoreBackendImpl.h"
+#include "IDBObjectStoreBackendLevelDB.h"
 #include "IDBTracing.h"
-#include "IDBTransactionBackendImpl.h"
-#include "IDBTransactionCoordinator.h"
+#include "IDBTransactionBackendLevelDB.h"
+#include "IDBTransactionCoordinatorLevelDB.h"
 #include "SharedBuffer.h"
 #include <wtf/TemporaryChange.h>
 
 namespace WebCore {
 
-class CreateObjectStoreOperation : public IDBTransactionBackendImpl::Operation {
+class CreateObjectStoreOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(PassRefPtr<IDBBackingStore> backingStore, const IDBObjectStoreMetadata& objectStoreMetadata)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(PassRefPtr<IDBBackingStore> backingStore, const IDBObjectStoreMetadata& objectStoreMetadata)
     {
         return adoptPtr(new CreateObjectStoreOperation(backingStore, objectStoreMetadata));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
     CreateObjectStoreOperation(PassRefPtr<IDBBackingStore> backingStore, const IDBObjectStoreMetadata& objectStoreMetadata)
         : m_backingStore(backingStore)
@@ -60,13 +60,13 @@ private:
     const IDBObjectStoreMetadata m_objectStoreMetadata;
 };
 
-class DeleteObjectStoreOperation : public IDBTransactionBackendImpl::Operation {
+class DeleteObjectStoreOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(PassRefPtr<IDBBackingStore> backingStore, const IDBObjectStoreMetadata& objectStoreMetadata)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(PassRefPtr<IDBBackingStore> backingStore, const IDBObjectStoreMetadata& objectStoreMetadata)
     {
         return adoptPtr(new DeleteObjectStoreOperation(backingStore, objectStoreMetadata));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
     DeleteObjectStoreOperation(PassRefPtr<IDBBackingStore> backingStore, const IDBObjectStoreMetadata& objectStoreMetadata)
         : m_backingStore(backingStore)
@@ -78,15 +78,15 @@ private:
     const IDBObjectStoreMetadata m_objectStoreMetadata;
 };
 
-class IDBDatabaseBackendImpl::VersionChangeOperation : public IDBTransactionBackendImpl::Operation {
+class IDBDatabaseBackendLevelDB::VersionChangeOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(PassRefPtr<IDBDatabaseBackendImpl> database, int64_t transactionId, int64_t version, PassRefPtr<IDBCallbacks> callbacks, PassRefPtr<IDBDatabaseCallbacks> databaseCallbacks)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(PassRefPtr<IDBDatabaseBackendLevelDB> database, int64_t transactionId, int64_t version, PassRefPtr<IDBCallbacks> callbacks, PassRefPtr<IDBDatabaseCallbacks> databaseCallbacks)
     {
         return adoptPtr(new VersionChangeOperation(database, transactionId, version, callbacks, databaseCallbacks));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
-    VersionChangeOperation(PassRefPtr<IDBDatabaseBackendImpl> database, int64_t transactionId, int64_t version, PassRefPtr<IDBCallbacks> callbacks, PassRefPtr<IDBDatabaseCallbacks> databaseCallbacks)
+    VersionChangeOperation(PassRefPtr<IDBDatabaseBackendLevelDB> database, int64_t transactionId, int64_t version, PassRefPtr<IDBCallbacks> callbacks, PassRefPtr<IDBDatabaseCallbacks> databaseCallbacks)
         : m_database(database)
         , m_transactionId(transactionId)
         , m_version(version)
@@ -95,76 +95,76 @@ private:
     {
     }
 
-    RefPtr<IDBDatabaseBackendImpl> m_database;
+    RefPtr<IDBDatabaseBackendLevelDB> m_database;
     int64_t m_transactionId;
     int64_t m_version;
     RefPtr<IDBCallbacks> m_callbacks;
     RefPtr<IDBDatabaseCallbacks> m_databaseCallbacks;
 };
 
-class CreateObjectStoreAbortOperation : public IDBTransactionBackendImpl::Operation {
+class CreateObjectStoreAbortOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(PassRefPtr<IDBDatabaseBackendImpl> database, int64_t objectStoreId)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(PassRefPtr<IDBDatabaseBackendLevelDB> database, int64_t objectStoreId)
     {
         return adoptPtr(new CreateObjectStoreAbortOperation(database, objectStoreId));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
-    CreateObjectStoreAbortOperation(PassRefPtr<IDBDatabaseBackendImpl> database, int64_t objectStoreId)
+    CreateObjectStoreAbortOperation(PassRefPtr<IDBDatabaseBackendLevelDB> database, int64_t objectStoreId)
         : m_database(database)
         , m_objectStoreId(objectStoreId)
     {
     }
 
-    const RefPtr<IDBDatabaseBackendImpl> m_database;
+    const RefPtr<IDBDatabaseBackendLevelDB> m_database;
     const int64_t m_objectStoreId;
 };
 
-class DeleteObjectStoreAbortOperation : public IDBTransactionBackendImpl::Operation {
+class DeleteObjectStoreAbortOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(PassRefPtr<IDBDatabaseBackendImpl> database, const IDBObjectStoreMetadata& objectStore)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(PassRefPtr<IDBDatabaseBackendLevelDB> database, const IDBObjectStoreMetadata& objectStore)
     {
         return adoptPtr(new DeleteObjectStoreAbortOperation(database, objectStore));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
-    DeleteObjectStoreAbortOperation(PassRefPtr<IDBDatabaseBackendImpl> database, const IDBObjectStoreMetadata& objectStoreMetadata)
+    DeleteObjectStoreAbortOperation(PassRefPtr<IDBDatabaseBackendLevelDB> database, const IDBObjectStoreMetadata& objectStoreMetadata)
         : m_database(database)
         , m_objectStoreMetadata(objectStoreMetadata)
     {
     }
 
-    RefPtr<IDBDatabaseBackendImpl> m_database;
+    RefPtr<IDBDatabaseBackendLevelDB> m_database;
     IDBObjectStoreMetadata m_objectStoreMetadata;
 };
 
-class IDBDatabaseBackendImpl::VersionChangeAbortOperation : public IDBTransactionBackendImpl::Operation {
+class IDBDatabaseBackendLevelDB::VersionChangeAbortOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(PassRefPtr<IDBDatabaseBackendImpl> database, const String& previousVersion, int64_t previousIntVersion)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(PassRefPtr<IDBDatabaseBackendLevelDB> database, const String& previousVersion, int64_t previousIntVersion)
     {
         return adoptPtr(new VersionChangeAbortOperation(database, previousVersion, previousIntVersion));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
-    VersionChangeAbortOperation(PassRefPtr<IDBDatabaseBackendImpl> database, const String& previousVersion, int64_t previousIntVersion)
+    VersionChangeAbortOperation(PassRefPtr<IDBDatabaseBackendLevelDB> database, const String& previousVersion, int64_t previousIntVersion)
         : m_database(database)
         , m_previousVersion(previousVersion)
         , m_previousIntVersion(previousIntVersion)
     {
     }
 
-    RefPtr<IDBDatabaseBackendImpl> m_database;
+    RefPtr<IDBDatabaseBackendLevelDB> m_database;
     String m_previousVersion;
     int64_t m_previousIntVersion;
 };
 
-class CreateIndexOperation : public IDBTransactionBackendImpl::Operation {
+class CreateIndexOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(PassRefPtr<IDBBackingStore> backingStore, int64_t objectStoreId, const IDBIndexMetadata& indexMetadata)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(PassRefPtr<IDBBackingStore> backingStore, int64_t objectStoreId, const IDBIndexMetadata& indexMetadata)
     {
         return adoptPtr(new CreateIndexOperation(backingStore, objectStoreId, indexMetadata));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
     CreateIndexOperation(PassRefPtr<IDBBackingStore> backingStore, int64_t objectStoreId, const IDBIndexMetadata& indexMetadata)
         : m_backingStore(backingStore)
@@ -178,13 +178,13 @@ private:
     const IDBIndexMetadata m_indexMetadata;
 };
 
-class DeleteIndexOperation : public IDBTransactionBackendImpl::Operation {
+class DeleteIndexOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(PassRefPtr<IDBBackingStore> backingStore, int64_t objectStoreId, const IDBIndexMetadata& indexMetadata)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(PassRefPtr<IDBBackingStore> backingStore, int64_t objectStoreId, const IDBIndexMetadata& indexMetadata)
     {
         return adoptPtr(new DeleteIndexOperation(backingStore, objectStoreId, indexMetadata));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
     DeleteIndexOperation(PassRefPtr<IDBBackingStore> backingStore, int64_t objectStoreId, const IDBIndexMetadata& indexMetadata)
         : m_backingStore(backingStore)
@@ -198,53 +198,53 @@ private:
     const IDBIndexMetadata m_indexMetadata;
 };
 
-class CreateIndexAbortOperation : public IDBTransactionBackendImpl::Operation {
+class CreateIndexAbortOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(PassRefPtr<IDBDatabaseBackendImpl> database, int64_t objectStoreId, int64_t indexId)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(PassRefPtr<IDBDatabaseBackendLevelDB> database, int64_t objectStoreId, int64_t indexId)
     {
         return adoptPtr(new CreateIndexAbortOperation(database, objectStoreId, indexId));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
-    CreateIndexAbortOperation(PassRefPtr<IDBDatabaseBackendImpl> database, int64_t objectStoreId, int64_t indexId)
+    CreateIndexAbortOperation(PassRefPtr<IDBDatabaseBackendLevelDB> database, int64_t objectStoreId, int64_t indexId)
         : m_database(database)
         , m_objectStoreId(objectStoreId)
         , m_indexId(indexId)
     {
     }
 
-    const RefPtr<IDBDatabaseBackendImpl> m_database;
+    const RefPtr<IDBDatabaseBackendLevelDB> m_database;
     const int64_t m_objectStoreId;
     const int64_t m_indexId;
 };
 
-class DeleteIndexAbortOperation : public IDBTransactionBackendImpl::Operation {
+class DeleteIndexAbortOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(PassRefPtr<IDBDatabaseBackendImpl> database, int64_t objectStoreId, const IDBIndexMetadata& indexMetadata)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(PassRefPtr<IDBDatabaseBackendLevelDB> database, int64_t objectStoreId, const IDBIndexMetadata& indexMetadata)
     {
         return adoptPtr(new DeleteIndexAbortOperation(database, objectStoreId, indexMetadata));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
-    DeleteIndexAbortOperation(PassRefPtr<IDBDatabaseBackendImpl> database, int64_t objectStoreId, const IDBIndexMetadata& indexMetadata)
+    DeleteIndexAbortOperation(PassRefPtr<IDBDatabaseBackendLevelDB> database, int64_t objectStoreId, const IDBIndexMetadata& indexMetadata)
         : m_database(database)
         , m_objectStoreId(objectStoreId)
         , m_indexMetadata(indexMetadata)
     {
     }
 
-    const RefPtr<IDBDatabaseBackendImpl> m_database;
+    const RefPtr<IDBDatabaseBackendLevelDB> m_database;
     const int64_t m_objectStoreId;
     const IDBIndexMetadata m_indexMetadata;
 };
 
-class GetOperation : public IDBTransactionBackendImpl::Operation {
+class GetOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(PassRefPtr<IDBBackingStore> backingStore, const IDBDatabaseMetadata& metadata, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange> keyRange, IndexedDB::CursorType cursorType, PassRefPtr<IDBCallbacks> callbacks)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(PassRefPtr<IDBBackingStore> backingStore, const IDBDatabaseMetadata& metadata, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange> keyRange, IndexedDB::CursorType cursorType, PassRefPtr<IDBCallbacks> callbacks)
     {
         return adoptPtr(new GetOperation(backingStore, metadata, objectStoreId, indexId, keyRange, cursorType, callbacks));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
     GetOperation(PassRefPtr<IDBBackingStore> backingStore, const IDBDatabaseMetadata& metadata, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange> keyRange, IndexedDB::CursorType cursorType, PassRefPtr<IDBCallbacks> callbacks)
         : m_backingStore(backingStore)
@@ -272,13 +272,13 @@ private:
     const RefPtr<IDBCallbacks> m_callbacks;
 };
 
-class PutOperation : public IDBTransactionBackendImpl::Operation {
+class PutOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(PassRefPtr<IDBBackingStore> backingStore, int64_t databaseId, const IDBObjectStoreMetadata& objectStore, PassRefPtr<SharedBuffer> value, PassRefPtr<IDBKey> key, IDBDatabaseBackendInterface::PutMode putMode, PassRefPtr<IDBCallbacks> callbacks, const Vector<int64_t>& indexIds, const Vector<IDBDatabaseBackendInterface::IndexKeys>& indexKeys)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(PassRefPtr<IDBBackingStore> backingStore, int64_t databaseId, const IDBObjectStoreMetadata& objectStore, PassRefPtr<SharedBuffer> value, PassRefPtr<IDBKey> key, IDBDatabaseBackendInterface::PutMode putMode, PassRefPtr<IDBCallbacks> callbacks, const Vector<int64_t>& indexIds, const Vector<IDBDatabaseBackendInterface::IndexKeys>& indexKeys)
     {
         return adoptPtr(new PutOperation(backingStore, databaseId, objectStore, value, key, putMode, callbacks, indexIds, indexKeys));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
     PutOperation(PassRefPtr<IDBBackingStore> backingStore, int64_t databaseId, const IDBObjectStoreMetadata& objectStore, PassRefPtr<SharedBuffer>& value, PassRefPtr<IDBKey> key, IDBDatabaseBackendInterface::PutMode putMode, PassRefPtr<IDBCallbacks> callbacks, const Vector<int64_t>& indexIds, const Vector<IDBDatabaseBackendInterface::IndexKeys>& indexKeys)
         : m_backingStore(backingStore)
@@ -304,13 +304,13 @@ private:
     const Vector<IDBDatabaseBackendInterface::IndexKeys> m_indexKeys;
 };
 
-class SetIndexesReadyOperation : public IDBTransactionBackendImpl::Operation {
+class SetIndexesReadyOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(size_t indexCount)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(size_t indexCount)
     {
         return adoptPtr(new SetIndexesReadyOperation(indexCount));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
     SetIndexesReadyOperation(size_t indexCount)
         : m_indexCount(indexCount)
@@ -320,13 +320,13 @@ private:
     const size_t m_indexCount;
 };
 
-class OpenCursorOperation : public IDBTransactionBackendImpl::Operation {
+class OpenCursorOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(PassRefPtr<IDBBackingStore> backingStore, int64_t databaseId, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange> keyRange, IndexedDB::CursorDirection direction, IndexedDB::CursorType cursorType, IDBDatabaseBackendInterface::TaskType taskType, PassRefPtr<IDBCallbacks> callbacks)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(PassRefPtr<IDBBackingStore> backingStore, int64_t databaseId, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange> keyRange, IndexedDB::CursorDirection direction, IndexedDB::CursorType cursorType, IDBDatabaseBackendInterface::TaskType taskType, PassRefPtr<IDBCallbacks> callbacks)
     {
         return adoptPtr(new OpenCursorOperation(backingStore, databaseId, objectStoreId, indexId, keyRange, direction, cursorType, taskType, callbacks));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
     OpenCursorOperation(PassRefPtr<IDBBackingStore> backingStore, int64_t databaseId, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange> keyRange, IndexedDB::CursorDirection direction, IndexedDB::CursorType cursorType, IDBDatabaseBackendInterface::TaskType taskType, PassRefPtr<IDBCallbacks> callbacks)
         : m_backingStore(backingStore)
@@ -352,13 +352,13 @@ private:
     const RefPtr<IDBCallbacks> m_callbacks;
 };
 
-class CountOperation : public IDBTransactionBackendImpl::Operation {
+class CountOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(PassRefPtr<IDBBackingStore> backingStore, int64_t databaseId, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange> keyRange, PassRefPtr<IDBCallbacks> callbacks)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(PassRefPtr<IDBBackingStore> backingStore, int64_t databaseId, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange> keyRange, PassRefPtr<IDBCallbacks> callbacks)
     {
         return adoptPtr(new CountOperation(backingStore, databaseId, objectStoreId, indexId, keyRange, callbacks));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
     CountOperation(PassRefPtr<IDBBackingStore> backingStore, int64_t databaseId, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange> keyRange, PassRefPtr<IDBCallbacks> callbacks)
         : m_backingStore(backingStore)
@@ -378,13 +378,13 @@ private:
     const RefPtr<IDBCallbacks> m_callbacks;
 };
 
-class DeleteRangeOperation : public IDBTransactionBackendImpl::Operation {
+class DeleteRangeOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(PassRefPtr<IDBBackingStore> backingStore, int64_t databaseId, int64_t objectStoreId, PassRefPtr<IDBKeyRange> keyRange, PassRefPtr<IDBCallbacks> callbacks)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(PassRefPtr<IDBBackingStore> backingStore, int64_t databaseId, int64_t objectStoreId, PassRefPtr<IDBKeyRange> keyRange, PassRefPtr<IDBCallbacks> callbacks)
     {
         return adoptPtr(new DeleteRangeOperation(backingStore, databaseId, objectStoreId, keyRange, callbacks));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
     DeleteRangeOperation(PassRefPtr<IDBBackingStore> backingStore, int64_t databaseId, int64_t objectStoreId, PassRefPtr<IDBKeyRange> keyRange, PassRefPtr<IDBCallbacks> callbacks)
         : m_backingStore(backingStore)
@@ -402,13 +402,13 @@ private:
     const RefPtr<IDBCallbacks> m_callbacks;
 };
 
-class ClearOperation : public IDBTransactionBackendImpl::Operation {
+class ClearOperation : public IDBTransactionBackendLevelDB::Operation {
 public:
-    static PassOwnPtr<IDBTransactionBackendImpl::Operation> create(PassRefPtr<IDBBackingStore> backingStore, int64_t databaseId, int64_t objectStoreId, PassRefPtr<IDBCallbacks> callbacks)
+    static PassOwnPtr<IDBTransactionBackendLevelDB::Operation> create(PassRefPtr<IDBBackingStore> backingStore, int64_t databaseId, int64_t objectStoreId, PassRefPtr<IDBCallbacks> callbacks)
     {
         return adoptPtr(new ClearOperation(backingStore, databaseId, objectStoreId, callbacks));
     }
-    virtual void perform(IDBTransactionBackendImpl*);
+    virtual void perform(IDBTransactionBackendLevelDB*);
 private:
     ClearOperation(PassRefPtr<IDBBackingStore> backingStore, int64_t databaseId, int64_t objectStoreId, PassRefPtr<IDBCallbacks> callbacks)
         : m_backingStore(backingStore)
@@ -424,7 +424,7 @@ private:
     const RefPtr<IDBCallbacks> m_callbacks;
 };
 
-class IDBDatabaseBackendImpl::PendingOpenCall {
+class IDBDatabaseBackendLevelDB::PendingOpenCall {
 public:
     static PassOwnPtr<PendingOpenCall> create(PassRefPtr<IDBCallbacks> callbacks, PassRefPtr<IDBDatabaseCallbacks> databaseCallbacks, int64_t transactionId, int64_t version)
     {
@@ -449,7 +449,7 @@ private:
     const int64_t m_transactionId;
 };
 
-class IDBDatabaseBackendImpl::PendingDeleteCall {
+class IDBDatabaseBackendLevelDB::PendingDeleteCall {
 public:
     static PassOwnPtr<PendingDeleteCall> create(PassRefPtr<IDBCallbacks> callbacks)
     {
@@ -465,9 +465,9 @@ private:
     RefPtr<IDBCallbacks> m_callbacks;
 };
 
-PassRefPtr<IDBDatabaseBackendImpl> IDBDatabaseBackendImpl::create(const String& name, IDBBackingStore* database, IDBFactoryBackendImpl* factory, const String& uniqueIdentifier)
+PassRefPtr<IDBDatabaseBackendLevelDB> IDBDatabaseBackendLevelDB::create(const String& name, IDBBackingStore* database, IDBFactoryBackendLevelDB* factory, const String& uniqueIdentifier)
 {
-    RefPtr<IDBDatabaseBackendImpl> backend = adoptRef(new IDBDatabaseBackendImpl(name, database, factory, uniqueIdentifier));
+    RefPtr<IDBDatabaseBackendLevelDB> backend = adoptRef(new IDBDatabaseBackendLevelDB(name, database, factory, uniqueIdentifier));
     if (!backend->openInternal())
         return 0;
     return backend.release();
@@ -477,18 +477,18 @@ namespace {
 const char* NoStringVersion = "";
 }
 
-IDBDatabaseBackendImpl::IDBDatabaseBackendImpl(const String& name, IDBBackingStore* backingStore, IDBFactoryBackendImpl* factory, const String& uniqueIdentifier)
+IDBDatabaseBackendLevelDB::IDBDatabaseBackendLevelDB(const String& name, IDBBackingStore* backingStore, IDBFactoryBackendLevelDB* factory, const String& uniqueIdentifier)
     : m_backingStore(backingStore)
     , m_metadata(name, InvalidId, NoStringVersion, IDBDatabaseMetadata::NoIntVersion, InvalidId)
     , m_identifier(uniqueIdentifier)
     , m_factory(factory)
-    , m_transactionCoordinator(IDBTransactionCoordinator::create())
+    , m_transactionCoordinator(IDBTransactionCoordinatorLevelDB::create())
     , m_closingConnection(false)
 {
     ASSERT(!m_metadata.name.isNull());
 }
 
-void IDBDatabaseBackendImpl::addObjectStore(const IDBObjectStoreMetadata& objectStore, int64_t newMaxObjectStoreId)
+void IDBDatabaseBackendLevelDB::addObjectStore(const IDBObjectStoreMetadata& objectStore, int64_t newMaxObjectStoreId)
 {
     ASSERT(!m_metadata.objectStores.contains(objectStore.id));
     if (newMaxObjectStoreId != IDBObjectStoreMetadata::InvalidId) {
@@ -498,13 +498,13 @@ void IDBDatabaseBackendImpl::addObjectStore(const IDBObjectStoreMetadata& object
     m_metadata.objectStores.set(objectStore.id, objectStore);
 }
 
-void IDBDatabaseBackendImpl::removeObjectStore(int64_t objectStoreId)
+void IDBDatabaseBackendLevelDB::removeObjectStore(int64_t objectStoreId)
 {
     ASSERT(m_metadata.objectStores.contains(objectStoreId));
     m_metadata.objectStores.remove(objectStoreId);
 }
 
-void IDBDatabaseBackendImpl::addIndex(int64_t objectStoreId, const IDBIndexMetadata& index, int64_t newMaxIndexId)
+void IDBDatabaseBackendLevelDB::addIndex(int64_t objectStoreId, const IDBIndexMetadata& index, int64_t newMaxIndexId)
 {
     ASSERT(m_metadata.objectStores.contains(objectStoreId));
     IDBObjectStoreMetadata objectStore = m_metadata.objectStores.get(objectStoreId);
@@ -518,7 +518,7 @@ void IDBDatabaseBackendImpl::addIndex(int64_t objectStoreId, const IDBIndexMetad
     m_metadata.objectStores.set(objectStoreId, objectStore);
 }
 
-void IDBDatabaseBackendImpl::removeIndex(int64_t objectStoreId, int64_t indexId)
+void IDBDatabaseBackendLevelDB::removeIndex(int64_t objectStoreId, int64_t indexId)
 {
     ASSERT(m_metadata.objectStores.contains(objectStoreId));
     IDBObjectStoreMetadata objectStore = m_metadata.objectStores.get(objectStoreId);
@@ -528,7 +528,7 @@ void IDBDatabaseBackendImpl::removeIndex(int64_t objectStoreId, int64_t indexId)
     m_metadata.objectStores.set(objectStoreId, objectStore);
 }
 
-bool IDBDatabaseBackendImpl::openInternal()
+bool IDBDatabaseBackendLevelDB::openInternal()
 {
     bool success = false;
     bool ok = m_backingStore->getIDBDatabaseMetaData(m_metadata.name, &m_metadata, success);
@@ -541,19 +541,19 @@ bool IDBDatabaseBackendImpl::openInternal()
     return m_backingStore->createIDBDatabaseMetaData(m_metadata.name, m_metadata.version, m_metadata.intVersion, m_metadata.id);
 }
 
-IDBDatabaseBackendImpl::~IDBDatabaseBackendImpl()
+IDBDatabaseBackendLevelDB::~IDBDatabaseBackendLevelDB()
 {
 }
 
-PassRefPtr<IDBBackingStore> IDBDatabaseBackendImpl::backingStore() const
+PassRefPtr<IDBBackingStore> IDBDatabaseBackendLevelDB::backingStore() const
 {
     return m_backingStore;
 }
 
-void IDBDatabaseBackendImpl::createObjectStore(int64_t transactionId, int64_t objectStoreId, const String& name, const IDBKeyPath& keyPath, bool autoIncrement)
+void IDBDatabaseBackendLevelDB::createObjectStore(int64_t transactionId, int64_t objectStoreId, const String& name, const IDBKeyPath& keyPath, bool autoIncrement)
 {
-    IDB_TRACE("IDBDatabaseBackendImpl::createObjectStore");
-    IDBTransactionBackendImpl* transaction = m_transactions.get(transactionId);
+    IDB_TRACE("IDBDatabaseBackendLevelDB::createObjectStore");
+    IDBTransactionBackendLevelDB* transaction = m_transactions.get(transactionId);
     if (!transaction)
         return;
     ASSERT(transaction->mode() == IndexedDB::TransactionVersionChange);
@@ -566,7 +566,7 @@ void IDBDatabaseBackendImpl::createObjectStore(int64_t transactionId, int64_t ob
     addObjectStore(objectStoreMetadata, objectStoreId);
 }
 
-void CreateObjectStoreOperation::perform(IDBTransactionBackendImpl* transaction)
+void CreateObjectStoreOperation::perform(IDBTransactionBackendLevelDB* transaction)
 {
     IDB_TRACE("CreateObjectStoreOperation");
     if (!m_backingStore->createObjectStore(transaction->backingStoreTransaction(), transaction->database()->id(), m_objectStoreMetadata.id, m_objectStoreMetadata.name, m_objectStoreMetadata.keyPath, m_objectStoreMetadata.autoIncrement)) {
@@ -576,10 +576,10 @@ void CreateObjectStoreOperation::perform(IDBTransactionBackendImpl* transaction)
     }
 }
 
-void IDBDatabaseBackendImpl::deleteObjectStore(int64_t transactionId, int64_t objectStoreId)
+void IDBDatabaseBackendLevelDB::deleteObjectStore(int64_t transactionId, int64_t objectStoreId)
 {
-    IDB_TRACE("IDBDatabaseBackendImpl::deleteObjectStore");
-    IDBTransactionBackendImpl* transaction = m_transactions.get(transactionId);
+    IDB_TRACE("IDBDatabaseBackendLevelDB::deleteObjectStore");
+    IDBTransactionBackendLevelDB* transaction = m_transactions.get(transactionId);
     if (!transaction)
         return;
     ASSERT(transaction->mode() == IndexedDB::TransactionVersionChange);
@@ -591,10 +591,10 @@ void IDBDatabaseBackendImpl::deleteObjectStore(int64_t transactionId, int64_t ob
     removeObjectStore(objectStoreId);
 }
 
-void IDBDatabaseBackendImpl::createIndex(int64_t transactionId, int64_t objectStoreId, int64_t indexId, const String& name, const IDBKeyPath& keyPath, bool unique, bool multiEntry)
+void IDBDatabaseBackendLevelDB::createIndex(int64_t transactionId, int64_t objectStoreId, int64_t indexId, const String& name, const IDBKeyPath& keyPath, bool unique, bool multiEntry)
 {
-    IDB_TRACE("IDBDatabaseBackendImpl::createIndex");
-    IDBTransactionBackendImpl* transaction = m_transactions.get(transactionId);
+    IDB_TRACE("IDBDatabaseBackendLevelDB::createIndex");
+    IDBTransactionBackendLevelDB* transaction = m_transactions.get(transactionId);
     if (!transaction)
         return;
     ASSERT(transaction->mode() == IndexedDB::TransactionVersionChange);
@@ -610,7 +610,7 @@ void IDBDatabaseBackendImpl::createIndex(int64_t transactionId, int64_t objectSt
     addIndex(objectStoreId, indexMetadata, indexId);
 }
 
-void CreateIndexOperation::perform(IDBTransactionBackendImpl* transaction)
+void CreateIndexOperation::perform(IDBTransactionBackendLevelDB* transaction)
 {
     IDB_TRACE("CreateIndexOperation");
     if (!m_backingStore->createIndex(transaction->backingStoreTransaction(), transaction->database()->id(), m_objectStoreId, m_indexMetadata.id, m_indexMetadata.name, m_indexMetadata.keyPath, m_indexMetadata.unique, m_indexMetadata.multiEntry)) {
@@ -619,17 +619,17 @@ void CreateIndexOperation::perform(IDBTransactionBackendImpl* transaction)
     }
 }
 
-void CreateIndexAbortOperation::perform(IDBTransactionBackendImpl* transaction)
+void CreateIndexAbortOperation::perform(IDBTransactionBackendLevelDB* transaction)
 {
     IDB_TRACE("CreateIndexAbortOperation");
     ASSERT_UNUSED(transaction, !transaction);
     m_database->removeIndex(m_objectStoreId, m_indexId);
 }
 
-void IDBDatabaseBackendImpl::deleteIndex(int64_t transactionId, int64_t objectStoreId, int64_t indexId)
+void IDBDatabaseBackendLevelDB::deleteIndex(int64_t transactionId, int64_t objectStoreId, int64_t indexId)
 {
-    IDB_TRACE("IDBDatabaseBackendImpl::deleteIndex");
-    IDBTransactionBackendImpl* transaction = m_transactions.get(transactionId);
+    IDB_TRACE("IDBDatabaseBackendLevelDB::deleteIndex");
+    IDBTransactionBackendLevelDB* transaction = m_transactions.get(transactionId);
     if (!transaction)
         return;
     ASSERT(transaction->mode() == IndexedDB::TransactionVersionChange);
@@ -645,7 +645,7 @@ void IDBDatabaseBackendImpl::deleteIndex(int64_t transactionId, int64_t objectSt
     removeIndex(objectStoreId, indexId);
 }
 
-void DeleteIndexOperation::perform(IDBTransactionBackendImpl* transaction)
+void DeleteIndexOperation::perform(IDBTransactionBackendLevelDB* transaction)
 {
     IDB_TRACE("DeleteIndexOperation");
     bool ok = m_backingStore->deleteIndex(transaction->backingStoreTransaction(), transaction->database()->id(), m_objectStoreId, m_indexMetadata.id);
@@ -655,45 +655,45 @@ void DeleteIndexOperation::perform(IDBTransactionBackendImpl* transaction)
     }
 }
 
-void DeleteIndexAbortOperation::perform(IDBTransactionBackendImpl* transaction)
+void DeleteIndexAbortOperation::perform(IDBTransactionBackendLevelDB* transaction)
 {
     IDB_TRACE("DeleteIndexAbortOperation");
     ASSERT_UNUSED(transaction, !transaction);
     m_database->addIndex(m_objectStoreId, m_indexMetadata, IDBIndexMetadata::InvalidId);
 }
 
-void IDBDatabaseBackendImpl::commit(int64_t transactionId)
+void IDBDatabaseBackendLevelDB::commit(int64_t transactionId)
 {
     // The frontend suggests that we commit, but we may have previously initiated an abort, and so have disposed of the transaction. onAbort has already been dispatched to the frontend, so it will find out about that asynchronously.
     if (m_transactions.contains(transactionId))
         m_transactions.get(transactionId)->commit();
 }
 
-void IDBDatabaseBackendImpl::abort(int64_t transactionId)
+void IDBDatabaseBackendLevelDB::abort(int64_t transactionId)
 {
     // If the transaction is unknown, then it has already been aborted by the backend before this call so it is safe to ignore it.
     if (m_transactions.contains(transactionId))
         m_transactions.get(transactionId)->abort();
 }
 
-void IDBDatabaseBackendImpl::abort(int64_t transactionId, PassRefPtr<IDBDatabaseError> error)
+void IDBDatabaseBackendLevelDB::abort(int64_t transactionId, PassRefPtr<IDBDatabaseError> error)
 {
     // If the transaction is unknown, then it has already been aborted by the backend before this call so it is safe to ignore it.
     if (m_transactions.contains(transactionId))
         m_transactions.get(transactionId)->abort(error);
 }
 
-void IDBDatabaseBackendImpl::get(int64_t transactionId, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange> keyRange, bool keyOnly, PassRefPtr<IDBCallbacks> callbacks)
+void IDBDatabaseBackendLevelDB::get(int64_t transactionId, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange> keyRange, bool keyOnly, PassRefPtr<IDBCallbacks> callbacks)
 {
-    IDB_TRACE("IDBDatabaseBackendImpl::get");
-    IDBTransactionBackendImpl* transaction = m_transactions.get(transactionId);
+    IDB_TRACE("IDBDatabaseBackendLevelDB::get");
+    IDBTransactionBackendLevelDB* transaction = m_transactions.get(transactionId);
     if (!transaction)
         return;
 
     transaction->scheduleTask(GetOperation::create(m_backingStore, m_metadata, objectStoreId, indexId, keyRange, keyOnly ? IndexedDB::CursorKeyOnly : IndexedDB::CursorKeyAndValue, callbacks));
 }
 
-void GetOperation::perform(IDBTransactionBackendImpl* transaction)
+void GetOperation::perform(IDBTransactionBackendLevelDB* transaction)
 {
     IDB_TRACE("GetOperation");
 
@@ -785,10 +785,10 @@ void GetOperation::perform(IDBTransactionBackendImpl* transaction)
     m_callbacks->onSuccess(SharedBuffer::adoptVector(value));
 }
 
-void IDBDatabaseBackendImpl::put(int64_t transactionId, int64_t objectStoreId, PassRefPtr<SharedBuffer> value, PassRefPtr<IDBKey> key, PutMode putMode, PassRefPtr<IDBCallbacks> callbacks, const Vector<int64_t>& indexIds, const Vector<IndexKeys>& indexKeys)
+void IDBDatabaseBackendLevelDB::put(int64_t transactionId, int64_t objectStoreId, PassRefPtr<SharedBuffer> value, PassRefPtr<IDBKey> key, PutMode putMode, PassRefPtr<IDBCallbacks> callbacks, const Vector<int64_t>& indexIds, const Vector<IndexKeys>& indexKeys)
 {
-    IDB_TRACE("IDBDatabaseBackendImpl::put");
-    IDBTransactionBackendImpl* transaction = m_transactions.get(transactionId);
+    IDB_TRACE("IDBDatabaseBackendLevelDB::put");
+    IDBTransactionBackendLevelDB* transaction = m_transactions.get(transactionId);
     if (!transaction)
         return;
     ASSERT(transaction->mode() != IndexedDB::TransactionReadOnly);
@@ -800,7 +800,7 @@ void IDBDatabaseBackendImpl::put(int64_t transactionId, int64_t objectStoreId, P
     transaction->scheduleTask(PutOperation::create(m_backingStore, id(), objectStoreMetadata, value, key, putMode, callbacks, indexIds, indexKeys));
 }
 
-void PutOperation::perform(IDBTransactionBackendImpl* transaction)
+void PutOperation::perform(IDBTransactionBackendLevelDB* transaction)
 {
     IDB_TRACE("PutOperation");
     ASSERT(transaction->mode() != IndexedDB::TransactionReadOnly);
@@ -809,7 +809,7 @@ void PutOperation::perform(IDBTransactionBackendImpl* transaction)
 
     RefPtr<IDBKey> key;
     if (m_putMode != IDBDatabaseBackendInterface::CursorUpdate && m_objectStore.autoIncrement && !m_key) {
-        RefPtr<IDBKey> autoIncKey = IDBObjectStoreBackendImpl::generateKey(m_backingStore, transaction, m_databaseId, m_objectStore.id);
+        RefPtr<IDBKey> autoIncKey = IDBObjectStoreBackendLevelDB::generateKey(m_backingStore, transaction, m_databaseId, m_objectStore.id);
         keyWasGenerated = true;
         if (!autoIncKey->isValid()) {
             m_callbacks->onError(IDBDatabaseError::create(IDBDatabaseException::ConstraintError, "Maximum key generator value reached."));
@@ -835,10 +835,10 @@ void PutOperation::perform(IDBTransactionBackendImpl* transaction)
         }
     }
 
-    Vector<OwnPtr<IDBObjectStoreBackendImpl::IndexWriter> > indexWriters;
+    Vector<OwnPtr<IDBObjectStoreBackendLevelDB::IndexWriter> > indexWriters;
     String errorMessage;
     bool obeysConstraints = false;
-    bool backingStoreSuccess = IDBObjectStoreBackendImpl::makeIndexWriters(transaction, m_backingStore.get(), m_databaseId, m_objectStore, key, keyWasGenerated, m_indexIds, m_indexKeys, &indexWriters, &errorMessage, obeysConstraints);
+    bool backingStoreSuccess = IDBObjectStoreBackendLevelDB::makeIndexWriters(transaction, m_backingStore.get(), m_databaseId, m_objectStore, key, keyWasGenerated, m_indexIds, m_indexKeys, &indexWriters, &errorMessage, obeysConstraints);
     if (!backingStoreSuccess) {
         m_callbacks->onError(IDBDatabaseError::create(IDBDatabaseException::UnknownError, "Internal error: backing store error updating index keys."));
         return;
@@ -856,12 +856,12 @@ void PutOperation::perform(IDBTransactionBackendImpl* transaction)
     }
 
     for (size_t i = 0; i < indexWriters.size(); ++i) {
-        IDBObjectStoreBackendImpl::IndexWriter* indexWriter = indexWriters[i].get();
+        IDBObjectStoreBackendLevelDB::IndexWriter* indexWriter = indexWriters[i].get();
         indexWriter->writeIndexKeys(recordIdentifier, *m_backingStore, transaction->backingStoreTransaction(), m_databaseId, m_objectStore.id);
     }
 
     if (m_objectStore.autoIncrement && m_putMode != IDBDatabaseBackendInterface::CursorUpdate && key->type() == IDBKey::NumberType) {
-        bool ok = IDBObjectStoreBackendImpl::updateKeyGenerator(m_backingStore, transaction, m_databaseId, m_objectStore.id, key.get(), !keyWasGenerated);
+        bool ok = IDBObjectStoreBackendLevelDB::updateKeyGenerator(m_backingStore, transaction, m_databaseId, m_objectStore.id, key.get(), !keyWasGenerated);
         if (!ok) {
             m_callbacks->onError(IDBDatabaseError::create(IDBDatabaseException::UnknownError, "Internal error updating key generator."));
             return;
@@ -871,10 +871,10 @@ void PutOperation::perform(IDBTransactionBackendImpl* transaction)
     m_callbacks->onSuccess(key.release());
 }
 
-void IDBDatabaseBackendImpl::setIndexKeys(int64_t transactionId, int64_t objectStoreId, PassRefPtr<IDBKey> prpPrimaryKey, const Vector<int64_t>& indexIds, const Vector<IndexKeys>& indexKeys)
+void IDBDatabaseBackendLevelDB::setIndexKeys(int64_t transactionId, int64_t objectStoreId, PassRefPtr<IDBKey> prpPrimaryKey, const Vector<int64_t>& indexIds, const Vector<IndexKeys>& indexKeys)
 {
-    IDB_TRACE("IDBDatabaseBackendImpl::setIndexKeys");
-    IDBTransactionBackendImpl* transaction = m_transactions.get(transactionId);
+    IDB_TRACE("IDBDatabaseBackendLevelDB::setIndexKeys");
+    IDBTransactionBackendLevelDB* transaction = m_transactions.get(transactionId);
     if (!transaction)
         return;
     ASSERT(transaction->mode() == IndexedDB::TransactionVersionChange);
@@ -895,12 +895,12 @@ void IDBDatabaseBackendImpl::setIndexKeys(int64_t transactionId, int64_t objectS
         return;
     }
 
-    Vector<OwnPtr<IDBObjectStoreBackendImpl::IndexWriter> > indexWriters;
+    Vector<OwnPtr<IDBObjectStoreBackendLevelDB::IndexWriter> > indexWriters;
     String errorMessage;
     bool obeysConstraints = false;
     ASSERT(m_metadata.objectStores.contains(objectStoreId));
     const IDBObjectStoreMetadata& objectStoreMetadata = m_metadata.objectStores.get(objectStoreId);
-    bool backingStoreSuccess = IDBObjectStoreBackendImpl::makeIndexWriters(transaction, store.get(), id(), objectStoreMetadata, primaryKey, false, indexIds, indexKeys, &indexWriters, &errorMessage, obeysConstraints);
+    bool backingStoreSuccess = IDBObjectStoreBackendLevelDB::makeIndexWriters(transaction, store.get(), id(), objectStoreMetadata, primaryKey, false, indexIds, indexKeys, &indexWriters, &errorMessage, obeysConstraints);
     if (!backingStoreSuccess) {
         transaction->abort(IDBDatabaseError::create(IDBDatabaseException::UnknownError, "Internal error: backing store error updating index keys."));
         return;
@@ -911,40 +911,40 @@ void IDBDatabaseBackendImpl::setIndexKeys(int64_t transactionId, int64_t objectS
     }
 
     for (size_t i = 0; i < indexWriters.size(); ++i) {
-        IDBObjectStoreBackendImpl::IndexWriter* indexWriter = indexWriters[i].get();
+        IDBObjectStoreBackendLevelDB::IndexWriter* indexWriter = indexWriters[i].get();
         indexWriter->writeIndexKeys(recordIdentifier, *store.get(), transaction->backingStoreTransaction(), id(), objectStoreId);
     }
 }
 
-void IDBDatabaseBackendImpl::setIndexesReady(int64_t transactionId, int64_t, const Vector<int64_t>& indexIds)
+void IDBDatabaseBackendLevelDB::setIndexesReady(int64_t transactionId, int64_t, const Vector<int64_t>& indexIds)
 {
-    IDB_TRACE("IDBObjectStoreBackendImpl::setIndexesReady");
+    IDB_TRACE("IDBObjectStoreBackendLevelDB::setIndexesReady");
 
-    IDBTransactionBackendImpl* transaction = m_transactions.get(transactionId);
+    IDBTransactionBackendLevelDB* transaction = m_transactions.get(transactionId);
     if (!transaction)
         return;
 
     transaction->scheduleTask(IDBDatabaseBackendInterface::PreemptiveTask, SetIndexesReadyOperation::create(indexIds.size()));
 }
 
-void SetIndexesReadyOperation::perform(IDBTransactionBackendImpl* transaction)
+void SetIndexesReadyOperation::perform(IDBTransactionBackendLevelDB* transaction)
 {
     IDB_TRACE("SetIndexesReadyOperation");
     for (size_t i = 0; i < m_indexCount; ++i)
         transaction->didCompletePreemptiveEvent();
 }
 
-void IDBDatabaseBackendImpl::openCursor(int64_t transactionId, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange> keyRange, IndexedDB::CursorDirection direction, bool keyOnly, TaskType taskType, PassRefPtr<IDBCallbacks> callbacks)
+void IDBDatabaseBackendLevelDB::openCursor(int64_t transactionId, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange> keyRange, IndexedDB::CursorDirection direction, bool keyOnly, TaskType taskType, PassRefPtr<IDBCallbacks> callbacks)
 {
-    IDB_TRACE("IDBDatabaseBackendImpl::openCursor");
-    IDBTransactionBackendImpl* transaction = m_transactions.get(transactionId);
+    IDB_TRACE("IDBDatabaseBackendLevelDB::openCursor");
+    IDBTransactionBackendLevelDB* transaction = m_transactions.get(transactionId);
     if (!transaction)
         return;
 
     transaction->scheduleTask(OpenCursorOperation::create(m_backingStore, id(), objectStoreId, indexId, keyRange, direction, keyOnly ? IndexedDB::CursorKeyOnly : IndexedDB::CursorKeyAndValue, taskType, callbacks));
 }
 
-void OpenCursorOperation::perform(IDBTransactionBackendImpl* transaction)
+void OpenCursorOperation::perform(IDBTransactionBackendLevelDB* transaction)
 {
     IDB_TRACE("OpenCursorOperation");
 
@@ -973,14 +973,14 @@ void OpenCursorOperation::perform(IDBTransactionBackendImpl* transaction)
     }
 
     IDBDatabaseBackendInterface::TaskType taskType(static_cast<IDBDatabaseBackendInterface::TaskType>(m_taskType));
-    RefPtr<IDBCursorBackendImpl> cursor = IDBCursorBackendImpl::create(backingStoreCursor.get(), m_cursorType, taskType, transaction, m_objectStoreId);
+    RefPtr<IDBCursorBackendLevelDB> cursor = IDBCursorBackendLevelDB::create(backingStoreCursor.get(), m_cursorType, taskType, transaction, m_objectStoreId);
     m_callbacks->onSuccess(cursor, cursor->key(), cursor->primaryKey(), cursor->value());
 }
 
-void IDBDatabaseBackendImpl::count(int64_t transactionId, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange> keyRange, PassRefPtr<IDBCallbacks> callbacks)
+void IDBDatabaseBackendLevelDB::count(int64_t transactionId, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange> keyRange, PassRefPtr<IDBCallbacks> callbacks)
 {
-    IDB_TRACE("IDBDatabaseBackendImpl::count");
-    IDBTransactionBackendImpl* transaction = m_transactions.get(transactionId);
+    IDB_TRACE("IDBDatabaseBackendLevelDB::count");
+    IDBTransactionBackendLevelDB* transaction = m_transactions.get(transactionId);
     if (!transaction)
         return;
 
@@ -988,7 +988,7 @@ void IDBDatabaseBackendImpl::count(int64_t transactionId, int64_t objectStoreId,
     transaction->scheduleTask(CountOperation::create(m_backingStore, id(), objectStoreId, indexId, keyRange, callbacks));
 }
 
-void CountOperation::perform(IDBTransactionBackendImpl* transaction)
+void CountOperation::perform(IDBTransactionBackendLevelDB* transaction)
 {
     IDB_TRACE("CountOperation");
     uint32_t count = 0;
@@ -1010,10 +1010,10 @@ void CountOperation::perform(IDBTransactionBackendImpl* transaction)
     m_callbacks->onSuccess(count);
 }
 
-void IDBDatabaseBackendImpl::deleteRange(int64_t transactionId, int64_t objectStoreId, PassRefPtr<IDBKeyRange> keyRange, PassRefPtr<IDBCallbacks> callbacks)
+void IDBDatabaseBackendLevelDB::deleteRange(int64_t transactionId, int64_t objectStoreId, PassRefPtr<IDBKeyRange> keyRange, PassRefPtr<IDBCallbacks> callbacks)
 {
-    IDB_TRACE("IDBDatabaseBackendImpl::deleteRange");
-    IDBTransactionBackendImpl* transaction = m_transactions.get(transactionId);
+    IDB_TRACE("IDBDatabaseBackendLevelDB::deleteRange");
+    IDBTransactionBackendLevelDB* transaction = m_transactions.get(transactionId);
     if (!transaction)
         return;
     ASSERT(transaction->mode() != IndexedDB::TransactionReadOnly);
@@ -1021,7 +1021,7 @@ void IDBDatabaseBackendImpl::deleteRange(int64_t transactionId, int64_t objectSt
     transaction->scheduleTask(DeleteRangeOperation::create(m_backingStore, id(), objectStoreId, keyRange, callbacks));
 }
 
-void DeleteRangeOperation::perform(IDBTransactionBackendImpl* transaction)
+void DeleteRangeOperation::perform(IDBTransactionBackendLevelDB* transaction)
 {
     IDB_TRACE("DeleteRangeOperation");
     RefPtr<IDBBackingStore::Cursor> backingStoreCursor = m_backingStore->openObjectStoreCursor(transaction->backingStoreTransaction(), m_databaseId, m_objectStoreId, m_keyRange.get(), IndexedDB::CursorNext);
@@ -1037,10 +1037,10 @@ void DeleteRangeOperation::perform(IDBTransactionBackendImpl* transaction)
     m_callbacks->onSuccess();
 }
 
-void IDBDatabaseBackendImpl::clear(int64_t transactionId, int64_t objectStoreId, PassRefPtr<IDBCallbacks> callbacks)
+void IDBDatabaseBackendLevelDB::clear(int64_t transactionId, int64_t objectStoreId, PassRefPtr<IDBCallbacks> callbacks)
 {
-    IDB_TRACE("IDBDatabaseBackendImpl::clear");
-    IDBTransactionBackendImpl* transaction = m_transactions.get(transactionId);
+    IDB_TRACE("IDBDatabaseBackendLevelDB::clear");
+    IDBTransactionBackendLevelDB* transaction = m_transactions.get(transactionId);
     if (!transaction)
         return;
     ASSERT(transaction->mode() != IndexedDB::TransactionReadOnly);
@@ -1048,7 +1048,7 @@ void IDBDatabaseBackendImpl::clear(int64_t transactionId, int64_t objectStoreId,
     transaction->scheduleTask(ClearOperation::create(m_backingStore, id(), objectStoreId, callbacks));
 }
 
-void ClearOperation::perform(IDBTransactionBackendImpl* transaction)
+void ClearOperation::perform(IDBTransactionBackendLevelDB* transaction)
 {
     IDB_TRACE("ObjectStoreClearOperation");
     if (!m_backingStore->clearObjectStore(transaction->backingStoreTransaction(), m_databaseId, m_objectStoreId)) {
@@ -1058,7 +1058,7 @@ void ClearOperation::perform(IDBTransactionBackendImpl* transaction)
     m_callbacks->onSuccess();
 }
 
-void DeleteObjectStoreOperation::perform(IDBTransactionBackendImpl* transaction)
+void DeleteObjectStoreOperation::perform(IDBTransactionBackendLevelDB* transaction)
 {
     IDB_TRACE("DeleteObjectStoreOperation");
     bool ok = m_backingStore->deleteObjectStore(transaction->backingStoreTransaction(), transaction->database()->id(), m_objectStoreMetadata.id);
@@ -1068,7 +1068,7 @@ void DeleteObjectStoreOperation::perform(IDBTransactionBackendImpl* transaction)
     }
 }
 
-void IDBDatabaseBackendImpl::VersionChangeOperation::perform(IDBTransactionBackendImpl* transaction)
+void IDBDatabaseBackendLevelDB::VersionChangeOperation::perform(IDBTransactionBackendLevelDB* transaction)
 {
     IDB_TRACE("VersionChangeOperation");
     int64_t databaseId = m_database->id();
@@ -1086,18 +1086,18 @@ void IDBDatabaseBackendImpl::VersionChangeOperation::perform(IDBTransactionBacke
     m_callbacks->onUpgradeNeeded(oldVersion, m_database, m_database->metadata());
 }
 
-void IDBDatabaseBackendImpl::transactionStarted(PassRefPtr<IDBTransactionBackendImpl> prpTransaction)
+void IDBDatabaseBackendLevelDB::transactionStarted(PassRefPtr<IDBTransactionBackendLevelDB> prpTransaction)
 {
-    RefPtr<IDBTransactionBackendImpl> transaction = prpTransaction;
+    RefPtr<IDBTransactionBackendLevelDB> transaction = prpTransaction;
     if (transaction->mode() == IndexedDB::TransactionVersionChange) {
         ASSERT(!m_runningVersionChangeTransaction);
         m_runningVersionChangeTransaction = transaction;
     }
 }
 
-void IDBDatabaseBackendImpl::transactionFinished(PassRefPtr<IDBTransactionBackendImpl> prpTransaction)
+void IDBDatabaseBackendLevelDB::transactionFinished(PassRefPtr<IDBTransactionBackendLevelDB> prpTransaction)
 {
-    RefPtr<IDBTransactionBackendImpl> transaction = prpTransaction;
+    RefPtr<IDBTransactionBackendLevelDB> transaction = prpTransaction;
     ASSERT(m_transactions.contains(transaction->id()));
     ASSERT(m_transactions.get(transaction->id()) == transaction.get());
     m_transactions.remove(transaction->id());
@@ -1107,9 +1107,9 @@ void IDBDatabaseBackendImpl::transactionFinished(PassRefPtr<IDBTransactionBacken
     }
 }
 
-void IDBDatabaseBackendImpl::transactionFinishedAndAbortFired(PassRefPtr<IDBTransactionBackendImpl> prpTransaction)
+void IDBDatabaseBackendLevelDB::transactionFinishedAndAbortFired(PassRefPtr<IDBTransactionBackendLevelDB> prpTransaction)
 {
-    RefPtr<IDBTransactionBackendImpl> transaction = prpTransaction;
+    RefPtr<IDBTransactionBackendLevelDB> transaction = prpTransaction;
     if (transaction->mode() == IndexedDB::TransactionVersionChange) {
         // If this was an open-with-version call, there will be a "second
         // half" open call waiting for us in processPendingCalls.
@@ -1122,20 +1122,20 @@ void IDBDatabaseBackendImpl::transactionFinishedAndAbortFired(PassRefPtr<IDBTran
     }
 }
 
-void IDBDatabaseBackendImpl::transactionFinishedAndCompleteFired(PassRefPtr<IDBTransactionBackendImpl> prpTransaction)
+void IDBDatabaseBackendLevelDB::transactionFinishedAndCompleteFired(PassRefPtr<IDBTransactionBackendLevelDB> prpTransaction)
 {
-    RefPtr<IDBTransactionBackendImpl> transaction = prpTransaction;
+    RefPtr<IDBTransactionBackendLevelDB> transaction = prpTransaction;
     if (transaction->mode() == IndexedDB::TransactionVersionChange)
         processPendingCalls();
 }
 
-size_t IDBDatabaseBackendImpl::connectionCount()
+size_t IDBDatabaseBackendLevelDB::connectionCount()
 {
     // This does not include pending open calls, as those should not block version changes and deletes.
     return m_databaseCallbacksSet.size();
 }
 
-void IDBDatabaseBackendImpl::processPendingCalls()
+void IDBDatabaseBackendLevelDB::processPendingCalls()
 {
     if (m_pendingSecondHalfOpen) {
         ASSERT(m_pendingSecondHalfOpen->version() == m_metadata.intVersion);
@@ -1173,14 +1173,14 @@ void IDBDatabaseBackendImpl::processPendingCalls()
     }
 }
 
-void IDBDatabaseBackendImpl::createTransaction(int64_t transactionId, PassRefPtr<IDBDatabaseCallbacks> callbacks, const Vector<int64_t>& objectStoreIds, unsigned short mode)
+void IDBDatabaseBackendLevelDB::createTransaction(int64_t transactionId, PassRefPtr<IDBDatabaseCallbacks> callbacks, const Vector<int64_t>& objectStoreIds, unsigned short mode)
 {
-    RefPtr<IDBTransactionBackendImpl> transaction = IDBTransactionBackendImpl::create(transactionId, callbacks, objectStoreIds, static_cast<IndexedDB::TransactionMode>(mode), this);
+    RefPtr<IDBTransactionBackendLevelDB> transaction = IDBTransactionBackendLevelDB::create(transactionId, callbacks, objectStoreIds, static_cast<IndexedDB::TransactionMode>(mode), this);
     ASSERT(!m_transactions.contains(transactionId));
     m_transactions.add(transactionId, transaction.get());
 }
 
-void IDBDatabaseBackendImpl::openConnection(PassRefPtr<IDBCallbacks> prpCallbacks, PassRefPtr<IDBDatabaseCallbacks> prpDatabaseCallbacks, int64_t transactionId, int64_t version)
+void IDBDatabaseBackendLevelDB::openConnection(PassRefPtr<IDBCallbacks> prpCallbacks, PassRefPtr<IDBDatabaseCallbacks> prpDatabaseCallbacks, int64_t transactionId, int64_t version)
 {
     ASSERT(m_backingStore.get());
     RefPtr<IDBCallbacks> callbacks = prpCallbacks;
@@ -1242,7 +1242,7 @@ void IDBDatabaseBackendImpl::openConnection(PassRefPtr<IDBCallbacks> prpCallback
     callbacks->onSuccess(this, this->metadata());
 }
 
-void IDBDatabaseBackendImpl::runIntVersionChangeTransaction(PassRefPtr<IDBCallbacks> prpCallbacks, PassRefPtr<IDBDatabaseCallbacks> prpDatabaseCallbacks, int64_t transactionId, int64_t requestedVersion)
+void IDBDatabaseBackendLevelDB::runIntVersionChangeTransaction(PassRefPtr<IDBCallbacks> prpCallbacks, PassRefPtr<IDBDatabaseCallbacks> prpDatabaseCallbacks, int64_t transactionId, int64_t requestedVersion)
 {
     RefPtr<IDBCallbacks> callbacks = prpCallbacks;
     RefPtr<IDBDatabaseCallbacks> databaseCallbacks = prpDatabaseCallbacks;
@@ -1269,7 +1269,7 @@ void IDBDatabaseBackendImpl::runIntVersionChangeTransaction(PassRefPtr<IDBCallba
 
     Vector<int64_t> objectStoreIds;
     createTransaction(transactionId, databaseCallbacks, objectStoreIds, IndexedDB::TransactionVersionChange);
-    RefPtr<IDBTransactionBackendImpl> transaction = m_transactions.get(transactionId);
+    RefPtr<IDBTransactionBackendLevelDB> transaction = m_transactions.get(transactionId);
 
     transaction->scheduleTask(VersionChangeOperation::create(this, transactionId, requestedVersion, callbacks, databaseCallbacks), VersionChangeAbortOperation::create(this, m_metadata.version, m_metadata.intVersion));
 
@@ -1277,7 +1277,7 @@ void IDBDatabaseBackendImpl::runIntVersionChangeTransaction(PassRefPtr<IDBCallba
     m_databaseCallbacksSet.add(databaseCallbacks);
 }
 
-void IDBDatabaseBackendImpl::deleteDatabase(PassRefPtr<IDBCallbacks> prpCallbacks)
+void IDBDatabaseBackendLevelDB::deleteDatabase(PassRefPtr<IDBCallbacks> prpCallbacks)
 {
     RefPtr<IDBCallbacks> callbacks = prpCallbacks;
     if (isDeleteDatabaseBlocked()) {
@@ -1295,12 +1295,12 @@ void IDBDatabaseBackendImpl::deleteDatabase(PassRefPtr<IDBCallbacks> prpCallback
     deleteDatabaseFinal(callbacks.release());
 }
 
-bool IDBDatabaseBackendImpl::isDeleteDatabaseBlocked()
+bool IDBDatabaseBackendLevelDB::isDeleteDatabaseBlocked()
 {
     return connectionCount();
 }
 
-void IDBDatabaseBackendImpl::deleteDatabaseFinal(PassRefPtr<IDBCallbacks> callbacks)
+void IDBDatabaseBackendLevelDB::deleteDatabaseFinal(PassRefPtr<IDBCallbacks> callbacks)
 {
     ASSERT(!isDeleteDatabaseBlocked());
     ASSERT(m_backingStore);
@@ -1315,7 +1315,7 @@ void IDBDatabaseBackendImpl::deleteDatabaseFinal(PassRefPtr<IDBCallbacks> callba
     callbacks->onSuccess();
 }
 
-void IDBDatabaseBackendImpl::close(PassRefPtr<IDBDatabaseCallbacks> prpCallbacks)
+void IDBDatabaseBackendLevelDB::close(PassRefPtr<IDBDatabaseCallbacks> prpCallbacks)
 {
     RefPtr<IDBDatabaseCallbacks> callbacks = prpCallbacks;
     ASSERT(m_databaseCallbacksSet.contains(callbacks));
@@ -1330,7 +1330,7 @@ void IDBDatabaseBackendImpl::close(PassRefPtr<IDBDatabaseCallbacks> prpCallbacks
         return;
 
     // processPendingCalls allows the inspector to process a pending open call
-    // and call close, reentering IDBDatabaseBackendImpl::close. Then the
+    // and call close, reentering IDBDatabaseBackendLevelDB::close. Then the
     // backend would be removed both by the inspector closing its connection, and
     // by the connection that first called close.
     // To avoid that situation, don't proceed in case of reentrancy.
@@ -1357,21 +1357,21 @@ void IDBDatabaseBackendImpl::close(PassRefPtr<IDBDatabaseCallbacks> prpCallbacks
     }
 }
 
-void CreateObjectStoreAbortOperation::perform(IDBTransactionBackendImpl* transaction)
+void CreateObjectStoreAbortOperation::perform(IDBTransactionBackendLevelDB* transaction)
 {
     IDB_TRACE("CreateObjectStoreAbortOperation");
     ASSERT_UNUSED(transaction, !transaction);
     m_database->removeObjectStore(m_objectStoreId);
 }
 
-void DeleteObjectStoreAbortOperation::perform(IDBTransactionBackendImpl* transaction)
+void DeleteObjectStoreAbortOperation::perform(IDBTransactionBackendLevelDB* transaction)
 {
     IDB_TRACE("DeleteObjectStoreAbortOperation");
     ASSERT_UNUSED(transaction, !transaction);
     m_database->addObjectStore(m_objectStoreMetadata, IDBObjectStoreMetadata::InvalidId);
 }
 
-void IDBDatabaseBackendImpl::VersionChangeAbortOperation::perform(IDBTransactionBackendImpl* transaction)
+void IDBDatabaseBackendLevelDB::VersionChangeAbortOperation::perform(IDBTransactionBackendLevelDB* transaction)
 {
     IDB_TRACE("VersionChangeAbortOperation");
     ASSERT_UNUSED(transaction, !transaction);
@@ -1381,4 +1381,4 @@ void IDBDatabaseBackendImpl::VersionChangeAbortOperation::perform(IDBTransaction
 
 } // namespace WebCore
 
-#endif // ENABLE(INDEXED_DATABASE)
+#endif // ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
similarity index 81%
rename from Source/WebCore/Modules/indexeddb/IDBDatabaseBackendImpl.h
rename to Source/WebCore/Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h
index 353bfa093189d1d84bdfa069199775d58015cb92..e98f664ce2ac8a722867fb970f4b817e43a31ef1 100644 (file)
@@ -23,8 +23,8 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#ifndef IDBDatabaseBackendImpl_h
-#define IDBDatabaseBackendImpl_h
+#ifndef IDBDatabaseBackendLevelDB_h
+#define IDBDatabaseBackendLevelDB_h
 
 #include "IDBCallbacks.h"
 #include "IDBMetadata.h"
 #include <wtf/HashMap.h>
 #include <wtf/ListHashSet.h>
 
-#if ENABLE(INDEXED_DATABASE)
+#if ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
 namespace WebCore {
 
 class IDBBackingStore;
 class IDBDatabase;
-class IDBFactoryBackendImpl;
-class IDBTransactionBackendImpl;
-class IDBTransactionCoordinator;
+class IDBFactoryBackendLevelDB;
+class IDBTransactionBackendLevelDB;
+class IDBTransactionCoordinatorLevelDB;
 
-class IDBDatabaseBackendImpl : public IDBDatabaseBackendInterface {
+class IDBDatabaseBackendLevelDB : public IDBDatabaseBackendInterface {
 public:
-    static PassRefPtr<IDBDatabaseBackendImpl> create(const String& name, IDBBackingStore* database, IDBFactoryBackendImpl*, const String& uniqueIdentifier);
-    virtual ~IDBDatabaseBackendImpl();
+    static PassRefPtr<IDBDatabaseBackendLevelDB> create(const String& name, IDBBackingStore* database, IDBFactoryBackendLevelDB*, const String& uniqueIdentifier);
+    virtual ~IDBDatabaseBackendLevelDB();
 
     PassRefPtr<IDBBackingStore> backingStore() const;
 
@@ -74,11 +74,11 @@ public:
     virtual void createIndex(int64_t transactionId, int64_t objectStoreId, int64_t indexId, const String& name, const IDBKeyPath&, bool unique, bool multiEntry);
     virtual void deleteIndex(int64_t transactionId, int64_t objectStoreId, int64_t indexId);
 
-    IDBTransactionCoordinator* transactionCoordinator() const { return m_transactionCoordinator.get(); }
-    void transactionStarted(PassRefPtr<IDBTransactionBackendImpl>);
-    void transactionFinished(PassRefPtr<IDBTransactionBackendImpl>);
-    void transactionFinishedAndCompleteFired(PassRefPtr<IDBTransactionBackendImpl>);
-    void transactionFinishedAndAbortFired(PassRefPtr<IDBTransactionBackendImpl>);
+    IDBTransactionCoordinatorLevelDB* transactionCoordinator() const { return m_transactionCoordinator.get(); }
+    void transactionStarted(PassRefPtr<IDBTransactionBackendLevelDB>);
+    void transactionFinished(PassRefPtr<IDBTransactionBackendLevelDB>);
+    void transactionFinishedAndCompleteFired(PassRefPtr<IDBTransactionBackendLevelDB>);
+    void transactionFinishedAndAbortFired(PassRefPtr<IDBTransactionBackendLevelDB>);
 
     virtual void get(int64_t transactionId, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange>, bool keyOnly, PassRefPtr<IDBCallbacks>) OVERRIDE;
     virtual void put(int64_t transactionId, int64_t objectStoreId, PassRefPtr<SharedBuffer> value, PassRefPtr<IDBKey>, PutMode, PassRefPtr<IDBCallbacks>, const Vector<int64_t>& indexIds, const Vector<IndexKeys>&) OVERRIDE;
@@ -90,7 +90,7 @@ public:
     virtual void clear(int64_t transactionId, int64_t objectStoreId, PassRefPtr<IDBCallbacks>) OVERRIDE;
 
 private:
-    IDBDatabaseBackendImpl(const String& name, IDBBackingStore* database, IDBFactoryBackendImpl*, const String& uniqueIdentifier);
+    IDBDatabaseBackendLevelDB(const String& name, IDBBackingStore* database, IDBFactoryBackendLevelDB*, const String& uniqueIdentifier);
 
     bool openInternal();
     void runIntVersionChangeTransaction(PassRefPtr<IDBCallbacks>, PassRefPtr<IDBDatabaseCallbacks>, int64_t transactionId, int64_t requestedVersion);
@@ -110,12 +110,12 @@ private:
 
     String m_identifier;
     // This might not need to be a RefPtr since the factory's lifetime is that of the page group, but it's better to be conservitive than sorry.
-    RefPtr<IDBFactoryBackendImpl> m_factory;
+    RefPtr<IDBFactoryBackendLevelDB> m_factory;
 
-    OwnPtr<IDBTransactionCoordinator> m_transactionCoordinator;
-    RefPtr<IDBTransactionBackendImpl> m_runningVersionChangeTransaction;
+    OwnPtr<IDBTransactionCoordinatorLevelDB> m_transactionCoordinator;
+    RefPtr<IDBTransactionBackendLevelDB> m_runningVersionChangeTransaction;
 
-    typedef HashMap<int64_t, IDBTransactionBackendImpl*> TransactionMap;
+    typedef HashMap<int64_t, IDBTransactionBackendLevelDB*> TransactionMap;
     TransactionMap m_transactions;
 
     class PendingOpenCall;
@@ -133,6 +133,6 @@ private:
 
 } // namespace WebCore
 
-#endif
+#endif // ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
-#endif // IDBDatabaseBackendImpl_h
+#endif // IDBDatabaseBackendLevelDB_h
similarity index 78%
rename from Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.cpp
rename to Source/WebCore/Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp
index c8e197cdccf313f97f8e0b1f1c35937deb28d91d..4a38106bbf87a0fbc86bc91fe1d57c46390c6c9f 100644 (file)
  */
 
 #include "config.h"
-#include "IDBFactoryBackendImpl.h"
+#include "IDBFactoryBackendLevelDB.h"
 
 #include "DOMStringList.h"
-#include "IDBBackingStore.h"
-#include "IDBDatabaseBackendImpl.h"
+#include "IDBBackingStoreLevelDB.h"
+#include "IDBDatabaseBackendLevelDB.h"
 #include "IDBDatabaseException.h"
 #include "IDBTracing.h"
-#include "IDBTransactionCoordinator.h"
+#include "IDBTransactionCoordinatorLevelDB.h"
 #include "SecurityOrigin.h"
 
-#if ENABLE(INDEXED_DATABASE)
+#if ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
 namespace WebCore {
 
@@ -66,23 +66,23 @@ static String computeUniqueIdentifier(const String& name, SecurityOrigin* securi
     return computeFileIdentifier(securityOrigin) + name;
 }
 
-IDBFactoryBackendImpl::IDBFactoryBackendImpl()
+IDBFactoryBackendLevelDB::IDBFactoryBackendLevelDB()
 {
 }
 
-IDBFactoryBackendImpl::~IDBFactoryBackendImpl()
+IDBFactoryBackendLevelDB::~IDBFactoryBackendLevelDB()
 {
 }
 
-void IDBFactoryBackendImpl::removeIDBDatabaseBackend(const String& uniqueIdentifier)
+void IDBFactoryBackendLevelDB::removeIDBDatabaseBackend(const String& uniqueIdentifier)
 {
     ASSERT(m_databaseBackendMap.contains(uniqueIdentifier));
     m_databaseBackendMap.remove(uniqueIdentifier);
 }
 
-void IDBFactoryBackendImpl::getDatabaseNames(PassRefPtr<IDBCallbacks> callbacks, PassRefPtr<SecurityOrigin> securityOrigin, ScriptExecutionContext*, const String& dataDirectory)
+void IDBFactoryBackendLevelDB::getDatabaseNames(PassRefPtr<IDBCallbacks> callbacks, PassRefPtr<SecurityOrigin> securityOrigin, ScriptExecutionContext*, const String& dataDirectory)
 {
-    IDB_TRACE("IDBFactoryBackendImpl::getDatabaseNames");
+    IDB_TRACE("IDBFactoryBackendLevelDB::getDatabaseNames");
     RefPtr<IDBBackingStore> backingStore = openBackingStore(securityOrigin, dataDirectory);
     if (!backingStore) {
         callbacks->onError(IDBDatabaseError::create(IDBDatabaseException::UnknownError, "Internal error opening backing store for indexedDB.webkitGetDatabaseNames."));
@@ -98,9 +98,9 @@ void IDBFactoryBackendImpl::getDatabaseNames(PassRefPtr<IDBCallbacks> callbacks,
     callbacks->onSuccess(databaseNames.release());
 }
 
-void IDBFactoryBackendImpl::deleteDatabase(const String& name, PassRefPtr<IDBCallbacks> callbacks, PassRefPtr<SecurityOrigin> securityOrigin, ScriptExecutionContext*, const String& dataDirectory)
+void IDBFactoryBackendLevelDB::deleteDatabase(const String& name, PassRefPtr<IDBCallbacks> callbacks, PassRefPtr<SecurityOrigin> securityOrigin, ScriptExecutionContext*, const String& dataDirectory)
 {
-    IDB_TRACE("IDBFactoryBackendImpl::deleteDatabase");
+    IDB_TRACE("IDBFactoryBackendLevelDB::deleteDatabase");
     const String uniqueIdentifier = computeUniqueIdentifier(name, securityOrigin.get());
 
     IDBDatabaseBackendMap::iterator it = m_databaseBackendMap.find(uniqueIdentifier);
@@ -118,7 +118,7 @@ void IDBFactoryBackendImpl::deleteDatabase(const String& name, PassRefPtr<IDBCal
         return;
     }
 
-    RefPtr<IDBDatabaseBackendImpl> databaseBackend = IDBDatabaseBackendImpl::create(name, backingStore.get(), this, uniqueIdentifier);
+    RefPtr<IDBDatabaseBackendLevelDB> databaseBackend = IDBDatabaseBackendLevelDB::create(name, backingStore.get(), this, uniqueIdentifier);
     if (databaseBackend) {
         m_databaseBackendMap.set(uniqueIdentifier, databaseBackend.get());
         databaseBackend->deleteDatabase(callbacks);
@@ -127,7 +127,7 @@ void IDBFactoryBackendImpl::deleteDatabase(const String& name, PassRefPtr<IDBCal
         callbacks->onError(IDBDatabaseError::create(IDBDatabaseException::UnknownError, "Internal error creating database backend for indexedDB.deleteDatabase."));
 }
 
-PassRefPtr<IDBBackingStore> IDBFactoryBackendImpl::openBackingStore(PassRefPtr<SecurityOrigin> securityOrigin, const String& dataDirectory)
+PassRefPtr<IDBBackingStore> IDBFactoryBackendLevelDB::openBackingStore(PassRefPtr<SecurityOrigin> securityOrigin, const String& dataDirectory)
 {
     const String fileIdentifier = computeFileIdentifier(securityOrigin.get());
     const bool openInMemory = dataDirectory.isEmpty();
@@ -158,13 +158,13 @@ PassRefPtr<IDBBackingStore> IDBFactoryBackendImpl::openBackingStore(PassRefPtr<S
     return 0;
 }
 
-void IDBFactoryBackendImpl::open(const String& name, int64_t version, int64_t transactionId, PassRefPtr<IDBCallbacks> callbacks, PassRefPtr<IDBDatabaseCallbacks> databaseCallbacks, PassRefPtr<SecurityOrigin> prpSecurityOrigin, ScriptExecutionContext*, const String& dataDirectory)
+void IDBFactoryBackendLevelDB::open(const String& name, int64_t version, int64_t transactionId, PassRefPtr<IDBCallbacks> callbacks, PassRefPtr<IDBDatabaseCallbacks> databaseCallbacks, PassRefPtr<SecurityOrigin> prpSecurityOrigin, ScriptExecutionContext*, const String& dataDirectory)
 {
-    IDB_TRACE("IDBFactoryBackendImpl::open");
+    IDB_TRACE("IDBFactoryBackendLevelDB::open");
     RefPtr<SecurityOrigin> securityOrigin = prpSecurityOrigin;
     const String uniqueIdentifier = computeUniqueIdentifier(name, securityOrigin.get());
 
-    RefPtr<IDBDatabaseBackendImpl> databaseBackend;
+    RefPtr<IDBDatabaseBackendLevelDB> databaseBackend;
     IDBDatabaseBackendMap::iterator it = m_databaseBackendMap.find(uniqueIdentifier);
     if (it == m_databaseBackendMap.end()) {
         RefPtr<IDBBackingStore> backingStore = openBackingStore(securityOrigin, dataDirectory);
@@ -173,7 +173,7 @@ void IDBFactoryBackendImpl::open(const String& name, int64_t version, int64_t tr
             return;
         }
 
-        databaseBackend = IDBDatabaseBackendImpl::create(name, backingStore.get(), this, uniqueIdentifier);
+        databaseBackend = IDBDatabaseBackendLevelDB::create(name, backingStore.get(), this, uniqueIdentifier);
         if (databaseBackend)
             m_databaseBackendMap.set(uniqueIdentifier, databaseBackend.get());
         else {
@@ -188,4 +188,4 @@ void IDBFactoryBackendImpl::open(const String& name, int64_t version, int64_t tr
 
 } // namespace WebCore
 
-#endif // ENABLE(INDEXED_DATABASE)
+#endif // ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
similarity index 82%
rename from Source/WebCore/Modules/indexeddb/IDBFactoryBackendImpl.h
rename to Source/WebCore/Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h
index b9a6820e948e01b6eb4b8cb95c66b8c574a1e29d..afd910fdfb0e5a79b1c4929df43600dc2ac41182 100644 (file)
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
-#ifndef IDBFactoryBackendImpl_h
-#define IDBFactoryBackendImpl_h
+#ifndef IDBFactoryBackendLevelDB_h
+#define IDBFactoryBackendLevelDB_h
 
-#if ENABLE(INDEXED_DATABASE)
+#if ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
 #include "IDBCallbacks.h"
 #include "IDBDatabaseCallbacks.h"
@@ -45,15 +45,15 @@ namespace WebCore {
 class DOMStringList;
 
 class IDBBackingStore;
-class IDBDatabaseBackendImpl;
+class IDBDatabaseBackendLevelDB;
 
-class IDBFactoryBackendImpl : public IDBFactoryBackendInterface {
+class IDBFactoryBackendLevelDB : public IDBFactoryBackendInterface {
 public:
-    static PassRefPtr<IDBFactoryBackendImpl> create()
+    static PassRefPtr<IDBFactoryBackendLevelDB> create()
     {
-        return adoptRef(new IDBFactoryBackendImpl());
+        return adoptRef(new IDBFactoryBackendLevelDB());
     }
-    virtual ~IDBFactoryBackendImpl();
+    virtual ~IDBFactoryBackendLevelDB();
 
     // Notifications from weak pointers.
     virtual void removeIDBDatabaseBackend(const String& uniqueIdentifier);
@@ -64,11 +64,11 @@ public:
     virtual void deleteDatabase(const String& name, PassRefPtr<IDBCallbacks>, PassRefPtr<SecurityOrigin>, ScriptExecutionContext*, const String& dataDir);
 
 protected:
-    IDBFactoryBackendImpl();
+    IDBFactoryBackendLevelDB();
     virtual PassRefPtr<IDBBackingStore> openBackingStore(PassRefPtr<SecurityOrigin>, const String& dataDir);
 
 private:
-    typedef HashMap<String, RefPtr<IDBDatabaseBackendImpl> > IDBDatabaseBackendMap;
+    typedef HashMap<String, RefPtr<IDBDatabaseBackendLevelDB> > IDBDatabaseBackendMap;
     IDBDatabaseBackendMap m_databaseBackendMap;
 
     typedef HashMap<String, WeakPtr<IDBBackingStore> > IDBBackingStoreMap;
@@ -77,11 +77,11 @@ private:
     HashSet<RefPtr<IDBBackingStore> > m_sessionOnlyBackingStores;
 
     // Only one instance of the factory should exist at any given time.
-    static IDBFactoryBackendImpl* idbFactoryBackendImpl;
+    static IDBFactoryBackendLevelDB* idbFactoryBackendImpl;
 };
 
 } // namespace WebCore
 
-#endif
+#endif // ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
-#endif // IDBFactoryBackendImpl_h
+#endif // IDBFactoryBackendLevelDB_h
index 88e0e0b0e81000821f034bf9b0d2f5613ff338a0..04e4259d1c5aedea75870ec6e1ff58f53f9921d6 100644 (file)
@@ -26,8 +26,7 @@
 #include "config.h"
 #include "IDBLevelDBCoding.h"
 
-#if ENABLE(INDEXED_DATABASE)
-#if USE(LEVELDB)
+#if ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
 #include "IDBKey.h"
 #include "IDBKeyPath.h"
@@ -1522,7 +1521,7 @@ int64_t IndexFreeListKey::indexId() const
 }
 
 // FIXME: We never use this to look up object store ids, because a mapping
-// is kept in the IDBDatabaseBackendImpl. Can the mapping become unreliable?
+// is kept in the IDBDatabaseBackendLevelDB. Can the mapping become unreliable?
 // Can we remove this?
 const char* ObjectStoreNamesKey::decode(const char* start, const char* limit, ObjectStoreNamesKey* result)
 {
@@ -1805,5 +1804,4 @@ PassRefPtr<IDBKey> IndexDataKey::primaryKey() const
 } // namespace IDBLevelDBCoding
 } // namespace WebCore
 
-#endif // USE(LEVELDB)
-#endif // ENABLE(INDEXED_DATABASE)
+#endif // ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
index 56197f67707630b81d1b0a9dbbfc5a768044b915..ad22f11eb0cfd79a9983c60d80f4b864c82d24a4 100644 (file)
@@ -26,8 +26,7 @@
 #ifndef IDBLevelDBCoding_h
 #define IDBLevelDBCoding_h
 
-#if ENABLE(INDEXED_DATABASE)
-#if USE(LEVELDB)
+#if ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
 #include <wtf/RefPtr.h>
 #include <wtf/Vector.h>
@@ -282,7 +281,7 @@ private:
 class ObjectStoreNamesKey {
 public:
     // FIXME: We never use this to look up object store ids, because a mapping
-    // is kept in the IDBDatabaseBackendImpl. Can the mapping become unreliable?
+    // is kept in the IDBDatabaseBackendLevelDB. Can the mapping become unreliable?
     // Can we remove this?
     static const char* decode(const char* start, const char* limit, ObjectStoreNamesKey* result);
     static Vector<char> encode(int64_t databaseId, const String& objectStoreName);
@@ -363,7 +362,6 @@ private:
 
 } // namespace WebCore
 
-#endif // USE(LEVELDB)
-#endif // ENABLE(INDEXED_DATABASE)
+#endif // ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
 #endif // IDBLevelDBCoding_h
similarity index 72%
rename from Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.cpp
rename to Source/WebCore/Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp
index 5c5ed0c4df74b32870e37644a8b428a801a84eda..8010e7e8f963d1d87ea21816eb99c2d1bd7a3e52 100644 (file)
  */
 
 #include "config.h"
-#include "IDBObjectStoreBackendImpl.h"
+#include "IDBObjectStoreBackendLevelDB.h"
 
-#if ENABLE(INDEXED_DATABASE)
+#if ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
-#include "IDBBackingStore.h"
+#include "IDBBackingStoreLevelDB.h"
 #include "IDBBindingUtilities.h"
 #include "IDBCallbacks.h"
-#include "IDBCursorBackendImpl.h"
-#include "IDBDatabaseBackendImpl.h"
+#include "IDBCursorBackendLevelDB.h"
+#include "IDBDatabaseBackendLevelDB.h"
 #include "IDBDatabaseException.h"
 #include "IDBKey.h"
 #include "IDBKeyPath.h"
 #include "IDBKeyRange.h"
 #include "IDBTracing.h"
-#include "IDBTransactionBackendImpl.h"
+#include "IDBTransactionBackendLevelDB.h"
 #include <wtf/MathExtras.h>
 
 namespace WebCore {
 
-bool IDBObjectStoreBackendImpl::IndexWriter::verifyIndexKeys(IDBBackingStore& backingStore, IDBBackingStore::Transaction* transaction, int64_t databaseId, int64_t objectStoreId, int64_t indexId, bool& canAddKeys, const IDBKey* primaryKey, String* errorMessage) const
+bool IDBObjectStoreBackendLevelDB::IndexWriter::verifyIndexKeys(IDBBackingStore& backingStore, IDBBackingStore::Transaction* transaction, int64_t databaseId, int64_t objectStoreId, int64_t indexId, bool& canAddKeys, const IDBKey* primaryKey, String* errorMessage) const
 {
     canAddKeys = false;
     for (size_t i = 0; i < m_indexKeys.size(); ++i) {
@@ -60,7 +60,7 @@ bool IDBObjectStoreBackendImpl::IndexWriter::verifyIndexKeys(IDBBackingStore& ba
     return true;
 }
 
-void IDBObjectStoreBackendImpl::IndexWriter::writeIndexKeys(const IDBBackingStore::RecordIdentifier& recordIdentifier, IDBBackingStore& backingStore, IDBBackingStore::Transaction* transaction, int64_t databaseId, int64_t objectStoreId) const
+void IDBObjectStoreBackendLevelDB::IndexWriter::writeIndexKeys(const IDBBackingStore::RecordIdentifier& recordIdentifier, IDBBackingStore& backingStore, IDBBackingStore::Transaction* transaction, int64_t databaseId, int64_t objectStoreId) const
 {
     int64_t indexId = m_indexMetadata.id;
     for (size_t i = 0; i < m_indexKeys.size(); ++i) {
@@ -70,7 +70,7 @@ void IDBObjectStoreBackendImpl::IndexWriter::writeIndexKeys(const IDBBackingStor
     }
 }
 
-bool IDBObjectStoreBackendImpl::IndexWriter::addingKeyAllowed(IDBBackingStore& backingStore, IDBBackingStore::Transaction* transaction, int64_t databaseId, int64_t objectStoreId, int64_t indexId, const IDBKey* indexKey, const IDBKey* primaryKey, bool& allowed) const
+bool IDBObjectStoreBackendLevelDB::IndexWriter::addingKeyAllowed(IDBBackingStore& backingStore, IDBBackingStore::Transaction* transaction, int64_t databaseId, int64_t objectStoreId, int64_t indexId, const IDBKey* indexKey, const IDBKey* primaryKey, bool& allowed) const
 {
     allowed = false;
     if (!m_indexMetadata.unique) {
@@ -88,7 +88,7 @@ bool IDBObjectStoreBackendImpl::IndexWriter::addingKeyAllowed(IDBBackingStore& b
     return true;
 }
 
-bool IDBObjectStoreBackendImpl::makeIndexWriters(PassRefPtr<IDBTransactionBackendImpl> transaction, IDBBackingStore* backingStore, int64_t databaseId, const IDBObjectStoreMetadata& objectStore, PassRefPtr<IDBKey> primaryKey, bool keyWasGenerated, const Vector<int64_t>& indexIds, const Vector<IDBDatabaseBackendInterface::IndexKeys>& indexKeys, Vector<OwnPtr<IndexWriter> >* indexWriters, String* errorMessage, bool& completed)
+bool IDBObjectStoreBackendLevelDB::makeIndexWriters(PassRefPtr<IDBTransactionBackendLevelDB> transaction, IDBBackingStore* backingStore, int64_t databaseId, const IDBObjectStoreMetadata& objectStore, PassRefPtr<IDBKey> primaryKey, bool keyWasGenerated, const Vector<int64_t>& indexIds, const Vector<IDBDatabaseBackendInterface::IndexKeys>& indexKeys, Vector<OwnPtr<IndexWriter> >* indexWriters, String* errorMessage, bool& completed)
 {
     ASSERT(indexIds.size() == indexKeys.size());
     completed = false;
@@ -121,7 +121,7 @@ bool IDBObjectStoreBackendImpl::makeIndexWriters(PassRefPtr<IDBTransactionBacken
     return true;
 }
 
-PassRefPtr<IDBKey> IDBObjectStoreBackendImpl::generateKey(PassRefPtr<IDBBackingStore> backingStore, PassRefPtr<IDBTransactionBackendImpl> transaction, int64_t databaseId, int64_t objectStoreId)
+PassRefPtr<IDBKey> IDBObjectStoreBackendLevelDB::generateKey(PassRefPtr<IDBBackingStore> backingStore, PassRefPtr<IDBTransactionBackendLevelDB> transaction, int64_t databaseId, int64_t objectStoreId)
 {
     const int64_t maxGeneratorValue = 9007199254740992LL; // Maximum integer storable as ECMAScript number.
     int64_t currentNumber;
@@ -136,7 +136,7 @@ PassRefPtr<IDBKey> IDBObjectStoreBackendImpl::generateKey(PassRefPtr<IDBBackingS
     return IDBKey::createNumber(currentNumber);
 }
 
-bool IDBObjectStoreBackendImpl::updateKeyGenerator(PassRefPtr<IDBBackingStore> backingStore, PassRefPtr<IDBTransactionBackendImpl> transaction, int64_t databaseId, int64_t objectStoreId, const IDBKey* key, bool checkCurrent)
+bool IDBObjectStoreBackendLevelDB::updateKeyGenerator(PassRefPtr<IDBBackingStore> backingStore, PassRefPtr<IDBTransactionBackendLevelDB> transaction, int64_t databaseId, int64_t objectStoreId, const IDBKey* key, bool checkCurrent)
 {
     ASSERT(key && key->type() == IDBKey::NumberType);
     return backingStore->maybeUpdateKeyGeneratorCurrentNumber(transaction->backingStoreTransaction(), databaseId, objectStoreId, static_cast<int64_t>(floor(key->number())) + 1, checkCurrent);
@@ -144,4 +144,4 @@ bool IDBObjectStoreBackendImpl::updateKeyGenerator(PassRefPtr<IDBBackingStore> b
 
 } // namespace WebCore
 
-#endif
+#endif // ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
similarity index 74%
rename from Source/WebCore/Modules/indexeddb/IDBObjectStoreBackendImpl.h
rename to Source/WebCore/Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.h
index 54cb1433e84db3be218ae36f7a2668ec1fe2daed..d09b6e7c88d3081b5811964413cb8a1c47b9c937 100644 (file)
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#ifndef IDBObjectStoreBackendImpl_h
-#define IDBObjectStoreBackendImpl_h
+#ifndef IDBObjectStoreBackendLevelDB_h
+#define IDBObjectStoreBackendLevelDB_h
 
-#include "IDBBackingStore.h"
-#include "IDBDatabaseBackendImpl.h"
+#include "IDBBackingStoreLevelDB.h"
+#include "IDBDatabaseBackendLevelDB.h"
 #include "IDBKeyPath.h"
 #include "IDBMetadata.h"
 #include <wtf/HashMap.h>
 #include <wtf/text/StringHash.h>
 
-#if ENABLE(INDEXED_DATABASE)
+#if ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
 namespace WebCore {
 
-class IDBDatabaseBackendImpl;
-class IDBTransactionBackendImpl;
+class IDBDatabaseBackendLevelDB;
+class IDBTransactionBackendLevelDB;
 struct IDBObjectStoreMetadata;
 
 // FIXME: this namespace is temporary until we move its contents out to their own home.
-namespace IDBObjectStoreBackendImpl {
+namespace IDBObjectStoreBackendLevelDB {
 
     class IndexWriter {
     public:
@@ -66,14 +66,14 @@ namespace IDBObjectStoreBackendImpl {
         IDBDatabaseBackendInterface::IndexKeys m_indexKeys;
     };
 
-    bool makeIndexWriters(PassRefPtr<IDBTransactionBackendImpl>, IDBBackingStore*, int64_t databaseId, const IDBObjectStoreMetadata&, PassRefPtr<IDBKey> primaryKey, bool keyWasGenerated, const Vector<int64_t>& indexIds, const Vector<IDBDatabaseBackendInterface::IndexKeys>&, Vector<OwnPtr<IndexWriter> >* indexWriters, String* errorMessage, bool& completed) WARN_UNUSED_RETURN;
+    bool makeIndexWriters(PassRefPtr<IDBTransactionBackendLevelDB>, IDBBackingStore*, int64_t databaseId, const IDBObjectStoreMetadata&, PassRefPtr<IDBKey> primaryKey, bool keyWasGenerated, const Vector<int64_t>& indexIds, const Vector<IDBDatabaseBackendInterface::IndexKeys>&, Vector<OwnPtr<IndexWriter> >* indexWriters, String* errorMessage, bool& completed) WARN_UNUSED_RETURN;
 
-    PassRefPtr<IDBKey> generateKey(PassRefPtr<IDBBackingStore>, PassRefPtr<IDBTransactionBackendImpl>, int64_t databaseId, int64_t objectStoreId);
-    bool updateKeyGenerator(PassRefPtr<IDBBackingStore>, PassRefPtr<IDBTransactionBackendImpl>, int64_t databaseId, int64_t objectStoreId, const IDBKey*, bool checkCurrent);
+    PassRefPtr<IDBKey> generateKey(PassRefPtr<IDBBackingStore>, PassRefPtr<IDBTransactionBackendLevelDB>, int64_t databaseId, int64_t objectStoreId);
+    bool updateKeyGenerator(PassRefPtr<IDBBackingStore>, PassRefPtr<IDBTransactionBackendLevelDB>, int64_t databaseId, int64_t objectStoreId, const IDBKey*, bool checkCurrent);
 };
 
 } // namespace WebCore
 
-#endif
+#endif // ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
-#endif // IDBObjectStoreBackendImpl_h
+#endif // IDBObjectStoreBackendLevelDB_h
similarity index 78%
rename from Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.cpp
rename to Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp
index 7ccf26e38b7fc7eb2c8b70b351fd4ed66dba5089..9f9d006f1d1c6b6b5e6d4b985758479337957e17 100644 (file)
  */
 
 #include "config.h"
-#include "IDBTransactionBackendImpl.h"
+#include "IDBTransactionBackendLevelDB.h"
 
-#if ENABLE(INDEXED_DATABASE)
+#if ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
-#include "IDBBackingStore.h"
+#include "IDBBackingStoreLevelDB.h"
 #include "IDBCursorBackendImpl.h"
-#include "IDBDatabaseBackendImpl.h"
+#include "IDBDatabaseBackendLevelDB.h"
 #include "IDBDatabaseCallbacks.h"
 #include "IDBDatabaseException.h"
 #include "IDBTracing.h"
-#include "IDBTransactionCoordinator.h"
+#include "IDBTransactionCoordinatorLevelDB.h"
 
 namespace WebCore {
 
-PassRefPtr<IDBTransactionBackendImpl> IDBTransactionBackendImpl::create(int64_t id, PassRefPtr<IDBDatabaseCallbacks> callbacks, const Vector<int64_t>& objectStoreIds, IndexedDB::TransactionMode mode, IDBDatabaseBackendImpl* database)
+PassRefPtr<IDBTransactionBackendLevelDB> IDBTransactionBackendLevelDB::create(int64_t id, PassRefPtr<IDBDatabaseCallbacks> callbacks, const Vector<int64_t>& objectStoreIds, IndexedDB::TransactionMode mode, IDBDatabaseBackendImpl* database)
 {
     HashSet<int64_t> objectStoreHashSet;
     for (size_t i = 0; i < objectStoreIds.size(); ++i)
         objectStoreHashSet.add(objectStoreIds[i]);
 
-    return adoptRef(new IDBTransactionBackendImpl(id, callbacks, objectStoreHashSet, mode, database));
+    return adoptRef(new IDBTransactionBackendLevelDB(id, callbacks, objectStoreHashSet, mode, database));
 }
 
-IDBTransactionBackendImpl::IDBTransactionBackendImpl(int64_t id, PassRefPtr<IDBDatabaseCallbacks> callbacks, const HashSet<int64_t>& objectStoreIds, IndexedDB::TransactionMode mode, IDBDatabaseBackendImpl* database)
+IDBTransactionBackendLevelDB::IDBTransactionBackendLevelDB(int64_t id, PassRefPtr<IDBDatabaseCallbacks> callbacks, const HashSet<int64_t>& objectStoreIds, IndexedDB::TransactionMode mode, IDBDatabaseBackendImpl* database)
     : m_id(id)
     , m_objectStoreIds(objectStoreIds)
     , m_mode(mode)
@@ -56,7 +56,7 @@ IDBTransactionBackendImpl::IDBTransactionBackendImpl(int64_t id, PassRefPtr<IDBD
     , m_callbacks(callbacks)
     , m_database(database)
     , m_transaction(database->backingStore().get())
-    , m_taskTimer(this, &IDBTransactionBackendImpl::taskTimerFired)
+    , m_taskTimer(this, &IDBTransactionBackendLevelDB::taskTimerFired)
     , m_pendingPreemptiveEvents(0)
 {
     // We pass a reference of this object before it can be adopted.
@@ -65,13 +65,13 @@ IDBTransactionBackendImpl::IDBTransactionBackendImpl(int64_t id, PassRefPtr<IDBD
     m_database->transactionCoordinator()->didCreateTransaction(this);
 }
 
-IDBTransactionBackendImpl::~IDBTransactionBackendImpl()
+IDBTransactionBackendLevelDB::~IDBTransactionBackendLevelDB()
 {
     // It shouldn't be possible for this object to get deleted until it's either complete or aborted.
     ASSERT(m_state == Finished);
 }
 
-void IDBTransactionBackendImpl::scheduleTask(IDBDatabaseBackendInterface::TaskType type, PassOwnPtr<Operation> task, PassOwnPtr<Operation> abortTask)
+void IDBTransactionBackendLevelDB::scheduleTask(IDBDatabaseBackendInterface::TaskType type, PassOwnPtr<Operation> task, PassOwnPtr<Operation> abortTask)
 {
     if (m_state == Finished)
         return;
@@ -90,14 +90,14 @@ void IDBTransactionBackendImpl::scheduleTask(IDBDatabaseBackendInterface::TaskTy
         m_taskTimer.startOneShot(0);
 }
 
-void IDBTransactionBackendImpl::abort()
+void IDBTransactionBackendLevelDB::abort()
 {
     abort(IDBDatabaseError::create(IDBDatabaseException::UnknownError, "Internal error (unknown cause)"));
 }
 
-void IDBTransactionBackendImpl::abort(PassRefPtr<IDBDatabaseError> error)
+void IDBTransactionBackendLevelDB::abort(PassRefPtr<IDBDatabaseError> error)
 {
-    IDB_TRACE("IDBTransactionBackendImpl::abort");
+    IDB_TRACE("IDBTransactionBackendLevelDB::abort");
     if (m_state == Finished)
         return;
 
@@ -106,7 +106,7 @@ void IDBTransactionBackendImpl::abort(PassRefPtr<IDBDatabaseError> error)
     // The last reference to this object may be released while performing the
     // abort steps below. We therefore take a self reference to keep ourselves
     // alive while executing this method.
-    Ref<IDBTransactionBackendImpl> protect(*this);
+    Ref<IDBTransactionBackendLevelDB> protect(*this);
 
     m_state = Finished;
     m_taskTimer.stop();
@@ -140,27 +140,27 @@ void IDBTransactionBackendImpl::abort(PassRefPtr<IDBDatabaseError> error)
     m_database = 0;
 }
 
-bool IDBTransactionBackendImpl::isTaskQueueEmpty() const
+bool IDBTransactionBackendLevelDB::isTaskQueueEmpty() const
 {
     return m_preemptiveTaskQueue.isEmpty() && m_taskQueue.isEmpty();
 }
 
-bool IDBTransactionBackendImpl::hasPendingTasks() const
+bool IDBTransactionBackendLevelDB::hasPendingTasks() const
 {
     return m_pendingPreemptiveEvents || !isTaskQueueEmpty();
 }
 
-void IDBTransactionBackendImpl::registerOpenCursor(IDBCursorBackendImpl* cursor)
+void IDBTransactionBackendLevelDB::registerOpenCursor(IDBCursorBackendImpl* cursor)
 {
     m_openCursors.add(cursor);
 }
 
-void IDBTransactionBackendImpl::unregisterOpenCursor(IDBCursorBackendImpl* cursor)
+void IDBTransactionBackendLevelDB::unregisterOpenCursor(IDBCursorBackendImpl* cursor)
 {
     m_openCursors.remove(cursor);
 }
 
-void IDBTransactionBackendImpl::run()
+void IDBTransactionBackendLevelDB::run()
 {
     // TransactionCoordinator has started this transaction. Schedule a timer
     // to process the first task.
@@ -170,7 +170,7 @@ void IDBTransactionBackendImpl::run()
     m_taskTimer.startOneShot(0);
 }
 
-void IDBTransactionBackendImpl::start()
+void IDBTransactionBackendLevelDB::start()
 {
     ASSERT(m_state == Unused);
 
@@ -179,9 +179,9 @@ void IDBTransactionBackendImpl::start()
     m_database->transactionStarted(this);
 }
 
-void IDBTransactionBackendImpl::commit()
+void IDBTransactionBackendLevelDB::commit()
 {
-    IDB_TRACE("IDBTransactionBackendImpl::commit");
+    IDB_TRACE("IDBTransactionBackendLevelDB::commit");
 
     // In multiprocess ports, front-end may have requested a commit but an abort has already
     // been initiated asynchronously by the back-end.
@@ -199,7 +199,7 @@ void IDBTransactionBackendImpl::commit()
     // The last reference to this object may be released while performing the
     // commit steps below. We therefore take a self reference to keep ourselves
     // alive while executing this method.
-    Ref<IDBTransactionBackendImpl> protect(*this);
+    Ref<IDBTransactionBackendLevelDB> protect(*this);
 
     bool unused = m_state == Unused;
     m_state = Finished;
@@ -229,9 +229,9 @@ void IDBTransactionBackendImpl::commit()
     m_database = 0;
 }
 
-void IDBTransactionBackendImpl::taskTimerFired(Timer<IDBTransactionBackendImpl>*)
+void IDBTransactionBackendLevelDB::taskTimerFired(Timer<IDBTransactionBackendLevelDB>*)
 {
-    IDB_TRACE("IDBTransactionBackendImpl::taskTimerFired");
+    IDB_TRACE("IDBTransactionBackendLevelDB::taskTimerFired");
     ASSERT(!isTaskQueueEmpty());
 
     if (m_state == StartPending) {
@@ -242,7 +242,7 @@ void IDBTransactionBackendImpl::taskTimerFired(Timer<IDBTransactionBackendImpl>*
     // The last reference to this object may be released while performing the
     // tasks. Take take a self reference to keep this object alive so that
     // the loop termination conditions can be checked.
-    Ref<IDBTransactionBackendImpl> protect(*this);
+    Ref<IDBTransactionBackendLevelDB> protect(*this);
 
     TaskQueue* taskQueue = m_pendingPreemptiveEvents ? &m_preemptiveTaskQueue : &m_taskQueue;
     while (!taskQueue->isEmpty() && m_state != Finished) {
@@ -260,7 +260,7 @@ void IDBTransactionBackendImpl::taskTimerFired(Timer<IDBTransactionBackendImpl>*
         commit();
 }
 
-void IDBTransactionBackendImpl::closeOpenCursors()
+void IDBTransactionBackendLevelDB::closeOpenCursors()
 {
     for (HashSet<IDBCursorBackendImpl*>::iterator i = m_openCursors.begin(); i != m_openCursors.end(); ++i)
         (*i)->close();
@@ -269,4 +269,4 @@ void IDBTransactionBackendImpl::closeOpenCursors()
 
 };
 
-#endif // ENABLE(INDEXED_DATABASE)
+#endif // ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
similarity index 80%
rename from Source/WebCore/Modules/indexeddb/IDBTransactionBackendImpl.h
rename to Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h
index e618fa0688a9c0ddc9f9a1a78cdd92bff2811eb3..f7c8691cda852a281f971c6f84898874f20bd14f 100644 (file)
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#ifndef IDBTransactionBackendImpl_h
-#define IDBTransactionBackendImpl_h
+#ifndef IDBTransactionBackendLevelDB_h
+#define IDBTransactionBackendLevelDB_h
 
-#if ENABLE(INDEXED_DATABASE)
+#if ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
-#include "IDBBackingStore.h"
+#include "IDBBackingStoreLevelDB.h"
 #include "IDBDatabaseBackendInterface.h"
 #include "IDBDatabaseError.h"
 #include "Timer.h"
@@ -42,10 +42,10 @@ class IDBDatabaseBackendImpl;
 class IDBCursorBackendImpl;
 class IDBDatabaseCallbacks;
 
-class IDBTransactionBackendImpl : public RefCounted<IDBTransactionBackendImpl> {
+class IDBTransactionBackendLevelDB : public RefCounted<IDBTransactionBackendLevelDB> {
 public:
-    static PassRefPtr<IDBTransactionBackendImpl> create(int64_t transactionId, PassRefPtr<IDBDatabaseCallbacks>, const Vector<int64_t>&, IndexedDB::TransactionMode, IDBDatabaseBackendImpl*);
-    virtual ~IDBTransactionBackendImpl();
+    static PassRefPtr<IDBTransactionBackendLevelDB> create(int64_t transactionId, PassRefPtr<IDBDatabaseCallbacks>, const Vector<int64_t>&, IndexedDB::TransactionMode, IDBDatabaseBackendImpl*);
+    virtual ~IDBTransactionBackendLevelDB();
 
     virtual void abort();
     void commit();
@@ -53,7 +53,7 @@ public:
     class Operation {
     public:
         virtual ~Operation() { }
-        virtual void perform(IDBTransactionBackendImpl*) = 0;
+        virtual void perform(IDBTransactionBackendLevelDB*) = 0;
     };
 
     void abort(PassRefPtr<IDBDatabaseError>);
@@ -72,7 +72,7 @@ public:
     IDBDatabaseBackendImpl* database() const { return m_database.get(); }
 
 private:
-    IDBTransactionBackendImpl(int64_t id, PassRefPtr<IDBDatabaseCallbacks>, const HashSet<int64_t>& objectStoreIds, IndexedDB::TransactionMode, IDBDatabaseBackendImpl*);
+    IDBTransactionBackendLevelDB(int64_t id, PassRefPtr<IDBDatabaseCallbacks>, const HashSet<int64_t>& objectStoreIds, IndexedDB::TransactionMode, IDBDatabaseBackendImpl*);
 
     enum State {
         Unused, // Created, but no tasks yet.
@@ -86,7 +86,7 @@ private:
     bool isTaskQueueEmpty() const;
     bool hasPendingTasks() const;
 
-    void taskTimerFired(Timer<IDBTransactionBackendImpl>*);
+    void taskTimerFired(Timer<IDBTransactionBackendLevelDB>*);
     void closeOpenCursors();
 
     const int64_t m_id;
@@ -106,7 +106,7 @@ private:
     IDBBackingStore::Transaction m_transaction;
 
     // FIXME: delete the timer once we have threads instead.
-    Timer<IDBTransactionBackendImpl> m_taskTimer;
+    Timer<IDBTransactionBackendLevelDB> m_taskTimer;
     int m_pendingPreemptiveEvents;
 
     HashSet<IDBCursorBackendImpl*> m_openCursors;
@@ -114,6 +114,6 @@ private:
 
 } // namespace WebCore
 
-#endif // ENABLE(INDEXED_DATABASE)
+#endif // ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
-#endif // IDBTransactionBackendImpl_h
+#endif // IDBTransactionBackendLevelDB_h
similarity index 72%
rename from Source/WebCore/Modules/indexeddb/IDBTransactionCoordinator.cpp
rename to Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.cpp
index a6fcd8ea3e6e1d82e1b92890ade54fd75eee871e..cc9a1635f7941e56b712aca8a40621571545968c 100644 (file)
  */
 
 #include "config.h"
-#include "IDBTransactionCoordinator.h"
+#include "IDBTransactionCoordinatorLevelDB.h"
 
-#if ENABLE(INDEXED_DATABASE)
+#if ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
 
-#include "IDBDatabaseBackendImpl.h"
-#include "IDBTransactionBackendImpl.h"
+#include "IDBDatabaseBackendLevelDB.h"
+#include "IDBTransactionBackendLevelDB.h"
 
 namespace WebCore {
 
-PassOwnPtr<IDBTransactionCoordinator> IDBTransactionCoordinator::create()
+PassOwnPtr<IDBTransactionCoordinatorLevelDB> IDBTransactionCoordinatorLevelDB::create()
 {
-    return adoptPtr(new IDBTransactionCoordinator());
+    return adoptPtr(new IDBTransactionCoordinatorLevelDB());
 }
 
-IDBTransactionCoordinator::IDBTransactionCoordinator()
+IDBTransactionCoordinatorLevelDB::IDBTransactionCoordinatorLevelDB()
 {
 }
 
-IDBTransactionCoordinator::~IDBTransactionCoordinator()
+IDBTransactionCoordinatorLevelDB::~IDBTransactionCoordinatorLevelDB()
 {
 }
 
-void IDBTransactionCoordinator::didCreateTransaction(IDBTransactionBackendImpl* transaction)
+void IDBTransactionCoordinatorLevelDB::didCreateTransaction(IDBTransactionBackendLevelDB* transaction)
 {
     ASSERT(!m_transactions.contains(transaction));
     m_transactions.add(transaction, transaction);
 }
 
-void IDBTransactionCoordinator::didStartTransaction(IDBTransactionBackendImpl* transaction)
+void IDBTransactionCoordinatorLevelDB::didStartTransaction(IDBTransactionBackendLevelDB* transaction)
 {
     ASSERT(m_transactions.contains(transaction));
 
@@ -60,7 +60,7 @@ void IDBTransactionCoordinator::didStartTransaction(IDBTransactionBackendImpl* t
     processStartedTransactions();
 }
 
-void IDBTransactionCoordinator::didFinishTransaction(IDBTransactionBackendImpl* transaction)
+void IDBTransactionCoordinatorLevelDB::didFinishTransaction(IDBTransactionBackendLevelDB* transaction)
 {
     ASSERT(m_transactions.contains(transaction));
 
@@ -77,7 +77,7 @@ void IDBTransactionCoordinator::didFinishTransaction(IDBTransactionBackendImpl*
 
 #ifndef NDEBUG
 // Verifies internal consistiency while returning whether anything is found.
-bool IDBTransactionCoordinator::isActive(IDBTransactionBackendImpl* transaction)
+bool IDBTransactionCoordinatorLevelDB::isActive(IDBTransactionBackendLevelDB* transaction)
 {
     bool found = false;
     if (m_queuedTransactions.contains(transaction))
@@ -91,16 +91,16 @@ bool IDBTransactionCoordinator::isActive(IDBTransactionBackendImpl* transaction)
 }
 #endif
 
-void IDBTransactionCoordinator::processStartedTransactions()
+void IDBTransactionCoordinatorLevelDB::processStartedTransactions()
 {
     if (m_queuedTransactions.isEmpty())
         return;
 
     ASSERT(m_startedTransactions.isEmpty() || (*m_startedTransactions.begin())->mode() != IndexedDB::TransactionVersionChange);
 
-    ListHashSet<IDBTransactionBackendImpl*>::const_iterator it = m_queuedTransactions.begin();
+    ListHashSet<IDBTransactionBackendLevelDB*>::const_iterator it = m_queuedTransactions.begin();
     while (it != m_queuedTransactions.end()) {
-        IDBTransactionBackendImpl* transaction = *it;
+        IDBTransactionBackendLevelDB* transaction = *it;
         ++it;
         if (canRunTransaction(transaction)) {
             m_queuedTransactions.remove(transaction);
@@ -119,7 +119,7 @@ static bool doScopesOverlap(const HashSet<int64_t>& scope1, const HashSet<int64_
     return false;
 }
 
-bool IDBTransactionCoordinator::canRunTransaction(IDBTransactionBackendImpl* transaction)
+bool IDBTransactionCoordinatorLevelDB::canRunTransaction(IDBTransactionBackendLevelDB* transaction)
 {
     ASSERT(m_queuedTransactions.contains(transaction));
     switch (transaction->mode()) {
@@ -132,11 +132,11 @@ bool IDBTransactionCoordinator::canRunTransaction(IDBTransactionBackendImpl* tra
         return true;
 
     case IndexedDB::TransactionReadWrite:
-        for (HashSet<IDBTransactionBackendImpl*>::const_iterator it = m_startedTransactions.begin(); it != m_startedTransactions.end(); ++it) {
+        for (HashSet<IDBTransactionBackendLevelDB*>::const_iterator it = m_startedTransactions.begin(); it != m_startedTransactions.end(); ++it) {
             if ((*it)->mode() == IndexedDB::TransactionReadWrite && doScopesOverlap(transaction->scope(), (*it)->scope()))
                 return false;
         }
-        for (ListHashSet<IDBTransactionBackendImpl*>::const_iterator it = m_queuedTransactions.begin(); *it != transaction; ++it) {
+        for (ListHashSet<IDBTransactionBackendLevelDB*>::const_iterator it = m_queuedTransactions.begin(); *it != transaction; ++it) {
             ASSERT(it != m_queuedTransactions.end());
             if ((*it)->mode() == IndexedDB::TransactionReadWrite && doScopesOverlap(transaction->scope(), (*it)->scope()))
                 return false;
@@ -149,4 +149,4 @@ bool IDBTransactionCoordinator::canRunTransaction(IDBTransactionBackendImpl* tra
 
 };
 
-#endif // ENABLE(INDEXED_DATABASE)
+#endif // ENABLE(INDEXED_DATABASE) && USE(LEVELDB)
similarity index 67%
rename from Source/WebCore/Modules/indexeddb/IDBTransactionCoordinator.h
rename to Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.h
index 494cffb216c87d976f29d1003ebfdb035de02a50..e61a6b416426196b41ec7ef6d8c25bbeb70de218 100644 (file)
@@ -23,8 +23,8 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#ifndef IDBTransactionCoordinator_h
-#define IDBTransactionCoordinator_h
+#ifndef IDBTransactionCoordinatorLevelDB_h
+#define IDBTransactionCoordinatorLevelDB_h
 
 #if ENABLE(INDEXED_DATABASE)
 
 
 namespace WebCore {
 
-class IDBTransactionBackendImpl;
-class IDBDatabaseBackendImpl;
+class IDBTransactionBackendLevelDB;
 
 // Transactions are executed in the order the were created.
-class IDBTransactionCoordinator {
+class IDBTransactionCoordinatorLevelDB {
 public:
-    static PassOwnPtr<IDBTransactionCoordinator> create();
-    virtual ~IDBTransactionCoordinator();
+    static PassOwnPtr<IDBTransactionCoordinatorLevelDB> create();
+    virtual ~IDBTransactionCoordinatorLevelDB();
 
     // Called by transactions as they start and finish.
-    void didCreateTransaction(IDBTransactionBackendImpl*);
-    void didStartTransaction(IDBTransactionBackendImpl*);
-    void didFinishTransaction(IDBTransactionBackendImpl*);
+    void didCreateTransaction(IDBTransactionBackendLevelDB*);
+    void didStartTransaction(IDBTransactionBackendLevelDB*);
+    void didFinishTransaction(IDBTransactionBackendLevelDB*);
 
 #ifndef NDEBUG
-    bool isActive(IDBTransactionBackendImpl*);
+    bool isActive(IDBTransactionBackendLevelDB*);
 #endif
 
 private:
-    IDBTransactionCoordinator();
+    IDBTransactionCoordinatorLevelDB();
 
     void processStartedTransactions();
-    bool canRunTransaction(IDBTransactionBackendImpl*);
+    bool canRunTransaction(IDBTransactionBackendLevelDB*);
 
     // This is just an efficient way to keep references to all transactions.
-    HashMap<IDBTransactionBackendImpl*, RefPtr<IDBTransactionBackendImpl> > m_transactions;
+    HashMap<IDBTransactionBackendLevelDB*, RefPtr<IDBTransactionBackendLevelDB> > m_transactions;
     // Transactions in different states are grouped below.
-    ListHashSet<IDBTransactionBackendImpl*> m_queuedTransactions;
-    HashSet<IDBTransactionBackendImpl*> m_startedTransactions;
+    ListHashSet<IDBTransactionBackendLevelDB*> m_queuedTransactions;
+    HashSet<IDBTransactionBackendLevelDB*> m_startedTransactions;
 };
 
 } // namespace WebCore
 
 #endif // ENABLE(INDEXED_DATABASE)
 
-#endif // IDBTransactionCoordinator_h
+#endif // IDBTransactionCoordinatorLevelDB_h
index 626c32e63670a7b99cd3b0899608e8461107e59e..fa846a2e1febebad74212680d588531375339644 100644 (file)
@@ -3059,23 +3059,23 @@ enable?(INDEXED_DATABASE) {
         Modules/indexeddb/IDBAny.h \
         Modules/indexeddb/IDBCallbacks.h \
         Modules/indexeddb/IDBCursor.h \
-        Modules/indexeddb/IDBCursorBackendImpl.h \
+        Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h \
         Modules/indexeddb/IDBCursorBackendInterface.h \
         Modules/indexeddb/IDBDatabase.h \
-        Modules/indexeddb/IDBDatabaseBackendImpl.h \
+        Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h \
         Modules/indexeddb/IDBDatabaseBackendInterface.h \
         Modules/indexeddb/IDBDatabaseError.h \
         Modules/indexeddb/IDBDatabaseException.h \
         Modules/indexeddb/IDBEventDispatcher.h \
         Modules/indexeddb/IDBFactory.h \
-        Modules/indexeddb/IDBFactoryBackendImpl.h \
+        Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h \
         Modules/indexeddb/IDBFactoryBackendInterface.h \
         Modules/indexeddb/IDBHistograms.h \
         Modules/indexeddb/IDBIndex.h \
         Modules/indexeddb/IDBKey.h \
         Modules/indexeddb/IDBKeyRange.h \
         Modules/indexeddb/IDBObjectStore.h \
-        Modules/indexeddb/IDBObjectStoreBackendImpl.h \
+        Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.h \
         Modules/indexeddb/IDBRequest.h \
         Modules/indexeddb/IDBTransaction.h \
         Modules/indexeddb/IndexedDB.h
@@ -3088,19 +3088,19 @@ enable?(INDEXED_DATABASE) {
         Modules/indexeddb/DOMWindowIndexedDatabase.cpp \
         Modules/indexeddb/IDBAny.cpp \
         Modules/indexeddb/IDBCursor.cpp \
-        Modules/indexeddb/IDBCursorBackendImpl.cpp \
+        Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp \
         Modules/indexeddb/IDBDatabase.cpp \
-        Modules/indexeddb/IDBDatabaseBackendImpl.cpp \
+        Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp \
         Modules/indexeddb/IDBDatabaseException.cpp \
         Modules/indexeddb/IDBEventDispatcher.cpp \
         Modules/indexeddb/IDBFactory.cpp \
         Modules/indexeddb/IDBFactoryBackendInterface.cpp \
-        Modules/indexeddb/IDBFactoryBackendImpl.cpp \
+        Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp \
         Modules/indexeddb/IDBIndex.cpp \
         Modules/indexeddb/IDBKey.cpp \
         Modules/indexeddb/IDBKeyRange.cpp \
         Modules/indexeddb/IDBObjectStore.cpp \
-        Modules/indexeddb/IDBObjectStoreBackendImpl.cpp \
+        Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp \
         Modules/indexeddb/IDBRequest.cpp \
         Modules/indexeddb/IDBTransaction.cpp \
         Modules/indexeddb/PageGroupIndexedDatabase.cpp \
index e3f5ecc765bb8d7ba77e76cbc58eac8c6d02d1bd..e656a4762c66ff9689605e317939876cb1c3d8b5 100644 (file)
     <ClCompile Include="..\Modules\indexeddb\DOMWindowIndexedDatabase.cpp" />
     <ClCompile Include="..\Modules\indexeddb\IDBAny.cpp" />
     <ClCompile Include="..\Modules\indexeddb\IDBCursor.cpp" />
-    <ClCompile Include="..\Modules\indexeddb\IDBCursorBackendImpl.cpp" />
+    <ClCompile Include="..\Modules\indexeddb\leveldb\IDBCursorBackendLevelDB.cpp" />
     <ClCompile Include="..\Modules\indexeddb\IDBDatabase.cpp" />
-    <ClCompile Include="..\Modules\indexeddb\IDBDatabaseBackendImpl.cpp" />
+    <ClCompile Include="..\Modules\indexeddb\leveldb\IDBDatabaseBackendLevelDB.cpp" />
     <ClCompile Include="..\Modules\indexeddb\IDBFactory.cpp" />
-    <ClCompile Include="..\Modules\indexeddb\IDBFactoryBackendImpl.cpp" />
+    <ClCompile Include="..\Modules\indexeddb\leveldb\IDBFactoryBackendLevelDB.cpp" />
     <ClCompile Include="..\Modules\indexeddb\IDBFactoryBackendInterface.cpp" />
     <ClCompile Include="..\Modules\indexeddb\IDBIndex.cpp" />
     <ClCompile Include="..\Modules\indexeddb\IDBKey.cpp" />
     <ClCompile Include="..\Modules\indexeddb\IDBKeyRange.cpp" />
     <ClCompile Include="..\Modules\indexeddb\IDBObjectStore.cpp" />
-    <ClCompile Include="..\Modules\indexeddb\IDBObjectStoreBackendImpl.cpp" />
+    <ClCompile Include="..\Modules\indexeddb\leveldb\IDBObjectStoreBackendLevelDB.cpp" />
     <ClCompile Include="..\Modules\indexeddb\IDBRequest.cpp" />
     <ClCompile Include="..\Modules\indexeddb\IDBTransaction.cpp" />
     <ClCompile Include="..\Modules\indexeddb\PageGroupIndexedDatabase.cpp" />
index f54dd59c60e718783a83f4ccd75c08caf1f3264a..6da37b28bb51c4733d8e48af4a6052614171261f 100644 (file)
                511EF2CF17F0FDF100E4FA16 /* JSIDBAnyCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 511EF2CC17F0FDF100E4FA16 /* JSIDBAnyCustom.cpp */; };
                511EF2D017F0FDF100E4FA16 /* JSIDBDatabaseCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 511EF2CD17F0FDF100E4FA16 /* JSIDBDatabaseCustom.cpp */; };
                511EF2D117F0FDF100E4FA16 /* JSIDBObjectStoreCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 511EF2CE17F0FDF100E4FA16 /* JSIDBObjectStoreCustom.cpp */; };
-               511EF32917F0FF0300E4FA16 /* IDBBackingStore.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 511EF32817F0FF0300E4FA16 /* IDBBackingStore.cpp */; };
+               511EF33917F23B7300E4FA16 /* IDBBackingStoreLevelDB.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 511EF32B17F23B6900E4FA16 /* IDBBackingStoreLevelDB.cpp */; };
+               511EF33A17F23B7300E4FA16 /* IDBCursorBackendLevelDB.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 511EF32D17F23B6900E4FA16 /* IDBCursorBackendLevelDB.cpp */; };
+               511EF33B17F23B7300E4FA16 /* IDBDatabaseBackendLevelDB.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 511EF32F17F23B6900E4FA16 /* IDBDatabaseBackendLevelDB.cpp */; };
+               511EF33C17F23B7300E4FA16 /* IDBFactoryBackendLevelDB.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 511EF33117F23B6900E4FA16 /* IDBFactoryBackendLevelDB.cpp */; };
+               511EF33D17F23B7300E4FA16 /* IDBLevelDBCoding.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 511EF33317F23B6900E4FA16 /* IDBLevelDBCoding.cpp */; };
+               511EF33E17F23B7300E4FA16 /* IDBObjectStoreBackendLevelDB.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 511EF33517F23B6900E4FA16 /* IDBObjectStoreBackendLevelDB.cpp */; };
+               511EF33F17F23B7300E4FA16 /* IDBTransactionBackendLevelDB.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 511EF33717F23B6900E4FA16 /* IDBTransactionBackendLevelDB.cpp */; };
                511F23190DC160DA004F0032 /* StorageThread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 511F23150DC160DA004F0032 /* StorageThread.cpp */; };
                511F231A0DC160DA004F0032 /* StorageThread.h in Headers */ = {isa = PBXBuildFile; fileRef = 511F23160DC160DA004F0032 /* StorageThread.h */; };
                5126E6BB0A2E3B12005C29FA /* IconDatabase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5126E6B90A2E3B12005C29FA /* IconDatabase.cpp */; };
                51C81B890C4422F70019ECE3 /* FTPDirectoryParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51C81B870C4422F70019ECE3 /* FTPDirectoryParser.cpp */; };
                51C81B8A0C4422F70019ECE3 /* FTPDirectoryParser.h in Headers */ = {isa = PBXBuildFile; fileRef = 51C81B880C4422F70019ECE3 /* FTPDirectoryParser.h */; };
                51CBFC990D10E483002DBF51 /* CachedFramePlatformData.h in Headers */ = {isa = PBXBuildFile; fileRef = 51CBFC980D10E483002DBF51 /* CachedFramePlatformData.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               51CEFB2B17F2492900ACAA18 /* IDBTransactionCoordinatorLevelDB.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51CEFB2917F2492100ACAA18 /* IDBTransactionCoordinatorLevelDB.cpp */; };
                51D0C5160DAA90B7003B3831 /* JSStorageCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51D0C5150DAA90B7003B3831 /* JSStorageCustom.cpp */; };
                51DCE8020CAC9F1C00488358 /* JSSQLResultSetRowListCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 51DCE8010CAC9F1C00488358 /* JSSQLResultSetRowListCustom.cpp */; };
                51DF6D7E0B92A16D00C2DC85 /* ThreadCheck.h in Headers */ = {isa = PBXBuildFile; fileRef = 51DF6D7D0B92A16D00C2DC85 /* ThreadCheck.h */; settings = {ATTRIBUTES = (Private, ); }; };
                9712A5AD15004EDA0048AF10 /* DOMWindowIndexedDatabase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9712A55415004EDA0048AF10 /* DOMWindowIndexedDatabase.cpp */; };
                9712A5AE15004EDA0048AF10 /* DOMWindowIndexedDatabase.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A55515004EDA0048AF10 /* DOMWindowIndexedDatabase.h */; };
                9712A5B115004EDA0048AF10 /* IDBAny.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A55815004EDA0048AF10 /* IDBAny.h */; };
-               9712A5B315004EDA0048AF10 /* IDBBackingStore.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A55A15004EDA0048AF10 /* IDBBackingStore.h */; };
                9712A5B415004EDA0048AF10 /* IDBCallbacks.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A55B15004EDA0048AF10 /* IDBCallbacks.h */; };
                9712A5B615004EDA0048AF10 /* IDBCursor.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A55D15004EDA0048AF10 /* IDBCursor.h */; };
-               9712A5B815004EDA0048AF10 /* IDBCursorBackendImpl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9712A55F15004EDA0048AF10 /* IDBCursorBackendImpl.cpp */; };
-               9712A5B915004EDA0048AF10 /* IDBCursorBackendImpl.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A56015004EDA0048AF10 /* IDBCursorBackendImpl.h */; };
                9712A5BA15004EDA0048AF10 /* IDBCursorBackendInterface.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A56115004EDA0048AF10 /* IDBCursorBackendInterface.h */; };
                9712A5BC15004EDA0048AF10 /* IDBCursorWithValue.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A56315004EDA0048AF10 /* IDBCursorWithValue.h */; };
                9712A5BF15004EDA0048AF10 /* IDBDatabase.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A56615004EDA0048AF10 /* IDBDatabase.h */; };
-               9712A5C115004EDA0048AF10 /* IDBDatabaseBackendImpl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9712A56815004EDA0048AF10 /* IDBDatabaseBackendImpl.cpp */; };
-               9712A5C215004EDA0048AF10 /* IDBDatabaseBackendImpl.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A56915004EDA0048AF10 /* IDBDatabaseBackendImpl.h */; };
                9712A5C315004EDA0048AF10 /* IDBDatabaseBackendInterface.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A56A15004EDA0048AF10 /* IDBDatabaseBackendInterface.h */; };
                9712A5C415004EDA0048AF10 /* IDBDatabaseCallbacks.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A56B15004EDA0048AF10 /* IDBDatabaseCallbacks.h */; };
                9712A5C515004EDA0048AF10 /* IDBDatabaseCallbacksImpl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9712A56C15004EDA0048AF10 /* IDBDatabaseCallbacksImpl.cpp */; };
                9712A5CA15004EDA0048AF10 /* IDBDatabaseException.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A57115004EDA0048AF10 /* IDBDatabaseException.h */; };
                9712A5CD15004EDA0048AF10 /* IDBEventDispatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A57415004EDA0048AF10 /* IDBEventDispatcher.h */; };
                9712A5CF15004EDA0048AF10 /* IDBFactory.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A57615004EDA0048AF10 /* IDBFactory.h */; };
-               9712A5D115004EDA0048AF10 /* IDBFactoryBackendImpl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9712A57815004EDA0048AF10 /* IDBFactoryBackendImpl.cpp */; };
-               9712A5D215004EDA0048AF10 /* IDBFactoryBackendImpl.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A57915004EDA0048AF10 /* IDBFactoryBackendImpl.h */; };
                9712A5D315004EDA0048AF10 /* IDBFactoryBackendInterface.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9712A57A15004EDA0048AF10 /* IDBFactoryBackendInterface.cpp */; };
                9712A5D415004EDA0048AF10 /* IDBFactoryBackendInterface.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A57B15004EDA0048AF10 /* IDBFactoryBackendInterface.h */; };
                9712A5D615004EDA0048AF10 /* IDBIndex.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A57D15004EDA0048AF10 /* IDBIndex.h */; };
                9712A5DF15004EDA0048AF10 /* IDBKeyPath.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A58615004EDA0048AF10 /* IDBKeyPath.h */; };
                9712A5E315004EDA0048AF10 /* IDBKeyRange.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A58A15004EDA0048AF10 /* IDBKeyRange.h */; };
                9712A5EA15004EDA0048AF10 /* IDBObjectStore.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A59115004EDA0048AF10 /* IDBObjectStore.h */; };
-               9712A5EC15004EDA0048AF10 /* IDBObjectStoreBackendImpl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9712A59315004EDA0048AF10 /* IDBObjectStoreBackendImpl.cpp */; };
-               9712A5ED15004EDA0048AF10 /* IDBObjectStoreBackendImpl.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A59415004EDA0048AF10 /* IDBObjectStoreBackendImpl.h */; };
                9712A5EF15004EDA0048AF10 /* IDBPendingTransactionMonitor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9712A59615004EDA0048AF10 /* IDBPendingTransactionMonitor.cpp */; };
                9712A5F015004EDA0048AF10 /* IDBPendingTransactionMonitor.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A59715004EDA0048AF10 /* IDBPendingTransactionMonitor.h */; };
                9712A5F215004EDA0048AF10 /* IDBRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A59915004EDA0048AF10 /* IDBRequest.h */; };
                9712A5F415004EDA0048AF10 /* IDBTracing.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A59B15004EDA0048AF10 /* IDBTracing.h */; };
                9712A5F615004EDA0048AF10 /* IDBTransaction.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A59D15004EDA0048AF10 /* IDBTransaction.h */; };
-               9712A5F815004EDA0048AF10 /* IDBTransactionBackendImpl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9712A59F15004EDA0048AF10 /* IDBTransactionBackendImpl.cpp */; };
-               9712A5F915004EDA0048AF10 /* IDBTransactionBackendImpl.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A5A015004EDA0048AF10 /* IDBTransactionBackendImpl.h */; };
-               9712A5FC15004EDA0048AF10 /* IDBTransactionCoordinator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9712A5A315004EDA0048AF10 /* IDBTransactionCoordinator.cpp */; };
-               9712A5FD15004EDA0048AF10 /* IDBTransactionCoordinator.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A5A415004EDA0048AF10 /* IDBTransactionCoordinator.h */; };
                9712A5FE15004EDA0048AF10 /* IDBVersionChangeEvent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9712A5A515004EDA0048AF10 /* IDBVersionChangeEvent.cpp */; };
                9712A5FF15004EDA0048AF10 /* IDBVersionChangeEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = 9712A5A615004EDA0048AF10 /* IDBVersionChangeEvent.h */; };
                9712A60415004EDA0048AF10 /* PageGroupIndexedDatabase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9712A5AB15004EDA0048AF10 /* PageGroupIndexedDatabase.cpp */; };
                511EF2CC17F0FDF100E4FA16 /* JSIDBAnyCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSIDBAnyCustom.cpp; sourceTree = "<group>"; };
                511EF2CD17F0FDF100E4FA16 /* JSIDBDatabaseCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSIDBDatabaseCustom.cpp; sourceTree = "<group>"; };
                511EF2CE17F0FDF100E4FA16 /* JSIDBObjectStoreCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSIDBObjectStoreCustom.cpp; sourceTree = "<group>"; };
-               511EF32817F0FF0300E4FA16 /* IDBBackingStore.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IDBBackingStore.cpp; path = Modules/indexeddb/IDBBackingStore.cpp; sourceTree = "<group>"; };
+               511EF32B17F23B6900E4FA16 /* IDBBackingStoreLevelDB.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = IDBBackingStoreLevelDB.cpp; path = Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp; sourceTree = "<group>"; };
+               511EF32C17F23B6900E4FA16 /* IDBBackingStoreLevelDB.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = IDBBackingStoreLevelDB.h; path = Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h; sourceTree = "<group>"; };
+               511EF32D17F23B6900E4FA16 /* IDBCursorBackendLevelDB.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = IDBCursorBackendLevelDB.cpp; path = Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp; sourceTree = "<group>"; };
+               511EF32E17F23B6900E4FA16 /* IDBCursorBackendLevelDB.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = IDBCursorBackendLevelDB.h; path = Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h; sourceTree = "<group>"; };
+               511EF32F17F23B6900E4FA16 /* IDBDatabaseBackendLevelDB.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = IDBDatabaseBackendLevelDB.cpp; path = Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp; sourceTree = "<group>"; };
+               511EF33017F23B6900E4FA16 /* IDBDatabaseBackendLevelDB.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = IDBDatabaseBackendLevelDB.h; path = Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h; sourceTree = "<group>"; };
+               511EF33117F23B6900E4FA16 /* IDBFactoryBackendLevelDB.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = IDBFactoryBackendLevelDB.cpp; path = Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp; sourceTree = "<group>"; };
+               511EF33217F23B6900E4FA16 /* IDBFactoryBackendLevelDB.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = IDBFactoryBackendLevelDB.h; path = Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h; sourceTree = "<group>"; };
+               511EF33317F23B6900E4FA16 /* IDBLevelDBCoding.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = IDBLevelDBCoding.cpp; path = Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp; sourceTree = "<group>"; };
+               511EF33417F23B6900E4FA16 /* IDBLevelDBCoding.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = IDBLevelDBCoding.h; path = Modules/indexeddb/leveldb/IDBLevelDBCoding.h; sourceTree = "<group>"; };
+               511EF33517F23B6900E4FA16 /* IDBObjectStoreBackendLevelDB.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = IDBObjectStoreBackendLevelDB.cpp; path = Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp; sourceTree = "<group>"; };
+               511EF33617F23B6900E4FA16 /* IDBObjectStoreBackendLevelDB.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = IDBObjectStoreBackendLevelDB.h; path = Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.h; sourceTree = "<group>"; };
+               511EF33717F23B6900E4FA16 /* IDBTransactionBackendLevelDB.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = IDBTransactionBackendLevelDB.cpp; path = Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp; sourceTree = "<group>"; };
+               511EF33817F23B6900E4FA16 /* IDBTransactionBackendLevelDB.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = IDBTransactionBackendLevelDB.h; path = Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h; sourceTree = "<group>"; };
                511F23150DC160DA004F0032 /* StorageThread.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StorageThread.cpp; sourceTree = "<group>"; };
                511F23160DC160DA004F0032 /* StorageThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StorageThread.h; sourceTree = "<group>"; };
                5126E6B90A2E3B12005C29FA /* IconDatabase.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = IconDatabase.cpp; sourceTree = "<group>"; };
                51C81B870C4422F70019ECE3 /* FTPDirectoryParser.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = FTPDirectoryParser.cpp; sourceTree = "<group>"; };
                51C81B880C4422F70019ECE3 /* FTPDirectoryParser.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FTPDirectoryParser.h; sourceTree = "<group>"; };
                51CBFC980D10E483002DBF51 /* CachedFramePlatformData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CachedFramePlatformData.h; sourceTree = "<group>"; };
+               51CEFB2917F2492100ACAA18 /* IDBTransactionCoordinatorLevelDB.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = IDBTransactionCoordinatorLevelDB.cpp; path = Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.cpp; sourceTree = "<group>"; };
+               51CEFB2A17F2492100ACAA18 /* IDBTransactionCoordinatorLevelDB.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = IDBTransactionCoordinatorLevelDB.h; path = Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.h; sourceTree = "<group>"; };
                51D0C5150DAA90B7003B3831 /* JSStorageCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSStorageCustom.cpp; sourceTree = "<group>"; };
                51DCE8010CAC9F1C00488358 /* JSSQLResultSetRowListCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSSQLResultSetRowListCustom.cpp; sourceTree = "<group>"; };
                51DF6D7D0B92A16D00C2DC85 /* ThreadCheck.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThreadCheck.h; sourceTree = "<group>"; };
                9712A55615004EDA0048AF10 /* DOMWindowIndexedDatabase.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = DOMWindowIndexedDatabase.idl; path = Modules/indexeddb/DOMWindowIndexedDatabase.idl; sourceTree = "<group>"; };
                9712A55815004EDA0048AF10 /* IDBAny.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBAny.h; path = Modules/indexeddb/IDBAny.h; sourceTree = "<group>"; };
                9712A55915004EDA0048AF10 /* IDBAny.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = IDBAny.idl; path = Modules/indexeddb/IDBAny.idl; sourceTree = "<group>"; };
-               9712A55A15004EDA0048AF10 /* IDBBackingStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBBackingStore.h; path = Modules/indexeddb/IDBBackingStore.h; sourceTree = "<group>"; };
                9712A55B15004EDA0048AF10 /* IDBCallbacks.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBCallbacks.h; path = Modules/indexeddb/IDBCallbacks.h; sourceTree = "<group>"; };
                9712A55D15004EDA0048AF10 /* IDBCursor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBCursor.h; path = Modules/indexeddb/IDBCursor.h; sourceTree = "<group>"; };
                9712A55E15004EDA0048AF10 /* IDBCursor.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = IDBCursor.idl; path = Modules/indexeddb/IDBCursor.idl; sourceTree = "<group>"; };
-               9712A55F15004EDA0048AF10 /* IDBCursorBackendImpl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IDBCursorBackendImpl.cpp; path = Modules/indexeddb/IDBCursorBackendImpl.cpp; sourceTree = "<group>"; };
-               9712A56015004EDA0048AF10 /* IDBCursorBackendImpl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBCursorBackendImpl.h; path = Modules/indexeddb/IDBCursorBackendImpl.h; sourceTree = "<group>"; };
                9712A56115004EDA0048AF10 /* IDBCursorBackendInterface.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBCursorBackendInterface.h; path = Modules/indexeddb/IDBCursorBackendInterface.h; sourceTree = "<group>"; };
                9712A56315004EDA0048AF10 /* IDBCursorWithValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBCursorWithValue.h; path = Modules/indexeddb/IDBCursorWithValue.h; sourceTree = "<group>"; };
                9712A56415004EDA0048AF10 /* IDBCursorWithValue.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = IDBCursorWithValue.idl; path = Modules/indexeddb/IDBCursorWithValue.idl; sourceTree = "<group>"; };
                9712A56615004EDA0048AF10 /* IDBDatabase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBDatabase.h; path = Modules/indexeddb/IDBDatabase.h; sourceTree = "<group>"; };
                9712A56715004EDA0048AF10 /* IDBDatabase.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = IDBDatabase.idl; path = Modules/indexeddb/IDBDatabase.idl; sourceTree = "<group>"; };
-               9712A56815004EDA0048AF10 /* IDBDatabaseBackendImpl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IDBDatabaseBackendImpl.cpp; path = Modules/indexeddb/IDBDatabaseBackendImpl.cpp; sourceTree = "<group>"; };
-               9712A56915004EDA0048AF10 /* IDBDatabaseBackendImpl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBDatabaseBackendImpl.h; path = Modules/indexeddb/IDBDatabaseBackendImpl.h; sourceTree = "<group>"; };
                9712A56A15004EDA0048AF10 /* IDBDatabaseBackendInterface.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBDatabaseBackendInterface.h; path = Modules/indexeddb/IDBDatabaseBackendInterface.h; sourceTree = "<group>"; };
                9712A56B15004EDA0048AF10 /* IDBDatabaseCallbacks.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBDatabaseCallbacks.h; path = Modules/indexeddb/IDBDatabaseCallbacks.h; sourceTree = "<group>"; };
                9712A56C15004EDA0048AF10 /* IDBDatabaseCallbacksImpl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IDBDatabaseCallbacksImpl.cpp; path = Modules/indexeddb/IDBDatabaseCallbacksImpl.cpp; sourceTree = "<group>"; };
                9712A57415004EDA0048AF10 /* IDBEventDispatcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBEventDispatcher.h; path = Modules/indexeddb/IDBEventDispatcher.h; sourceTree = "<group>"; };
                9712A57615004EDA0048AF10 /* IDBFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBFactory.h; path = Modules/indexeddb/IDBFactory.h; sourceTree = "<group>"; };
                9712A57715004EDA0048AF10 /* IDBFactory.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = IDBFactory.idl; path = Modules/indexeddb/IDBFactory.idl; sourceTree = "<group>"; };
-               9712A57815004EDA0048AF10 /* IDBFactoryBackendImpl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IDBFactoryBackendImpl.cpp; path = Modules/indexeddb/IDBFactoryBackendImpl.cpp; sourceTree = "<group>"; };
-               9712A57915004EDA0048AF10 /* IDBFactoryBackendImpl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBFactoryBackendImpl.h; path = Modules/indexeddb/IDBFactoryBackendImpl.h; sourceTree = "<group>"; };
                9712A57A15004EDA0048AF10 /* IDBFactoryBackendInterface.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IDBFactoryBackendInterface.cpp; path = Modules/indexeddb/IDBFactoryBackendInterface.cpp; sourceTree = "<group>"; };
                9712A57B15004EDA0048AF10 /* IDBFactoryBackendInterface.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBFactoryBackendInterface.h; path = Modules/indexeddb/IDBFactoryBackendInterface.h; sourceTree = "<group>"; };
                9712A57D15004EDA0048AF10 /* IDBIndex.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBIndex.h; path = Modules/indexeddb/IDBIndex.h; sourceTree = "<group>"; };
                9712A58B15004EDA0048AF10 /* IDBKeyRange.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = IDBKeyRange.idl; path = Modules/indexeddb/IDBKeyRange.idl; sourceTree = "<group>"; };
                9712A59115004EDA0048AF10 /* IDBObjectStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBObjectStore.h; path = Modules/indexeddb/IDBObjectStore.h; sourceTree = "<group>"; };
                9712A59215004EDA0048AF10 /* IDBObjectStore.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = IDBObjectStore.idl; path = Modules/indexeddb/IDBObjectStore.idl; sourceTree = "<group>"; };
-               9712A59315004EDA0048AF10 /* IDBObjectStoreBackendImpl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IDBObjectStoreBackendImpl.cpp; path = Modules/indexeddb/IDBObjectStoreBackendImpl.cpp; sourceTree = "<group>"; };
-               9712A59415004EDA0048AF10 /* IDBObjectStoreBackendImpl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBObjectStoreBackendImpl.h; path = Modules/indexeddb/IDBObjectStoreBackendImpl.h; sourceTree = "<group>"; };
                9712A59615004EDA0048AF10 /* IDBPendingTransactionMonitor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IDBPendingTransactionMonitor.cpp; path = Modules/indexeddb/IDBPendingTransactionMonitor.cpp; sourceTree = "<group>"; };
                9712A59715004EDA0048AF10 /* IDBPendingTransactionMonitor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBPendingTransactionMonitor.h; path = Modules/indexeddb/IDBPendingTransactionMonitor.h; sourceTree = "<group>"; };
                9712A59915004EDA0048AF10 /* IDBRequest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBRequest.h; path = Modules/indexeddb/IDBRequest.h; sourceTree = "<group>"; };
                9712A59B15004EDA0048AF10 /* IDBTracing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBTracing.h; path = Modules/indexeddb/IDBTracing.h; sourceTree = "<group>"; };
                9712A59D15004EDA0048AF10 /* IDBTransaction.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBTransaction.h; path = Modules/indexeddb/IDBTransaction.h; sourceTree = "<group>"; };
                9712A59E15004EDA0048AF10 /* IDBTransaction.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = IDBTransaction.idl; path = Modules/indexeddb/IDBTransaction.idl; sourceTree = "<group>"; };
-               9712A59F15004EDA0048AF10 /* IDBTransactionBackendImpl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IDBTransactionBackendImpl.cpp; path = Modules/indexeddb/IDBTransactionBackendImpl.cpp; sourceTree = "<group>"; };
-               9712A5A015004EDA0048AF10 /* IDBTransactionBackendImpl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBTransactionBackendImpl.h; path = Modules/indexeddb/IDBTransactionBackendImpl.h; sourceTree = "<group>"; };
-               9712A5A315004EDA0048AF10 /* IDBTransactionCoordinator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IDBTransactionCoordinator.cpp; path = Modules/indexeddb/IDBTransactionCoordinator.cpp; sourceTree = "<group>"; };
-               9712A5A415004EDA0048AF10 /* IDBTransactionCoordinator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBTransactionCoordinator.h; path = Modules/indexeddb/IDBTransactionCoordinator.h; sourceTree = "<group>"; };
                9712A5A515004EDA0048AF10 /* IDBVersionChangeEvent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IDBVersionChangeEvent.cpp; path = Modules/indexeddb/IDBVersionChangeEvent.cpp; sourceTree = "<group>"; };
                9712A5A615004EDA0048AF10 /* IDBVersionChangeEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IDBVersionChangeEvent.h; path = Modules/indexeddb/IDBVersionChangeEvent.h; sourceTree = "<group>"; };
                9712A5A715004EDA0048AF10 /* IDBVersionChangeEvent.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = IDBVersionChangeEvent.idl; path = Modules/indexeddb/IDBVersionChangeEvent.idl; sourceTree = "<group>"; };
                        name = animation;
                        sourceTree = "<group>";
                };
+               511EF32A17F236E900E4FA16 /* leveldb */ = {
+                       isa = PBXGroup;
+                       children = (
+                               511EF32B17F23B6900E4FA16 /* IDBBackingStoreLevelDB.cpp */,
+                               511EF32C17F23B6900E4FA16 /* IDBBackingStoreLevelDB.h */,
+                               511EF32D17F23B6900E4FA16 /* IDBCursorBackendLevelDB.cpp */,
+                               511EF32E17F23B6900E4FA16 /* IDBCursorBackendLevelDB.h */,
+                               511EF32F17F23B6900E4FA16 /* IDBDatabaseBackendLevelDB.cpp */,
+                               511EF33017F23B6900E4FA16 /* IDBDatabaseBackendLevelDB.h */,
+                               511EF33117F23B6900E4FA16 /* IDBFactoryBackendLevelDB.cpp */,
+                               511EF33217F23B6900E4FA16 /* IDBFactoryBackendLevelDB.h */,
+                               511EF33317F23B6900E4FA16 /* IDBLevelDBCoding.cpp */,
+                               511EF33417F23B6900E4FA16 /* IDBLevelDBCoding.h */,
+                               511EF33517F23B6900E4FA16 /* IDBObjectStoreBackendLevelDB.cpp */,
+                               511EF33617F23B6900E4FA16 /* IDBObjectStoreBackendLevelDB.h */,
+                               511EF33717F23B6900E4FA16 /* IDBTransactionBackendLevelDB.cpp */,
+                               511EF33817F23B6900E4FA16 /* IDBTransactionBackendLevelDB.h */,
+                               51CEFB2917F2492100ACAA18 /* IDBTransactionCoordinatorLevelDB.cpp */,
+                               51CEFB2A17F2492100ACAA18 /* IDBTransactionCoordinatorLevelDB.h */,
+                       );
+                       name = leveldb;
+                       sourceTree = "<group>";
+               };
                5126E6B60A2E3AEF005C29FA /* icon */ = {
                        isa = PBXGroup;
                        children = (
                9712A55315004E3C0048AF10 /* indexeddb */ = {
                        isa = PBXGroup;
                        children = (
+                               511EF32A17F236E900E4FA16 /* leveldb */,
                                9712A55415004EDA0048AF10 /* DOMWindowIndexedDatabase.cpp */,
                                9712A55515004EDA0048AF10 /* DOMWindowIndexedDatabase.h */,
                                9712A55615004EDA0048AF10 /* DOMWindowIndexedDatabase.idl */,
                                511EF28817F0FA6E00E4FA16 /* IDBAny.cpp */,
                                9712A55815004EDA0048AF10 /* IDBAny.h */,
                                9712A55915004EDA0048AF10 /* IDBAny.idl */,
-                               511EF32817F0FF0300E4FA16 /* IDBBackingStore.cpp */,
-                               9712A55A15004EDA0048AF10 /* IDBBackingStore.h */,
                                9712A55B15004EDA0048AF10 /* IDBCallbacks.h */,
                                511EF28917F0FA6E00E4FA16 /* IDBCursor.cpp */,
                                9712A55D15004EDA0048AF10 /* IDBCursor.h */,
                                9712A55E15004EDA0048AF10 /* IDBCursor.idl */,
-                               9712A55F15004EDA0048AF10 /* IDBCursorBackendImpl.cpp */,
-                               9712A56015004EDA0048AF10 /* IDBCursorBackendImpl.h */,
                                9712A56115004EDA0048AF10 /* IDBCursorBackendInterface.h */,
                                511EF28A17F0FA6E00E4FA16 /* IDBCursorWithValue.cpp */,
                                9712A56315004EDA0048AF10 /* IDBCursorWithValue.h */,
                                511EF28B17F0FA6E00E4FA16 /* IDBDatabase.cpp */,
                                9712A56615004EDA0048AF10 /* IDBDatabase.h */,
                                9712A56715004EDA0048AF10 /* IDBDatabase.idl */,
-                               9712A56815004EDA0048AF10 /* IDBDatabaseBackendImpl.cpp */,
-                               9712A56915004EDA0048AF10 /* IDBDatabaseBackendImpl.h */,
                                9712A56A15004EDA0048AF10 /* IDBDatabaseBackendInterface.h */,
                                9712A56B15004EDA0048AF10 /* IDBDatabaseCallbacks.h */,
                                9712A56C15004EDA0048AF10 /* IDBDatabaseCallbacksImpl.cpp */,
                                511EF28D17F0FA6E00E4FA16 /* IDBFactory.cpp */,
                                9712A57615004EDA0048AF10 /* IDBFactory.h */,
                                9712A57715004EDA0048AF10 /* IDBFactory.idl */,
-                               9712A57815004EDA0048AF10 /* IDBFactoryBackendImpl.cpp */,
-                               9712A57915004EDA0048AF10 /* IDBFactoryBackendImpl.h */,
                                9712A57A15004EDA0048AF10 /* IDBFactoryBackendInterface.cpp */,
                                9712A57B15004EDA0048AF10 /* IDBFactoryBackendInterface.h */,
                                511EF28E17F0FA6F00E4FA16 /* IDBHistograms.h */,
                                511EF29317F0FA6F00E4FA16 /* IDBObjectStore.cpp */,
                                9712A59115004EDA0048AF10 /* IDBObjectStore.h */,
                                9712A59215004EDA0048AF10 /* IDBObjectStore.idl */,
-                               9712A59315004EDA0048AF10 /* IDBObjectStoreBackendImpl.cpp */,
-                               9712A59415004EDA0048AF10 /* IDBObjectStoreBackendImpl.h */,
                                511EF29417F0FA6F00E4FA16 /* IDBOpenDBRequest.cpp */,
                                511EF29517F0FA6F00E4FA16 /* IDBOpenDBRequest.h */,
                                511EF29617F0FA6F00E4FA16 /* IDBOpenDBRequest.idl */,
                                511EF29817F0FA6F00E4FA16 /* IDBTransaction.cpp */,
                                9712A59D15004EDA0048AF10 /* IDBTransaction.h */,
                                9712A59E15004EDA0048AF10 /* IDBTransaction.idl */,
-                               9712A59F15004EDA0048AF10 /* IDBTransactionBackendImpl.cpp */,
-                               9712A5A015004EDA0048AF10 /* IDBTransactionBackendImpl.h */,
-                               9712A5A315004EDA0048AF10 /* IDBTransactionCoordinator.cpp */,
-                               9712A5A415004EDA0048AF10 /* IDBTransactionCoordinator.h */,
                                9712A5A515004EDA0048AF10 /* IDBVersionChangeEvent.cpp */,
                                9712A5A615004EDA0048AF10 /* IDBVersionChangeEvent.h */,
                                9712A5A715004EDA0048AF10 /* IDBVersionChangeEvent.idl */,
                                51E1ECC10C91C90400DC255B /* IconRecord.h in Headers */,
                                45BAC2B01360BBAB005DA258 /* IconURL.h in Headers */,
                                9712A5B115004EDA0048AF10 /* IDBAny.h in Headers */,
-                               9712A5B315004EDA0048AF10 /* IDBBackingStore.h in Headers */,
                                C585A66311D4FAC5004C3E4B /* IDBBindingUtilities.h in Headers */,
                                9712A5B415004EDA0048AF10 /* IDBCallbacks.h in Headers */,
                                9712A5B615004EDA0048AF10 /* IDBCursor.h in Headers */,
-                               9712A5B915004EDA0048AF10 /* IDBCursorBackendImpl.h in Headers */,
                                9712A5BA15004EDA0048AF10 /* IDBCursorBackendInterface.h in Headers */,
                                9712A5BC15004EDA0048AF10 /* IDBCursorWithValue.h in Headers */,
                                9712A5BF15004EDA0048AF10 /* IDBDatabase.h in Headers */,
-                               9712A5C215004EDA0048AF10 /* IDBDatabaseBackendImpl.h in Headers */,
                                9712A5C315004EDA0048AF10 /* IDBDatabaseBackendInterface.h in Headers */,
                                9712A5C415004EDA0048AF10 /* IDBDatabaseCallbacks.h in Headers */,
                                9712A5C615004EDA0048AF10 /* IDBDatabaseCallbacksImpl.h in Headers */,
                                9712A5CA15004EDA0048AF10 /* IDBDatabaseException.h in Headers */,
                                9712A5CD15004EDA0048AF10 /* IDBEventDispatcher.h in Headers */,
                                9712A5CF15004EDA0048AF10 /* IDBFactory.h in Headers */,
-                               9712A5D215004EDA0048AF10 /* IDBFactoryBackendImpl.h in Headers */,
                                9712A5D415004EDA0048AF10 /* IDBFactoryBackendInterface.h in Headers */,
                                9712A5D615004EDA0048AF10 /* IDBIndex.h in Headers */,
                                9712A5DC15004EDA0048AF10 /* IDBKey.h in Headers */,
                                9712A5DF15004EDA0048AF10 /* IDBKeyPath.h in Headers */,
                                9712A5E315004EDA0048AF10 /* IDBKeyRange.h in Headers */,
                                9712A5EA15004EDA0048AF10 /* IDBObjectStore.h in Headers */,
-                               9712A5ED15004EDA0048AF10 /* IDBObjectStoreBackendImpl.h in Headers */,
                                9712A5F015004EDA0048AF10 /* IDBPendingTransactionMonitor.h in Headers */,
                                9712A5F215004EDA0048AF10 /* IDBRequest.h in Headers */,
                                9712A5F415004EDA0048AF10 /* IDBTracing.h in Headers */,
                                9712A5F615004EDA0048AF10 /* IDBTransaction.h in Headers */,
-                               9712A5F915004EDA0048AF10 /* IDBTransactionBackendImpl.h in Headers */,
-                               9712A5FD15004EDA0048AF10 /* IDBTransactionCoordinator.h in Headers */,
                                9712A5FF15004EDA0048AF10 /* IDBVersionChangeEvent.h in Headers */,
                                1A71D57C0F33819000F9CE4E /* IdentifierRep.h in Headers */,
                                5913A24213D49EBA00F5B05C /* IdentifiersFactory.h in Headers */,
                                82E3D8DE122EA0D1003AE5BC /* CSSPropertySourceData.cpp in Sources */,
                                BC5A12DF0DC0414800C9AFAD /* CSSReflectValue.cpp in Sources */,
                                A80E6D060A1989CA007FB8C5 /* CSSRule.cpp in Sources */,
+                               511EF33917F23B7300E4FA16 /* IDBBackingStoreLevelDB.cpp in Sources */,
                                A80E6D090A1989CA007FB8C5 /* CSSRuleList.cpp in Sources */,
                                371F51A20D262FA000ECE0D5 /* CSSSegmentedFontFace.cpp in Sources */,
                                A80E734F0A199C77007FB8C5 /* CSSSelector.cpp in Sources */,
                                FD31602D12B0267600C1A359 /* DelayNode.cpp in Sources */,
                                FD31603012B0267600C1A359 /* DelayProcessor.cpp in Sources */,
                                1CE83AC40ADAFFD8009354F6 /* DeleteButton.cpp in Sources */,
-                               511EF32917F0FF0300E4FA16 /* IDBBackingStore.cpp in Sources */,
                                1CE83AC30ADAFFD7009354F6 /* DeleteButtonController.cpp in Sources */,
                                93309DDE099E64920056E581 /* DeleteFromTextNodeCommand.cpp in Sources */,
                                93309DE0099E64920056E581 /* DeleteSelectionCommand.cpp in Sources */,
                                93F19AFD08245E59001E9ABC /* HTMLCanvasElement.cpp in Sources */,
                                A8DF3FD1097FA0FC0052981B /* HTMLCollection.cpp in Sources */,
                                977B3864122883E900B81FF8 /* HTMLConstructionSite.cpp in Sources */,
+                               511EF33C17F23B7300E4FA16 /* IDBFactoryBackendLevelDB.cpp in Sources */,
                                5D4F51DF132725480016F541 /* HTMLConverter.mm in Sources */,
                                F5C041DA0FFCA7CE00839D4A /* HTMLDataListElement.cpp in Sources */,
                                D359D789129CA2710006E5D2 /* HTMLDetailsElement.cpp in Sources */,
                                51E1ECC00C91C90400DC255B /* IconRecord.cpp in Sources */,
                                45099C411370A7800058D513 /* IconURL.cpp in Sources */,
                                C585A66211D4FAC5004C3E4B /* IDBBindingUtilities.cpp in Sources */,
-                               9712A5B815004EDA0048AF10 /* IDBCursorBackendImpl.cpp in Sources */,
-                               9712A5C115004EDA0048AF10 /* IDBDatabaseBackendImpl.cpp in Sources */,
                                9712A5C515004EDA0048AF10 /* IDBDatabaseCallbacksImpl.cpp in Sources */,
                                9712A5C915004EDA0048AF10 /* IDBDatabaseException.cpp in Sources */,
-                               9712A5D115004EDA0048AF10 /* IDBFactoryBackendImpl.cpp in Sources */,
                                9712A5D315004EDA0048AF10 /* IDBFactoryBackendInterface.cpp in Sources */,
-                               9712A5EC15004EDA0048AF10 /* IDBObjectStoreBackendImpl.cpp in Sources */,
                                9712A5EF15004EDA0048AF10 /* IDBPendingTransactionMonitor.cpp in Sources */,
-                               9712A5F815004EDA0048AF10 /* IDBTransactionBackendImpl.cpp in Sources */,
-                               9712A5FC15004EDA0048AF10 /* IDBTransactionCoordinator.cpp in Sources */,
                                9712A5FE15004EDA0048AF10 /* IDBVersionChangeEvent.cpp in Sources */,
                                1A71D57B0F33819000F9CE4E /* IdentifierRep.cpp in Sources */,
                                5913A24113D49EBA00F5B05C /* IdentifiersFactory.cpp in Sources */,
                                4AD0173C127E82860015035F /* JSHTMLOutputElement.cpp in Sources */,
                                1AE2ABA60A1CE90500B42B25 /* JSHTMLParagraphElement.cpp in Sources */,
                                1AE2ABA80A1CE90500B42B25 /* JSHTMLParamElement.cpp in Sources */,
+                               511EF33A17F23B7300E4FA16 /* IDBCursorBackendLevelDB.cpp in Sources */,
                                1AE2ABAA0A1CE90500B42B25 /* JSHTMLPreElement.cpp in Sources */,
                                A4226E5A1163D667008B8397 /* JSHTMLProgressElement.cpp in Sources */,
                                1AE2AEC70A1D297B00B42B25 /* JSHTMLQuoteElement.cpp in Sources */,
                                293EAE211356B32E0067ACF9 /* RuntimeApplicationChecks.cpp in Sources */,
                                8C6EA61911EF7E0400FD8EE3 /* RuntimeEnabledFeatures.cpp in Sources */,
                                49E911CA0EF86D47009D0CAF /* ScaleTransformOperation.cpp in Sources */,
+                               511EF33D17F23B7300E4FA16 /* IDBLevelDBCoding.cpp in Sources */,
                                5DFE8F560D16477B0076E937 /* ScheduledAction.cpp in Sources */,
                                5162C7F411F77EFB00612EFE /* SchemeRegistry.cpp in Sources */,
                                9BD0BF9412A42BF50072FD43 /* ScopedEventQueue.cpp in Sources */,
                                A1E1154813015C5D0054AC8C /* SpotLightSource.cpp in Sources */,
                                97BC6A3E1505F081001B74AC /* SQLException.cpp in Sources */,
                                1A2E6E7A0CC556D5004A2062 /* SQLiteAuthorizer.cpp in Sources */,
+                               511EF33E17F23B7300E4FA16 /* IDBObjectStoreBackendLevelDB.cpp in Sources */,
                                1A2246490CC98DDB00C05240 /* SQLiteDatabase.cpp in Sources */,
                                B5A684240FFABEAA00D24689 /* SQLiteFileSystem.cpp in Sources */,
                                1A22464B0CC98DDB00C05240 /* SQLiteStatement.cpp in Sources */,
                                08B5F25513B5FFF2002959EC /* SVGAnimatedPath.cpp in Sources */,
                                43B9336A13B261B1004584BF /* SVGAnimatedPointList.cpp in Sources */,
                                431A302113B89DCC007791E4 /* SVGAnimatedPreserveAspectRatio.cpp in Sources */,
+                               511EF33F17F23B7300E4FA16 /* IDBTransactionBackendLevelDB.cpp in Sources */,
                                836FBCEC178C117F00B21A15 /* SVGAnimatedProperty.cpp in Sources */,
                                43142E7A13B1E97700F1C871 /* SVGAnimatedRect.cpp in Sources */,
                                43A6266713B3D11000AC94B8 /* SVGAnimatedString.cpp in Sources */,
                                B2227A8B0D00BF220071B782 /* SVGPointList.cpp in Sources */,
                                B2227A8E0D00BF220071B782 /* SVGPolyElement.cpp in Sources */,
                                B2227A900D00BF220071B782 /* SVGPolygonElement.cpp in Sources */,
+                               51CEFB2B17F2492900ACAA18 /* IDBTransactionCoordinatorLevelDB.cpp in Sources */,
                                B2227A930D00BF220071B782 /* SVGPolylineElement.cpp in Sources */,
                                B543B85717EB758F003BE93A /* SVGPropertyInfo.cpp in Sources */,
                                B2227A960D00BF220071B782 /* SVGPreserveAspectRatio.cpp in Sources */,
                                9343CB8112F25E510033C5EE /* TextCodecUTF8.cpp in Sources */,
                                142B97C913138943008BEF4B /* TextControlInnerElements.cpp in Sources */,
                                97BC84B312371180000C6161 /* TextDocument.cpp in Sources */,
+                               511EF33B17F23B7300E4FA16 /* IDBDatabaseBackendLevelDB.cpp in Sources */,
                                97BC84831236FD93000C6161 /* TextDocumentParser.cpp in Sources */,
                                B2C3DA460D006C1D00EF6F26 /* TextEncoding.cpp in Sources */,
                                C105DA620F3AA68F001DD44F /* TextEncodingDetectorICU.cpp in Sources */,