docs: public void touchResource(String resourcePath) throws Exception {
  
          CmsResource resource = m_cms.readResource(resourcePath);
          CmsLockActionRecord action = CmsLockUtil.ensureLock(m_cms, resource);
          try {
              OpenCms.getWorkplaceManager().flushMessageCache();
              // One important reason for touching resources via the shell is to write mapped values containing
              // localization macros to properties, so we flush the workplace messages immediately before the touch operation
              // in case an older version of the workplace messages (not containing the keys we need) has already been cached
              touchSingleResource(m_cms, resourcePath, System.currentTimeMillis(), true, true, true);
          } finally {
              if (action.getChange() == LockChange.locked) {
                  m_cms.unlockResource(resource);
              }
          }
      }