diff options
author | Anton Tananaev <anton@traccar.org> | 2022-06-25 14:24:08 -0700 |
---|---|---|
committer | Anton Tananaev <anton@traccar.org> | 2022-06-25 14:24:08 -0700 |
commit | bf0173eb4bac4ab86b43f101eb013051bfc40817 (patch) | |
tree | 166beb98c54799a62922762f70be9a9556bb01f0 /src/main/java/org/traccar/session/ConnectionManager.java | |
parent | 2fcffc5b55f59310d289a21d1ebc2ee6bf15bcd5 (diff) | |
download | trackermap-server-bf0173eb4bac4ab86b43f101eb013051bfc40817.tar.gz trackermap-server-bf0173eb4bac4ab86b43f101eb013051bfc40817.tar.bz2 trackermap-server-bf0173eb4bac4ab86b43f101eb013051bfc40817.zip |
Simplify broadcast calls
Diffstat (limited to 'src/main/java/org/traccar/session/ConnectionManager.java')
-rw-r--r-- | src/main/java/org/traccar/session/ConnectionManager.java | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/main/java/org/traccar/session/ConnectionManager.java b/src/main/java/org/traccar/session/ConnectionManager.java index 0e0ea1eb8..c2f602c11 100644 --- a/src/main/java/org/traccar/session/ConnectionManager.java +++ b/src/main/java/org/traccar/session/ConnectionManager.java @@ -285,7 +285,6 @@ public class ConnectionManager implements BroadcastInterface { } updateDevice(true, device); - broadcastService.updateDevice(true, device); } public DeviceState getDeviceState(long deviceId) { @@ -324,7 +323,9 @@ public class ConnectionManager implements BroadcastInterface { @Override public synchronized void updateDevice(boolean local, Device device) { - if (!local && Device.STATUS_ONLINE.equals(device.getStatus())) { + if (local) { + broadcastService.updateDevice(true, device); + } else if (Device.STATUS_ONLINE.equals(device.getStatus())) { timeouts.remove(device.getId()); removeDeviceSession(device.getId()); } @@ -339,6 +340,9 @@ public class ConnectionManager implements BroadcastInterface { @Override public synchronized void updatePosition(boolean local, Position position) { + if (local) { + broadcastService.updatePosition(true, position); + } for (long userId : deviceUsers.getOrDefault(position.getDeviceId(), Collections.emptySet())) { if (listeners.containsKey(userId)) { for (UpdateListener listener : listeners.get(userId)) { @@ -350,6 +354,9 @@ public class ConnectionManager implements BroadcastInterface { @Override public synchronized void updateEvent(boolean local, long userId, Event event) { + if (local) { + broadcastService.updateEvent(true, userId, event); + } if (listeners.containsKey(userId)) { for (UpdateListener listener : listeners.get(userId)) { listener.onUpdateEvent(event); |