CacheableSecuredRedirectResponse.php in Drupal 9
Same filename and directory in other branches
Namespace
Drupal\Core\RoutingFile
core/lib/Drupal/Core/Routing/CacheableSecuredRedirectResponse.phpView source
<?php
namespace Drupal\Core\Routing;
use Drupal\Component\HttpFoundation\SecuredRedirectResponse;
use Drupal\Core\Cache\CacheableResponseInterface;
use Drupal\Core\Cache\CacheableResponseTrait;
use Symfony\Component\HttpFoundation\RedirectResponse;
/**
* Provides a common base class for cacheable safe redirects.
*/
abstract class CacheableSecuredRedirectResponse extends SecuredRedirectResponse implements CacheableResponseInterface {
use CacheableResponseTrait;
/**
* {@inheritdoc}
*/
protected function fromResponse(RedirectResponse $response) {
parent::fromResponse($response);
$metadata = $this
->getCacheableMetadata();
if ($response instanceof CacheableResponseInterface) {
$metadata
->addCacheableDependency($response
->getCacheableMetadata());
}
else {
$metadata
->setCacheMaxAge(0);
}
}
}
Classes
Name | Description |
---|---|
CacheableSecuredRedirectResponse | Provides a common base class for cacheable safe redirects. |