From ad1bebb412144eae924ebfa2478cf05380c4eb6a Mon Sep 17 00:00:00 2001 From: Anders Ha Date: Fri, 14 Jun 2024 13:23:29 +0100 Subject: [PATCH] VIT-6659: Consolidate LocalActivity models --- .../model/processedresource/Activity.kt | 27 ------------------- .../ProcessedResourceData.kt | 3 ++- .../records/RecordProcessor.kt | 4 +-- .../workers/uploadResources.kt | 2 +- 4 files changed, 5 insertions(+), 31 deletions(-) delete mode 100644 VitalHealthConnect/src/main/java/io/tryvital/vitalhealthconnect/model/processedresource/Activity.kt diff --git a/VitalHealthConnect/src/main/java/io/tryvital/vitalhealthconnect/model/processedresource/Activity.kt b/VitalHealthConnect/src/main/java/io/tryvital/vitalhealthconnect/model/processedresource/Activity.kt deleted file mode 100644 index 43e0fb4a..00000000 --- a/VitalHealthConnect/src/main/java/io/tryvital/vitalhealthconnect/model/processedresource/Activity.kt +++ /dev/null @@ -1,27 +0,0 @@ -package io.tryvital.vitalhealthconnect.model.processedresource - -import io.tryvital.client.services.data.ActivityDaySummary -import io.tryvital.client.services.data.LocalActivity -import io.tryvital.client.services.data.LocalQuantitySample - -data class Activity( - val daySummary: ActivityDaySummary?, - val activeEnergyBurned: List, - val basalEnergyBurned: List, - val steps: List, - val distanceWalkingRunning: List, - val vo2Max: List, - val floorsClimbed: List, -) { - fun toActivityPayload(): LocalActivity { - return LocalActivity( - daySummary = daySummary, - activeEnergyBurned = activeEnergyBurned, - basalEnergyBurned = basalEnergyBurned, - steps = steps, - distanceWalkingRunning = distanceWalkingRunning, - vo2Max = vo2Max, - floorsClimbed = floorsClimbed, - ) - } -} diff --git a/VitalHealthConnect/src/main/java/io/tryvital/vitalhealthconnect/model/processedresource/ProcessedResourceData.kt b/VitalHealthConnect/src/main/java/io/tryvital/vitalhealthconnect/model/processedresource/ProcessedResourceData.kt index edc5dccf..1786c84a 100644 --- a/VitalHealthConnect/src/main/java/io/tryvital/vitalhealthconnect/model/processedresource/ProcessedResourceData.kt +++ b/VitalHealthConnect/src/main/java/io/tryvital/vitalhealthconnect/model/processedresource/ProcessedResourceData.kt @@ -2,6 +2,7 @@ package io.tryvital.vitalhealthconnect.model.processedresource import io.tryvital.client.services.data.LocalBody import io.tryvital.client.services.data.IngestibleTimeseriesResource +import io.tryvital.client.services.data.LocalActivity import io.tryvital.client.services.data.LocalBloodPressureSample import io.tryvital.client.services.data.LocalProfile import io.tryvital.client.services.data.LocalQuantitySample @@ -103,7 +104,7 @@ sealed class SummaryData { } data class Activities( - val activities: List + val activities: List ) : SummaryData() { override fun merge(other: SummaryData): SummaryData { check(other is Activities) diff --git a/VitalHealthConnect/src/main/java/io/tryvital/vitalhealthconnect/records/RecordProcessor.kt b/VitalHealthConnect/src/main/java/io/tryvital/vitalhealthconnect/records/RecordProcessor.kt index e866017c..ad75d475 100644 --- a/VitalHealthConnect/src/main/java/io/tryvital/vitalhealthconnect/records/RecordProcessor.kt +++ b/VitalHealthConnect/src/main/java/io/tryvital/vitalhealthconnect/records/RecordProcessor.kt @@ -22,6 +22,7 @@ import androidx.health.connect.client.records.StepsRecord import androidx.health.connect.client.records.Vo2MaxRecord import androidx.health.connect.client.records.WeightRecord import io.tryvital.client.services.data.IngestibleTimeseriesResource +import io.tryvital.client.services.data.LocalActivity import io.tryvital.client.services.data.LocalBloodPressureSample import io.tryvital.client.services.data.LocalQuantitySample import io.tryvital.client.services.data.LocalSleep @@ -29,7 +30,6 @@ import io.tryvital.client.services.data.LocalWorkout import io.tryvital.client.services.data.SampleType import io.tryvital.client.utils.VitalLogger import io.tryvital.vitalhealthconnect.SupportedSleepApps -import io.tryvital.vitalhealthconnect.model.processedresource.Activity import io.tryvital.vitalhealthconnect.model.processedresource.SummaryData import io.tryvital.vitalhealthconnect.model.processedresource.TimeSeriesData import io.tryvital.vitalhealthconnect.model.quantitySample @@ -485,7 +485,7 @@ internal class HealthConnectRecordProcessor( // TODO: On-device computed hourly totals val activities = daySummariesByDate.map { (date, summary) -> - Activity( + LocalActivity( daySummary = summary, activeEnergyBurned = merge(activeEnergyBurnedByDate, emptyMap(), date, options), basalEnergyBurned = merge(basalMetabolicRateByDate, emptyMap(), date, options), diff --git a/VitalHealthConnect/src/main/java/io/tryvital/vitalhealthconnect/workers/uploadResources.kt b/VitalHealthConnect/src/main/java/io/tryvital/vitalhealthconnect/workers/uploadResources.kt index 08f05084..537362f0 100644 --- a/VitalHealthConnect/src/main/java/io/tryvital/vitalhealthconnect/workers/uploadResources.kt +++ b/VitalHealthConnect/src/main/java/io/tryvital/vitalhealthconnect/workers/uploadResources.kt @@ -21,7 +21,7 @@ internal suspend fun uploadResources( is ProcessedResourceData.Summary -> when (data.summaryData) { is SummaryData.Activities -> uploader.uploadActivities( userId, start, end, timeZoneId, - data.summaryData.activities.map { it.toActivityPayload() }, + data.summaryData.activities, stage, ) is SummaryData.Body -> uploader.uploadBody(