aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/main/java/org/traccar/api/security/PermissionsService.java4
-rw-r--r--src/main/java/org/traccar/storage/Storage.java12
2 files changed, 3 insertions, 13 deletions
diff --git a/src/main/java/org/traccar/api/security/PermissionsService.java b/src/main/java/org/traccar/api/security/PermissionsService.java
index f39ded2b7..ea7a9d572 100644
--- a/src/main/java/org/traccar/api/security/PermissionsService.java
+++ b/src/main/java/org/traccar/api/security/PermissionsService.java
@@ -100,7 +100,9 @@ public class PermissionsService {
} else if (clazz.equals(Device.class)) {
denied = getServer().getDeviceReadonly() || getUser(userId).getDeviceReadonly();
if (addition) {
- int deviceCount = storage.getPermissions(User.class, userId, Device.class).size();
+ int deviceCount = storage.getObjects(Device.class, new Request(
+ new Columns.Include("id"),
+ new Condition.Permission(User.class, userId, Device.class))).size();
denied = deviceCount >= getUser(userId).getDeviceLimit();
}
} else if (clazz.equals(Command.class)) {
diff --git a/src/main/java/org/traccar/storage/Storage.java b/src/main/java/org/traccar/storage/Storage.java
index 62dba0165..55f5c22c0 100644
--- a/src/main/java/org/traccar/storage/Storage.java
+++ b/src/main/java/org/traccar/storage/Storage.java
@@ -45,18 +45,6 @@ public abstract class Storage {
return getPermissions(ownerClass, 0, propertyClass, 0);
}
- public List<Permission> getPermissions(
- Class<? extends BaseModel> ownerClass, long ownerId,
- Class<? extends BaseModel> propertyClass) throws StorageException {
- return getPermissions(ownerClass, ownerId, propertyClass, 0);
- }
-
- public List<Permission> getPermissions(
- Class<? extends BaseModel> ownerClass,
- Class<? extends BaseModel> propertyClass, long propertyId) throws StorageException {
- return getPermissions(ownerClass, 0, propertyClass, propertyId);
- }
-
public <T> T getObject(Class<T> clazz, Request request) throws StorageException {
var objects = getObjects(clazz, request);
return objects.isEmpty() ? null : objects.get(0);