Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1347)

Unified Diff: Source/modules/indexeddb/IDBDatabaseBackendImpl.h

Issue 78053006: [oilpan] Move IDBDatabase, IDBDatabaseCallbacks, IDBDatabaseBackendInterface and other related clas… (Closed) Base URL: svn://svn.chromium.org/blink/branches/oilpan
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/modules/indexeddb/IDBDatabaseBackendImpl.h
diff --git a/Source/modules/indexeddb/IDBDatabaseBackendImpl.h b/Source/modules/indexeddb/IDBDatabaseBackendImpl.h
index 7ce800721cf1ce5db1aa1fd5cb546d3536b544ff..c731f5b869c5d94264272fea979ac4f60c18d2a2 100644
--- a/Source/modules/indexeddb/IDBDatabaseBackendImpl.h
+++ b/Source/modules/indexeddb/IDBDatabaseBackendImpl.h
@@ -43,7 +43,7 @@ class IDBTransactionCoordinator;
class IDBDatabaseBackendImpl : public IDBDatabaseBackendInterface {
public:
- static PassRefPtr<IDBDatabaseBackendImpl> create(const String& name, IDBBackingStore* database, IDBFactoryBackendImpl*, const String& uniqueIdentifier);
+ static IDBDatabaseBackendImpl* create(const String& name, IDBBackingStore* database, IDBFactoryBackendImpl*, const String& uniqueIdentifier);
virtual ~IDBDatabaseBackendImpl();
PassRefPtr<IDBBackingStore> backingStore() const;
@@ -55,15 +55,15 @@ public:
void addIndex(int64_t objectStoreId, const IDBIndexMetadata&, int64_t newMaxIndexId);
void removeIndex(int64_t objectStoreId, int64_t indexId);
- void openConnection(PassRefPtr<IDBCallbacks>, PassRefPtr<IDBDatabaseCallbacks>, int64_t transactionId, int64_t version);
+ void openConnection(PassRefPtr<IDBCallbacks>, IDBDatabaseCallbacks*, int64_t transactionId, int64_t version);
void deleteDatabase(PassRefPtr<IDBCallbacks>);
const IDBDatabaseMetadata& metadata() const { return m_metadata; }
// IDBDatabaseBackendInterface
virtual void createObjectStore(int64_t transactionId, int64_t objectStoreId, const String& name, const IDBKeyPath&, bool autoIncrement);
virtual void deleteObjectStore(int64_t transactionId, int64_t objectStoreId);
- virtual void createTransaction(int64_t transactionId, PassRefPtr<IDBDatabaseCallbacks>, const Vector<int64_t>& objectStoreIds, unsigned short mode);
- virtual void close(PassRefPtr<IDBDatabaseCallbacks>);
+ virtual void createTransaction(int64_t transactionId, IDBDatabaseCallbacks*, const Vector<int64_t>& objectStoreIds, unsigned short mode);
+ virtual void close(IDBDatabaseCallbacks*);
virtual void commit(int64_t transactionId);
virtual void abort(int64_t transactionId);
@@ -87,11 +87,13 @@ public:
virtual void deleteRange(int64_t transactionId, int64_t objectStoreId, PassRefPtr<IDBKeyRange>, PassRefPtr<IDBCallbacks>) OVERRIDE;
virtual void clear(int64_t transactionId, int64_t objectStoreId, PassRefPtr<IDBCallbacks>) OVERRIDE;
+ virtual void trace(Visitor*) const;
+
private:
IDBDatabaseBackendImpl(const String& name, IDBBackingStore* database, IDBFactoryBackendImpl*, const String& uniqueIdentifier);
bool openInternal();
- void runIntVersionChangeTransaction(PassRefPtr<IDBCallbacks>, PassRefPtr<IDBDatabaseCallbacks>, int64_t transactionId, int64_t requestedVersion);
+ void runIntVersionChangeTransaction(PassRefPtr<IDBCallbacks>, IDBDatabaseCallbacks*, int64_t transactionId, int64_t requestedVersion);
size_t connectionCount();
void processPendingCalls();
@@ -108,8 +110,7 @@ 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.
- // FIXME(oilpan): Move IDBDatabaseBackendInterface to the heap and use a Member.
- Persistent<IDBFactoryBackendImpl> m_factory;
+ Member<IDBFactoryBackendImpl> m_factory;
OwnPtr<IDBTransactionCoordinator> m_transactionCoordinator;
RefPtr<IDBTransactionBackendImpl> m_runningVersionChangeTransaction;
@@ -124,7 +125,7 @@ private:
class PendingDeleteCall;
Deque<OwnPtr<PendingDeleteCall> > m_pendingDeleteCalls;
- typedef ListHashSet<RefPtr<IDBDatabaseCallbacks> > DatabaseCallbacksSet;
+ typedef ListHashSet<Member<IDBDatabaseCallbacks> > DatabaseCallbacksSet;
DatabaseCallbacksSet m_databaseCallbacksSet;
bool m_closingConnection;

Powered by Google App Engine
This is Rietveld 408576698