/* * Copyright (c) 2015 EMC Corporation * All Rights Reserved */ package models; import java.util.Collections; import java.util.List; import util.StringOption; import com.google.common.collect.Lists; import controllers.security.Security; public class Roles { public static String[] VDC_ROLES = { Security.SYSTEM_ADMIN, Security.SECURITY_ADMIN, Security.SYSTEM_AUDITOR, Security.SYSTEM_MONITOR }; public static String[] TENANT_ROLES = { Security.TENANT_ADMIN, Security.PROJECT_ADMIN, Security.TENANT_APPROVER }; public static String[] ALL_ROLES = { Security.SYSTEM_ADMIN, Security.SECURITY_ADMIN, Security.SYSTEM_AUDITOR, Security.SYSTEM_MONITOR, Security.TENANT_ADMIN, Security.PROJECT_ADMIN, Security.TENANT_APPROVER }; public static boolean isSecurityAdmin(String role) { return Security.SECURITY_ADMIN.equals(role); } public static boolean isSystemAdmin(String role) { return Security.SYSTEM_ADMIN.equals(role); } public static boolean isSystemAuditor(String role) { return Security.SYSTEM_AUDITOR.equals(role); } public static boolean isSystemMonitor(String role) { return Security.SYSTEM_MONITOR.equals(role); } public static boolean isTenantAdmin(String role) { return Security.TENANT_ADMIN.equals(role); } public static boolean isProjectAdmin(String role) { return Security.PROJECT_ADMIN.equals(role); } public static boolean isTenantApprover(String role) { return Security.TENANT_APPROVER.equals(role); } public static boolean isVdcRole(String role) { return isSecurityAdmin(role) || isSystemAdmin(role) || isSystemAuditor(role) || isSystemMonitor(role); } public static boolean isTenantRole(String role) { return isTenantAdmin(role) || isProjectAdmin(role) || isTenantApprover(role); } public static StringOption option(String type) { return new StringOption(type, getDisplayValue(type)); } public static List<StringOption> options(String... types) { List<StringOption> options = Lists.newArrayList(); for (String type : types) { options.add(option(type)); } Collections.sort(options); return options; } public static String getDisplayValue(String type) { return StringOption.getDisplayValue(type, "Role"); } }