docs: public static void parseLinks(CmsObject cms, List<CmsResource> parseables, I_CmsReport report) {
  
          int i = 0;
  
          sortParseableResources(parseables);
          for (CmsResource parsableRes : parseables) {
              String resName = cms.getSitePath(parsableRes);
  
              report.print(
                  org.opencms.report.Messages.get().container(
                      org.opencms.report.Messages.RPT_SUCCESSION_2,
                      String.valueOf(i + 1),
                      String.valueOf(parseables.size())),
                  I_CmsReport.FORMAT_NOTE);
  
              LOG.info("Rewriting parsable resource: " + resName);
              report.print(Messages.get().container(Messages.RPT_PARSE_LINKS_FOR_1, resName), I_CmsReport.FORMAT_NOTE);
              report.print(org.opencms.report.Messages.get().container(org.opencms.report.Messages.RPT_DOTS_0));
  
              try {
                  CmsFile file = cms.readFile(resName);
                  // make sure the date last modified is kept...
                  file.setDateLastModified(file.getDateLastModified());
                  // make sure the file is locked
                  CmsLock lock = cms.getLock(file);
                  if (lock.isUnlocked()) {
                      cms.lockResource(resName);
                  } else if (!lock.isDirectlyOwnedInProjectBy(cms)) {
                      cms.changeLock(resName);
                  }
                  // rewrite the file
                  cms.writeFile(file);
  
                  report.println(
                      org.opencms.report.Messages.get().container(org.opencms.report.Messages.RPT_OK_0),
                      I_CmsReport.FORMAT_OK);
              } catch (Throwable e) {
                  report.addWarning(e);
                  report.println(
                      org.opencms.report.Messages.get().container(org.opencms.report.Messages.RPT_FAILED_0),
                      I_CmsReport.FORMAT_ERROR);
                  if (LOG.isWarnEnabled()) {
                      LOG.warn(Messages.get().getBundle().key(Messages.LOG_IMPORTEXPORT_REWRITING_1, resName));
                      LOG.warn(e.getMessage(), e);
                  }
                  if (LOG.isDebugEnabled()) {
                      LOG.debug(e.getLocalizedMessage(), e);
                  }
              }
              i++;
          }
          cms.getRequestContext().removeAttribute(CmsLogEntry.ATTR_LOG_ENTRY);
      }