docs: private String getIconPath(CmsObject cms, CmsUser user, IconSize size) {
  
          String userIconPath = (String)user.getAdditionalInfo(USER_IMAGE_INFO);
          if (CmsStringUtil.isNotEmptyOrWhitespaceOnly(userIconPath)) {
              userIconPath += size.equals(IconSize.Big)
              ? ""
              : "?__scale=h:" + size.getSize() + ",w:" + size.getSize() + ",t:2";
              return OpenCms.getLinkManager().substituteLinkForRootPath(cms, userIconPath);
          }
  
          boolean isAdmin = OpenCms.getRoleManager().hasRole(cms, user.getName(), CmsRole.ADMINISTRATOR);
          String name = user.getName() + Boolean.toString(isAdmin);
          String rfsName = toRfsName(name, size);
          String path = toPath(name, size);
          if (!m_cache.hasCacheContent(rfsName)) {
  
              BufferedImage icon = m_renderer.render(name, isAdmin, size.getSize());
              try {
                  m_cache.saveCacheFile(rfsName, getImageBytes(icon));
              } catch (Exception e) {
                  LOG.error(e.getLocalizedMessage(), e);
              }
          }
          return path;
      }