diff options
author | Allan Wang <me@allanwang.ca> | 2019-05-09 20:15:04 +0800 |
---|---|---|
committer | Allan Wang <me@allanwang.ca> | 2019-05-09 20:15:04 +0800 |
commit | 971214bd5e2d770d44306dc9ec6ab78182762ba5 (patch) | |
tree | 18ffb48c3bd45687a97aab92b9301e5e10283859 /app/src/main/kotlin/com/pitchedapps/frost/services | |
parent | a5a19290a876faca91c6c865c50350689f72c080 (diff) | |
download | frost-971214bd5e2d770d44306dc9ec6ab78182762ba5.tar.gz frost-971214bd5e2d770d44306dc9ec6ab78182762ba5.tar.bz2 frost-971214bd5e2d770d44306dc9ec6ab78182762ba5.zip |
Ensure notifications are always saved
Diffstat (limited to 'app/src/main/kotlin/com/pitchedapps/frost/services')
-rw-r--r-- | app/src/main/kotlin/com/pitchedapps/frost/services/FrostNotifications.kt | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/services/FrostNotifications.kt b/app/src/main/kotlin/com/pitchedapps/frost/services/FrostNotifications.kt index 1c37bc29..4b0e1a82 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/services/FrostNotifications.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/services/FrostNotifications.kt @@ -137,10 +137,17 @@ enum class NotificationType( validText(notif.title) && validText(notif.text) } if (notifContents.isEmpty()) return 0 + val userId = data.id // Legacy, remove with dbflow val prevLatestEpoch = notifDao.latestEpoch(userId, channelId) L.v { "Notif $name prev epoch $prevLatestEpoch" } + + if (!notifDao.saveNotifications(channelId, notifContents)) { + L.d { "Skip notifs for $name as saving failed" } + return -1 + } + if (prevLatestEpoch == -1L && !BuildConfig.DEBUG) { L.d { "Skipping first notification fetch" } return 0 // do not notify the first time @@ -155,11 +162,6 @@ enum class NotificationType( L.d { "${newNotifContents.size} new notifs found for $name" } - if (!notifDao.saveNotifications(channelId, newNotifContents)) { - L.d { "Skip notifs for $name as saving failed" } - return 0 - } - val notifs = newNotifContents.map { createNotification(context, it) } frostEvent("Notifications", "Type" to name, "Count" to notifs.size) |