1234567891011121314151617181920212223242526272829303132 |
- <?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);
- }
- }
- }
|