From ae0a74ca17d58f334efb75f2b9cef1f96a294fa3 Mon Sep 17 00:00:00 2001
From: Chilja Gossow <49635654+chiljamgossow@users.noreply.github.com>
Date: Fri, 19 Mar 2021 16:06:48 +0100
Subject: [PATCH] Extend RiskLevelStorage (DEV) (#2653)

* extension for checkIn risk
---
 .../coronawarnapp/risk/storage/BaseRiskLevelStorage.kt    | 8 ++++++--
 .../de/rki/coronawarnapp/risk/storage/RiskLevelStorage.kt | 7 +++++++
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/storage/BaseRiskLevelStorage.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/storage/BaseRiskLevelStorage.kt
index 8b84f9395..556897b6f 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/storage/BaseRiskLevelStorage.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/storage/BaseRiskLevelStorage.kt
@@ -2,6 +2,7 @@ package de.rki.coronawarnapp.risk.storage
 
 import de.rki.coronawarnapp.risk.RiskLevelResult
 import de.rki.coronawarnapp.risk.RiskLevelTaskResult
+import de.rki.coronawarnapp.risk.TraceLocationCheckInRisk
 import de.rki.coronawarnapp.risk.result.AggregatedRiskPerDateResult
 import de.rki.coronawarnapp.risk.storage.internal.RiskResultDatabase
 import de.rki.coronawarnapp.risk.storage.internal.riskresults.PersistedRiskLevelResultDao
@@ -13,6 +14,7 @@ import de.rki.coronawarnapp.util.flow.shareLatest
 import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.flow.Flow
 import kotlinx.coroutines.flow.first
+import kotlinx.coroutines.flow.flowOf
 import kotlinx.coroutines.flow.map
 import timber.log.Timber
 
@@ -126,14 +128,16 @@ abstract class BaseRiskLevelStorage constructor(
     override val aggregatedRiskPerDateResults: Flow<List<AggregatedRiskPerDateResult>> by lazy {
         aggregatedRiskPerDateResultTables.allEntries()
             .map {
-                it.map {
-                    persistedAggregatedRiskPerDateResult ->
+                it.map { persistedAggregatedRiskPerDateResult ->
                     persistedAggregatedRiskPerDateResult.toAggregatedRiskPerDateResult()
                 }
             }
             .shareLatest(tag = TAG, scope = scope)
     }
 
+    override val traceLocationCheckInRiskStates: Flow<List<TraceLocationCheckInRisk>>
+        get() = flowOf(emptyList<TraceLocationCheckInRisk>()) // TODO("Not yet implemented")
+
     private suspend fun insertAggregatedRiskPerDateResults(
         aggregatedRiskPerDateResults: List<AggregatedRiskPerDateResult>
     ) {
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/storage/RiskLevelStorage.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/storage/RiskLevelStorage.kt
index 5a7ce8856..1bc99e1f9 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/storage/RiskLevelStorage.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/storage/RiskLevelStorage.kt
@@ -1,6 +1,7 @@
 package de.rki.coronawarnapp.risk.storage
 
 import de.rki.coronawarnapp.risk.RiskLevelResult
+import de.rki.coronawarnapp.risk.TraceLocationCheckInRisk
 import de.rki.coronawarnapp.risk.result.AggregatedRiskPerDateResult
 import kotlinx.coroutines.flow.Flow
 
@@ -36,6 +37,12 @@ interface RiskLevelStorage {
      */
     val aggregatedRiskPerDateResults: Flow<List<AggregatedRiskPerDateResult>>
 
+    /**
+     * Risk level per date/day and checkIn
+     * Used by contact diary overview
+     */
+    val traceLocationCheckInRiskStates: Flow<List<TraceLocationCheckInRisk>>
+
     suspend fun deleteAggregatedRiskPerDateResults(results: List<AggregatedRiskPerDateResult>)
 
     suspend fun storeResult(result: RiskLevelResult)
-- 
GitLab