code: public List<CmsRole> getRoles(CmsObject cms, String ouFqn, boolean includeSubOus) throws CmsException {
  
          CmsOrganizationalUnit ou = OpenCms.getOrgUnitManager().readOrganizationalUnit(cms, ouFqn);
          List<CmsGroup> groups = m_securityManager.getGroups(cms.getRequestContext(), ou, includeSubOus, true);
          List<CmsRole> roles = new ArrayList<CmsRole>(groups.size());
          Iterator<CmsGroup> itGroups = groups.iterator();
          while (itGroups.hasNext()) {
              CmsGroup group = itGroups.next();
              roles.add(CmsRole.valueOf(group));
          }
          return roles;
      }
docs: Returns all roles, in the given organizational unit.<p>
  
  @param cms the opencms context
  @param ouFqn the fully qualified name of the organizational unit of the role
  @param includeSubOus include roles of child organizational units
  
  @return a list of all <code>{@link CmsRole}</code> objects
  
  @throws CmsException if operation was not successful