From cb1f43ec66689175a0b83be61a56e316eec31bf2 Mon Sep 17 00:00:00 2001 From: Jannik Seiler Date: Sat, 29 Aug 2020 17:21:34 +0200 Subject: [PATCH] use cache if qispos is not available --- .../projectlaogai/fragments/GradesFragment.kt | 24 +++++++++---------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/org/mosad/seil0/projectlaogai/fragments/GradesFragment.kt b/app/src/main/java/org/mosad/seil0/projectlaogai/fragments/GradesFragment.kt index 4b505d4..557a3fc 100644 --- a/app/src/main/java/org/mosad/seil0/projectlaogai/fragments/GradesFragment.kt +++ b/app/src/main/java/org/mosad/seil0/projectlaogai/fragments/GradesFragment.kt @@ -62,9 +62,18 @@ class GradesFragment : Fragment() { parser = QISPOSParser(context!!)// init the parser - // TODO if loading from cache, don't check Qispos state - if (checkCredentials() && checkQisposStatus()) { + if (checkCredentials()) { GlobalScope.launch(Dispatchers.Default) { + // if the cache is older than 24hr, update blocking + val currentTime = System.currentTimeMillis() / 1000 + if ((currentTime - Preferences.gradesCacheTime) > 86400 && checkQisposStatus()) { + withContext(Dispatchers.Main) { + refreshLayout_Grades.isRefreshing = true + } + + CacheController.updateGrades(context!!).join() + } + addGrades() } } @@ -145,17 +154,6 @@ class GradesFragment : Fragment() { */ private fun addGrades() = GlobalScope.launch(Dispatchers.Default) { val addGradesTime = measureTimeMillis { - - withContext(Dispatchers.Main) { - refreshLayout_Grades.isRefreshing = true - } - - // if the cache is older than 24hr, update blocking - val currentTime = System.currentTimeMillis() / 1000 - if ((currentTime - Preferences.gradesCacheTime) > 86400) { - CacheController.updateGrades(context!!).join() - } - val grades = CacheController(context!!).readGrades() withContext(Dispatchers.Main) {