docs: protected boolean canSendLastModifiedHeader(CmsResource resource, HttpServletRequest req, HttpServletResponse res) {
  
          // resource state must be unchanged
          if (resource.getState().isUnchanged()
              // the request must not have been send by a workplace user (we can't use "304 - not modified" in workplace
              && !CmsWorkplaceManager.isWorkplaceUser(req)
              // last modified header must match the time form the resource
              && CmsFlexController.isNotModifiedSince(req, resource.getDateLastModified())) {
              long now = System.currentTimeMillis();
              if ((resource.getDateReleased() < now) && (resource.getDateExpired() > now)) {
                  // resource is available and not expired
                  CmsFlexController.setDateExpiresHeader(res, resource.getDateExpired(), m_clientCacheMaxAge);
                  // set status 304 - not modified
                  res.setStatus(HttpServletResponse.SC_NOT_MODIFIED);
                  return true;
              }
          }
          return false;
      }