diff --git a/app/src/main/java/info/nightscout/android/medtronic/MainActivity.java b/app/src/main/java/info/nightscout/android/medtronic/MainActivity.java index bb686c818791e74973699645f5a8f6a1e07ee94d..a2728bc9a98cc11fd6e2e4b28f4c0744e7ae0cf9 100644 --- a/app/src/main/java/info/nightscout/android/medtronic/MainActivity.java +++ b/app/src/main/java/info/nightscout/android/medtronic/MainActivity.java @@ -750,19 +750,18 @@ public class MainActivity extends AppCompatActivity implements OnSharedPreferenc // Get the most recently written CGM record for the active pump. PumpStatusEvent pumpStatusData = null; - PumpInfo pump = getActivePump(); + // ignoring activePump atm + //PumpInfo pump = getActivePump(); - if (pump != null && pump.isValid() && pump.getPumpHistory().size() > 0) { - pumpStatusData = pump.getPumpHistory().last(); + if (dataStore.getLastPumpStatus().getEventDate().getTime() > 0) { + pumpStatusData = dataStore.getLastPumpStatus(); } - // FIXME - grab the last item from the activePump's getPumpHistory updateChart(mRealm.where(PumpStatusEvent.class) .greaterThan("eventDate", new Date(System.currentTimeMillis() - 1000*60*60*24)) .findAllSorted("eventDate", Sort.ASCENDING)); if (pumpStatusData != null) { - String sgvString; if (configurationStore.isMmolxl()) { float fBgValue = (float) pumpStatusData.getSgv(); diff --git a/app/src/main/java/info/nightscout/android/medtronic/service/MedtronicCnlIntentService.java b/app/src/main/java/info/nightscout/android/medtronic/service/MedtronicCnlIntentService.java index 77dbee6aaededae6fd72f1311a4c3ab886e49068..79f306e7732a8d8fe46a93c1684fc53b65ce37ee 100644 --- a/app/src/main/java/info/nightscout/android/medtronic/service/MedtronicCnlIntentService.java +++ b/app/src/main/java/info/nightscout/android/medtronic/service/MedtronicCnlIntentService.java @@ -111,7 +111,6 @@ public class MedtronicCnlIntentService extends IntentService { short pumpBatteryLevel = dataStore.getLastPumpStatus().getBatteryPercentage(); - if (timeLastGoodSGV != 0) { timePollExpected = timeLastGoodSGV + POLL_PERIOD_MS + POLL_GRACE_PERIOD_MS + (POLL_PERIOD_MS * ((timePollStarted - 1000L - (timeLastGoodSGV + POLL_GRACE_PERIOD_MS)) / POLL_PERIOD_MS)); } diff --git a/app/src/main/java/info/nightscout/android/utils/DataStore.java b/app/src/main/java/info/nightscout/android/utils/DataStore.java index 34ff4deec0737d25133e442a9f1bc6948ebf0ba6..db6bcd8df3098bcad68c85e415299a6627cb9799 100644 --- a/app/src/main/java/info/nightscout/android/utils/DataStore.java +++ b/app/src/main/java/info/nightscout/android/utils/DataStore.java @@ -1,9 +1,12 @@ package info.nightscout.android.utils; +import com.bugfender.sdk.a.a.k.a; + import java.util.Date; import info.nightscout.android.model.medtronicNg.PumpStatusEvent; +import io.realm.Realm; /** * Created by volker on 30.03.2017. @@ -27,7 +30,8 @@ public class DataStore { PumpStatusEvent dummyStatus = new PumpStatusEvent(); dummyStatus.setEventDate(new Date(0)); - instance.setLastPumpStatus(dummyStatus); + // bypass setter to avoid dealing with a real Realm object + instance.lastPumpStatus = dummyStatus; } return instance; @@ -38,7 +42,7 @@ public class DataStore { } public void setLastPumpStatus(PumpStatusEvent lastPumpStatus) { - this.lastPumpStatus = lastPumpStatus; + this.lastPumpStatus = Realm.getDefaultInstance().copyFromRealm(lastPumpStatus); } public int getUplooaderBatteryLevel() {