TSK-398: optimized role initialization.
This commit is contained in:
parent
fd0bc96b9d
commit
68d8252fbf
|
|
@ -16,6 +16,7 @@ import java.util.Map;
|
||||||
import java.util.Properties;
|
import java.util.Properties;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.StringTokenizer;
|
import java.util.StringTokenizer;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import javax.sql.DataSource;
|
import javax.sql.DataSource;
|
||||||
|
|
||||||
|
|
@ -123,8 +124,9 @@ public class TaskanaEngineConfiguration {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initTaskanaRoles(Properties props, String rolesSeparator) {
|
private void initTaskanaRoles(Properties props, String rolesSeparator) {
|
||||||
List<String> validPropertyNames = Arrays.asList(TaskanaRole.USER.getPropertyName(),
|
List<String> validPropertyNames = Arrays.stream(TaskanaRole.values())
|
||||||
TaskanaRole.BUSINESS_ADMIN.getPropertyName(), TaskanaRole.ADMIN.getPropertyName());
|
.map(TaskanaRole::getPropertyName)
|
||||||
|
.collect(Collectors.toList());
|
||||||
for (Object obj : props.keySet()) {
|
for (Object obj : props.keySet()) {
|
||||||
String propertyName = ((String) obj);
|
String propertyName = ((String) obj);
|
||||||
if (validPropertyNames.contains(propertyName.toLowerCase().trim())) {
|
if (validPropertyNames.contains(propertyName.toLowerCase().trim())) {
|
||||||
|
|
@ -186,16 +188,8 @@ public class TaskanaEngineConfiguration {
|
||||||
|
|
||||||
private void ensureRoleMapIsFullyInitialized() {
|
private void ensureRoleMapIsFullyInitialized() {
|
||||||
// make sure that roleMap does not return null for any role
|
// make sure that roleMap does not return null for any role
|
||||||
if (!roleMap.containsKey(TaskanaRole.ADMIN)) {
|
Arrays.stream(TaskanaRole.values())
|
||||||
roleMap.put(TaskanaRole.ADMIN, new HashSet<>());
|
.forEach(role -> roleMap.putIfAbsent(role, new HashSet<>()));
|
||||||
}
|
|
||||||
if (!roleMap.containsKey(TaskanaRole.BUSINESS_ADMIN)) {
|
|
||||||
roleMap.put(TaskanaRole.BUSINESS_ADMIN, new HashSet<>());
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!roleMap.containsKey(TaskanaRole.USER)) {
|
|
||||||
roleMap.put(TaskanaRole.USER, new HashSet<>());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static DataSource createDefaultDataSource() {
|
public static DataSource createDefaultDataSource() {
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,7 @@ import acceptance.AbstractAccTest;
|
||||||
import pro.taskana.Workbasket;
|
import pro.taskana.Workbasket;
|
||||||
import pro.taskana.WorkbasketService;
|
import pro.taskana.WorkbasketService;
|
||||||
import pro.taskana.WorkbasketType;
|
import pro.taskana.WorkbasketType;
|
||||||
|
import pro.taskana.exceptions.DomainNotFoundException;
|
||||||
import pro.taskana.exceptions.InvalidArgumentException;
|
import pro.taskana.exceptions.InvalidArgumentException;
|
||||||
import pro.taskana.exceptions.InvalidWorkbasketException;
|
import pro.taskana.exceptions.InvalidWorkbasketException;
|
||||||
import pro.taskana.exceptions.NotAuthorizedException;
|
import pro.taskana.exceptions.NotAuthorizedException;
|
||||||
|
|
@ -137,7 +138,7 @@ public class DeleteWorkbasketAccTest extends AbstractAccTest {
|
||||||
@Test
|
@Test
|
||||||
public void testCreateAndDeleteWorkbasket()
|
public void testCreateAndDeleteWorkbasket()
|
||||||
throws SQLException, NotAuthorizedException, InvalidArgumentException, WorkbasketNotFoundException,
|
throws SQLException, NotAuthorizedException, InvalidArgumentException, WorkbasketNotFoundException,
|
||||||
InvalidWorkbasketException, WorkbasketAlreadyExistException {
|
InvalidWorkbasketException, WorkbasketAlreadyExistException, DomainNotFoundException {
|
||||||
WorkbasketService workbasketService = taskanaEngine.getWorkbasketService();
|
WorkbasketService workbasketService = taskanaEngine.getWorkbasketService();
|
||||||
int before = workbasketService.createWorkbasketQuery().domainIn("DOMAIN_A").list().size();
|
int before = workbasketService.createWorkbasketQuery().domainIn("DOMAIN_A").list().size();
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue