Skip to content

Commit

Permalink
Preciser role search #2
Browse files Browse the repository at this point in the history
  • Loading branch information
pavgra committed Aug 13, 2019
1 parent b6623bc commit 901832f
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 13 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ public void addSourceUserRole(CommonEntity commonEntity) {
final String roleName = getSourceRoleName(source.getSourceKey());
final RoleEntity role;
if (permissionManager.roleExists(roleName)) {
role = permissionManager.getRoleByNameAndSystemRole(roleName, true);
role = permissionManager.getRoleByName(roleName, true);
} else {
role = permissionManager.addRole(roleName, true);
}
Expand All @@ -99,7 +99,7 @@ private void dropSourceUserRole(CommonEntity commonEntity) {
Source source = (Source) commonEntity;
final String roleName = getSourceRoleName(source.getSourceKey());
if (permissionManager.roleExists(roleName)) {
RoleEntity role = permissionManager.getRoleByName(roleName);
RoleEntity role = permissionManager.getRoleByName(roleName, true);
permissionManager.removePermissionsFromTemplate(getReadPermissions(), source.getSourceKey());
permissionManager.removeRole(role.getId());
}
Expand Down
14 changes: 3 additions & 11 deletions src/main/java/org/ohdsi/webapi/shiro/PermissionManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ public String addUserToRole(String roleName, String login) {
Guard.checkNotEmpty(roleName);
Guard.checkNotEmpty(login);

RoleEntity role = this.getRoleByName(roleName);
RoleEntity role = this.getRoleByName(roleName, true);
UserEntity user = this.getUserByLogin(login);

UserRoleEntity userRole = this.addUser(user, role, null);
Expand All @@ -77,7 +77,7 @@ public void removeUserFromRole(String roleName, String login) {
if (roleName.equalsIgnoreCase(login))
throw new RuntimeException("Can't remove user from personal role");

RoleEntity role = this.getRoleByName(roleName);
RoleEntity role = this.getRoleByName(roleName, true);
UserEntity user = this.getUserByLogin(login);

UserRoleEntity userRole = this.userRoleRepository.findByUserAndRole(user, role);
Expand Down Expand Up @@ -337,15 +337,7 @@ private UserEntity getUserByLogin(final String login) {
return user;
}

public RoleEntity getRoleByName(String roleName) {
final RoleEntity roleEntity = this.roleRepository.findByName(roleName);
if (roleEntity == null)
throw new RuntimeException("Role doesn't exist");

return roleEntity;
}

public RoleEntity getRoleByNameAndSystemRole(String roleName, Boolean isSystemRole) {
public RoleEntity getRoleByName(String roleName, Boolean isSystemRole) {
final RoleEntity roleEntity = this.roleRepository.findByNameAndSystemRole(roleName, isSystemRole);
if (roleEntity == null)
throw new RuntimeException("Role doesn't exist");
Expand Down

0 comments on commit 901832f

Please sign in to comment.