Browse Source

delete NotificationPolicy cache on logout (#5004)

I think now I got them all 😅
pull/5015/head
Konrad Pozniak 12 months ago committed by GitHub
parent
commit
f2c0eeb8f9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 6
      app/src/main/java/com/keylesspalace/tusky/db/DatabaseCleaner.kt
  2. 3
      app/src/main/java/com/keylesspalace/tusky/db/dao/NotificationPolicyDao.kt

6
app/src/main/java/com/keylesspalace/tusky/db/DatabaseCleaner.kt

@ -19,6 +19,7 @@ import androidx.room.withTransaction
import com.keylesspalace.tusky.components.conversation.ConversationEntity
import com.keylesspalace.tusky.db.entity.HomeTimelineEntity
import com.keylesspalace.tusky.db.entity.NotificationEntity
import com.keylesspalace.tusky.db.entity.NotificationPolicyEntity
import com.keylesspalace.tusky.db.entity.NotificationReportEntity
import com.keylesspalace.tusky.db.entity.TimelineAccountEntity
import com.keylesspalace.tusky.db.entity.TimelineStatusEntity
@ -50,8 +51,8 @@ class DatabaseCleaner @Inject constructor(
}
/**
* Deletes everything from the [HomeTimelineEntity], [TimelineStatusEntity], [TimelineAccountEntity],
* [NotificationEntity], [NotificationReportEntity] and [ConversationEntity] tables for one user.
* Deletes everything from the [HomeTimelineEntity], [TimelineStatusEntity], [TimelineAccountEntity], [NotificationEntity],
* [NotificationReportEntity], [ConversationEntity] and [NotificationPolicyEntity] tables for one user.
* Intended to be used when a user logs out.
* @param tuskyAccountId id of the account for which to clean tables
*/
@ -64,6 +65,7 @@ class DatabaseCleaner @Inject constructor(
db.timelineStatusDao().removeAllStatuses(tuskyAccountId)
db.timelineAccountDao().removeAllAccounts(tuskyAccountId)
db.conversationDao().deleteForAccount(tuskyAccountId)
db.notificationPolicyDao().deleteForAccount(tuskyAccountId)
}
}
}

3
app/src/main/java/com/keylesspalace/tusky/db/dao/NotificationPolicyDao.kt

@ -40,4 +40,7 @@ interface NotificationPolicyDao {
accountId: Long,
notificationCount: Int
)
@Query("DELETE FROM NotificationPolicyEntity WHERE tuskyAccountId = :accountId")
suspend fun deleteForAccount(accountId: Long)
}

Loading…
Cancel
Save