package info.nightscout.androidaps.plugins.NSClientInternal.data; import org.json.JSONException; import org.json.JSONObject; import java.util.Date; public class NSTreatment { private JSONObject data; private String action = null; // "update", "remove" or null (add) public NSTreatment(JSONObject obj) { this.data = obj; this.action = getStringOrNull("action"); this.data.remove("action"); } private String getStringOrNull(String key) { String ret = null; if (data.has(key)) { try { ret = data.getString(key); } catch (JSONException e) { e.printStackTrace(); } } return ret; }; private Double getDoubleOrNull(String key) { Double ret = null; if (data.has(key)) { try { ret = data.getDouble(key); } catch (JSONException e) { e.printStackTrace(); } } return ret; }; private Integer getIntegerOrNull(String key) { Integer ret = null; if (data.has(key)) { try { ret = data.getInt(key); } catch (JSONException e) { e.printStackTrace(); } } return ret; }; private Long getLongOrNull(String key) { Long ret = null; if (data.has(key)) { try { ret = data.getLong(key); } catch (JSONException e) { e.printStackTrace(); } } return ret; }; private Date getDateOrNull(String key) { Date ret = null; if (data.has(key)) { try { ret = new Date(data.getString(key)); } catch (JSONException e) { e.printStackTrace(); } } return ret; }; public String getAction() { return action; } public JSONObject getData() { return data; } public String get_id() { return getStringOrNull("_id"); } public String getEnteredBy() { return getStringOrNull("enteredBy"); } public String getEventType() { return getStringOrNull("eventType"); } public Integer getHapp_id() { return getIntegerOrNull("happ_id"); } public Integer getDuration() { return getIntegerOrNull("duration"); } public Integer getMgdl() { return getIntegerOrNull("mgdl"); } public Double getAbsolute() { return getDoubleOrNull("absolute"); } public Long getMills() { return getLongOrNull("mills"); } public Date getCreated_at() { return getDateOrNull("created_at"); } }