docs: protected void initSessionInfo() {
  
          CmsResource editedResource = null;
          try {
              if (CmsStringUtil.isNotEmptyOrWhitespaceOnly(getParamResource())) {
                  editedResource = getCms().readResource(getParamResource());
              }
          } catch (CmsException e) {
              // ignore
          }
  
          CmsEditorSessionInfo info = null;
          if (editedResource != null) {
              HttpSession session = getSession();
              info = (CmsEditorSessionInfo)session.getAttribute(
                  CmsEditorSessionInfo.getEditorSessionInfoKey(editedResource));
              if (info == null) {
                  info = new CmsEditorSessionInfo(editedResource.getStructureId());
              }
              if (CmsStringUtil.isNotEmptyOrWhitespaceOnly(m_paramBackLink)) {
                  info.setBackLink(m_paramBackLink);
              }
              if (CmsStringUtil.isNotEmptyOrWhitespaceOnly(m_paramElementlanguage)) {
                  info.setElementLocale(CmsLocaleManager.getLocale(m_paramElementlanguage));
              }
              if (CmsStringUtil.isNotEmptyOrWhitespaceOnly(m_paramDirectedit)) {
                  info.setDirectEdit(Boolean.parseBoolean(m_paramDirectedit));
              }
              session.setAttribute(info.getEditorSessionInfoKey(), info);
          }
          m_editorSessionInfo = info;
      }