code: private function _checkCache(\stdClass $oCache)
      {
          /**
           * cache-control http
           */
  
          $sHearderValidity = false;
          $sHeader = "Cache-Control:";
  
          if (isset($oCache->visibility) && ($oCache->visibility = 'public' || $oCache->visibility = 'private')) {
  
              $sHearderValidity = true;
              $sHeader .= " ".$oCache->visibility.",";
          }
  
          if (isset($oCache->max_age)) {
  
              $sHearderValidity = true;
              $sHeader .= " maxage=".$oCache->max_age.",";
          }
  
          if (isset($oCache->must_revalidate) && $oCache->must_revalidate === true) {
  
              $sHearderValidity = true;
              $sHeader .= " must-revalidate,";
          }
  
          if ($sHearderValidity === true) {
  
              $sHeader = substr($sHeader, 0, -1);
  
              if (!headers_sent()) { header($sHeader); }
          }
  
          /**
           * ETag http
           */
  
          if (isset($oCache->ETag)) { header("ETag: \"".$oCache->ETag."\""); }
  
          /**
           * expire
           */
  
          if (isset($oCache->max_age)) { if (!headers_sent()) { header('Expires: '.gmdate('D, d M Y H:i:s', time() + $oCache->max_age).' GMT'); } }
  
          /**
           * Last-Modified http
           */
  
          if (isset($oCache->last_modified)) { if (!headers_sent()) { header('Last-Modified: '.gmdate('D, d M Y H:i:s', time() + $oCache->last_modified).' GMT'); } }
  
          /**
           * vary http
           */
  
          if (isset($oCache->vary)) { header('Vary: '.$oCache->vary); }
      }
docs: check the cache - just if it's not yet defined
  
  @access private
  @param  \stdClass $oCache object of cache configuration
  @return void