@@ -18,13 +18,13 @@ import kotlinx.coroutines.flow.combine
18
18
import org.equeim.tremotesf.R
19
19
import org.equeim.tremotesf.databinding.ServerStatsDialogBinding
20
20
import org.equeim.tremotesf.rpc.GlobalRpcClient
21
- import org.equeim.tremotesf.rpc.PeriodicServerStateUpdater
22
21
import org.equeim.tremotesf.torrentfile.rpc.RpcRequestError
23
22
import org.equeim.tremotesf.torrentfile.rpc.RpcRequestState
24
23
import org.equeim.tremotesf.torrentfile.rpc.performPeriodicRequest
25
24
import org.equeim.tremotesf.torrentfile.rpc.requests.FileSize
26
25
import org.equeim.tremotesf.torrentfile.rpc.requests.SessionStatsResponseArguments
27
26
import org.equeim.tremotesf.torrentfile.rpc.requests.getDownloadDirFreeSpace
27
+ import org.equeim.tremotesf.torrentfile.rpc.requests.getSessionStats
28
28
import org.equeim.tremotesf.torrentfile.rpc.stateIn
29
29
import org.equeim.tremotesf.ui.NavigationDialogFragment
30
30
import org.equeim.tremotesf.ui.utils.DecimalFormats
@@ -120,10 +120,12 @@ class ServerStatsDialogFragment : NavigationDialogFragment() {
120
120
}
121
121
122
122
class ServerStatsDialogFragmentViewModel : ViewModel () {
123
+ private val sessionStats: Flow <RpcRequestState <SessionStatsResponseArguments >> =
124
+ GlobalRpcClient .performPeriodicRequest { getSessionStats() }
123
125
private val downloadDirFreeSpace: Flow <RpcRequestState <FileSize >> =
124
126
GlobalRpcClient .performPeriodicRequest { getDownloadDirFreeSpace() }
125
127
val stats: StateFlow <RpcRequestState <Pair <SessionStatsResponseArguments , FileSize >>> =
126
- combine(PeriodicServerStateUpdater . sessionStats, downloadDirFreeSpace) { stats, freeSpace ->
128
+ combine(sessionStats, downloadDirFreeSpace) { stats, freeSpace ->
127
129
when {
128
130
stats is RpcRequestState .Loaded && freeSpace is RpcRequestState .Loaded -> RpcRequestState .Loaded (stats.response to freeSpace.response)
129
131
stats is RpcRequestState .Error -> stats
0 commit comments