Fix: prevent DB access on main thread for PumpSyncImplementation.expectedPumpState()

This commit is contained in:
Sam Spycher 2021-10-18 22:02:57 +02:00
parent 67c53b412d
commit b5962ab07a

View file

@ -77,7 +77,7 @@ class PumpSyncImplementation @Inject constructor(
} }
override fun expectedPumpState(): PumpSync.PumpState { override fun expectedPumpState(): PumpSync.PumpState {
val bolus = repository.getLastBolusRecord() val bolus = repository.getLastBolusRecordWrapped().blockingGet();
val temporaryBasal = repository.getTemporaryBasalActiveAt(dateUtil.now()).blockingGet() val temporaryBasal = repository.getTemporaryBasalActiveAt(dateUtil.now()).blockingGet()
val extendedBolus = repository.getExtendedBolusActiveAt(dateUtil.now()).blockingGet() val extendedBolus = repository.getExtendedBolusActiveAt(dateUtil.now()).blockingGet()
@ -104,12 +104,14 @@ class PumpSyncImplementation @Inject constructor(
) )
else null, else null,
bolus = bolus =
bolus?.let { if (bolus is ValueWrapper.Existing)
PumpSync.PumpState.Bolus( bolus.value.let {
timestamp = bolus.timestamp, PumpSync.PumpState.Bolus(
amount = bolus.amount timestamp = bolus.value.timestamp,
) amount = bolus.value.amount
}, )
}
else null,
profile = profileFunction.getProfile() profile = profileFunction.getProfile()
) )
} }