Client : Error management

This commit is contained in:
Thomas Andres Gomez 2025-04-01 16:01:43 +02:00
parent d806048510
commit 1ebb7c1400
48 changed files with 630 additions and 473 deletions

View file

@ -6,6 +6,7 @@ import com.pixelized.desktop.lwa.repository.campaign.CampaignRepository
import com.pixelized.desktop.lwa.repository.characterSheet.CharacterSheetRepository
import com.pixelized.desktop.lwa.repository.network.NetworkRepository
import com.pixelized.desktop.lwa.repository.settings.SettingsRepository
import com.pixelized.desktop.lwa.repository.tag.TagRepository
import kotlinx.coroutines.ExperimentalCoroutinesApi
import kotlinx.coroutines.coroutineScope
import kotlinx.coroutines.flow.distinctUntilChanged
@ -19,6 +20,7 @@ class DataSyncViewModel(
private val characterRepository: CharacterSheetRepository,
private val alterationRepository: AlterationRepository,
private val campaignRepository: CampaignRepository,
private val tagRepository: TagRepository,
private val settingsRepository: SettingsRepository,
private val networkRepository: NetworkRepository,
) : ViewModel() {
@ -40,10 +42,10 @@ class DataSyncViewModel(
networkRepository.status
.filter { status -> status == NetworkRepository.Status.CONNECTED }
.onEach {
tagRepository.updateAlterationTags()
alterationRepository.updateAlterations()
alterationRepository.updateTags()
tagRepository.updateCharacterTags()
characterRepository.updateCharacterPreviews()
characterRepository.updateTags()
campaignRepository.updateCampaign()
}
.launchIn(this)
@ -54,9 +56,8 @@ class DataSyncViewModel(
.distinctUntilChanged()
.onEach { instances ->
instances.forEach { characterSheetId ->
characterRepository.characterDetail(
characterRepository.updateCharacterSheet(
characterSheetId = characterSheetId,
forceUpdate = true,
)
}
}