docs: public void importUserRole(String roleName) {
  
          if ((m_throwable != null) || (m_user == null)) {
              return;
          }
          try {
              CmsRole role = CmsRole.valueOfRoleName(roleName);
              try {
                  // check if the organizational unit exists
                  OpenCms.getOrgUnitManager().readOrganizationalUnit(getCms(), role.getOuFqn());
                  // set the user role
                  OpenCms.getRoleManager().addUserToRole(getCms(), role, m_user.getName());
                  return;
              } catch (CmsDbEntryNotFoundException e) {
                  // organizational unit does not exist
              }
              // remember the user and role for later
              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);
              }
              Map<String, String> roles = membership.get(I_CmsPrincipal.PRINCIPAL_USER);
              if (roles == null) {
                  roles = new HashMap<String, String>();
                  membership.put(I_CmsPrincipal.PRINCIPAL_USER, roles);
              }
              roles.put(m_user.getName(), role.getFqn());
          } catch (Throwable e) {
              getReport().println(
                  Messages.get().container(Messages.RPT_USER_COULDNT_BE_ADDED_TO_ROLE_2, m_user.getName(), roleName),
                  I_CmsReport.FORMAT_WARNING);
              if (LOG.isDebugEnabled()) {
                  LOG.debug(e.getLocalizedMessage(), e);
              }
          }
      }