SlidingSyncObserverProxy : avoid fooding flow
This commit is contained in:
parent
a697b8a38f
commit
1095aa13e7
1 changed files with 3 additions and 0 deletions
|
|
@ -6,6 +6,7 @@ import kotlinx.coroutines.flow.MutableSharedFlow
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
import org.matrix.rustcomponents.sdk.SlidingSyncObserver
|
import org.matrix.rustcomponents.sdk.SlidingSyncObserver
|
||||||
import org.matrix.rustcomponents.sdk.UpdateSummary
|
import org.matrix.rustcomponents.sdk.UpdateSummary
|
||||||
|
import org.matrix.rustcomponents.sdk.setupTracing
|
||||||
|
|
||||||
class SlidingSyncObserverProxy(private val coroutineScope: CoroutineScope) : SlidingSyncObserver {
|
class SlidingSyncObserverProxy(private val coroutineScope: CoroutineScope) : SlidingSyncObserver {
|
||||||
|
|
||||||
|
|
@ -13,8 +14,10 @@ class SlidingSyncObserverProxy(private val coroutineScope: CoroutineScope) : Sli
|
||||||
val updateSummaryFlow: Flow<UpdateSummary> = updateSummaryMutableFlow
|
val updateSummaryFlow: Flow<UpdateSummary> = updateSummaryMutableFlow
|
||||||
|
|
||||||
override fun didReceiveSyncUpdate(summary: UpdateSummary) {
|
override fun didReceiveSyncUpdate(summary: UpdateSummary) {
|
||||||
|
if (summary.rooms.isEmpty()) return
|
||||||
coroutineScope.launch {
|
coroutineScope.launch {
|
||||||
updateSummaryMutableFlow.emit(summary)
|
updateSummaryMutableFlow.emit(summary)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue