aboutsummaryrefslogtreecommitdiff
path: root/src/org/traccar/model/CellTower.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/org/traccar/model/CellTower.java')
-rw-r--r--src/org/traccar/model/CellTower.java42
1 files changed, 39 insertions, 3 deletions
diff --git a/src/org/traccar/model/CellTower.java b/src/org/traccar/model/CellTower.java
index 3447bb921..e572dfb10 100644
--- a/src/org/traccar/model/CellTower.java
+++ b/src/org/traccar/model/CellTower.java
@@ -16,17 +16,43 @@
package org.traccar.model;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import org.traccar.Context;
@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL)
public class CellTower {
- private Integer cellId;
+ public static CellTower from(int mcc, int mnc, int lac, long cid) {
+ CellTower cellTower = new CellTower();
+ cellTower.setMobileCountryCode(mcc);
+ cellTower.setMobileNetworkCode(mnc);
+ cellTower.setLocationAreaCode(lac);
+ cellTower.setCellId(cid);
+ return cellTower;
+ }
+
+ public static CellTower from(int mcc, int mnc, int lac, long cid, int rssi) {
+ CellTower cellTower = CellTower.from(mcc, mnc, lac, cid);
+ cellTower.setSignalStrength(rssi);
+ return cellTower;
+ }
+
+ public static CellTower fromLacCid(int lac, long cid) {
+ return from(
+ Context.getConfig().getInteger("location.mcc"),
+ Context.getConfig().getInteger("location.mnc"), lac, cid);
+ }
+
+ public static CellTower fromCidLac(long cid, int lac) {
+ return fromLacCid(lac, cid);
+ }
- public Integer getCellId() {
+ private Long cellId;
+
+ public Long getCellId() {
return cellId;
}
- public void setCellId(Integer cellId) {
+ public void setCellId(Long cellId) {
this.cellId = cellId;
}
@@ -60,4 +86,14 @@ public class CellTower {
this.mobileNetworkCode = mobileNetworkCode;
}
+ private Integer signalStrength;
+
+ public Integer getSignalStrength() {
+ return signalStrength;
+ }
+
+ public void setSignalStrength(Integer signalStrength) {
+ this.signalStrength = signalStrength;
+ }
+
}