Symfony\Component\HttpKernel\HttpCache\HttpCache::fetch PHP Method

fetch() protected method

This methods is triggered when the cache missed or a reload is required.
protected fetch ( Request $request, boolean $catch = false ) : Response
$request Symfony\Component\HttpFoundation\Request A Request instance
$catch boolean whether to process exceptions
return Symfony\Component\HttpFoundation\Response A Response instance
    protected function fetch(Request $request, $catch = false)
    {
        $subRequest = clone $request;
        // send no head requests because we want content
        if ('HEAD' === $request->getMethod()) {
            $subRequest->setMethod('GET');
        }
        // avoid that the backend sends no content
        $subRequest->headers->remove('if_modified_since');
        $subRequest->headers->remove('if_none_match');
        $response = $this->forward($subRequest, $catch);
        if ($response->isCacheable()) {
            $this->store($request, $response);
        }
        return $response;
    }

Usage Example

 /**
  * Made public to allow event subscribers to do refresh operations.
  *
  * {@inheritDoc}
  */
 public function fetch(Request $request, $catch = false)
 {
     return parent::fetch($request, $catch);
 }