docs: public Map<String, String[]> initAdminTool() throws CmsRoleViolationException {
  
          Map<String, String[]> params = new HashMap<String, String[]>(getParameterMap());
          // initialize
          getToolManager().initParams(this);
  
          // adjust parameters if called as default
          if (!useNewStyle()) {
              params.put(PARAM_STYLE, new String[] {CmsToolDialog.STYLE_NEW});
              setParamStyle(CmsToolDialog.STYLE_NEW);
          }
  
          try {
              // a dialog just to access the close link parameter
              CmsDialog wp = (CmsDialog)this;
              // set close link
              if (CmsStringUtil.isEmptyOrWhitespaceOnly(wp.getParamCloseLink())) {
                  if (!getToolManager().getBaseToolPath(this).equals(getToolManager().getCurrentToolPath(this))) {
                      Map<String, String[]> args = getToolManager().resolveAdminTool(
                          getParamRoot(),
                          getParentPath()).getHandler().getParameters(wp);
                      wp.setParamCloseLink(CmsToolManager.linkForToolPath(getJsp(), getParentPath(), args));
                      params.put(CmsDialog.PARAM_CLOSELINK, new String[] {wp.getParamCloseLink()});
                  }
              }
          } catch (Exception e) {
              // ignore
          }
  
          if (!getToolManager().getCurrentTool(this).getHandler().isEnabled(this)) {
              throw new CmsRoleViolationException(Messages.get().container(Messages.ERR_ADMIN_INSUFFICIENT_RIGHTS_0));
          }
  
          return params;
      }