aboutsummaryrefslogtreecommitdiff
path: root/src/org/traccar/model/Position.java
diff options
context:
space:
mode:
authorAnton Tananaev <anton.tananaev@gmail.com>2015-04-29 13:41:15 +1200
committerAnton Tananaev <anton.tananaev@gmail.com>2015-04-29 13:41:15 +1200
commitf7198adaf371e08a72a837d417b29531c117c6ba (patch)
tree853fb51b64cd00aaa6e53d4e510bbf69859e7765 /src/org/traccar/model/Position.java
parentcb0a3831c2d89a22e9f3b68d3ee17f6e2abdd424 (diff)
downloadtrackermap-server-f7198adaf371e08a72a837d417b29531c117c6ba.tar.gz
trackermap-server-f7198adaf371e08a72a837d417b29531c117c6ba.tar.bz2
trackermap-server-f7198adaf371e08a72a837d417b29531c117c6ba.zip
Store other data in position
Diffstat (limited to 'src/org/traccar/model/Position.java')
-rw-r--r--src/org/traccar/model/Position.java20
1 files changed, 17 insertions, 3 deletions
diff --git a/src/org/traccar/model/Position.java b/src/org/traccar/model/Position.java
index 92d5bbe5e..bfee94c1b 100644
--- a/src/org/traccar/model/Position.java
+++ b/src/org/traccar/model/Position.java
@@ -18,6 +18,8 @@ package org.traccar.model;
import java.sql.ResultSet;
import java.text.ParseException;
import java.util.Date;
+import java.util.LinkedHashMap;
+import java.util.Map;
import javax.json.Json;
import javax.json.JsonObject;
import javax.json.JsonObjectBuilder;
@@ -30,6 +32,10 @@ public class Position implements Convertable {
public long getId() { return id; }
public void setId(long id) { this.id = id; }
+ private String protocol;
+ public String getProtocol() { return protocol; }
+ public void setProtocol(String protocol) { this.protocol = protocol; }
+
private long deviceId;
public long getDeviceId() { return deviceId; }
public void setDeviceId(long deviceId) { this.deviceId = deviceId; }
@@ -79,14 +85,21 @@ public class Position implements Convertable {
public String getAddress() { return address; }
public void setAddress(String address) { this.address = address; }
- private String extendedInfo;
- public String getExtendedInfo() { return extendedInfo; }
- public void setExtendedInfo(String extendedInfo) { this.extendedInfo = extendedInfo; }
+ private final Map<String, Object> other = new LinkedHashMap<String, Object>();
+ public void set(String key, Object value) {
+ if (value != null && (!(value instanceof String) || !((String) value).isEmpty())) {
+ other.put(key, value);
+ }
+ }
+ public String getOther() {
+ return MiscFormatter.toXmlString(other);
+ }
@Override
public JsonObject toJson() {
JsonObjectBuilder json = Json.createObjectBuilder();
json.add("id", id);
+ json.add("protocol", protocol);
json.add("deviceId", deviceId);
json.add("serverTime", ObjectConverter.dateFormat.format(serverTime));
json.add("deviceTime", ObjectConverter.dateFormat.format(deviceTime));
@@ -105,6 +118,7 @@ public class Position implements Convertable {
@Override
public void fromJson(JsonObject json) throws ParseException {
id = json.getJsonNumber("id").longValue();
+ protocol = json.getString("protocol");
deviceId = json.getJsonNumber("deviceId").longValue();
serverTime = ObjectConverter.dateFormat.parse(json.getString("serverTime"));
deviceTime = ObjectConverter.dateFormat.parse(json.getString("deviceTime"));