Skip to content

Commit dc09fd1

Browse files
Undo some of the cleanup
1 parent 4eee9a1 commit dc09fd1

File tree

2 files changed

+18
-13
lines changed

2 files changed

+18
-13
lines changed

packages/firestore/src/core/component_provider.ts

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -180,8 +180,6 @@ export class MemoryComponentProvider implements ComponentProvider {
180180
* Provides all components needed for Firestore with IndexedDB persistence.
181181
*/
182182
export class IndexedDbComponentProvider extends MemoryComponentProvider {
183-
persistence!: IndexedDbPersistence;
184-
185183
// TODO(tree-shaking): Create an IndexedDbComponentProvider and a
186184
// MultiTabComponentProvider. The IndexedDbComponentProvider should depend
187185
// on LocalStore and SyncEngine.
@@ -191,6 +189,11 @@ export class IndexedDbComponentProvider extends MemoryComponentProvider {
191189
async initialize(cfg: ComponentConfiguration): Promise<void> {
192190
await super.initialize(cfg);
193191

192+
debugAssert(
193+
this.persistence instanceof IndexedDbPersistence,
194+
'IndexedDbComponentProvider should provide IndexedDBPersistence'
195+
);
196+
194197
// NOTE: This will immediately call the listener, so we make sure to
195198
// set it after localStore / remoteStore are started.
196199
await this.persistence.setPrimaryStateListener(async isPrimary => {
@@ -208,6 +211,10 @@ export class IndexedDbComponentProvider extends MemoryComponentProvider {
208211
}
209212

210213
createLocalStore(cfg: ComponentConfiguration): LocalStore {
214+
debugAssert(
215+
this.persistence instanceof IndexedDbPersistence,
216+
'IndexedDbComponentProvider should provide IndexedDBPersistence'
217+
);
211218
return new MultiTabLocalStore(
212219
this.persistence,
213220
new IndexFreeQueryEngine(),
@@ -232,6 +239,10 @@ export class IndexedDbComponentProvider extends MemoryComponentProvider {
232239
createGarbageCollectionScheduler(
233240
cfg: ComponentConfiguration
234241
): GarbageCollectionScheduler | null {
242+
debugAssert(
243+
this.persistence instanceof IndexedDbPersistence,
244+
'IndexedDbComponentProvider should provide IndexedDBPersistence'
245+
);
235246
const garbageCollector = this.persistence.referenceDelegate
236247
.garbageCollector;
237248
return new LruScheduler(garbageCollector, cfg.asyncQueue);

packages/firestore/test/unit/specs/spec_test_components.ts

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ import { MutationQueue } from '../../../src/local/mutation_queue';
3434
import { TargetCache } from '../../../src/local/target_cache';
3535
import { RemoteDocumentCache } from '../../../src/local/remote_document_cache';
3636
import { IndexManager } from '../../../src/local/index_manager';
37+
import { IndexedDbPersistence } from '../../../src/local/indexeddb_persistence';
3738
import { PersistencePromise } from '../../../src/local/persistence_promise';
3839
import { debugAssert } from '../../../src/util/assert';
3940
import {
@@ -69,23 +70,17 @@ export class MockPersistence implements Persistence {
6970
return this.delegate.shutdown();
7071
}
7172

72-
setPrimaryStateListener(
73-
primaryStateListener: PrimaryStateListener
74-
): Promise<void> {
75-
return this.delegate.setPrimaryStateListener(primaryStateListener);
76-
}
77-
7873
setDatabaseDeletedListener(
7974
databaseDeletedListener: () => Promise<void>
8075
): void {
8176
this.delegate.setDatabaseDeletedListener(databaseDeletedListener);
8277
}
8378

84-
setNetworkEnabled(networkEnabled: boolean): void {
85-
this.delegate.setNetworkEnabled(networkEnabled);
86-
}
87-
8879
getActiveClients(): Promise<ClientId[]> {
80+
debugAssert(
81+
this.delegate instanceof IndexedDbPersistence,
82+
`getActiveClients() requires IndexedDbPersistence`
83+
);
8984
return this.delegate.getActiveClients();
9085
}
9186

@@ -153,7 +148,6 @@ export class MockMemoryComponentProvider extends MemoryComponentProvider {
153148
'Can only start memory persistence'
154149
);
155150
const persistence = new MemoryPersistence(
156-
cfg.clientId,
157151
this.gcEnabled
158152
? MemoryEagerDelegate.factory
159153
: p => new MemoryLruDelegate(p, LruParams.DEFAULT)

0 commit comments

Comments
 (0)