/app/src/main/java/com/eveningoutpost/dexdrip/Services/TransmitterRawData.java

https://github.com/NightscoutFoundation/xDrip · Java · 219 lines · 144 code · 34 blank · 41 comment · 0 complexity · d8cf05977d16e97f8b3c2b5ef90fcc13 MD5 · raw file

  1. package com.eveningoutpost.dexdrip.Services;
  2. import java.util.Date;
  3. import com.eveningoutpost.dexdrip.Models.JoH;
  4. import com.google.gson.annotations.Expose;
  5. import com.mongodb.BasicDBObject;
  6. /**
  7. * Created by John Costik on 6/7/14.
  8. */
  9. public class TransmitterRawData {
  10. @Expose
  11. private long _id;
  12. @Expose
  13. public String Id;
  14. @Expose
  15. public int TransmissionId;
  16. @Expose
  17. public String TransmitterId;
  18. @Expose
  19. public int RawValue;
  20. @Expose
  21. public int FilteredValue;
  22. @Expose
  23. public int BatteryLife;
  24. @Expose
  25. public int ReceivedSignalStrength;
  26. @Expose
  27. public long CaptureDateTime;
  28. @Expose
  29. public int Uploaded;
  30. @Expose
  31. public int UploadAttempts;
  32. @Expose
  33. public int UploaderBatteryLife;
  34. // When sending set this value to the relative time...
  35. // The time between the capture and now...
  36. @Expose
  37. public long RelativeTime;
  38. @Expose
  39. public String GeoLocation;
  40. public int getTransmissionId() {
  41. return TransmissionId;
  42. }
  43. public void setTransmissionId(int transmissionId) {
  44. TransmissionId = transmissionId;
  45. }
  46. public int getUploaded() {
  47. return Uploaded;
  48. }
  49. public void setUploaded(int uploaded) {
  50. Uploaded = uploaded;
  51. }
  52. public int getUploadAttempts() {
  53. return UploadAttempts;
  54. }
  55. public void setUploadAttempts(int uploadAttempts) {
  56. UploadAttempts = uploadAttempts;
  57. }
  58. public int getUploaderBatteryLife() {
  59. return UploaderBatteryLife;
  60. }
  61. public void setUploaderBatteryLife(int uploaderBatteryLife) {
  62. UploaderBatteryLife = uploaderBatteryLife;
  63. }
  64. public int getBatteryLife() {
  65. return BatteryLife;
  66. }
  67. public void setBatteryLife(int batteryLife) {
  68. BatteryLife = batteryLife;
  69. }
  70. public int getReceivedSignalStrength() {
  71. return ReceivedSignalStrength;
  72. }
  73. public void setReceivedSignalStrength(int receivedSignalStrength) {
  74. ReceivedSignalStrength = receivedSignalStrength;
  75. }
  76. public String getTransmitterId() {
  77. return TransmitterId;
  78. }
  79. public void setTransmitterId(String transmitterId) {
  80. TransmitterId = transmitterId;
  81. }
  82. public int getRawValue() {
  83. return RawValue;
  84. }
  85. public void setRawValue(int rawValue) {
  86. RawValue = rawValue;
  87. }
  88. public int getFilteredValue() {
  89. return FilteredValue;
  90. }
  91. public void setFilteredValue(int filteredValue) {
  92. FilteredValue = filteredValue;
  93. }
  94. public long getCaptureDateTime() {
  95. return CaptureDateTime;
  96. }
  97. public void setCaptureDateTime(long captureDateTime) {
  98. CaptureDateTime = captureDateTime;
  99. }
  100. public long get_id() {
  101. return _id;
  102. }
  103. public void set_id(long _id) {
  104. this._id = _id;
  105. }
  106. private Long getRelativeTime() {
  107. return RelativeTime;
  108. }
  109. @Override
  110. public String toString() {
  111. return JoH.defaultGsonInstance().toJson(this);
  112. }
  113. /*
  114. public TransmitterRawData(String id, String raw, String filter, String battery, String rssi, int uploaderBattery){
  115. RawValue = Integer.parseInt(raw);
  116. FilteredValue = Integer.parseInt(filter);
  117. TransmitterId = id;
  118. BatteryLife = Integer.parseInt(battery);
  119. ReceivedSignalStrength = Integer.parseInt(rssi);
  120. CaptureDateTime = new Date().getTime();
  121. UploaderBatteryLife = uploaderBattery;
  122. Uploaded = 0;
  123. UploadAttempts = 1;
  124. }
  125. public TransmitterRawData(byte[] buffer, int len, Context context){
  126. StringBuilder toParse = new StringBuilder();
  127. for (int i = 0; i < len; ++i) {
  128. toParse.append((char) buffer[i]);
  129. }
  130. String[] parsed = toParse.toString().split("\\s+");
  131. RawValue = Integer.parseInt(parsed[1]);
  132. FilteredValue = Integer.parseInt(parsed[2]);
  133. TransmitterId = parsed[0];
  134. BatteryLife = Integer.parseInt(parsed[3]);
  135. ReceivedSignalStrength = Integer.parseInt(parsed[4]);
  136. TransmissionId = Integer.parseInt(parsed[5]);
  137. CaptureDateTime = new Date().getTime();
  138. Intent i = context.registerReceiver(null, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
  139. UploaderBatteryLife = i.getIntExtra(BatteryManager.EXTRA_LEVEL, -1);
  140. Uploaded = 0;
  141. UploadAttempts = 1;
  142. }
  143. */
  144. public String toTableString()
  145. {
  146. String displayDt = new Date(getCaptureDateTime()).toLocaleString() + System.getProperty("line.separator");
  147. String transmitterId = "Transmitter Id: " + getTransmitterId() + System.getProperty("line.separator");
  148. String transmissionId = "Transmission Id: " + getTransmissionId() + System.getProperty("line.separator");
  149. String rawVal = "Raw Value: " + getRawValue() + System.getProperty("line.separator");
  150. String filterVal = "Filtered Value: " + getFilteredValue() + System.getProperty("line.separator");
  151. String batteryVal = "Transmitter Battery: " + getBatteryLife() + " " + System.getProperty("line.separator");
  152. String signalVal = "RSSI: " + getReceivedSignalStrength() + " " + System.getProperty("line.separator");
  153. String uploadDeviceBatteryVal = "Uploader Battery: " + getUploaderBatteryLife() + " " + System.getProperty("line.separator");
  154. String uploaded = "Uploaded: " + getUploaded() + " " + System.getProperty("line.separator");
  155. String RelativeTime = "relateive time (seconds): " + getRelativeTime() / 1000 + " "+ System.getProperty("line.separator");
  156. return displayDt + transmitterId + transmissionId + rawVal + filterVal + batteryVal + signalVal + uploadDeviceBatteryVal + uploaded + RelativeTime;
  157. }
  158. public BasicDBObject toDbObj(String DebugInfo) {
  159. BasicDBObject doc = new BasicDBObject("TransmissionId", TransmissionId).
  160. append("TransmitterId", TransmitterId).
  161. append("RawValue", RawValue).
  162. append("FilteredValue", FilteredValue).
  163. append("BatteryLife", BatteryLife).
  164. append("ReceivedSignalStrength", ReceivedSignalStrength).
  165. append("CaptureDateTime", CaptureDateTime).
  166. append("UploaderBatteryLife", UploaderBatteryLife).
  167. append("DebugInfo", DebugInfo);
  168. return doc;
  169. }
  170. public TransmitterRawData(BasicDBObject src) {
  171. TransmissionId = src.getInt("TransmissionId");
  172. TransmitterId = src.getString("TransmitterId");
  173. RawValue = src.getInt("RawValue");
  174. FilteredValue = src.getInt("FilteredValue");
  175. BatteryLife = src.getInt("BatteryLife");
  176. ReceivedSignalStrength = src.getInt("ReceivedSignalStrength");
  177. CaptureDateTime = src.getLong("CaptureDateTime");
  178. UploaderBatteryLife = src.getInt("UploaderBatteryLife");
  179. }
  180. }