Loading flow-mvi/src/main/java/foundation/e/flowmvi/feature/BaseFeature.kt +4 −6 Original line number Diff line number Diff line Loading @@ -24,7 +24,6 @@ import foundation.e.flowmvi.Reducer import foundation.e.flowmvi.SingleEventProducer import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Job import kotlinx.coroutines.channels.Channel import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.MutableStateFlow Loading Loading @@ -105,12 +104,11 @@ open class BaseFeature<State : Any, in Action : Any, in Effect : Any, SingleEven } private suspend fun Flow<Action>.collectIntoHandler( @Suppress("UNUSED_PARAMETER")callerCoroutineScope: CoroutineScope, callerCoroutineScope: CoroutineScope, @Suppress("UNUSED_PARAMETER") logger: Logger ) { val scope = CoroutineScope(Dispatchers.IO + Job()) onEach { action -> scope.launch { callerCoroutineScope.launch(Dispatchers.IO) { actor.invoke(_state.value, action) .onEach { effect -> mutex.withLock { Loading @@ -125,9 +123,9 @@ open class BaseFeature<State : Any, in Action : Any, in Effect : Any, SingleEven } } } .launchIn(scope) .launchIn(coroutineScope) } } .launchIn(scope) .launchIn(callerCoroutineScope) } } Loading
flow-mvi/src/main/java/foundation/e/flowmvi/feature/BaseFeature.kt +4 −6 Original line number Diff line number Diff line Loading @@ -24,7 +24,6 @@ import foundation.e.flowmvi.Reducer import foundation.e.flowmvi.SingleEventProducer import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Job import kotlinx.coroutines.channels.Channel import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.MutableStateFlow Loading Loading @@ -105,12 +104,11 @@ open class BaseFeature<State : Any, in Action : Any, in Effect : Any, SingleEven } private suspend fun Flow<Action>.collectIntoHandler( @Suppress("UNUSED_PARAMETER")callerCoroutineScope: CoroutineScope, callerCoroutineScope: CoroutineScope, @Suppress("UNUSED_PARAMETER") logger: Logger ) { val scope = CoroutineScope(Dispatchers.IO + Job()) onEach { action -> scope.launch { callerCoroutineScope.launch(Dispatchers.IO) { actor.invoke(_state.value, action) .onEach { effect -> mutex.withLock { Loading @@ -125,9 +123,9 @@ open class BaseFeature<State : Any, in Action : Any, in Effect : Any, SingleEven } } } .launchIn(scope) .launchIn(coroutineScope) } } .launchIn(scope) .launchIn(callerCoroutineScope) } }