Florian
11/24/2020, 5:27 PMinline fun <reified T> Query.asFlow() = callbackFlow<List<T>> {
val registration = addSnapshotListener { snapshot, error ->
if (error != null) {
cancel(CancellationException("Query snapshot error", error))
}
offer(snapshot?.toObjects(T::class.java) ?: emptyList())
}
awaitClose { registration.remove() }
}
Adam Powell
11/24/2020, 5:29 PMFlorian
11/24/2020, 6:23 PMcancel
inside the callback in their callbackFlow examplelouiscad
11/24/2020, 9:12 PMFlorian
11/24/2020, 9:15 PMlouiscad
11/25/2020, 10:17 AMcancel()
inside a callbackFlow
.