From 1c230ad00a2edd456fedd870dfa0746310e29ddf Mon Sep 17 00:00:00 2001 From: Lennart Goedhart <lennart@omnibase.com.au> Date: Sat, 30 Jul 2016 12:39:05 +0800 Subject: [PATCH] Remove pre-Realm data object usage and objects themselves --- .../android/medtronic/MainActivity.java | 4 +- .../android/medtronic/MedtronicCNLReader.java | 13 ++- .../service/MedtronicCnlIntentService.java | 1 - .../android/upload/DeviceRecord.java | 22 ---- .../android/upload/GlucometerRecord.java | 19 ---- .../android/upload/MedtronicNG/CGMRecord.java | 101 ------------------ .../upload/MedtronicNG/PumpStatusRecord.java | 19 ---- .../nightscout/android/upload/Record.java | 17 --- .../NightscoutUploadIntentService.java | 18 ++-- 9 files changed, 16 insertions(+), 198 deletions(-) delete mode 100644 app/src/main/java/info/nightscout/android/upload/DeviceRecord.java delete mode 100644 app/src/main/java/info/nightscout/android/upload/GlucometerRecord.java delete mode 100644 app/src/main/java/info/nightscout/android/upload/MedtronicNG/CGMRecord.java delete mode 100644 app/src/main/java/info/nightscout/android/upload/MedtronicNG/PumpStatusRecord.java delete mode 100644 app/src/main/java/info/nightscout/android/upload/Record.java 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 4036a02..62183de 100644 --- a/app/src/main/java/info/nightscout/android/medtronic/MainActivity.java +++ b/app/src/main/java/info/nightscout/android/medtronic/MainActivity.java @@ -60,7 +60,6 @@ import info.nightscout.android.model.medtronicNg.ContourNextLinkInfo; import info.nightscout.android.model.medtronicNg.PumpInfo; import info.nightscout.android.model.medtronicNg.PumpStatusEvent; import info.nightscout.android.settings.SettingsActivity; -import info.nightscout.android.upload.MedtronicNG.PumpStatusRecord; import info.nightscout.android.upload.nightscout.NightscoutUploadIntentService; import io.realm.Realm; import io.realm.RealmResults; @@ -71,7 +70,6 @@ public class MainActivity extends AppCompatActivity implements OnSharedPreferenc private static final String TAG = MainActivity.class.getSimpleName(); public static int batLevel = 0; - public static PumpStatusRecord pumpStatusRecord = new PumpStatusRecord(); private static long activePumpMac; boolean mEnableCgmService = true; SharedPreferences prefs = null; @@ -526,7 +524,7 @@ public class MainActivity extends AppCompatActivity implements OnSharedPreferenc textViewUnits.setText(units); textViewBgTime.setText(DateUtils.getRelativeTimeSpanString(pumpRecord.getEventDate().getTime())); textViewTrend.setText(Html.fromHtml(renderTrendHtml(pumpRecord.getCgmTrend()))); - textViewIOB.setText(String.format(Locale.getDefault(), "%.2f", pumpStatusRecord.activeInsulin)); + textViewIOB.setText(String.format(Locale.getDefault(), "%.2f", pumpRecord.getActiveInsulin())); /* // Open Realm because we're in a different thread diff --git a/app/src/main/java/info/nightscout/android/medtronic/MedtronicCNLReader.java b/app/src/main/java/info/nightscout/android/medtronic/MedtronicCNLReader.java index 745e2a7..d23d1f8 100644 --- a/app/src/main/java/info/nightscout/android/medtronic/MedtronicCNLReader.java +++ b/app/src/main/java/info/nightscout/android/medtronic/MedtronicCNLReader.java @@ -267,7 +267,7 @@ public class MedtronicCnlReader implements ContourNextLinkMessageHandler { if (lastRadioChannel != 0x00) { // If we know the last channel that was used, shuffle the negotiation order - Byte lastChannel = radioChannels.remove(radioChannels.indexOf(new Byte(lastRadioChannel))); + Byte lastChannel = radioChannels.remove(radioChannels.indexOf(lastRadioChannel)); if (lastChannel != null) { radioChannels.add(0, lastChannel); @@ -316,7 +316,6 @@ public class MedtronicCnlReader implements ContourNextLinkMessageHandler { public Date getPumpTime() throws EncryptionException, IOException, ChecksumException, TimeoutException { Log.d(TAG, "Begin getPumpTime"); // FIXME - throw if not in EHSM mode (add a state machine) - Date timeAtCapture = new Date(); new PumpTimeRequestMessage(mPumpSession).send(this); // Read the 0x81 @@ -368,7 +367,7 @@ public class MedtronicCnlReader implements ContourNextLinkMessageHandler { // Read the data into the record long rawActiveInsulin = statusBuffer.getShort(0x33) & 0x0000ffff; - MainActivity.pumpStatusRecord.activeInsulin = new BigDecimal(rawActiveInsulin / 10000f).setScale(3, BigDecimal.ROUND_HALF_UP); + pumpRecord.setActiveInsulin(new BigDecimal(rawActiveInsulin / 10000f).setScale(3, BigDecimal.ROUND_HALF_UP).floatValue()); pumpRecord.setSgv(statusBuffer.getShort(0x35) & 0x0000ffff); // In mg/DL. 0 means no CGM reading long rtc; long offset; @@ -384,11 +383,11 @@ public class MedtronicCnlReader implements ContourNextLinkMessageHandler { pumpRecord.setCgmTrend(fromMessageByte(statusBuffer.get(0x40))); } pumpRecord.setEventDate(new Date(MessageUtils.decodeDateTime(rtc, offset).getTime() - pumpTimeOffset)); - MainActivity.pumpStatusRecord.recentBolusWizard = statusBuffer.get(0x48) != 0; - MainActivity.pumpStatusRecord.bolusWizardBGL = statusBuffer.getShort(0x49); // In mg/DL + pumpRecord.setRecentBolusWizard(statusBuffer.get(0x48) != 0); + pumpRecord.setBolusWizardBGL(statusBuffer.getShort(0x49)); // In mg/DL long rawReservoirAmount = statusBuffer.getInt(0x2b); - MainActivity.pumpStatusRecord.reservoirAmount = new BigDecimal(rawReservoirAmount / 10000f).setScale(3, BigDecimal.ROUND_HALF_UP); - MainActivity.pumpStatusRecord.batteryPercentage = (statusBuffer.get(0x2a)); + pumpRecord.setReservoirAmount(new BigDecimal(rawReservoirAmount / 10000f).setScale(3, BigDecimal.ROUND_HALF_UP).floatValue()); + pumpRecord.setBatteryPercentage((statusBuffer.get(0x2a))); Log.d(TAG, "Finished getPumpStatus"); } 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 a981194..ca0412b 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 @@ -205,7 +205,6 @@ public class MedtronicCnlIntentService extends IntentService { long pumpOffset = pumpTime - System.currentTimeMillis(); // TODO - send ACTION to MainActivity to show offset between pump and uploader. - MainActivity.pumpStatusRecord.pumpDate = new Date(pumpTime - pumpOffset); pumpRecord.setPumpDate(new Date(pumpTime - pumpOffset)); cnlReader.getPumpStatus(pumpRecord, pumpOffset); activePump.getPumpHistory().add(pumpRecord); diff --git a/app/src/main/java/info/nightscout/android/upload/DeviceRecord.java b/app/src/main/java/info/nightscout/android/upload/DeviceRecord.java deleted file mode 100644 index 0d4b5b2..0000000 --- a/app/src/main/java/info/nightscout/android/upload/DeviceRecord.java +++ /dev/null @@ -1,22 +0,0 @@ -package info.nightscout.android.upload; - -import java.io.Serializable; - -public class DeviceRecord extends Record implements Serializable{ - - /** - * - */ - private static final long serialVersionUID = 6321618305992689901L; - - public String deviceId = ""; - - protected String deviceName = ""; - - public String getDeviceName(){ - return deviceName; - } - public void setDeviceName( String deviceName ){ - this.deviceName = deviceName; - } -} diff --git a/app/src/main/java/info/nightscout/android/upload/GlucometerRecord.java b/app/src/main/java/info/nightscout/android/upload/GlucometerRecord.java deleted file mode 100644 index 10dbb2c..0000000 --- a/app/src/main/java/info/nightscout/android/upload/GlucometerRecord.java +++ /dev/null @@ -1,19 +0,0 @@ -package info.nightscout.android.upload; - -import java.io.Serializable; - -public class GlucometerRecord extends Record implements Serializable{ - public float numGlucometerValue = 0; - public long lastDate = 0; - - private static final long serialVersionUID = 4654897648L; - - public void setNumGlucometerValue(int numGlucometerValue) { - this.numGlucometerValue = numGlucometerValue; - } - - public void setLastDate(long lastDate) { - this.lastDate = lastDate; - } - -} diff --git a/app/src/main/java/info/nightscout/android/upload/MedtronicNG/CGMRecord.java b/app/src/main/java/info/nightscout/android/upload/MedtronicNG/CGMRecord.java deleted file mode 100644 index 514c770..0000000 --- a/app/src/main/java/info/nightscout/android/upload/MedtronicNG/CGMRecord.java +++ /dev/null @@ -1,101 +0,0 @@ -package info.nightscout.android.upload.MedtronicNG; - -import info.nightscout.android.upload.DeviceRecord; - -import java.io.Serializable; -import java.util.Date; - -/** - * Created by lgoedhart on 27/03/2016. - */ -public class CGMRecord extends DeviceRecord implements Serializable { - public enum TREND { - NONE(0), - DOUBLE_UP(1), - SINGLE_UP(2), - FOURTY_FIVE_UP(3), - FLAT(4), - FOURTY_FIVE_DOWN(5), - SINGLE_DOWN(6), - DOUBLE_DOWN(7), - NOT_COMPUTABLE(8), - RATE_OUT_OF_RANGE(9), - NOT_SET(10); - - private byte value; - TREND(int trend) { - this.value = (byte)trend; - } - } - - private TREND trend = TREND.NOT_SET; - - public int sgv = 0; // in mg/dL. 0 means no sensor reading - public Date sgvDate = new Date(); - public String direction; - - public void setTrend( TREND trend ) { - this.trend = trend; - - switch( trend ) { - case NONE: - this.direction = "NONE"; - break; - case DOUBLE_UP: - this.direction = "DoubleUp"; - break; - case SINGLE_UP: - this.direction = "SingleUp"; - break; - case FOURTY_FIVE_UP: - this.direction = "FortyFiveUp"; - break; - case FLAT: - this.direction = "Flat"; - break; - case FOURTY_FIVE_DOWN: - this.direction = "FortyFiveDown"; - break; - case SINGLE_DOWN: - this.direction = "SingleDown"; - break; - case DOUBLE_DOWN: - this.direction = "DoubleDown"; - break; - case NOT_COMPUTABLE: - this.direction = "NOT COMPUTABLE"; - break; - case RATE_OUT_OF_RANGE: - this.direction = "RATE OUT OF RANGE"; - break; - case NOT_SET: - this.direction = "NONE"; - break; - } - } - - public TREND getTrend() { - return trend; - } - - public static TREND fromMessageByte(byte messageByte) { - switch( messageByte ) { - case (byte) 0x60: - return TREND.FLAT; - case (byte) 0xc0: - return TREND.DOUBLE_UP; - case (byte) 0xa0: - return TREND.SINGLE_UP; - case (byte) 0x80: - return TREND.FOURTY_FIVE_UP; - case (byte) 0x40: - return TREND.FOURTY_FIVE_DOWN; - case (byte) 0x20: - return TREND.SINGLE_DOWN; - case (byte) 0x00: - return TREND.DOUBLE_DOWN; - default: - return TREND.NOT_COMPUTABLE; - } - } -} diff --git a/app/src/main/java/info/nightscout/android/upload/MedtronicNG/PumpStatusRecord.java b/app/src/main/java/info/nightscout/android/upload/MedtronicNG/PumpStatusRecord.java deleted file mode 100644 index 8f0c5c2..0000000 --- a/app/src/main/java/info/nightscout/android/upload/MedtronicNG/PumpStatusRecord.java +++ /dev/null @@ -1,19 +0,0 @@ -package info.nightscout.android.upload.MedtronicNG; - -import info.nightscout.android.upload.DeviceRecord; - -import java.io.Serializable; -import java.math.BigDecimal; -import java.util.Date; - -/** - * Created by lgoedhart on 27/03/2016. - */ -public class PumpStatusRecord extends DeviceRecord implements Serializable { - public int batteryPercentage; - public Date pumpDate = new Date(); - public BigDecimal activeInsulin = new BigDecimal(0); - public BigDecimal reservoirAmount = new BigDecimal(0); - public boolean recentBolusWizard = false; // Whether a bolus wizard has been run recently - public int bolusWizardBGL = 0; // in mg/dL. 0 means no recent bolus wizard reading. -} diff --git a/app/src/main/java/info/nightscout/android/upload/Record.java b/app/src/main/java/info/nightscout/android/upload/Record.java deleted file mode 100644 index 61a75fa..0000000 --- a/app/src/main/java/info/nightscout/android/upload/Record.java +++ /dev/null @@ -1,17 +0,0 @@ -package info.nightscout.android.upload; - -import java.io.Serializable; - -public class Record implements Serializable { - public String displayTime = "---"; - - /** - * - */ - private static final long serialVersionUID = -1381174446348390503L; - - public void setDisplayTime (String input) { - this.displayTime = input; - } - -} diff --git a/app/src/main/java/info/nightscout/android/upload/nightscout/NightscoutUploadIntentService.java b/app/src/main/java/info/nightscout/android/upload/nightscout/NightscoutUploadIntentService.java index 2b12d44..477210d 100644 --- a/app/src/main/java/info/nightscout/android/upload/nightscout/NightscoutUploadIntentService.java +++ b/app/src/main/java/info/nightscout/android/upload/nightscout/NightscoutUploadIntentService.java @@ -157,9 +157,9 @@ public class NightscoutUploadIntentService extends IntentService { DefaultHttpClient httpclient = new DefaultHttpClient(params); - postDeviceStatus(baseURL, httpclient); - for (PumpStatusEvent record : records) { + postDeviceStatus(record, baseURL, httpclient); + String postURL = baseURL + "entries"; Log.i(TAG, "postURL: " + postURL); @@ -229,24 +229,24 @@ public class NightscoutUploadIntentService extends IntentService { } } - private void postDeviceStatus(String baseURL, DefaultHttpClient httpclient) throws Exception { + private void postDeviceStatus(PumpStatusEvent record, String baseURL, DefaultHttpClient httpclient) throws Exception { String devicestatusURL = baseURL + "devicestatus"; Log.i(TAG, "devicestatusURL: " + devicestatusURL); JSONObject json = new JSONObject(); json.put("uploaderBattery", MainActivity.batLevel); - json.put("device", MainActivity.pumpStatusRecord.getDeviceName()); + json.put("device", record.getDeviceName()); JSONObject pumpInfo = new JSONObject(); - pumpInfo.put("clock", ISO8601_DATE_FORMAT.format(MainActivity.pumpStatusRecord.pumpDate)); - pumpInfo.put("reservoir", MainActivity.pumpStatusRecord.reservoirAmount); + pumpInfo.put("clock", ISO8601_DATE_FORMAT.format(record.getPumpDate())); + pumpInfo.put("reservoir", record.getReservoirAmount()); JSONObject iob = new JSONObject(); - iob.put("timestamp", MainActivity.pumpStatusRecord.pumpDate); - iob.put("bolusiob", MainActivity.pumpStatusRecord.activeInsulin); + iob.put("timestamp", record.getPumpDate()); + iob.put("bolusiob", record.getActiveInsulin()); JSONObject battery = new JSONObject(); - battery.put("percent", MainActivity.pumpStatusRecord.batteryPercentage); + battery.put("percent", record.getBatteryPercentage()); pumpInfo.put("iob", iob); pumpInfo.put("battery", battery); -- GitLab