12012-11-12 Alec Flett <alecflett@chromium.org>
2
3 IndexedDB: simplify RecordIdentifier
4 https://bugs.webkit.org/show_bug.cgi?id=102018
5
6 Reviewed by Tony Chang.
7
8 Make IDBBackingStore's RecordIdentifier be a simple
9 class, existing only as an inline or stack-based instance.
10 This makes much of the copy semantics more explicit, and
11 removes refcounting from an object that only ever had a refcount
12 of 1 or 2.
13
14 No new tests, just a refactor.
15
16 * Modules/indexeddb/IDBBackingStore.cpp:
17 (WebCore::IDBBackingStore::putRecord):
18 (WebCore::IDBBackingStore::deleteRecord):
19 (WebCore::IDBBackingStore::maybeUpdateKeyGeneratorCurrentNumber):
20 (WebCore::IDBBackingStore::keyExistsInObjectStore):
21 (WebCore::IDBBackingStore::putIndexDataForRecord):
22 (WebCore::IDBBackingStore::deleteIndexDataForRecord):
23 (WebCore::ObjectStoreKeyCursorImpl::loadCurrentRow):
24 (ObjectStoreCursorImpl):
25 (WebCore::ObjectStoreCursorImpl::loadCurrentRow):
26 (WebCore::IndexKeyCursorImpl::recordIdentifier):
27 (WebCore::IndexCursorImpl::recordIdentifier):
28 * Modules/indexeddb/IDBBackingStore.h:
29 (WebCore::IDBBackingStore::RecordIdentifier::RecordIdentifier):
30 (WebCore::IDBBackingStore::RecordIdentifier::isValid):
31 (WebCore::IDBBackingStore::RecordIdentifier::reset):
32 (RecordIdentifier):
33 (IDBBackingStore):
34 (WebCore::IDBBackingStore::Cursor::recordIdentifier):
35 (WebCore::IDBBackingStore::Cursor::Cursor):
36 (Cursor):
37 * Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:
38 (WebCore):
39 (WebCore::IDBObjectStoreBackendImpl::setIndexKeys):
40 (WebCore::IDBObjectStoreBackendImpl::putInternal):
41 (WebCore::IDBObjectStoreBackendImpl::deleteInternal):
42