package com.eveningoutpost.dexdrip.Services; import java.util.Date; import com.mongodb.BasicDBObject; /** * Created by John Costik on 6/7/14. */ public class TransmitterRawData { private long _id; public String Id; public int TransmissionId; public String TransmitterId; public int RawValue; public int FilteredValue; public int BatteryLife; public int ReceivedSignalStrength; public long CaptureDateTime; public int Uploaded; public int UploadAttempts; public int UploaderBatteryLife; // When sending set this value to the relative time... // The time between the capture and now... public long RelativeTime; public int getTransmissionId() { return TransmissionId; } public void setTransmissionId(int transmissionId) { TransmissionId = transmissionId; } public int getUploaded() { return Uploaded; } public void setUploaded(int uploaded) { Uploaded = uploaded; } public int getUploadAttempts() { return UploadAttempts; } public void setUploadAttempts(int uploadAttempts) { UploadAttempts = uploadAttempts; } public int getUploaderBatteryLife() { return UploaderBatteryLife; } public void setUploaderBatteryLife(int uploaderBatteryLife) { UploaderBatteryLife = uploaderBatteryLife; } public int getBatteryLife() { return BatteryLife; } public void setBatteryLife(int batteryLife) { BatteryLife = batteryLife; } public int getReceivedSignalStrength() { return ReceivedSignalStrength; } public void setReceivedSignalStrength(int receivedSignalStrength) { ReceivedSignalStrength = receivedSignalStrength; } public String getTransmitterId() { return TransmitterId; } public void setTransmitterId(String transmitterId) { TransmitterId = transmitterId; } public int getRawValue() { return RawValue; } public void setRawValue(int rawValue) { RawValue = rawValue; } public int getFilteredValue() { return FilteredValue; } public void setFilteredValue(int filteredValue) { FilteredValue = filteredValue; } public long getCaptureDateTime() { return CaptureDateTime; } public void setCaptureDateTime(long captureDateTime) { CaptureDateTime = captureDateTime; } public long get_id() { return _id; } public void set_id(long _id) { this._id = _id; } private Long getRelativeTime() { return RelativeTime; } public TransmitterRawData(){ } /* public TransmitterRawData(String id, String raw, String filter, String battery, String rssi, int uploaderBattery){ RawValue = Integer.parseInt(raw); FilteredValue = Integer.parseInt(filter); TransmitterId = id; BatteryLife = Integer.parseInt(battery); ReceivedSignalStrength = Integer.parseInt(rssi); CaptureDateTime = new Date().getTime(); UploaderBatteryLife = uploaderBattery; Uploaded = 0; UploadAttempts = 1; } public TransmitterRawData(byte[] buffer, int len, Context context){ StringBuilder toParse = new StringBuilder(); for (int i = 0; i < len; ++i) { toParse.append((char) buffer[i]); } String[] parsed = toParse.toString().split("\\s+"); RawValue = Integer.parseInt(parsed[1]); FilteredValue = Integer.parseInt(parsed[2]); TransmitterId = parsed[0]; BatteryLife = Integer.parseInt(parsed[3]); ReceivedSignalStrength = Integer.parseInt(parsed[4]); TransmissionId = Integer.parseInt(parsed[5]); CaptureDateTime = new Date().getTime(); Intent i = context.registerReceiver(null, new IntentFilter(Intent.ACTION_BATTERY_CHANGED)); UploaderBatteryLife = i.getIntExtra(BatteryManager.EXTRA_LEVEL, -1); Uploaded = 0; UploadAttempts = 1; } */ public String toTableString() { String displayDt = new Date(getCaptureDateTime()).toLocaleString() + System.getProperty("line.separator"); String transmitterId = "Transmitter Id: " + getTransmitterId() + System.getProperty("line.separator"); String transmissionId = "Transmission Id: " + getTransmissionId() + System.getProperty("line.separator"); String rawVal = "Raw Value: " + getRawValue() + System.getProperty("line.separator"); String filterVal = "Filtered Value: " + getFilteredValue() + System.getProperty("line.separator"); String batteryVal = "Transmitter Battery: " + getBatteryLife() + " " + System.getProperty("line.separator"); String signalVal = "RSSI: " + getReceivedSignalStrength() + " " + System.getProperty("line.separator"); String uploadDeviceBatteryVal = "Uploader Battery: " + getUploaderBatteryLife() + " " + System.getProperty("line.separator"); String uploaded = "Uploaded: " + getUploaded() + " " + System.getProperty("line.separator"); String RelativeTime = "relateive time (seconds): " + getRelativeTime() / 1000 + " "+ System.getProperty("line.separator"); return displayDt + transmitterId + transmissionId + rawVal + filterVal + batteryVal + signalVal + uploadDeviceBatteryVal + uploaded + RelativeTime; } public BasicDBObject toDbObj(String DebugInfo) { BasicDBObject doc = new BasicDBObject("TransmissionId", TransmissionId). append("TransmitterId", TransmitterId). append("RawValue", RawValue). append("FilteredValue", FilteredValue). append("BatteryLife", BatteryLife). append("ReceivedSignalStrength", ReceivedSignalStrength). append("CaptureDateTime", CaptureDateTime). append("UploaderBatteryLife", UploaderBatteryLife). append("DebugInfo", DebugInfo); return doc; } public TransmitterRawData(BasicDBObject src) { TransmissionId = src.getInt("TransmissionId"); TransmitterId = src.getString("TransmitterId"); RawValue = src.getInt("RawValue"); FilteredValue = src.getInt("FilteredValue"); BatteryLife = src.getInt("BatteryLife"); ReceivedSignalStrength = src.getInt("ReceivedSignalStrength"); CaptureDateTime = src.getLong("CaptureDateTime"); UploaderBatteryLife = src.getInt("UploaderBatteryLife"); } }