Skip to content

Commit f07b04f

Browse files
committed
Offline cache will be renewed if outdated
1 parent 3b2d56d commit f07b04f

1 file changed

Lines changed: 11 additions & 2 deletions

File tree

gamevault/UserControls/InstallUserControl.xaml.cs

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -148,9 +148,18 @@ public async Task RestoreInstalledGames()
148148
if (LoginManager.Instance.IsLoggedIn())
149149
{
150150
if (!Preferences.Exists(game.ID.ToString(), LoginManager.Instance.GetUserProfile().OfflineCache))
151+
{
152+
await CacheHelper.CreateOfflineCacheAsync(game);
153+
}
154+
else
151155
{
152-
string gameToSave = await WebHelper.GetAsync(@$"{SettingsViewModel.Instance.ServerUrl}/api/games/{game.ID}");
153-
await CacheHelper.CreateOfflineCacheAsync(JsonSerializer.Deserialize<Game>(gameToSave));
156+
string offlineCacheGameString = Preferences.Get(game.ID.ToString(), LoginManager.Instance.GetUserProfile().OfflineCache);
157+
offlineCacheGameString = StringCompressor.DecompressString(offlineCacheGameString);
158+
Game offlineCacheGame = JsonSerializer.Deserialize<Game>(offlineCacheGameString);
159+
if(game.EntityVersion != offlineCacheGame?.EntityVersion)
160+
{
161+
await CacheHelper.CreateOfflineCacheAsync(game);
162+
}
154163
}
155164
}
156165
}

0 commit comments

Comments
 (0)