Map<String, String> dependencies = new HashMap<String, String>(); for (CmsRole role : roles) { for (CmsRole child : role.getChildren(true)) { String deps = dependencies.get(child.getRoleName()); if (deps == null) { deps = ""; deps += ", "; deps += role.getName(locale); dependencies.put(child.getRoleName(), deps); CmsListItem item = getList().newItem(role.getGroupName()); item.set(LIST_COLUMN_NAME, role.getName(locale)); String dependency = dependencies.get(role.getRoleName()); if (dependency == null) { dependency = ""; item.set(LIST_COLUMN_GROUP_NAME, role.getGroupName()); ret.add(item);
/** * Enumeration class for the mode parameter in the * {@link CmsDriverManager#readChangedResourcesInsideProject(CmsDbContext, CmsUUID, CmsReadChangedProjectResourceMode)} * method.<p> */ private static class CmsReadChangedProjectResourceMode { /** * Default constructor.<p> */ protected CmsReadChangedProjectResourceMode() { // noop } }
/** * Returns the role for the given group.<p> * * @param group a group to check for role representation * * @return the role for the given group */ public static CmsRole valueOf(CmsGroup group) { // check groups for internal representing the roles if (group.isRole()) { CmsRole role = valueOfGroupName(group.getName()); if (role != null) { return role; } } // check virtual groups mapping a role if (group.isVirtual()) { int index = (group.getFlags() & (I_CmsPrincipal.FLAG_CORE_LIMIT - 1)); index = index / (I_CmsPrincipal.FLAG_GROUP_VIRTUAL * 2); CmsRole role = (CmsRole)getSystemRoles().get(index); return role.forOrgUnit(group.getOuFqn()); } return null; }
/** * Returns the fully qualified name of this role.<p> * * @return the fqn of this role */ public String getFqn() { if (getOuFqn() == null) { return getRoleName(); } return getOuFqn() + getRoleName(); }
/** * Returns the flags needed for a group to emulate this role.<p> * * @return the flags needed for a group to emulate this role */ public int getVirtualGroupFlags() { int flags = I_CmsPrincipal.FLAG_GROUP_VIRTUAL; flags += I_CmsPrincipal.FLAG_GROUP_VIRTUAL * 2 * getSystemRoles().indexOf(forOrgUnit(null)); return flags; }
/** * Returns a set of all roles group names.<p> * * @return a set of all roles group names */ private Set getAllGroupNames() { Set distinctGroups = new HashSet(); // add role group name distinctGroups.add(getGroupName()); if (getParentRole() != null) { // add parent roles group names distinctGroups.addAll(getParentRole().getAllGroupNames()); } return distinctGroups; }
principalId = getCms().readUser(principal).getId(); } else if (acePrincipalId.startsWith(CmsRole.PRINCIPAL_ROLE)) { principalId = CmsRole.valueOfRoleName(principal).getId(); } else if (acePrincipalId.equalsIgnoreCase(CmsAccessControlEntry.PRINCIPAL_ALL_OTHERS_NAME)) { principalId = CmsAccessControlEntry.PRINCIPAL_ALL_OTHERS_ID;
if (principalType.equalsIgnoreCase(CmsRole.PRINCIPAL_ROLE)) { CmsRole role = CmsRole.valueOfRoleName(principalName); if (role == null) { Iterator<CmsRole> it = CmsRole.getSystemRoles().iterator(); while (it.hasNext()) { role = it.next(); if (role.getName(getLocale()).equalsIgnoreCase(principalName)) { principalName = role.getRoleName(); break;
CmsRole role = CmsRole.valueOfRoleName(roleName); try { OpenCms.getOrgUnitManager().readOrganizationalUnit(getCms(), role.getOuFqn()); Map<String, Map<String, String>> membership = m_membership.get(role.getOuFqn()); if (membership == null) { membership = new HashMap<String, Map<String, String>>(); m_membership.put(role.getOuFqn(), membership); membership.put(I_CmsPrincipal.PRINCIPAL_USER, roles); roles.put(m_user.getName(), role.getFqn()); } catch (Throwable e) { getReport().println(
addUserToGroup(dbc, username, CmsRole.valueOf(group).getGroupName(), true); return; CmsRole role = CmsRole.valueOf(group); List children = role.getChildren(true); Iterator itUserGroups = getGroupsOfUser( dbc, while (itUserGroups.hasNext()) { CmsGroup roleGroup = (CmsGroup)itUserGroups.next(); if (children.contains(CmsRole.valueOf(roleGroup))) { CmsRole wpUser = CmsRole.WORKPLACE_USER.forOrgUnit(group.getOuFqn()); if (!role.equals(wpUser) && !role.getChildren(true).contains(wpUser) && !m_securityManager.hasRole(dbc, user, wpUser)) { addUserToGroup(dbc, username, wpUser.getGroupName(), true);
/** * @see java.lang.Object#toString() */ @Override public String toString() { StringBuffer result = new StringBuffer(); result.append("["); result.append(this.getClass().getName()); result.append(", role: "); result.append(getRoleName()); result.append(", org unit: "); result.append(getOuFqn()); result.append(", group: "); result.append(getGroupName()); result.append("]"); return result.toString(); }
/** * Returns the role for the given role name.<p> * * @param roleName a role name to check for role representation * * @return the role for the given role name */ public static CmsRole valueOfRoleName(String roleName) { String roleOu = CmsOrganizationalUnit.getParentFqn(roleName); Iterator it = SYSTEM_ROLES.iterator(); while (it.hasNext()) { CmsRole role = (CmsRole)it.next(); // direct check if (roleName.equals(role.getRoleName())) { return role.forOrgUnit(roleOu); } if (!role.isOrganizationalUnitIndependent()) { // the role name does not start with "/", but the given role fqn does if (roleName.endsWith(CmsOrganizationalUnit.SEPARATOR + role.getRoleName())) { return role.forOrgUnit(roleOu); } } } return null; }
Integer flags = new Integer(role.getVirtualGroupFlags()); roleFlags.add(flags); Iterator<CmsRole> itChildRoles = role.getChildren(true).iterator(); while (itChildRoles.hasNext()) { CmsRole child = itChildRoles.next(); flags = new Integer(child.getVirtualGroupFlags()); roleFlags.add(flags); Iterator<CmsGroup> it = getGroups(dbc, readOrganizationalUnit(dbc, role.getOuFqn()), false, false).iterator(); while (it.hasNext()) { CmsGroup group = it.next(); if (group.isVirtual()) { CmsRole r = CmsRole.valueOf(group); if (roleFlags.contains(new Integer(r.getVirtualGroupFlags()))) { groups.add(group);
CmsRole role = CmsRole.valueOfRoleName(principal); if (role == null) { role = CmsRole.valueOfGroupName(principal); principalId = role.getId();
/** * @see org.opencms.workplace.list.A_CmsListDialog#validateParamaters() */ @Override protected void validateParamaters() throws Exception { // test the needed parameters OpenCms.getRoleManager().checkRole(getCms(), CmsRole.ACCOUNT_MANAGER.forOrgUnit(getParamOufqn())); CmsRole.valueOf(getCms().readGroup(getParamRole())).getRoleName(); }
} else if (CmsRole.hasPrefix(key)) { CmsRole role = CmsRole.valueOfRoleName(principal); if (role == null) { role = CmsRole.valueOfGroupName(principal); role.forOrgUnit(cms.getRequestContext().getCurrentUser().getOuFqn()));
/** * Returns a list of all sub roles.<p> * * @param recursive if not set just direct children are returned * * @return all sub roles as a list of {@link CmsRole} objects */ public List getChildren(boolean recursive) { List children = new ArrayList(); Iterator itChildren = m_children.iterator(); while (itChildren.hasNext()) { CmsRole child = (CmsRole)itChildren.next(); if (child.isOrganizationalUnitIndependent()) { child = child.forOrgUnit(null); } else { child = child.forOrgUnit(m_ouFqn); } children.add(child); if (recursive) { children.addAll(child.getChildren(true)); } } return children; }
List<CmsUser> roleUsers = OpenCms.getRoleManager().getUsersOfRole( getCms(), CmsRole.valueOfGroupName(itRoles.next()).forOrgUnit(getParamOufqn()), true, false);
/** * Returns the localized name of the role object.<p> * * @return the localized name of the role object */ public String getName() { return m_role.getName(getCms().getRequestContext().getLocale()); }
/** * @see org.opencms.workplace.CmsWidgetDialog#validateParamaters() */ @Override protected void validateParamaters() throws Exception { // test the needed parameters OpenCms.getRoleManager().checkRole(getCms(), CmsRole.ACCOUNT_MANAGER.forOrgUnit(getParamOufqn())); CmsRole.valueOf(getCms().readGroup(getParamRole())).getGroupName(); } }