protected Set<Principal> calculateUserPrincipals() {
if (log.isDebugEnabled()) log.debug("Calculating principals for current user.");
Set<Principal> principals = new HashSet<Principal>();
if (userLogin != null) principals.add(new UserPrincipal(userLogin));
if (!isRootUser()) {
RolesManager rolesManager = SecurityServices.lookup().getRolesManager();
for (Role role : rolesManager.getAllRoles()) {
Principal rolePrincipal = null;
if (userRoleIds.contains(role.getName())) rolePrincipal = new RolePrincipal(role);