| Index: Source/modules/indexeddb/IDBDatabaseBackendInterface.h
|
| diff --git a/Source/modules/indexeddb/IDBDatabaseBackendInterface.h b/Source/modules/indexeddb/IDBDatabaseBackendInterface.h
|
| index 8d53fb5d2bdf073c7a48ad74377c9fbf99b0c010..9115f36ae17c1c4cc4a458daeb244a90c247401b 100644
|
| --- a/Source/modules/indexeddb/IDBDatabaseBackendInterface.h
|
| +++ b/Source/modules/indexeddb/IDBDatabaseBackendInterface.h
|
| @@ -26,6 +26,7 @@
|
| #ifndef IDBDatabaseBackendInterface_h
|
| #define IDBDatabaseBackendInterface_h
|
|
|
| +#include "heap/Handle.h"
|
| #include "modules/indexeddb/IDBDatabaseError.h"
|
| #include "modules/indexeddb/IndexedDB.h"
|
| #include "wtf/PassRefPtr.h"
|
| @@ -47,14 +48,15 @@ typedef int ExceptionCode;
|
| // This is implemented by IDBDatabaseBackendImpl and optionally others (in order to proxy
|
| // calls across process barriers). All calls to these classes should be non-blocking and
|
| // trigger work on a background thread if necessary.
|
| -class IDBDatabaseBackendInterface : public RefCounted<IDBDatabaseBackendInterface> {
|
| +class IDBDatabaseBackendInterface : public HeapAllocatedFinalized<IDBDatabaseBackendInterface> {
|
| + DECLARE_GC_INFO
|
| public:
|
| virtual ~IDBDatabaseBackendInterface() { }
|
|
|
| virtual void createObjectStore(int64_t transactionId, int64_t objectStoreId, const String& name, const IDBKeyPath&, bool autoIncrement) = 0;
|
| virtual void deleteObjectStore(int64_t transactionId, int64_t objectStoreId) = 0;
|
| - virtual void createTransaction(int64_t transactionId, PassRefPtr<IDBDatabaseCallbacks>, const Vector<int64_t>& objectStoreIds, unsigned short mode) = 0;
|
| - virtual void close(PassRefPtr<IDBDatabaseCallbacks>) = 0;
|
| + virtual void createTransaction(int64_t transactionId, IDBDatabaseCallbacks*, const Vector<int64_t>& objectStoreIds, unsigned short mode) = 0;
|
| + virtual void close(IDBDatabaseCallbacks*) = 0;
|
|
|
| // Transaction-specific operations.
|
| virtual void commit(int64_t transactionId) = 0;
|
| @@ -79,15 +81,17 @@ public:
|
|
|
| typedef Vector<RefPtr<IDBKey> > IndexKeys;
|
|
|
| - virtual void get(int64_t transactionId, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange>, bool keyOnly, PassRefPtr<IDBCallbacks>) = 0;
|
| + virtual void get(int64_t transactionId, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange>, bool keyOnly, IDBCallbacks*) = 0;
|
| // Note that 'value' may be consumed/adopted by this call.
|
| - 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>&) = 0;
|
| + virtual void put(int64_t transactionId, int64_t objectStoreId, PassRefPtr<SharedBuffer> value, PassRefPtr<IDBKey>, PutMode, IDBCallbacks*, const Vector<int64_t>& indexIds, const Vector<IndexKeys>&) = 0;
|
| virtual void setIndexKeys(int64_t transactionId, int64_t objectStoreId, PassRefPtr<IDBKey> prpPrimaryKey, const Vector<int64_t>& indexIds, const Vector<IndexKeys>&) = 0;
|
| virtual void setIndexesReady(int64_t transactionId, int64_t objectStoreId, const Vector<int64_t>& indexIds) = 0;
|
| - virtual void openCursor(int64_t transactionId, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange>, IndexedDB::CursorDirection, bool keyOnly, TaskType, PassRefPtr<IDBCallbacks>) = 0;
|
| - virtual void count(int64_t transactionId, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange>, PassRefPtr<IDBCallbacks>) = 0;
|
| - virtual void deleteRange(int64_t transactionId, int64_t objectStoreId, PassRefPtr<IDBKeyRange>, PassRefPtr<IDBCallbacks>) = 0;
|
| - virtual void clear(int64_t transactionId, int64_t objectStoreId, PassRefPtr<IDBCallbacks>) = 0;
|
| + virtual void openCursor(int64_t transactionId, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange>, IndexedDB::CursorDirection, bool keyOnly, TaskType, IDBCallbacks*) = 0;
|
| + virtual void count(int64_t transactionId, int64_t objectStoreId, int64_t indexId, PassRefPtr<IDBKeyRange>, IDBCallbacks*) = 0;
|
| + virtual void deleteRange(int64_t transactionId, int64_t objectStoreId, PassRefPtr<IDBKeyRange>, IDBCallbacks*) = 0;
|
| + virtual void clear(int64_t transactionId, int64_t objectStoreId, IDBCallbacks*) = 0;
|
| +
|
| + virtual void trace(Visitor*) = 0;
|
| };
|
|
|
| } // namespace WebCore
|
|
|