From 4827fbccc16da3ccefc7ed9750df6e02b3b80fcf Mon Sep 17 00:00:00 2001 From: Hugh Daschbach Date: Sat, 20 Aug 2022 17:18:47 -0700 Subject: [PATCH] RequentBus: replace deprecated implementation. Convert RequestBus from deprecated BroadcastChannel to a SharedFlow. --- app/src/main/java/audio/funkwhale/ffa/FFA.kt | 4 ---- app/src/main/java/audio/funkwhale/ffa/utils/Bus.kt | 8 ++++---- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/audio/funkwhale/ffa/FFA.kt b/app/src/main/java/audio/funkwhale/ffa/FFA.kt index cdac362..29af3b7 100644 --- a/app/src/main/java/audio/funkwhale/ffa/FFA.kt +++ b/app/src/main/java/audio/funkwhale/ffa/FFA.kt @@ -7,9 +7,7 @@ import audio.funkwhale.ffa.koin.authModule import audio.funkwhale.ffa.koin.exoplayerModule import audio.funkwhale.ffa.utils.AppContext import audio.funkwhale.ffa.utils.FFACache -import audio.funkwhale.ffa.utils.Request import com.preference.PowerPreference -import kotlinx.coroutines.channels.BroadcastChannel import org.koin.core.context.startKoin import java.text.SimpleDateFormat import java.util.Date @@ -25,8 +23,6 @@ class FFA : Application() { var defaultExceptionHandler: Thread.UncaughtExceptionHandler? = null - val requestBus: BroadcastChannel = BroadcastChannel(10) - override fun onCreate() { super.onCreate() diff --git a/app/src/main/java/audio/funkwhale/ffa/utils/Bus.kt b/app/src/main/java/audio/funkwhale/ffa/utils/Bus.kt index 22d368d..b7e4828 100644 --- a/app/src/main/java/audio/funkwhale/ffa/utils/Bus.kt +++ b/app/src/main/java/audio/funkwhale/ffa/utils/Bus.kt @@ -1,6 +1,5 @@ package audio.funkwhale.ffa.utils -import audio.funkwhale.ffa.FFA import audio.funkwhale.ffa.model.Radio import audio.funkwhale.ffa.model.Track import com.google.android.exoplayer2.offline.Download @@ -12,7 +11,6 @@ import kotlinx.coroutines.flow.MutableSharedFlow import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.asSharedFlow import kotlinx.coroutines.flow.asStateFlow -import kotlinx.coroutines.flow.asFlow import kotlinx.coroutines.launch sealed class Command { @@ -98,17 +96,19 @@ object CommandBus { } object RequestBus { + private var _requests = MutableSharedFlow() + var requests = _requests.asSharedFlow() fun send(request: Request): Channel { return Channel().also { GlobalScope.launch(IO) { request.channel = it - FFA.get().requestBus.trySend(request).isSuccess + _requests.emit(request) } } } - fun get() = FFA.get().requestBus.asFlow() + fun get() = requests } object ProgressBus {