Skip to content

Commit 1cd5032

Browse files
committed
use unmodifiableList.
1 parent 0bcb51b commit 1cd5032

File tree

1 file changed

+9
-10
lines changed

1 file changed

+9
-10
lines changed

firebase-firestore/src/main/java/com/google/firebase/firestore/core/CompositeFilter.java

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,11 @@
1616

1717
import android.text.TextUtils;
1818
import androidx.annotation.Nullable;
19-
import com.google.common.collect.ImmutableList;
2019
import com.google.firebase.firestore.model.Document;
2120
import com.google.firebase.firestore.model.FieldPath;
2221
import com.google.firebase.firestore.util.Function;
2322
import java.util.ArrayList;
23+
import java.util.Collections;
2424
import java.util.List;
2525

2626
/** Represents a filter that is the conjunction or disjunction of other filters. */
@@ -41,21 +41,21 @@ public String toString() {
4141
}
4242
}
4343

44-
private final ImmutableList<Filter> filters;
44+
private final List<Filter> filters;
4545
private final Operator operator;
4646

4747
// Memoized list of all field filters that can be found by traversing the tree of filters
4848
// contained in this composite filter.
49-
private ImmutableList<FieldFilter> memoizedFlattenedFilters;
49+
private List<FieldFilter> memoizedFlattenedFilters;
5050

5151
public CompositeFilter(List<Filter> filters, Operator operator) {
52-
this.filters = ImmutableList.copyOf(filters);
52+
this.filters = new ArrayList<>(filters);
5353
this.operator = operator;
5454
}
5555

5656
@Override
5757
public List<Filter> getFilters() {
58-
return filters;
58+
return Collections.unmodifiableList(filters);
5959
}
6060

6161
public Operator getOperator() {
@@ -65,14 +65,13 @@ public Operator getOperator() {
6565
@Override
6666
public List<FieldFilter> getFlattenedFilters() {
6767
if (memoizedFlattenedFilters != null) {
68-
return memoizedFlattenedFilters;
68+
return Collections.unmodifiableList(memoizedFlattenedFilters);
6969
}
70-
ImmutableList.Builder<FieldFilter> builder = ImmutableList.builder();
70+
memoizedFlattenedFilters = new ArrayList<>();
7171
for (Filter subfilter : filters) {
72-
builder.addAll(subfilter.getFlattenedFilters());
72+
memoizedFlattenedFilters.addAll(subfilter.getFlattenedFilters());
7373
}
74-
memoizedFlattenedFilters = builder.build();
75-
return memoizedFlattenedFilters;
74+
return Collections.unmodifiableList(memoizedFlattenedFilters);
7675
}
7776

7877
/**

0 commit comments

Comments
 (0)