aboutsummaryrefslogtreecommitdiff
path: root/src/org/traccar/database/DeviceManager.java
diff options
context:
space:
mode:
authorAbyss777 <abyss@fox5.ru>2017-01-13 09:26:52 +0500
committerAbyss777 <abyss@fox5.ru>2017-01-16 13:44:54 +0500
commitcffbce4b3bc5ef817c4063a74f148a2a5986d58a (patch)
tree3eb18f009ec1a7ae5d806eed1a4af7b6a16840e2 /src/org/traccar/database/DeviceManager.java
parent3533a7c9007c4ef4f761ff4d959e396b65a7b140 (diff)
downloadtrackermap-server-cffbce4b3bc5ef817c4063a74f148a2a5986d58a.tar.gz
trackermap-server-cffbce4b3bc5ef817c4063a74f148a2a5986d58a.tar.bz2
trackermap-server-cffbce4b3bc5ef817c4063a74f148a2a5986d58a.zip
Initial manager implementation
Diffstat (limited to 'src/org/traccar/database/DeviceManager.java')
-rw-r--r--src/org/traccar/database/DeviceManager.java20
1 files changed, 19 insertions, 1 deletions
diff --git a/src/org/traccar/database/DeviceManager.java b/src/org/traccar/database/DeviceManager.java
index c70e67231..bcb3185ca 100644
--- a/src/org/traccar/database/DeviceManager.java
+++ b/src/org/traccar/database/DeviceManager.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2016 Anton Tananaev (anton@traccar.org)
+ * Copyright 2016 - 2017 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.
@@ -160,6 +160,15 @@ public class DeviceManager implements IdentityManager {
return devices;
}
+ public Collection<Device> getManagedDevices(long userId) throws SQLException {
+ Collection<Device> devices = new ArrayList<>();
+ devices.addAll(getDevices(userId));
+ for (long otherUserId : Context.getPermissionsManager().getUserPermissions(userId)) {
+ devices.addAll(getDevices(otherUserId));
+ }
+ return devices;
+ }
+
public void addDevice(Device device) throws SQLException {
dataManager.addDevice(device);
@@ -289,6 +298,15 @@ public class DeviceManager implements IdentityManager {
return groups;
}
+ public Collection<Group> getManagedGroups(long userId) throws SQLException {
+ Collection<Group> groups = new ArrayList<>();
+ groups.addAll(getGroups(userId));
+ for (long otherUserId : Context.getPermissionsManager().getUserPermissions(userId)) {
+ groups.addAll(getGroups(otherUserId));
+ }
+ return groups;
+ }
+
private void checkGroupCycles(Group group) {
Set<Long> groups = new HashSet<>();
while (group != null) {