fix basal rendering

This commit is contained in:
Milos Kozak 2019-05-12 10:52:25 +02:00
parent 197f3bb691
commit 4fda6c4c4f

View file

@ -391,28 +391,30 @@ public class IobCobCalculatorPlugin extends PluginBase {
}
public BasalData getBasalData(Profile profile, long time) {
long now = System.currentTimeMillis();
time = roundUpTime(time);
BasalData retval = basalDataTable.get(time);
if (retval == null) {
retval = new BasalData();
TemporaryBasal tb = TreatmentsPlugin.getPlugin().getTempBasalFromHistory(time);
retval.basal = profile.getBasal(time);
if (tb != null) {
retval.isTempBasalRunning = true;
retval.tempBasalAbsolute = tb.tempBasalConvertedToAbsolute(time, profile);
synchronized (dataLock) {
long now = System.currentTimeMillis();
time = roundUpTime(time);
BasalData retval = basalDataTable.get(time);
if (retval == null) {
retval = new BasalData();
TemporaryBasal tb = TreatmentsPlugin.getPlugin().getTempBasalFromHistory(time);
retval.basal = profile.getBasal(time);
if (tb != null) {
retval.isTempBasalRunning = true;
retval.tempBasalAbsolute = tb.tempBasalConvertedToAbsolute(time, profile);
} else {
retval.isTempBasalRunning = false;
retval.tempBasalAbsolute = retval.basal;
}
if (time < now) {
basalDataTable.append(time, retval);
}
//log.debug(">>> getBasalData Cache miss " + new Date(time).toLocaleString());
} else {
retval.isTempBasalRunning = false;
retval.tempBasalAbsolute = retval.basal;
//log.debug(">>> getBasalData Cache hit " + new Date(time).toLocaleString());
}
if (time < now) {
basalDataTable.append(time, retval);
}
//log.debug(">>> getBasalData Cache miss " + new Date(time).toLocaleString());
} else {
//log.debug(">>> getBasalData Cache hit " + new Date(time).toLocaleString());
return retval;
}
return retval;
}
@Nullable