Breaker ACT
10/23/2022, 3:15 PMBreaker ACT
10/23/2022, 3:17 PMfun execute(paramFlow: Flow<GetMovieParam>): Flow<MovieModel> {
val movieFlow = movieRepo.getAll()
return paramFlow.combine(movieFlow) {
//Do some filtering logic here
}
}
Davide Giuseppe Farella
10/23/2022, 3:37 PMparamsFlow.flatMap { params ->
useCase.execute(params)
}
Breaker ACT
10/24/2022, 2:06 AMBreaker ACT
10/24/2022, 2:06 AMgildor
10/26/2022, 3:45 AMfun execute(param: GetMovieParam): Flow<MovieModel> {
return movieRepo.getAll() // This return flow, right?
.filter {
//Do some filtering logic here
}
}
}
And user of this API does
val paramFlow: Flow<GetMovieParam> = //Some way to get param
paramFlow.flatMapLatest { execute(it) } // not necessary latest, but one which suits your use case
gildor
10/26/2022, 3:47 AMgildor
10/26/2022, 3:59 AMBreaker ACT
10/28/2022, 2:12 AMgildor
10/28/2022, 2:39 AMgildor
10/28/2022, 2:40 AMSo in this case, I don’t wanna recollect the data flow (Socket) because it is cold flow.If you don’t want to recollect it, you can convert it to hot flow with required strategy for retry cache
Breaker ACT
10/28/2022, 2:41 AMgildor
10/28/2022, 5:39 AMgildor
10/28/2022, 5:41 AMgildor
10/28/2022, 5:41 AMgildor
10/28/2022, 5:42 AMBreaker ACT
10/28/2022, 5:44 AMgildor
10/28/2022, 6:40 AMgildor
10/28/2022, 6:41 AMBreaker ACT
10/28/2022, 6:44 AMBreaker ACT
10/28/2022, 6:44 AM