@@ -115,7 +115,7 @@ public final class LocalStore implements BundleCallback {
115
115
private IndexManager indexManager ;
116
116
117
117
/** Manages field index backfill. */
118
- private final IndexBackfiller indexBackfiller ;
118
+ private final @ Nullable IndexBackfiller indexBackfiller ;
119
119
120
120
/** The set of all mutations that have been sent but not yet been applied to the backend. */
121
121
private MutationQueue mutationQueue ;
@@ -152,7 +152,7 @@ public final class LocalStore implements BundleCallback {
152
152
153
153
public LocalStore (
154
154
Persistence persistence ,
155
- IndexBackfiller indexBackfiller ,
155
+ @ Nullable IndexBackfiller indexBackfiller ,
156
156
QueryEngine queryEngine ,
157
157
User initialUser ) {
158
158
hardAssert (
@@ -168,15 +168,18 @@ public LocalStore(
168
168
localDocuments =
169
169
new LocalDocumentsView (remoteDocuments , mutationQueue , documentOverlayCache , indexManager );
170
170
this .queryEngine = queryEngine ;
171
- this .indexBackfiller = indexBackfiller ;
172
171
queryEngine .initialize (localDocuments , indexManager );
173
172
174
173
localViewReferences = new ReferenceSet ();
175
174
persistence .getReferenceDelegate ().setInMemoryPins (localViewReferences );
176
175
177
176
remoteDocuments .setIndexManager (indexManager );
178
- indexBackfiller .setIndexManager (indexManager );
179
- indexBackfiller .setLocalDocumentsView (localDocuments );
177
+
178
+ this .indexBackfiller = indexBackfiller ;
179
+ if (indexBackfiller != null ) {
180
+ indexBackfiller .setIndexManager (indexManager );
181
+ indexBackfiller .setLocalDocumentsView (localDocuments );
182
+ }
180
183
181
184
queryDataByTarget = new SparseArray <>();
182
185
targetIdByTarget = new HashMap <>();
@@ -218,8 +221,10 @@ public ImmutableSortedMap<DocumentKey, Document> handleUserChange(User user) {
218
221
219
222
// TODO(indexing): Add spec tests that test these components change after a user change
220
223
remoteDocuments .setIndexManager (indexManager );
221
- indexBackfiller .setIndexManager (indexManager );
222
- indexBackfiller .setLocalDocumentsView (localDocuments );
224
+ if (indexBackfiller != null ) {
225
+ indexBackfiller .setIndexManager (indexManager );
226
+ indexBackfiller .setLocalDocumentsView (localDocuments );
227
+ }
223
228
224
229
// Union the old/new changed keys.
225
230
ImmutableSortedSet <DocumentKey > changedKeys = DocumentKey .emptyKeySet ();
0 commit comments