From 1ac93bf5a499914c60bbdfbfbfd96c73607da2be Mon Sep 17 00:00:00 2001 From: Wolfgang Hottgenroth Date: Mon, 11 Jun 2018 17:31:41 +0200 Subject: [PATCH] print data object as json --- .../de/hottis/smarthomelib/ADataObject.java | 29 ++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/src/main/java/de/hottis/smarthomelib/ADataObject.java b/src/main/java/de/hottis/smarthomelib/ADataObject.java index b1a609d..4545211 100644 --- a/src/main/java/de/hottis/smarthomelib/ADataObject.java +++ b/src/main/java/de/hottis/smarthomelib/ADataObject.java @@ -41,13 +41,40 @@ public abstract class ADataObject implements Serializable { public String toString() { StringBuffer sb = new StringBuffer(); - sb.append("<"); + sb.append("{\"name\":\""); + sb.append(name); + sb.append("\", \"ts\":\""); + sb.append(timestamp); + sb.append("Z\", \"values\":{"); + boolean first = true; + for (Map.Entry entry : values.entrySet()) { + if (! first) { + sb.append(", "); + } else { + first = false; + } + sb.append("\""); + sb.append(entry.getKey()); + sb.append("\":"); + Object value = entry.getValue(); + if (! (value instanceof Double)) { + sb.append("\""); + } + sb.append(value); + if (! (value instanceof Double)) { + sb.append("\""); + } + } + sb.append("}}"); +/* + sb.append("<"); sb.append(name); sb.append(", "); sb.append(timestamp); sb.append(", "); sb.append(values.toString()); sb.append(">"); +*/ return sb.toString(); } }