mirror of
https://github.com/scm-manager/scm-manager.git
synced 2026-02-01 12:19:14 +01:00
merge with branch 1.x
This commit is contained in:
@@ -36,8 +36,10 @@ package sonia.scm.security;
|
||||
//~--- non-JDK imports --------------------------------------------------------
|
||||
|
||||
import com.github.legman.Subscribe;
|
||||
import com.google.common.base.Preconditions;
|
||||
|
||||
import com.google.common.base.Predicate;
|
||||
import com.google.common.base.Strings;
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import com.google.common.collect.ImmutableList.Builder;
|
||||
import com.google.inject.Inject;
|
||||
@@ -125,6 +127,7 @@ public class DefaultSecuritySystem implements SecuritySystem
|
||||
public StoredAssignedPermission addPermission(AssignedPermission permission)
|
||||
{
|
||||
assertIsAdmin();
|
||||
validatePermission(permission);
|
||||
|
||||
String id = store.put(permission);
|
||||
|
||||
@@ -234,6 +237,7 @@ public class DefaultSecuritySystem implements SecuritySystem
|
||||
public void modifyPermission(StoredAssignedPermission permission)
|
||||
{
|
||||
assertIsAdmin();
|
||||
validatePermission(permission);
|
||||
|
||||
synchronized (store)
|
||||
{
|
||||
@@ -425,6 +429,20 @@ public class DefaultSecuritySystem implements SecuritySystem
|
||||
availablePermissions = builder.build();
|
||||
}
|
||||
|
||||
/**
|
||||
* Method description
|
||||
*
|
||||
*
|
||||
* @param perm
|
||||
*/
|
||||
private void validatePermission(AssignedPermission perm)
|
||||
{
|
||||
Preconditions.checkArgument(!Strings.isNullOrEmpty(perm.getName()),
|
||||
"name is required");
|
||||
Preconditions.checkArgument(!Strings.isNullOrEmpty(perm.getPermission()),
|
||||
"permission is required");
|
||||
}
|
||||
|
||||
//~--- get methods ----------------------------------------------------------
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user