backend implementation

This commit is contained in:
2026-07-25 21:54:24 +03:00
parent c49a5ed087
commit 9254829c5d
28 changed files with 130 additions and 35 deletions
@@ -2,7 +2,6 @@ package ru.shadowsparky.vbox.shared.data
import io.ktor.client.HttpClient
import org.koin.core.annotation.Factory
import ru.shadowsparky.domain.AppConfig
import ru.shadowsparky.updater.domain.UpdateFetcher
import ru.shadowsparky.updater.domain.UpdateInfo
import ru.shadowsparky.vbox.shared.domain.DYNAMIC_PREFIX
@@ -12,14 +11,13 @@ import ru.shadowsparky.vbox.shared.domain.getServerConfiguration
@Factory
class VBoxUpdateFetcher(
private val httpClient: HttpClient,
private val serverConfigurationProvider: ServerConfigurationRepository,
private val appConfig: AppConfig
private val serverConfigurationProvider: ServerConfigurationRepository
) : UpdateFetcher {
override suspend fun fetch(): UpdateInfo {
override suspend fun fetch(versionCode: Long): UpdateInfo {
return httpClient.get<UpdateInfo>(
"$DYNAMIC_PREFIX/checkUpdates",
mapOf(
"versionCode" to appConfig.versionCode.toString()
UpdateFetcher.ARG_VERSION_CODE to versionCode.toString()
),
serverConfigurationProvider.getServerConfiguration()
)