aboutsummaryrefslogtreecommitdiff
path: root/src/org/traccar/model
diff options
context:
space:
mode:
authorAnton Tananaev <anton.tananaev@gmail.com>2016-12-19 08:24:15 +1300
committerAnton Tananaev <anton.tananaev@gmail.com>2016-12-19 08:24:15 +1300
commit12e88e5cccc00eb5882124db9e0350ae568902e6 (patch)
tree8581901fde947d65ce5305fdbd1d9410dd1690a9 /src/org/traccar/model
parent54e738d3281a463a0ea3fcf2026c2464529a9b58 (diff)
downloadtraccar-server-12e88e5cccc00eb5882124db9e0350ae568902e6.tar.gz
traccar-server-12e88e5cccc00eb5882124db9e0350ae568902e6.tar.bz2
traccar-server-12e88e5cccc00eb5882124db9e0350ae568902e6.zip
Better network location support
Diffstat (limited to 'src/org/traccar/model')
-rw-r--r--src/org/traccar/model/CellTower.java63
-rw-r--r--src/org/traccar/model/Device.java1
-rw-r--r--src/org/traccar/model/Network.java110
-rw-r--r--src/org/traccar/model/Position.java20
-rw-r--r--src/org/traccar/model/WifiAccessPoint.java33
5 files changed, 227 insertions, 0 deletions
diff --git a/src/org/traccar/model/CellTower.java b/src/org/traccar/model/CellTower.java
new file mode 100644
index 000000000..3447bb921
--- /dev/null
+++ b/src/org/traccar/model/CellTower.java
@@ -0,0 +1,63 @@
+/*
+ * Copyright 2016 Anton Tananaev (anton@traccar.org)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.traccar.model;
+
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+
+@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL)
+public class CellTower {
+
+ private Integer cellId;
+
+ public Integer getCellId() {
+ return cellId;
+ }
+
+ public void setCellId(Integer cellId) {
+ this.cellId = cellId;
+ }
+
+ private Integer locationAreaCode;
+
+ public Integer getLocationAreaCode() {
+ return locationAreaCode;
+ }
+
+ public void setLocationAreaCode(Integer locationAreaCode) {
+ this.locationAreaCode = locationAreaCode;
+ }
+
+ private Integer mobileCountryCode;
+
+ public Integer getMobileCountryCode() {
+ return mobileCountryCode;
+ }
+
+ public void setMobileCountryCode(Integer mobileCountryCode) {
+ this.mobileCountryCode = mobileCountryCode;
+ }
+
+ private Integer mobileNetworkCode;
+
+ public Integer getMobileNetworkCode() {
+ return mobileNetworkCode;
+ }
+
+ public void setMobileNetworkCode(Integer mobileNetworkCode) {
+ this.mobileNetworkCode = mobileNetworkCode;
+ }
+
+}
diff --git a/src/org/traccar/model/Device.java b/src/org/traccar/model/Device.java
index e492a6120..22426c4db 100644
--- a/src/org/traccar/model/Device.java
+++ b/src/org/traccar/model/Device.java
@@ -141,4 +141,5 @@ public class Device extends Extensible {
public void setCategory(String category) {
this.category = category;
}
+
}
diff --git a/src/org/traccar/model/Network.java b/src/org/traccar/model/Network.java
new file mode 100644
index 000000000..9dd315640
--- /dev/null
+++ b/src/org/traccar/model/Network.java
@@ -0,0 +1,110 @@
+/*
+ * Copyright 2016 Anton Tananaev (anton@traccar.org)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.traccar.model;
+
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL)
+public class Network {
+
+ private Integer homeMobileCountryCode;
+
+ public Integer getHomeMobileCountryCode() {
+ return homeMobileCountryCode;
+ }
+
+ public void setHomeMobileCountryCode(Integer homeMobileCountryCode) {
+ this.homeMobileCountryCode = homeMobileCountryCode;
+ }
+
+ private Integer homeMobileNetworkCode;
+
+ public Integer getHomeMobileNetworkCode() {
+ return homeMobileNetworkCode;
+ }
+
+ public void setHomeMobileNetworkCode(Integer homeMobileNetworkCode) {
+ this.homeMobileNetworkCode = homeMobileNetworkCode;
+ }
+
+ private String radioType;
+
+ public String getRadioType() {
+ return radioType;
+ }
+
+ public void setRadioType(String radioType) {
+ this.radioType = radioType;
+ }
+
+ private String carrier;
+
+ public String getCarrier() {
+ return carrier;
+ }
+
+ public void setCarrier(String carrier) {
+ this.carrier = carrier;
+ }
+
+ private Boolean considerIp = false;
+
+ public Boolean getConsiderIp() {
+ return considerIp;
+ }
+
+ public void setConsiderIp(Boolean considerIp) {
+ this.considerIp = considerIp;
+ }
+
+ private Collection<CellTower> cellTowers;
+
+ public Collection<CellTower> getCellTowers() {
+ return cellTowers;
+ }
+
+ public void setCellTowers(Collection<CellTower> cellTowers) {
+ this.cellTowers = cellTowers;
+ }
+
+ public void addCellTower(CellTower cellTower) {
+ if (cellTowers == null) {
+ cellTowers = new ArrayList<>();
+ }
+ cellTowers.add(cellTower);
+ }
+
+ private Collection<WifiAccessPoint> wifiAccessPoints;
+
+ public Collection<WifiAccessPoint> getWifiAccessPoints() {
+ return wifiAccessPoints;
+ }
+
+ public void setWifiAccessPoints(Collection<WifiAccessPoint> wifiAccessPoints) {
+ this.wifiAccessPoints = wifiAccessPoints;
+ }
+
+ public void addWifiAccessPoint(WifiAccessPoint wifiAccessPoint) {
+ if (wifiAccessPoints == null) {
+ wifiAccessPoints = new ArrayList<>();
+ }
+ wifiAccessPoints.add(wifiAccessPoint);
+ }
+
+}
diff --git a/src/org/traccar/model/Position.java b/src/org/traccar/model/Position.java
index 8ca2588e2..19874ae91 100644
--- a/src/org/traccar/model/Position.java
+++ b/src/org/traccar/model/Position.java
@@ -248,4 +248,24 @@ public class Position extends Message {
this.address = address;
}
+ private double accuracy;
+
+ public double getAccuracy() {
+ return accuracy;
+ }
+
+ public void setAccuracy(double accuracy) {
+ this.accuracy = accuracy;
+ }
+
+ private Network network;
+
+ public Network getNetwork() {
+ return network;
+ }
+
+ public void setNetwork(Network network) {
+ this.network = network;
+ }
+
}
diff --git a/src/org/traccar/model/WifiAccessPoint.java b/src/org/traccar/model/WifiAccessPoint.java
new file mode 100644
index 000000000..e4a613e7c
--- /dev/null
+++ b/src/org/traccar/model/WifiAccessPoint.java
@@ -0,0 +1,33 @@
+/*
+ * Copyright 2016 Anton Tananaev (anton@traccar.org)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.traccar.model;
+
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+
+@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL)
+public class WifiAccessPoint {
+
+ private String macAddress;
+
+ public String getMacAddress() {
+ return macAddress;
+ }
+
+ public void setMacAddress(String macAddress) {
+ this.macAddress = macAddress;
+ }
+
+}