Rename master request to main request
This commit is contained in:
parent
7873574335
commit
1fc2a04e00
@ -36,11 +36,13 @@ FrameworkBundle
|
||||
* Deprecate the `framework.session.storage_id` configuration option, use the `framework.session.storage_factory_id` configuration option instead
|
||||
* Deprecate the `session` service and the `SessionInterface` alias, use the `\Symfony\Component\HttpFoundation\Request::getSession()` or the new `\Symfony\Component\HttpFoundation\RequestStack::getSession()` methods instead
|
||||
* Deprecate the `KernelTestCase::$container` property, use `KernelTestCase::getContainer()` instead
|
||||
* Rename the container parameter `profiler_listener.only_master_requests` to `profiler_listener.only_main_requests`
|
||||
|
||||
HttpFoundation
|
||||
--------------
|
||||
|
||||
* Deprecate the `NamespacedAttributeBag` class
|
||||
* Deprecate the `RequestStack::getMasterRequest()` method and add `getMainRequest()` as replacement
|
||||
|
||||
HttpKernel
|
||||
----------
|
||||
@ -49,6 +51,8 @@ HttpKernel
|
||||
* Deprecate `ArgumentMetadata::getAttribute()`, use `getAttributes()` instead
|
||||
* Mark the class `Symfony\Component\HttpKernel\EventListener\DebugHandlersListener` as internal
|
||||
* Deprecate returning a `ContainerBuilder` from `KernelInterface::registerContainerConfiguration()`
|
||||
* Deprecate `HttpKernelInterface::MASTER_REQUEST` and add `HttpKernelInterface::MAIN_REQUEST` as replacement
|
||||
* Deprecate `KernelEvent::isMasterRequest()` and add `isMainRequest()` as replacement
|
||||
|
||||
Messenger
|
||||
---------
|
||||
|
@ -89,6 +89,7 @@ HttpFoundation
|
||||
`BinaryFileResponse::create()` methods (use `__construct()` instead)
|
||||
* Not passing a `Closure` together with `FILTER_CALLBACK` to `ParameterBag::filter()` throws an `InvalidArgumentException`; wrap your filter in a closure instead.
|
||||
* Removed the `Request::HEADER_X_FORWARDED_ALL` constant, use either `Request::HEADER_X_FORWARDED_FOR | Request::HEADER_X_FORWARDED_HOST | Request::HEADER_X_FORWARDED_PORT | Request::HEADER_X_FORWARDED_PROTO` or `Request::HEADER_X_FORWARDED_AWS_ELB` or `Request::HEADER_X_FORWARDED_TRAEFIK`constants instead.
|
||||
* Rename `RequestStack::getMasterRequest()` to `getMainRequest()`
|
||||
|
||||
HttpKernel
|
||||
----------
|
||||
@ -98,6 +99,8 @@ HttpKernel
|
||||
* Make `WarmableInterface::warmUp()` return a list of classes or files to preload on PHP 7.4+
|
||||
* Remove support for `service:action` syntax to reference controllers. Use `serviceOrFqcn::method` instead.
|
||||
* Remove support for returning a `ContainerBuilder` from `KernelInterface::registerContainerConfiguration()`
|
||||
* Rename `HttpKernelInterface::MASTER_REQUEST` to `MAIN_REQUEST`
|
||||
* Rename `KernelEvent::isMasterRequest()` to `isMainRequest()`
|
||||
|
||||
Inflector
|
||||
---------
|
||||
|
@ -36,7 +36,7 @@ class ChromePhpHandler extends BaseChromePhpHandler
|
||||
*/
|
||||
public function onKernelResponse(ResponseEvent $event)
|
||||
{
|
||||
if (!$event->isMasterRequest()) {
|
||||
if (!$event->isMainRequest()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -65,7 +65,7 @@ class HttpCodeActivationStrategy extends ErrorLevelActivationStrategy implements
|
||||
$isActivated
|
||||
&& isset($record['context']['exception'])
|
||||
&& $record['context']['exception'] instanceof HttpException
|
||||
&& ($request = $this->requestStack->getMasterRequest())
|
||||
&& ($request = $this->requestStack->getMainRequest())
|
||||
) {
|
||||
foreach ($this->exclusions as $exclusion) {
|
||||
if ($record['context']['exception']->getStatusCode() !== $exclusion['code']) {
|
||||
|
@ -57,7 +57,7 @@ class NotFoundActivationStrategy extends ErrorLevelActivationStrategy implements
|
||||
&& isset($record['context']['exception'])
|
||||
&& $record['context']['exception'] instanceof HttpException
|
||||
&& 404 == $record['context']['exception']->getStatusCode()
|
||||
&& ($request = $this->requestStack->getMasterRequest())
|
||||
&& ($request = $this->requestStack->getMainRequest())
|
||||
) {
|
||||
return !preg_match($this->exclude, $request->getPathInfo());
|
||||
}
|
||||
|
@ -36,7 +36,7 @@ class FirePHPHandler extends BaseFirePHPHandler
|
||||
*/
|
||||
public function onKernelResponse(ResponseEvent $event)
|
||||
{
|
||||
if (!$event->isMasterRequest()) {
|
||||
if (!$event->isMainRequest()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -51,7 +51,7 @@ class RouteProcessor implements EventSubscriberInterface, ResetInterface
|
||||
|
||||
public function addRouteData(RequestEvent $event)
|
||||
{
|
||||
if ($event->isMasterRequest()) {
|
||||
if ($event->isMainRequest()) {
|
||||
$this->reset();
|
||||
}
|
||||
|
||||
|
@ -33,7 +33,7 @@ class WebProcessor extends BaseWebProcessor implements EventSubscriberInterface
|
||||
|
||||
public function onKernelRequest(RequestEvent $event)
|
||||
{
|
||||
if ($event->isMasterRequest()) {
|
||||
if ($event->isMainRequest()) {
|
||||
$this->serverData = $event->getRequest()->server->all();
|
||||
$this->serverData['REMOTE_ADDR'] = $event->getRequest()->getClientIp();
|
||||
}
|
||||
|
@ -123,14 +123,14 @@ class RouteProcessorTest extends TestCase
|
||||
$this->assertEquals(['extra' => []], $record);
|
||||
}
|
||||
|
||||
private function getRequestEvent(Request $request, int $requestType = HttpKernelInterface::MASTER_REQUEST): RequestEvent
|
||||
private function getRequestEvent(Request $request, int $requestType = HttpKernelInterface::MAIN_REQUEST): RequestEvent
|
||||
{
|
||||
return new RequestEvent($this->createMock(HttpKernelInterface::class), $request, $requestType);
|
||||
}
|
||||
|
||||
private function getFinishRequestEvent(Request $request): FinishRequestEvent
|
||||
{
|
||||
return new FinishRequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST);
|
||||
return new FinishRequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST);
|
||||
}
|
||||
|
||||
private function mockEmptyRequest(): Request
|
||||
|
@ -89,7 +89,7 @@ class WebProcessorTest extends TestCase
|
||||
$request->server->replace($server);
|
||||
$request->headers->replace($server);
|
||||
|
||||
$event = new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST);
|
||||
$event = new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST);
|
||||
|
||||
return [$event, $server];
|
||||
}
|
||||
|
@ -19,7 +19,7 @@
|
||||
"php": ">=7.2.5",
|
||||
"monolog/monolog": "^1.25.1|^2",
|
||||
"symfony/service-contracts": "^1.1|^2",
|
||||
"symfony/http-kernel": "^4.4|^5.0",
|
||||
"symfony/http-kernel": "^5.3",
|
||||
"symfony/deprecation-contracts": "^2.1"
|
||||
},
|
||||
"require-dev": {
|
||||
@ -32,7 +32,7 @@
|
||||
},
|
||||
"conflict": {
|
||||
"symfony/console": "<4.4",
|
||||
"symfony/http-foundation": "<4.4"
|
||||
"symfony/http-foundation": "<5.3"
|
||||
},
|
||||
"suggest": {
|
||||
"symfony/http-kernel": "For using the debugging handlers together with the response life cycle of the HTTP kernel.",
|
||||
|
@ -56,7 +56,7 @@ final class WebLinkExtension extends AbstractExtension
|
||||
*/
|
||||
public function link(string $uri, string $rel, array $attributes = []): string
|
||||
{
|
||||
if (!$request = $this->requestStack->getMasterRequest()) {
|
||||
if (!$request = $this->requestStack->getMainRequest()) {
|
||||
return $uri;
|
||||
}
|
||||
|
||||
|
@ -29,7 +29,7 @@
|
||||
"symfony/dependency-injection": "^4.4|^5.0",
|
||||
"symfony/finder": "^4.4|^5.0",
|
||||
"symfony/form": "^5.3",
|
||||
"symfony/http-foundation": "^4.4|^5.0",
|
||||
"symfony/http-foundation": "^5.3",
|
||||
"symfony/http-kernel": "^4.4|^5.0",
|
||||
"symfony/intl": "^4.4|^5.0",
|
||||
"symfony/mime": "^5.2",
|
||||
@ -57,7 +57,7 @@
|
||||
"phpdocumentor/type-resolver": "<1.4.0",
|
||||
"symfony/console": "<4.4",
|
||||
"symfony/form": "<5.3",
|
||||
"symfony/http-foundation": "<4.4",
|
||||
"symfony/http-foundation": "<5.3",
|
||||
"symfony/http-kernel": "<4.4",
|
||||
"symfony/translation": "<5.2",
|
||||
"symfony/workflow": "<5.2"
|
||||
|
@ -17,6 +17,7 @@ CHANGELOG
|
||||
* Add support to use a PSR-6 compatible cache for Doctrine annotations
|
||||
* Deprecate all other values than "none", "php_array" and "file" for `framework.annotation.cache`
|
||||
* Add `KernelTestCase::getContainer()` as the best way to get a container in tests
|
||||
* Rename the container parameter `profiler_listener.only_master_requests` to `profiler_listener.only_main_requests`
|
||||
|
||||
5.2.0
|
||||
-----
|
||||
|
@ -304,7 +304,8 @@ class Configuration implements ConfigurationInterface
|
||||
->children()
|
||||
->booleanNode('collect')->defaultTrue()->end()
|
||||
->booleanNode('only_exceptions')->defaultFalse()->end()
|
||||
->booleanNode('only_master_requests')->defaultFalse()->end()
|
||||
->booleanNode('only_main_requests')->defaultFalse()->end()
|
||||
->booleanNode('only_master_requests')->setDeprecated('symfony/framework-bundle', '5.3', 'Option "%node%" at "%path%" is deprecated, use "only_main_requests" instead.')->defaultFalse()->end()
|
||||
->scalarNode('dsn')->defaultValue('file:%kernel.cache_dir%/profiler')->end()
|
||||
->end()
|
||||
->end()
|
||||
|
@ -711,7 +711,7 @@ class FrameworkExtension extends Extension
|
||||
}
|
||||
|
||||
$container->setParameter('profiler_listener.only_exceptions', $config['only_exceptions']);
|
||||
$container->setParameter('profiler_listener.only_master_requests', $config['only_master_requests']);
|
||||
$container->setParameter('profiler_listener.only_main_requests', $config['only_main_requests'] || $config['only_master_requests']);
|
||||
|
||||
// Choose storage class based on the DSN
|
||||
[$class] = explode(':', $config['dsn'], 2);
|
||||
|
@ -63,7 +63,7 @@ class HttpCache extends BaseHttpCache
|
||||
parent::__construct($kernel, $this->createStore(), $this->createSurrogate(), array_merge($this->options, $this->getOptions()));
|
||||
}
|
||||
|
||||
public function handle(Request $request, int $type = HttpKernelInterface::MASTER_REQUEST, bool $catch = true)
|
||||
public function handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true)
|
||||
{
|
||||
if ($this->kernel->getContainer()->getParameter('kernel.http_method_override')) {
|
||||
Request::enableHttpMethodParameterOverride();
|
||||
|
@ -31,7 +31,7 @@ return static function (ContainerConfigurator $container) {
|
||||
service('request_stack'),
|
||||
null,
|
||||
param('profiler_listener.only_exceptions'),
|
||||
param('profiler_listener.only_master_requests'),
|
||||
param('profiler_listener.only_main_requests'),
|
||||
])
|
||||
->tag('kernel.event_subscriber')
|
||||
;
|
||||
|
@ -87,6 +87,7 @@
|
||||
<xsd:complexType name="profiler">
|
||||
<xsd:attribute name="collect" type="xsd:string" />
|
||||
<xsd:attribute name="only-exceptions" type="xsd:string" />
|
||||
<xsd:attribute name="only-main-requests" type="xsd:string" />
|
||||
<xsd:attribute name="only-master-requests" type="xsd:string" />
|
||||
<xsd:attribute name="enabled" type="xsd:string" />
|
||||
<xsd:attribute name="dsn" type="xsd:string" />
|
||||
|
@ -397,6 +397,7 @@ class ConfigurationTest extends TestCase
|
||||
'enabled' => false,
|
||||
'only_exceptions' => false,
|
||||
'only_master_requests' => false,
|
||||
'only_main_requests' => false,
|
||||
'dsn' => 'file:%kernel.cache_dir%/profiler',
|
||||
'collect' => true,
|
||||
],
|
||||
|
@ -122,7 +122,7 @@ class MicroKernelTraitTest extends TestCase
|
||||
};
|
||||
|
||||
$request = Request::create('/');
|
||||
$response = $kernel->handle($request, HttpKernelInterface::MASTER_REQUEST, false);
|
||||
$response = $kernel->handle($request, HttpKernelInterface::MAIN_REQUEST, false);
|
||||
|
||||
$this->assertSame('Hello World!', $response->getContent());
|
||||
}
|
||||
@ -156,7 +156,7 @@ class MicroKernelTraitTest extends TestCase
|
||||
$this->expectExceptionMessage('"Symfony\Bundle\FrameworkBundle\Tests\Kernel\MinimalKernel@anonymous" uses "Symfony\Bundle\FrameworkBundle\Kernel\MicroKernelTrait", but does not implement the required method "protected function configureRoutes(RoutingConfigurator $routes): void".');
|
||||
|
||||
$request = Request::create('/');
|
||||
$kernel->handle($request, HttpKernelInterface::MASTER_REQUEST, false);
|
||||
$kernel->handle($request, HttpKernelInterface::MAIN_REQUEST, false);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -25,7 +25,7 @@
|
||||
"symfony/event-dispatcher": "^5.1",
|
||||
"symfony/error-handler": "^4.4.1|^5.0.1",
|
||||
"symfony/http-foundation": "^5.3",
|
||||
"symfony/http-kernel": "^5.2.1",
|
||||
"symfony/http-kernel": "^5.3",
|
||||
"symfony/polyfill-mbstring": "~1.0",
|
||||
"symfony/polyfill-php80": "^1.15",
|
||||
"symfony/filesystem": "^4.4|^5.0",
|
||||
|
@ -38,7 +38,7 @@ class FirewallListener extends Firewall
|
||||
|
||||
public function configureLogoutUrlGenerator(RequestEvent $event)
|
||||
{
|
||||
if (!$event->isMasterRequest()) {
|
||||
if (!$event->isMainRequest()) {
|
||||
return;
|
||||
}
|
||||
|
||||
@ -49,7 +49,7 @@ class FirewallListener extends Firewall
|
||||
|
||||
public function onKernelFinishRequest(FinishRequestEvent $event)
|
||||
{
|
||||
if ($event->isMasterRequest()) {
|
||||
if ($event->isMainRequest()) {
|
||||
$this->logoutUrlGenerator->setCurrentFirewall(null);
|
||||
}
|
||||
|
||||
|
@ -49,7 +49,7 @@ class UserAuthenticator implements UserAuthenticatorInterface
|
||||
|
||||
private function getUserAuthenticator(): UserAuthenticatorInterface
|
||||
{
|
||||
$firewallConfig = $this->firewallMap->getFirewallConfig($this->requestStack->getMasterRequest());
|
||||
$firewallConfig = $this->firewallMap->getFirewallConfig($this->requestStack->getMainRequest());
|
||||
if (null === $firewallConfig) {
|
||||
throw new LogicException('Cannot call authenticate on this request, as it is not behind a firewall.');
|
||||
}
|
||||
|
@ -188,7 +188,7 @@ class SecurityDataCollectorTest extends TestCase
|
||||
public function testGetListeners()
|
||||
{
|
||||
$request = new Request();
|
||||
$event = new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST);
|
||||
$event = new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST);
|
||||
$event->setResponse($response = new Response());
|
||||
$listener = function ($e) use ($event, &$listenerCalled) {
|
||||
$listenerCalled += $e === $event;
|
||||
|
@ -29,7 +29,7 @@ class TraceableFirewallListenerTest extends TestCase
|
||||
public function testOnKernelRequestRecordsListeners()
|
||||
{
|
||||
$request = new Request();
|
||||
$event = new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST);
|
||||
$event = new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST);
|
||||
$event->setResponse($response = new Response());
|
||||
$listener = function ($e) use ($event, &$listenerCalled) {
|
||||
$listenerCalled += $e === $event;
|
||||
|
@ -22,7 +22,8 @@
|
||||
"symfony/dependency-injection": "^5.3",
|
||||
"symfony/deprecation-contracts": "^2.1",
|
||||
"symfony/event-dispatcher": "^5.1",
|
||||
"symfony/http-kernel": "^5.0",
|
||||
"symfony/http-kernel": "^5.3",
|
||||
"symfony/http-foundation": "^5.3",
|
||||
"symfony/password-hasher": "^5.3",
|
||||
"symfony/polyfill-php80": "^1.15",
|
||||
"symfony/security-core": "^5.3",
|
||||
|
@ -88,7 +88,7 @@ class WebDebugToolbarListener implements EventSubscriberInterface
|
||||
}
|
||||
}
|
||||
|
||||
if (!$event->isMasterRequest()) {
|
||||
if (!$event->isMainRequest()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -67,7 +67,7 @@ class WebDebugToolbarListenerTest extends TestCase
|
||||
{
|
||||
$response = new Response('Some content', $statusCode);
|
||||
$response->headers->set('X-Debug-Token', 'xxxxxxxx');
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(false, 'html', $hasSession), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(false, 'html', $hasSession), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
|
||||
$listener = new WebDebugToolbarListener($this->getTwigMock('Redirection'), true);
|
||||
$listener->onKernelResponse($event);
|
||||
@ -80,7 +80,7 @@ class WebDebugToolbarListenerTest extends TestCase
|
||||
{
|
||||
$response = new Response('Some content', '301');
|
||||
$response->headers->set('X-Debug-Token', 'xxxxxxxx');
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(false, 'json', true), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(false, 'json', true), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
|
||||
$listener = new WebDebugToolbarListener($this->getTwigMock('Redirection'), true);
|
||||
$listener->onKernelResponse($event);
|
||||
@ -94,7 +94,7 @@ class WebDebugToolbarListenerTest extends TestCase
|
||||
$response = new Response('<html><head></head><body></body></html>');
|
||||
$response->headers->set('X-Debug-Token', 'xxxxxxxx');
|
||||
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
|
||||
$listener = new WebDebugToolbarListener($this->getTwigMock());
|
||||
$listener->onKernelResponse($event);
|
||||
@ -110,7 +110,7 @@ class WebDebugToolbarListenerTest extends TestCase
|
||||
$response = new Response('<html><head></head><body></body></html>');
|
||||
$response->headers->set('X-Debug-Token', 'xxxxxxxx');
|
||||
$response->headers->set('Content-Type', 'text/xml');
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
|
||||
$listener = new WebDebugToolbarListener($this->getTwigMock());
|
||||
$listener->onKernelResponse($event);
|
||||
@ -126,7 +126,7 @@ class WebDebugToolbarListenerTest extends TestCase
|
||||
$response = new Response('<html><head></head><body></body></html>');
|
||||
$response->headers->set('X-Debug-Token', 'xxxxxxxx');
|
||||
$response->headers->set('Content-Disposition', 'attachment; filename=test.html');
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(false, 'html'), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(false, 'html'), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
|
||||
$listener = new WebDebugToolbarListener($this->getTwigMock());
|
||||
$listener->onKernelResponse($event);
|
||||
@ -142,7 +142,7 @@ class WebDebugToolbarListenerTest extends TestCase
|
||||
{
|
||||
$response = new Response('<html><head></head><body></body></html>', $statusCode);
|
||||
$response->headers->set('X-Debug-Token', 'xxxxxxxx');
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(false, 'html', $hasSession), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(false, 'html', $hasSession), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
|
||||
$listener = new WebDebugToolbarListener($this->getTwigMock());
|
||||
$listener->onKernelResponse($event);
|
||||
@ -167,7 +167,7 @@ class WebDebugToolbarListenerTest extends TestCase
|
||||
{
|
||||
$response = new Response('<html><head></head><body></body></html>');
|
||||
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
|
||||
$listener = new WebDebugToolbarListener($this->getTwigMock());
|
||||
$listener->onKernelResponse($event);
|
||||
@ -199,7 +199,7 @@ class WebDebugToolbarListenerTest extends TestCase
|
||||
$response = new Response('<div>Some content</div>');
|
||||
$response->headers->set('X-Debug-Token', 'xxxxxxxx');
|
||||
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
|
||||
$listener = new WebDebugToolbarListener($this->getTwigMock());
|
||||
$listener->onKernelResponse($event);
|
||||
@ -215,7 +215,7 @@ class WebDebugToolbarListenerTest extends TestCase
|
||||
$response = new Response('<html><head></head><body></body></html>');
|
||||
$response->headers->set('X-Debug-Token', 'xxxxxxxx');
|
||||
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(true), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(true), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
|
||||
$listener = new WebDebugToolbarListener($this->getTwigMock());
|
||||
$listener->onKernelResponse($event);
|
||||
@ -231,7 +231,7 @@ class WebDebugToolbarListenerTest extends TestCase
|
||||
$response = new Response('<html><head></head><body></body></html>');
|
||||
$response->headers->set('X-Debug-Token', 'xxxxxxxx');
|
||||
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(false, 'json'), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(false, 'json'), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
|
||||
$listener = new WebDebugToolbarListener($this->getTwigMock());
|
||||
$listener->onKernelResponse($event);
|
||||
@ -252,7 +252,7 @@ class WebDebugToolbarListenerTest extends TestCase
|
||||
->willReturn('http://mydomain.com/_profiler/xxxxxxxx')
|
||||
;
|
||||
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
|
||||
$listener = new WebDebugToolbarListener($this->getTwigMock(), false, WebDebugToolbarListener::ENABLED, $urlGenerator);
|
||||
$listener->onKernelResponse($event);
|
||||
@ -273,7 +273,7 @@ class WebDebugToolbarListenerTest extends TestCase
|
||||
->willThrowException(new \Exception('foo'))
|
||||
;
|
||||
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
|
||||
$listener = new WebDebugToolbarListener($this->getTwigMock(), false, WebDebugToolbarListener::ENABLED, $urlGenerator);
|
||||
$listener->onKernelResponse($event);
|
||||
@ -294,7 +294,7 @@ class WebDebugToolbarListenerTest extends TestCase
|
||||
->willThrowException(new \Exception("This\nmultiline\r\ntabbed text should\tcome out\r on\n \ta single plain\r\nline"))
|
||||
;
|
||||
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
|
||||
$listener = new WebDebugToolbarListener($this->getTwigMock(), false, WebDebugToolbarListener::ENABLED, $urlGenerator);
|
||||
$listener->onKernelResponse($event);
|
||||
@ -307,7 +307,7 @@ class WebDebugToolbarListenerTest extends TestCase
|
||||
$response = new Response('<html><head></head><body></body></html>');
|
||||
$response->headers->set('X-Debug-Token', 'xxxxxxxx');
|
||||
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
|
||||
$cspHandler = $this->createMock(ContentSecurityPolicyHandler::class);
|
||||
$cspHandler->expects($this->once())
|
||||
@ -328,7 +328,7 @@ class WebDebugToolbarListenerTest extends TestCase
|
||||
$response = new Response('<html><head></head><body></body></html>');
|
||||
$response->headers->set('X-Debug-Token', 'xxxxxxxx');
|
||||
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($this->createMock(Kernel::class), $this->getRequestMock(), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
|
||||
$cspHandler = $this->createMock(ContentSecurityPolicyHandler::class);
|
||||
$cspHandler->expects($this->never())
|
||||
|
@ -19,7 +19,7 @@
|
||||
"php": ">=7.2.5",
|
||||
"symfony/config": "^4.4|^5.0",
|
||||
"symfony/framework-bundle": "^5.3",
|
||||
"symfony/http-kernel": "^5.2",
|
||||
"symfony/http-kernel": "^5.3",
|
||||
"symfony/routing": "^4.4|^5.0",
|
||||
"symfony/twig-bundle": "^4.4|^5.0",
|
||||
"twig/twig": "^2.13|^3.0.4"
|
||||
|
@ -36,7 +36,7 @@ class RequestStackContext implements ContextInterface
|
||||
*/
|
||||
public function getBasePath()
|
||||
{
|
||||
if (!$request = $this->requestStack->getMasterRequest()) {
|
||||
if (!$request = $this->requestStack->getMainRequest()) {
|
||||
return $this->basePath;
|
||||
}
|
||||
|
||||
@ -48,7 +48,7 @@ class RequestStackContext implements ContextInterface
|
||||
*/
|
||||
public function isSecure()
|
||||
{
|
||||
if (!$request = $this->requestStack->getMasterRequest()) {
|
||||
if (!$request = $this->requestStack->getMainRequest()) {
|
||||
return $this->secure;
|
||||
}
|
||||
|
||||
|
@ -34,7 +34,7 @@ class RequestStackContextTest extends TestCase
|
||||
$request->method('getBasePath')
|
||||
->willReturn($testBasePath);
|
||||
$requestStack = $this->createMock(RequestStack::class);
|
||||
$requestStack->method('getMasterRequest')
|
||||
$requestStack->method('getMainRequest')
|
||||
->willReturn($request);
|
||||
|
||||
$requestStackContext = new RequestStackContext($requestStack);
|
||||
@ -56,7 +56,7 @@ class RequestStackContextTest extends TestCase
|
||||
$request->method('isSecure')
|
||||
->willReturn(true);
|
||||
$requestStack = $this->createMock(RequestStack::class);
|
||||
$requestStack->method('getMasterRequest')
|
||||
$requestStack->method('getMainRequest')
|
||||
->willReturn($request);
|
||||
|
||||
$requestStackContext = new RequestStackContext($requestStack);
|
||||
|
@ -24,9 +24,12 @@
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/http-client": "^4.4|^5.0",
|
||||
"symfony/http-foundation": "^4.4|^5.0",
|
||||
"symfony/http-foundation": "^5.3",
|
||||
"symfony/http-kernel": "^4.4|^5.0"
|
||||
},
|
||||
"conflict": {
|
||||
"symfony/http-foundation": "<5.3"
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": { "Symfony\\Component\\Asset\\": "" },
|
||||
"exclude-from-classmap": [
|
||||
|
@ -8,7 +8,8 @@ CHANGELOG
|
||||
* Calling `Request::getSession()` when there is no available session throws a `SessionNotFoundException`
|
||||
* Add the `RequestStack::getSession` method
|
||||
* Deprecate the `NamespacedAttributeBag` class
|
||||
* added `ResponseFormatSame` PHPUnit constraint
|
||||
* Add `ResponseFormatSame` PHPUnit constraint
|
||||
* Deprecate the `RequestStack::getMasterRequest()` method and add `getMainRequest()` as replacement
|
||||
|
||||
5.2.0
|
||||
-----
|
||||
|
@ -65,15 +65,13 @@ class RequestStack
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the master Request.
|
||||
* Gets the main request.
|
||||
*
|
||||
* Be warned that making your code aware of the master request
|
||||
* Be warned that making your code aware of the main request
|
||||
* might make it un-compatible with other features of your framework
|
||||
* like ESI support.
|
||||
*
|
||||
* @return Request|null
|
||||
*/
|
||||
public function getMasterRequest()
|
||||
public function getMainRequest(): ?Request
|
||||
{
|
||||
if (!$this->requests) {
|
||||
return null;
|
||||
@ -82,6 +80,20 @@ class RequestStack
|
||||
return $this->requests[0];
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the master request.
|
||||
*
|
||||
* @return Request|null
|
||||
*
|
||||
* @deprecated since symfony/http-foundation 5.3, use getMainRequest() instead
|
||||
*/
|
||||
public function getMasterRequest()
|
||||
{
|
||||
trigger_deprecation('symfony/http-foundation', '5.3', '"%s()" is deprecated, use "getMainRequest()" instead.', __METHOD__);
|
||||
|
||||
return $this->getMainRequest();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the parent request of the current.
|
||||
*
|
||||
@ -89,7 +101,7 @@ class RequestStack
|
||||
* might make it un-compatible with other features of your framework
|
||||
* like ESI support.
|
||||
*
|
||||
* If current Request is the master request, it returns null.
|
||||
* If current Request is the main request, it returns null.
|
||||
*
|
||||
* @return Request|null
|
||||
*/
|
||||
|
@ -35,6 +35,6 @@ class SessionFactory
|
||||
|
||||
public function createSession(): SessionInterface
|
||||
{
|
||||
return new Session($this->storageFactory->createStorage($this->requestStack->getMasterRequest()), null, null, $this->usageReporter);
|
||||
return new Session($this->storageFactory->createStorage($this->requestStack->getMainRequest()), null, null, $this->usageReporter);
|
||||
}
|
||||
}
|
||||
|
@ -12,11 +12,14 @@
|
||||
namespace Symfony\Component\HttpFoundation\Tests;
|
||||
|
||||
use PHPUnit\Framework\TestCase;
|
||||
use Symfony\Bridge\PhpUnit\ExpectDeprecationTrait;
|
||||
use Symfony\Component\HttpFoundation\Request;
|
||||
use Symfony\Component\HttpFoundation\RequestStack;
|
||||
|
||||
class RequestStackTest extends TestCase
|
||||
{
|
||||
use ExpectDeprecationTrait;
|
||||
|
||||
public function testGetCurrentRequest()
|
||||
{
|
||||
$requestStack = new RequestStack();
|
||||
@ -33,6 +36,23 @@ class RequestStackTest extends TestCase
|
||||
$this->assertNull($requestStack->pop());
|
||||
}
|
||||
|
||||
public function testGetMainRequest()
|
||||
{
|
||||
$requestStack = new RequestStack();
|
||||
$this->assertNull($requestStack->getMainRequest());
|
||||
|
||||
$mainRequest = Request::create('/foo');
|
||||
$subRequest = Request::create('/bar');
|
||||
|
||||
$requestStack->push($mainRequest);
|
||||
$requestStack->push($subRequest);
|
||||
|
||||
$this->assertSame($mainRequest, $requestStack->getMainRequest());
|
||||
}
|
||||
|
||||
/**
|
||||
* @group legacy
|
||||
*/
|
||||
public function testGetMasterRequest()
|
||||
{
|
||||
$requestStack = new RequestStack();
|
||||
@ -44,6 +64,7 @@ class RequestStackTest extends TestCase
|
||||
$requestStack->push($masterRequest);
|
||||
$requestStack->push($subRequest);
|
||||
|
||||
$this->expectDeprecation('Since symfony/http-foundation 5.3: "Symfony\Component\HttpFoundation\RequestStack::getMasterRequest()" is deprecated, use "getMainRequest()" instead.');
|
||||
$this->assertSame($masterRequest, $requestStack->getMasterRequest());
|
||||
}
|
||||
|
||||
@ -52,15 +73,15 @@ class RequestStackTest extends TestCase
|
||||
$requestStack = new RequestStack();
|
||||
$this->assertNull($requestStack->getParentRequest());
|
||||
|
||||
$masterRequest = Request::create('/foo');
|
||||
$mainRequest = Request::create('/foo');
|
||||
|
||||
$requestStack->push($masterRequest);
|
||||
$requestStack->push($mainRequest);
|
||||
$this->assertNull($requestStack->getParentRequest());
|
||||
|
||||
$firstSubRequest = Request::create('/bar');
|
||||
|
||||
$requestStack->push($firstSubRequest);
|
||||
$this->assertSame($masterRequest, $requestStack->getParentRequest());
|
||||
$this->assertSame($mainRequest, $requestStack->getParentRequest());
|
||||
|
||||
$secondSubRequest = Request::create('/baz');
|
||||
|
||||
|
@ -35,7 +35,7 @@ final class UrlHelper
|
||||
return $path;
|
||||
}
|
||||
|
||||
if (null === $request = $this->requestStack->getMasterRequest()) {
|
||||
if (null === $request = $this->requestStack->getMainRequest()) {
|
||||
return $this->getAbsoluteUrlFromContext($path);
|
||||
}
|
||||
|
||||
@ -64,7 +64,7 @@ final class UrlHelper
|
||||
return $path;
|
||||
}
|
||||
|
||||
if (null === $request = $this->requestStack->getMasterRequest()) {
|
||||
if (null === $request = $this->requestStack->getMainRequest()) {
|
||||
return $path;
|
||||
}
|
||||
|
||||
|
@ -9,6 +9,8 @@ CHANGELOG
|
||||
* Deprecate `ArgumentMetadata::getAttribute()`, use `getAttributes()` instead
|
||||
* Mark the class `Symfony\Component\HttpKernel\EventListener\DebugHandlersListener` as internal
|
||||
* Deprecate returning a `ContainerBuilder` from `KernelInterface::registerContainerConfiguration()`
|
||||
* Deprecate `HttpKernelInterface::MASTER_REQUEST` and add `HttpKernelInterface::MAIN_REQUEST` as replacement
|
||||
* Deprecate `KernelEvent::isMasterRequest()` and add `isMainRequest()` as replacement
|
||||
|
||||
5.2.0
|
||||
-----
|
||||
|
@ -107,7 +107,7 @@ class DumpDataCollector extends DataCollector implements DataDumperInterface
|
||||
}
|
||||
|
||||
// Sub-requests and programmatic calls stay in the collected profile.
|
||||
if ($this->dumper || ($this->requestStack && $this->requestStack->getMasterRequest() !== $request) || $request->isXmlHttpRequest() || $request->headers->has('Origin')) {
|
||||
if ($this->dumper || ($this->requestStack && $this->requestStack->getMainRequest() !== $request) || $request->isXmlHttpRequest() || $request->headers->has('Origin')) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -42,7 +42,7 @@ class EventDataCollector extends DataCollector implements LateDataCollectorInter
|
||||
*/
|
||||
public function collect(Request $request, Response $response, \Throwable $exception = null)
|
||||
{
|
||||
$this->currentRequest = $this->requestStack && $this->requestStack->getMasterRequest() !== $request ? $request : null;
|
||||
$this->currentRequest = $this->requestStack && $this->requestStack->getMainRequest() !== $request ? $request : null;
|
||||
$this->data = [
|
||||
'called_listeners' => [],
|
||||
'not_called_listeners' => [],
|
||||
|
@ -46,7 +46,7 @@ class LoggerDataCollector extends DataCollector implements LateDataCollectorInte
|
||||
*/
|
||||
public function collect(Request $request, Response $response, \Throwable $exception = null)
|
||||
{
|
||||
$this->currentRequest = $this->requestStack && $this->requestStack->getMasterRequest() !== $request ? $request : null;
|
||||
$this->currentRequest = $this->requestStack && $this->requestStack->getMainRequest() !== $request ? $request : null;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -106,7 +106,7 @@ class RequestDataCollector extends DataCollector implements EventSubscriberInter
|
||||
'session_metadata' => $sessionMetadata,
|
||||
'session_attributes' => $sessionAttributes,
|
||||
'session_usages' => array_values($this->sessionUsages),
|
||||
'stateless_check' => $this->requestStack && $this->requestStack->getMasterRequest()->attributes->get('_stateless', false),
|
||||
'stateless_check' => $this->requestStack && $this->requestStack->getMainRequest()->attributes->get('_stateless', false),
|
||||
'flashes' => $flashes,
|
||||
'path_info' => $request->getPathInfo(),
|
||||
'controller' => 'n/a',
|
||||
@ -374,7 +374,7 @@ class RequestDataCollector extends DataCollector implements EventSubscriberInter
|
||||
|
||||
public function onKernelResponse(ResponseEvent $event)
|
||||
{
|
||||
if (!$event->isMasterRequest()) {
|
||||
if (!$event->isMainRequest()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -91,7 +91,7 @@ class FileLinkFormatter
|
||||
}
|
||||
|
||||
if ($this->requestStack && $this->baseDir && $this->urlFormat) {
|
||||
$request = $this->requestStack->getMasterRequest();
|
||||
$request = $this->requestStack->getMainRequest();
|
||||
|
||||
if ($request instanceof Request && (!$this->urlFormat instanceof \Closure || $this->urlFormat = ($this->urlFormat)())) {
|
||||
return [
|
||||
|
@ -28,7 +28,7 @@ class KernelEvent extends Event
|
||||
|
||||
/**
|
||||
* @param int $requestType The request type the kernel is currently processing; one of
|
||||
* HttpKernelInterface::MASTER_REQUEST or HttpKernelInterface::SUB_REQUEST
|
||||
* HttpKernelInterface::MAIN_REQUEST or HttpKernelInterface::SUB_REQUEST
|
||||
*/
|
||||
public function __construct(HttpKernelInterface $kernel, Request $request, ?int $requestType)
|
||||
{
|
||||
@ -60,7 +60,7 @@ class KernelEvent extends Event
|
||||
/**
|
||||
* Returns the request type the kernel is currently processing.
|
||||
*
|
||||
* @return int One of HttpKernelInterface::MASTER_REQUEST and
|
||||
* @return int One of HttpKernelInterface::MAIN_REQUEST and
|
||||
* HttpKernelInterface::SUB_REQUEST
|
||||
*/
|
||||
public function getRequestType()
|
||||
@ -68,13 +68,25 @@ class KernelEvent extends Event
|
||||
return $this->requestType;
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if this is the main request.
|
||||
*/
|
||||
public function isMainRequest(): bool
|
||||
{
|
||||
return HttpKernelInterface::MAIN_REQUEST === $this->requestType;
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if this is a master request.
|
||||
*
|
||||
* @return bool True if the request is a master request
|
||||
*
|
||||
* @deprecated since symfony/http-kernel 5.3, use isMainRequest() instead
|
||||
*/
|
||||
public function isMasterRequest()
|
||||
{
|
||||
return HttpKernelInterface::MASTER_REQUEST === $this->requestType;
|
||||
trigger_deprecation('symfony/http-kernel', '5.3', '"%s()" is deprecated, use "isMainRequest()" instead.');
|
||||
|
||||
return $this->isMainRequest();
|
||||
}
|
||||
}
|
||||
|
@ -18,8 +18,8 @@ use Symfony\Component\HttpKernel\HttpKernelInterface;
|
||||
/**
|
||||
* Allows to execute logic after a response was sent.
|
||||
*
|
||||
* Since it's only triggered on master requests, the `getRequestType()` method
|
||||
* will always return the value of `HttpKernelInterface::MASTER_REQUEST`.
|
||||
* Since it's only triggered on main requests, the `getRequestType()` method
|
||||
* will always return the value of `HttpKernelInterface::MAIN_REQUEST`.
|
||||
*
|
||||
* @author Jordi Boggiano <j.boggiano@seld.be>
|
||||
*/
|
||||
@ -29,7 +29,7 @@ final class TerminateEvent extends KernelEvent
|
||||
|
||||
public function __construct(HttpKernelInterface $kernel, Request $request, Response $response)
|
||||
{
|
||||
parent::__construct($kernel, $request, HttpKernelInterface::MASTER_REQUEST);
|
||||
parent::__construct($kernel, $request, HttpKernelInterface::MAIN_REQUEST);
|
||||
|
||||
$this->response = $response;
|
||||
}
|
||||
|
@ -52,7 +52,7 @@ abstract class AbstractSessionListener implements EventSubscriberInterface
|
||||
|
||||
public function onKernelRequest(RequestEvent $event)
|
||||
{
|
||||
if (!$event->isMasterRequest()) {
|
||||
if (!$event->isMainRequest()) {
|
||||
return;
|
||||
}
|
||||
|
||||
@ -69,7 +69,7 @@ abstract class AbstractSessionListener implements EventSubscriberInterface
|
||||
|
||||
public function onKernelResponse(ResponseEvent $event)
|
||||
{
|
||||
if (!$event->isMasterRequest()) {
|
||||
if (!$event->isMainRequest()) {
|
||||
return;
|
||||
}
|
||||
|
||||
@ -138,7 +138,7 @@ abstract class AbstractSessionListener implements EventSubscriberInterface
|
||||
|
||||
public function onFinishRequest(FinishRequestEvent $event)
|
||||
{
|
||||
if ($event->isMasterRequest()) {
|
||||
if ($event->isMainRequest()) {
|
||||
array_pop($this->sessionUsageStack);
|
||||
}
|
||||
}
|
||||
|
@ -41,7 +41,7 @@ abstract class AbstractTestSessionListener implements EventSubscriberInterface
|
||||
|
||||
public function onKernelRequest(RequestEvent $event)
|
||||
{
|
||||
if (!$event->isMasterRequest()) {
|
||||
if (!$event->isMainRequest()) {
|
||||
return;
|
||||
}
|
||||
|
||||
@ -59,12 +59,12 @@ abstract class AbstractTestSessionListener implements EventSubscriberInterface
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if session was initialized and saves if current request is master
|
||||
* Checks if session was initialized and saves if current request is the main request
|
||||
* Runs on 'kernel.response' in test environment.
|
||||
*/
|
||||
public function onKernelResponse(ResponseEvent $event)
|
||||
{
|
||||
if (!$event->isMasterRequest()) {
|
||||
if (!$event->isMainRequest()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -76,7 +76,7 @@ class DebugHandlersListener implements EventSubscriberInterface
|
||||
if ($event instanceof ConsoleEvent && !\in_array(\PHP_SAPI, ['cli', 'phpdbg'], true)) {
|
||||
return;
|
||||
}
|
||||
if (!$event instanceof KernelEvent ? !$this->firstCall : !$event->isMasterRequest()) {
|
||||
if (!$event instanceof KernelEvent ? !$this->firstCall : !$event->isMainRequest()) {
|
||||
return;
|
||||
}
|
||||
$this->firstCall = $this->hasTerminatedWithException = false;
|
||||
|
@ -65,7 +65,7 @@ class FragmentListener implements EventSubscriberInterface
|
||||
return;
|
||||
}
|
||||
|
||||
if ($event->isMasterRequest()) {
|
||||
if ($event->isMainRequest()) {
|
||||
$this->validateRequest($request);
|
||||
}
|
||||
|
||||
|
@ -32,22 +32,22 @@ class ProfilerListener implements EventSubscriberInterface
|
||||
protected $profiler;
|
||||
protected $matcher;
|
||||
protected $onlyException;
|
||||
protected $onlyMasterRequests;
|
||||
protected $onlyMainRequests;
|
||||
protected $exception;
|
||||
protected $profiles;
|
||||
protected $requestStack;
|
||||
protected $parents;
|
||||
|
||||
/**
|
||||
* @param bool $onlyException True if the profiler only collects data when an exception occurs, false otherwise
|
||||
* @param bool $onlyMasterRequests True if the profiler only collects data when the request is a master request, false otherwise
|
||||
* @param bool $onlyException True if the profiler only collects data when an exception occurs, false otherwise
|
||||
* @param bool $onlyMainRequests True if the profiler only collects data when the request is the main request, false otherwise
|
||||
*/
|
||||
public function __construct(Profiler $profiler, RequestStack $requestStack, RequestMatcherInterface $matcher = null, bool $onlyException = false, bool $onlyMasterRequests = false)
|
||||
public function __construct(Profiler $profiler, RequestStack $requestStack, RequestMatcherInterface $matcher = null, bool $onlyException = false, bool $onlyMainRequests = false)
|
||||
{
|
||||
$this->profiler = $profiler;
|
||||
$this->matcher = $matcher;
|
||||
$this->onlyException = $onlyException;
|
||||
$this->onlyMasterRequests = $onlyMasterRequests;
|
||||
$this->onlyMainRequests = $onlyMainRequests;
|
||||
$this->profiles = new \SplObjectStorage();
|
||||
$this->parents = new \SplObjectStorage();
|
||||
$this->requestStack = $requestStack;
|
||||
@ -58,7 +58,7 @@ class ProfilerListener implements EventSubscriberInterface
|
||||
*/
|
||||
public function onKernelException(ExceptionEvent $event)
|
||||
{
|
||||
if ($this->onlyMasterRequests && !$event->isMasterRequest()) {
|
||||
if ($this->onlyMainRequests && !$event->isMainRequest()) {
|
||||
return;
|
||||
}
|
||||
|
||||
@ -70,8 +70,7 @@ class ProfilerListener implements EventSubscriberInterface
|
||||
*/
|
||||
public function onKernelResponse(ResponseEvent $event)
|
||||
{
|
||||
$master = $event->isMasterRequest();
|
||||
if ($this->onlyMasterRequests && !$master) {
|
||||
if ($this->onlyMainRequests && !$event->isMainRequest()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -36,7 +36,7 @@ class ResponseListener implements EventSubscriberInterface
|
||||
*/
|
||||
public function onKernelResponse(ResponseEvent $event)
|
||||
{
|
||||
if (!$event->isMasterRequest()) {
|
||||
if (!$event->isMainRequest()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -21,7 +21,7 @@ use Symfony\Component\HttpKernel\Event\RequestEvent;
|
||||
*
|
||||
* When the passed container contains a "session_storage" entry which
|
||||
* holds a NativeSessionStorage instance, the "cookie_secure" option
|
||||
* will be set to true whenever the current master request is secure.
|
||||
* will be set to true whenever the current main request is secure.
|
||||
*
|
||||
* @author Fabien Potencier <fabien@symfony.com>
|
||||
*
|
||||
@ -38,14 +38,14 @@ class SessionListener extends AbstractSessionListener
|
||||
{
|
||||
parent::onKernelRequest($event);
|
||||
|
||||
if (!$event->isMasterRequest() || !$this->container->has('session')) {
|
||||
if (!$event->isMainRequest() || !$this->container->has('session')) {
|
||||
return;
|
||||
}
|
||||
|
||||
if ($this->container->has('session_storage')
|
||||
&& ($storage = $this->container->get('session_storage')) instanceof NativeSessionStorage
|
||||
&& ($masterRequest = $this->container->get('request_stack')->getMasterRequest())
|
||||
&& $masterRequest->isSecure()
|
||||
&& ($mainRequest = $this->container->get('request_stack')->getMainRequest())
|
||||
&& $mainRequest->isSecure()
|
||||
) {
|
||||
$storage->setOptions(['cookie_secure' => true]);
|
||||
}
|
||||
|
@ -31,7 +31,7 @@ class StreamedResponseListener implements EventSubscriberInterface
|
||||
*/
|
||||
public function onKernelResponse(ResponseEvent $event)
|
||||
{
|
||||
if (!$event->isMasterRequest()) {
|
||||
if (!$event->isMainRequest()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -38,7 +38,7 @@ class SurrogateListener implements EventSubscriberInterface
|
||||
*/
|
||||
public function onKernelResponse(ResponseEvent $event)
|
||||
{
|
||||
if (!$event->isMasterRequest()) {
|
||||
if (!$event->isMainRequest()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -29,7 +29,7 @@ class ValidateRequestListener implements EventSubscriberInterface
|
||||
*/
|
||||
public function onKernelRequest(RequestEvent $event)
|
||||
{
|
||||
if (!$event->isMasterRequest()) {
|
||||
if (!$event->isMainRequest()) {
|
||||
return;
|
||||
}
|
||||
$request = $event->getRequest();
|
||||
|
@ -66,7 +66,7 @@ class FragmentHandler
|
||||
* @return string|null The Response content or null when the Response is streamed
|
||||
*
|
||||
* @throws \InvalidArgumentException when the renderer does not exist
|
||||
* @throws \LogicException when no master request is being handled
|
||||
* @throws \LogicException when no main request is being handled
|
||||
*/
|
||||
public function render($uri, string $renderer = 'inline', array $options = [])
|
||||
{
|
||||
|
@ -44,7 +44,7 @@ class HttpCache implements HttpKernelInterface, TerminableInterface
|
||||
* will try to carry on and deliver a meaningful response.
|
||||
*
|
||||
* * trace_level May be one of 'none', 'short' and 'full'. For 'short', a concise trace of the
|
||||
* master request will be added as an HTTP header. 'full' will add traces for all
|
||||
* main request will be added as an HTTP header. 'full' will add traces for all
|
||||
* requests (including ESI subrequests). (default: 'full' if in debug; 'none' otherwise)
|
||||
*
|
||||
* * trace_header Header name to use for traces. (default: X-Symfony-Cache)
|
||||
@ -156,7 +156,7 @@ class HttpCache implements HttpKernelInterface, TerminableInterface
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the Request instance associated with the master request.
|
||||
* Gets the Request instance associated with the main request.
|
||||
*
|
||||
* @return Request A Request instance
|
||||
*/
|
||||
@ -190,10 +190,10 @@ class HttpCache implements HttpKernelInterface, TerminableInterface
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function handle(Request $request, int $type = HttpKernelInterface::MASTER_REQUEST, bool $catch = true)
|
||||
public function handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true)
|
||||
{
|
||||
// FIXME: catch exceptions and implement a 500 error page here? -> in Varnish, there is a built-in error page mechanism
|
||||
if (HttpKernelInterface::MASTER_REQUEST === $type) {
|
||||
if (HttpKernelInterface::MAIN_REQUEST === $type) {
|
||||
$this->traces = [];
|
||||
// Keep a clone of the original request for surrogates so they can access it.
|
||||
// We must clone here to get a separate instance because the application will modify the request during
|
||||
@ -224,12 +224,12 @@ class HttpCache implements HttpKernelInterface, TerminableInterface
|
||||
|
||||
$this->restoreResponseBody($request, $response);
|
||||
|
||||
if (HttpKernelInterface::MASTER_REQUEST === $type) {
|
||||
if (HttpKernelInterface::MAIN_REQUEST === $type) {
|
||||
$this->addTraces($response);
|
||||
}
|
||||
|
||||
if (null !== $this->surrogate) {
|
||||
if (HttpKernelInterface::MASTER_REQUEST === $type) {
|
||||
if (HttpKernelInterface::MAIN_REQUEST === $type) {
|
||||
$this->surrogateCacheStrategy->update($response);
|
||||
} else {
|
||||
$this->surrogateCacheStrategy->add($response);
|
||||
@ -474,7 +474,7 @@ class HttpCache implements HttpKernelInterface, TerminableInterface
|
||||
}
|
||||
|
||||
// always a "master" request (as the real master request can be in cache)
|
||||
$response = SubRequestHandler::handle($this->kernel, $request, HttpKernelInterface::MASTER_REQUEST, $catch);
|
||||
$response = SubRequestHandler::handle($this->kernel, $request, HttpKernelInterface::MAIN_REQUEST, $catch);
|
||||
|
||||
/*
|
||||
* Support stale-if-error given on Responses or as a config option.
|
||||
|
@ -17,7 +17,7 @@ use Symfony\Component\HttpFoundation\Response;
|
||||
* ResponseCacheStrategy knows how to compute the Response cache HTTP header
|
||||
* based on the different response cache headers.
|
||||
*
|
||||
* This implementation changes the master response TTL to the smallest TTL received
|
||||
* This implementation changes the main response TTL to the smallest TTL received
|
||||
* or force validation if one of the surrogates has validation cache strategy.
|
||||
*
|
||||
* @author Fabien Potencier <fabien@symfony.com>
|
||||
|
@ -42,7 +42,7 @@ final class HttpClientKernel implements HttpKernelInterface
|
||||
$this->client = $client ?? HttpClient::create();
|
||||
}
|
||||
|
||||
public function handle(Request $request, int $type = HttpKernelInterface::MASTER_REQUEST, bool $catch = true): Response
|
||||
public function handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true): Response
|
||||
{
|
||||
$headers = $this->getHeaders($request);
|
||||
$body = '';
|
||||
|
@ -71,7 +71,7 @@ class HttpKernel implements HttpKernelInterface, TerminableInterface
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function handle(Request $request, int $type = HttpKernelInterface::MASTER_REQUEST, bool $catch = true)
|
||||
public function handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true)
|
||||
{
|
||||
$request->headers->set('X-Php-Ob-Level', (string) ob_get_level());
|
||||
|
||||
@ -104,11 +104,11 @@ class HttpKernel implements HttpKernelInterface, TerminableInterface
|
||||
*/
|
||||
public function terminateWithException(\Throwable $exception, Request $request = null)
|
||||
{
|
||||
if (!$request = $request ?: $this->requestStack->getMasterRequest()) {
|
||||
if (!$request = $request ?: $this->requestStack->getMainRequest()) {
|
||||
throw $exception;
|
||||
}
|
||||
|
||||
$response = $this->handleThrowable($exception, $request, self::MASTER_REQUEST);
|
||||
$response = $this->handleThrowable($exception, $request, self::MAIN_REQUEST);
|
||||
|
||||
$response->sendHeaders();
|
||||
$response->sendContent();
|
||||
@ -124,7 +124,7 @@ class HttpKernel implements HttpKernelInterface, TerminableInterface
|
||||
* @throws \LogicException If one of the listener does not behave as expected
|
||||
* @throws NotFoundHttpException When controller cannot be found
|
||||
*/
|
||||
private function handleRaw(Request $request, int $type = self::MASTER_REQUEST): Response
|
||||
private function handleRaw(Request $request, int $type = self::MAIN_REQUEST): Response
|
||||
{
|
||||
$this->requestStack->push($request);
|
||||
|
||||
|
@ -60,7 +60,7 @@ class HttpKernelBrowser extends AbstractBrowser
|
||||
*/
|
||||
protected function doRequest($request)
|
||||
{
|
||||
$response = $this->kernel->handle($request, HttpKernelInterface::MASTER_REQUEST, $this->catchExceptions);
|
||||
$response = $this->kernel->handle($request, HttpKernelInterface::MAIN_REQUEST, $this->catchExceptions);
|
||||
|
||||
if ($this->kernel instanceof TerminableInterface) {
|
||||
$this->kernel->terminate($request, $response);
|
||||
|
@ -21,9 +21,15 @@ use Symfony\Component\HttpFoundation\Response;
|
||||
*/
|
||||
interface HttpKernelInterface
|
||||
{
|
||||
public const MASTER_REQUEST = 1;
|
||||
public const MAIN_REQUEST = 1;
|
||||
public const SUB_REQUEST = 2;
|
||||
|
||||
/**
|
||||
* @deprecated since symfony/http-kernel 5.3, use MAIN_REQUEST instead.
|
||||
* To ease the migration, this constant won't be removed until Symfony 7.0.
|
||||
*/
|
||||
public const MASTER_REQUEST = self::MAIN_REQUEST;
|
||||
|
||||
/**
|
||||
* Handles a Request to convert it to a Response.
|
||||
*
|
||||
@ -31,12 +37,12 @@ interface HttpKernelInterface
|
||||
* and do its best to convert them to a Response instance.
|
||||
*
|
||||
* @param int $type The type of the request
|
||||
* (one of HttpKernelInterface::MASTER_REQUEST or HttpKernelInterface::SUB_REQUEST)
|
||||
* (one of HttpKernelInterface::MAIN_REQUEST or HttpKernelInterface::SUB_REQUEST)
|
||||
* @param bool $catch Whether to catch exceptions or not
|
||||
*
|
||||
* @return Response A Response instance
|
||||
*
|
||||
* @throws \Exception When an Exception occurs during processing
|
||||
*/
|
||||
public function handle(Request $request, int $type = self::MASTER_REQUEST, bool $catch = true);
|
||||
public function handle(Request $request, int $type = self::MAIN_REQUEST, bool $catch = true);
|
||||
}
|
||||
|
@ -177,7 +177,7 @@ abstract class Kernel implements KernelInterface, RebootableInterface, Terminabl
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function handle(Request $request, int $type = HttpKernelInterface::MASTER_REQUEST, bool $catch = true)
|
||||
public function handle(Request $request, int $type = HttpKernelInterface::MAIN_REQUEST, bool $catch = true)
|
||||
{
|
||||
if (!$this->booted) {
|
||||
$container = $this->container ?? $this->preBoot();
|
||||
|
@ -45,11 +45,11 @@ class LoggerDataCollectorTest extends TestCase
|
||||
], $compilerLogs['Unknown Compiler Pass']);
|
||||
}
|
||||
|
||||
public function testWithMasterRequest()
|
||||
public function testWithMainRequest()
|
||||
{
|
||||
$masterRequest = new Request();
|
||||
$mainRequest = new Request();
|
||||
$stack = new RequestStack();
|
||||
$stack->push($masterRequest);
|
||||
$stack->push($mainRequest);
|
||||
|
||||
$logger = $this
|
||||
->getMockBuilder(DebugLoggerInterface::class)
|
||||
@ -60,16 +60,16 @@ class LoggerDataCollectorTest extends TestCase
|
||||
|
||||
$c = new LoggerDataCollector($logger, __DIR__.'/', $stack);
|
||||
|
||||
$c->collect($masterRequest, new Response());
|
||||
$c->collect($mainRequest, new Response());
|
||||
$c->lateCollect();
|
||||
}
|
||||
|
||||
public function testWithSubRequest()
|
||||
{
|
||||
$masterRequest = new Request();
|
||||
$mainRequest = new Request();
|
||||
$subRequest = new Request();
|
||||
$stack = new RequestStack();
|
||||
$stack->push($masterRequest);
|
||||
$stack->push($mainRequest);
|
||||
$stack->push($subRequest);
|
||||
|
||||
$logger = $this
|
||||
|
@ -210,7 +210,7 @@ class RequestDataCollectorTest extends TestCase
|
||||
$kernel = $this->createMock(HttpKernelInterface::class);
|
||||
|
||||
$c = new RequestDataCollector();
|
||||
$c->onKernelResponse(new ResponseEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST, $this->createResponse()));
|
||||
$c->onKernelResponse(new ResponseEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST, $this->createResponse()));
|
||||
|
||||
$this->assertTrue($request->attributes->get('_redirected'));
|
||||
}
|
||||
@ -374,7 +374,7 @@ class RequestDataCollectorTest extends TestCase
|
||||
{
|
||||
$resolver = $this->createMock(ControllerResolverInterface::class);
|
||||
$httpKernel = new HttpKernel(new EventDispatcher(), $resolver, null, $this->createMock(ArgumentResolverInterface::class));
|
||||
$event = new ControllerEvent($httpKernel, $controller, $request, HttpKernelInterface::MASTER_REQUEST);
|
||||
$event = new ControllerEvent($httpKernel, $controller, $request, HttpKernelInterface::MAIN_REQUEST);
|
||||
$collector->onKernelController($event);
|
||||
}
|
||||
|
||||
|
@ -70,7 +70,7 @@ class DebugHandlersListenerTest extends TestCase
|
||||
$event = new KernelEvent(
|
||||
$this->createMock(HttpKernelInterface::class),
|
||||
Request::create('/'),
|
||||
HttpKernelInterface::MASTER_REQUEST
|
||||
HttpKernelInterface::MAIN_REQUEST
|
||||
);
|
||||
|
||||
$exception = null;
|
||||
|
@ -29,7 +29,7 @@ class DisallowRobotsIndexingListenerTest extends TestCase
|
||||
$response = new Response(...$responseArgs);
|
||||
$listener = new DisallowRobotsIndexingListener();
|
||||
|
||||
$event = new ResponseEvent($this->createMock(HttpKernelInterface::class), $this->createMock(Request::class), KernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($this->createMock(HttpKernelInterface::class), $this->createMock(Request::class), KernelInterface::MAIN_REQUEST, $response);
|
||||
|
||||
$listener->onResponse($event);
|
||||
|
||||
|
@ -105,8 +105,8 @@ class ErrorListenerTest extends TestCase
|
||||
|
||||
$request = new Request();
|
||||
$exception = new \Exception('foo');
|
||||
$event = new ExceptionEvent(new TestKernel(), $request, HttpKernelInterface::MASTER_REQUEST, $exception);
|
||||
$event2 = new ExceptionEvent(new TestKernelThatThrowsException(), $request, HttpKernelInterface::MASTER_REQUEST, $exception);
|
||||
$event = new ExceptionEvent(new TestKernel(), $request, HttpKernelInterface::MAIN_REQUEST, $exception);
|
||||
$event2 = new ExceptionEvent(new TestKernelThatThrowsException(), $request, HttpKernelInterface::MAIN_REQUEST, $exception);
|
||||
|
||||
return [
|
||||
[$event, $event2],
|
||||
@ -125,7 +125,7 @@ class ErrorListenerTest extends TestCase
|
||||
$request = Request::create('/');
|
||||
$request->setRequestFormat('xml');
|
||||
|
||||
$event = new ExceptionEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST, new \Exception('foo'));
|
||||
$event = new ExceptionEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST, new \Exception('foo'));
|
||||
$listener->onKernelException($event);
|
||||
|
||||
$response = $event->getResponse();
|
||||
@ -145,13 +145,13 @@ class ErrorListenerTest extends TestCase
|
||||
$dispatcher->addSubscriber($listener);
|
||||
|
||||
$request = Request::create('/');
|
||||
$event = new ExceptionEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST, new \Exception('foo'));
|
||||
$event = new ExceptionEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST, new \Exception('foo'));
|
||||
$dispatcher->dispatch($event, KernelEvents::EXCEPTION);
|
||||
|
||||
$response = new Response('', 200, ['content-security-policy' => "style-src 'self'"]);
|
||||
$this->assertTrue($response->headers->has('content-security-policy'));
|
||||
|
||||
$event = new ResponseEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
$dispatcher->dispatch($event, KernelEvents::RESPONSE);
|
||||
|
||||
$this->assertFalse($response->headers->has('content-security-policy'), 'CSP header has been removed');
|
||||
@ -174,7 +174,7 @@ class ErrorListenerTest extends TestCase
|
||||
return $controller(...$event->getArguments());
|
||||
});
|
||||
|
||||
$event = new ExceptionEvent($kernel, Request::create('/'), HttpKernelInterface::MASTER_REQUEST, new \Exception('foo'));
|
||||
$event = new ExceptionEvent($kernel, Request::create('/'), HttpKernelInterface::MAIN_REQUEST, new \Exception('foo'));
|
||||
$listener->onKernelException($event);
|
||||
|
||||
$this->assertSame('OK: foo', $event->getResponse()->getContent());
|
||||
@ -208,7 +208,7 @@ class TestLogger extends Logger implements DebugLoggerInterface
|
||||
|
||||
class TestKernel implements HttpKernelInterface
|
||||
{
|
||||
public function handle(Request $request, $type = self::MASTER_REQUEST, $catch = true): Response
|
||||
public function handle(Request $request, $type = self::MAIN_REQUEST, $catch = true): Response
|
||||
{
|
||||
return new Response('foo');
|
||||
}
|
||||
@ -216,7 +216,7 @@ class TestKernel implements HttpKernelInterface
|
||||
|
||||
class TestKernelThatThrowsException implements HttpKernelInterface
|
||||
{
|
||||
public function handle(Request $request, $type = self::MASTER_REQUEST, $catch = true): Response
|
||||
public function handle(Request $request, $type = self::MAIN_REQUEST, $catch = true): Response
|
||||
{
|
||||
throw new \RuntimeException('bar');
|
||||
}
|
||||
|
@ -112,7 +112,7 @@ class FragmentListenerTest extends TestCase
|
||||
$this->assertFalse($request->query->has('_path'));
|
||||
}
|
||||
|
||||
private function createRequestEvent(Request $request, $requestType = HttpKernelInterface::MASTER_REQUEST)
|
||||
private function createRequestEvent(Request $request, int $requestType = HttpKernelInterface::MAIN_REQUEST): RequestEvent
|
||||
{
|
||||
return new RequestEvent($this->createMock(HttpKernelInterface::class), $request, $requestType);
|
||||
}
|
||||
|
@ -40,7 +40,7 @@ class LocaleAwareListenerTest extends TestCase
|
||||
->method('setLocale')
|
||||
->with($this->equalTo('fr'));
|
||||
|
||||
$event = new RequestEvent($this->createMock(HttpKernelInterface::class), $this->createRequest('fr'), HttpKernelInterface::MASTER_REQUEST);
|
||||
$event = new RequestEvent($this->createMock(HttpKernelInterface::class), $this->createRequest('fr'), HttpKernelInterface::MAIN_REQUEST);
|
||||
$this->listener->onKernelRequest($event);
|
||||
}
|
||||
|
||||
@ -57,7 +57,7 @@ class LocaleAwareListenerTest extends TestCase
|
||||
$this->throwException(new \InvalidArgumentException())
|
||||
);
|
||||
|
||||
$event = new RequestEvent($this->createMock(HttpKernelInterface::class), $this->createRequest('fr'), HttpKernelInterface::MASTER_REQUEST);
|
||||
$event = new RequestEvent($this->createMock(HttpKernelInterface::class), $this->createRequest('fr'), HttpKernelInterface::MAIN_REQUEST);
|
||||
$this->listener->onKernelRequest($event);
|
||||
}
|
||||
|
||||
|
@ -100,7 +100,7 @@ class LocaleListenerTest extends TestCase
|
||||
|
||||
$this->requestStack->expects($this->once())->method('getParentRequest')->willReturn($parentRequest);
|
||||
|
||||
$event = new FinishRequestEvent($this->createMock(HttpKernelInterface::class), new Request(), HttpKernelInterface::MASTER_REQUEST);
|
||||
$event = new FinishRequestEvent($this->createMock(HttpKernelInterface::class), new Request(), HttpKernelInterface::MAIN_REQUEST);
|
||||
|
||||
$listener = new LocaleListener($this->requestStack, 'fr', $router);
|
||||
$listener->onKernelFinishRequest($event);
|
||||
@ -119,6 +119,6 @@ class LocaleListenerTest extends TestCase
|
||||
|
||||
private function getEvent(Request $request): RequestEvent
|
||||
{
|
||||
return new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST);
|
||||
return new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST);
|
||||
}
|
||||
}
|
||||
|
@ -28,7 +28,7 @@ use Symfony\Component\HttpKernel\Profiler\Profiler;
|
||||
class ProfilerListenerTest extends TestCase
|
||||
{
|
||||
/**
|
||||
* Test a master and sub request with an exception and `onlyException` profiler option enabled.
|
||||
* Test a main and sub request with an exception and `onlyException` profiler option enabled.
|
||||
*/
|
||||
public function testKernelTerminate()
|
||||
{
|
||||
@ -40,23 +40,23 @@ class ProfilerListenerTest extends TestCase
|
||||
->willReturn($profile);
|
||||
|
||||
$kernel = $this->createMock(HttpKernelInterface::class);
|
||||
$masterRequest = $this->createMock(Request::class);
|
||||
$mainRequest = $this->createMock(Request::class);
|
||||
$subRequest = $this->createMock(Request::class);
|
||||
$response = $this->createMock(Response::class);
|
||||
|
||||
$requestStack = new RequestStack();
|
||||
$requestStack->push($masterRequest);
|
||||
$requestStack->push($mainRequest);
|
||||
|
||||
$onlyException = true;
|
||||
$listener = new ProfilerListener($profiler, $requestStack, null, $onlyException);
|
||||
|
||||
// master request
|
||||
$listener->onKernelResponse(new ResponseEvent($kernel, $masterRequest, Kernel::MASTER_REQUEST, $response));
|
||||
// main request
|
||||
$listener->onKernelResponse(new ResponseEvent($kernel, $mainRequest, Kernel::MAIN_REQUEST, $response));
|
||||
|
||||
// sub request
|
||||
$listener->onKernelException(new ExceptionEvent($kernel, $subRequest, Kernel::SUB_REQUEST, new HttpException(404)));
|
||||
$listener->onKernelResponse(new ResponseEvent($kernel, $subRequest, Kernel::SUB_REQUEST, $response));
|
||||
|
||||
$listener->onKernelTerminate(new TerminateEvent($kernel, $masterRequest, $response));
|
||||
$listener->onKernelTerminate(new TerminateEvent($kernel, $mainRequest, $response));
|
||||
}
|
||||
}
|
||||
|
@ -58,7 +58,7 @@ class ResponseListenerTest extends TestCase
|
||||
|
||||
$response = new Response('foo');
|
||||
|
||||
$event = new ResponseEvent($this->kernel, Request::create('/'), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($this->kernel, Request::create('/'), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
$this->dispatcher->dispatch($event, KernelEvents::RESPONSE);
|
||||
|
||||
$this->assertEquals('ISO-8859-15', $response->getCharset());
|
||||
@ -72,7 +72,7 @@ class ResponseListenerTest extends TestCase
|
||||
$response = new Response('foo');
|
||||
$response->setCharset('ISO-8859-1');
|
||||
|
||||
$event = new ResponseEvent($this->kernel, Request::create('/'), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($this->kernel, Request::create('/'), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
$this->dispatcher->dispatch($event, KernelEvents::RESPONSE);
|
||||
|
||||
$this->assertEquals('ISO-8859-1', $response->getCharset());
|
||||
@ -87,7 +87,7 @@ class ResponseListenerTest extends TestCase
|
||||
$request = Request::create('/');
|
||||
$request->setRequestFormat('application/json');
|
||||
|
||||
$event = new ResponseEvent($this->kernel, $request, HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($this->kernel, $request, HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
$this->dispatcher->dispatch($event, KernelEvents::RESPONSE);
|
||||
|
||||
$this->assertEquals('ISO-8859-15', $response->getCharset());
|
||||
|
@ -83,7 +83,7 @@ class RouterListenerTest extends TestCase
|
||||
$request = Request::create($uri);
|
||||
$request->attributes->set('_controller', null); // Prevents going in to routing process
|
||||
|
||||
return new RequestEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST);
|
||||
return new RequestEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST);
|
||||
}
|
||||
|
||||
public function testInvalidMatcher()
|
||||
@ -96,7 +96,7 @@ class RouterListenerTest extends TestCase
|
||||
{
|
||||
$kernel = $this->createMock(HttpKernelInterface::class);
|
||||
$request = Request::create('http://localhost/');
|
||||
$event = new RequestEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST);
|
||||
$event = new RequestEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST);
|
||||
|
||||
$requestMatcher = $this->createMock(RequestMatcherInterface::class);
|
||||
$requestMatcher->expects($this->once())
|
||||
@ -112,7 +112,7 @@ class RouterListenerTest extends TestCase
|
||||
{
|
||||
$kernel = $this->createMock(HttpKernelInterface::class);
|
||||
$request = Request::create('http://localhost/', 'post');
|
||||
$event = new RequestEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST);
|
||||
$event = new RequestEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST);
|
||||
|
||||
$requestMatcher = $this->createMock(RequestMatcherInterface::class);
|
||||
$requestMatcher->expects($this->any())
|
||||
@ -154,7 +154,7 @@ class RouterListenerTest extends TestCase
|
||||
$request = Request::create('http://localhost/');
|
||||
|
||||
$listener = new RouterListener($requestMatcher, $this->requestStack, new RequestContext(), $logger);
|
||||
$listener->onKernelRequest(new RequestEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener->onKernelRequest(new RequestEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST));
|
||||
}
|
||||
|
||||
public function getLoggingParameterData()
|
||||
@ -214,7 +214,7 @@ class RouterListenerTest extends TestCase
|
||||
$this->expectException(BadRequestHttpException::class);
|
||||
$kernel = $this->createMock(HttpKernelInterface::class);
|
||||
$request = Request::create('http://bad host %22/');
|
||||
$event = new RequestEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST);
|
||||
$event = new RequestEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST);
|
||||
|
||||
$requestMatcher = $this->createMock(RequestMatcherInterface::class);
|
||||
|
||||
@ -243,7 +243,7 @@ class RouterListenerTest extends TestCase
|
||||
$request = Request::create('https://www.symfony.com/path');
|
||||
$request->headers->set('referer', 'https://www.google.com');
|
||||
|
||||
$event = new RequestEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST);
|
||||
$event = new RequestEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST);
|
||||
|
||||
$listener = new RouterListener($urlMatcher, $this->requestStack);
|
||||
$listener->onKernelRequest($event);
|
||||
@ -269,7 +269,7 @@ class RouterListenerTest extends TestCase
|
||||
$kernel = $this->createMock(HttpKernelInterface::class);
|
||||
$request = Request::create('https://www.symfony.com/path');
|
||||
|
||||
$event = new RequestEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST);
|
||||
$event = new RequestEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST);
|
||||
|
||||
$listener = new RouterListener($urlMatcher, $this->requestStack);
|
||||
$listener->onKernelRequest($event);
|
||||
|
@ -32,11 +32,11 @@ use Symfony\Component\HttpKernel\KernelInterface;
|
||||
|
||||
class SessionListenerTest extends TestCase
|
||||
{
|
||||
public function testOnlyTriggeredOnMasterRequest()
|
||||
public function testOnlyTriggeredOnMainRequest()
|
||||
{
|
||||
$listener = $this->getMockForAbstractClass(AbstractSessionListener::class);
|
||||
$event = $this->createMock(RequestEvent::class);
|
||||
$event->expects($this->once())->method('isMasterRequest')->willReturn(false);
|
||||
$event->expects($this->once())->method('isMainRequest')->willReturn(false);
|
||||
$event->expects($this->never())->method('getRequest');
|
||||
|
||||
// sub request
|
||||
@ -48,7 +48,7 @@ class SessionListenerTest extends TestCase
|
||||
$session = $this->createMock(Session::class);
|
||||
|
||||
$requestStack = $this->createMock(RequestStack::class);
|
||||
$requestStack->expects($this->once())->method('getMasterRequest')->willReturn(null);
|
||||
$requestStack->expects($this->once())->method('getMainRequest')->willReturn(null);
|
||||
|
||||
$sessionStorage = $this->createMock(NativeSessionStorage::class);
|
||||
$sessionStorage->expects($this->never())->method('setOptions')->with(['cookie_secure' => true]);
|
||||
@ -62,7 +62,7 @@ class SessionListenerTest extends TestCase
|
||||
$listener = new SessionListener($container);
|
||||
|
||||
$event = $this->createMock(RequestEvent::class);
|
||||
$event->expects($this->exactly(2))->method('isMasterRequest')->willReturn(true);
|
||||
$event->expects($this->exactly(2))->method('isMainRequest')->willReturn(true);
|
||||
$event->expects($this->once())->method('getRequest')->willReturn($request);
|
||||
|
||||
$listener->onKernelRequest($event);
|
||||
@ -83,10 +83,10 @@ class SessionListenerTest extends TestCase
|
||||
$kernel = $this->createMock(HttpKernelInterface::class);
|
||||
|
||||
$request = new Request();
|
||||
$listener->onKernelRequest(new RequestEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener->onKernelRequest(new RequestEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST));
|
||||
|
||||
$response = new Response();
|
||||
$listener->onKernelResponse(new ResponseEvent($kernel, new Request(), HttpKernelInterface::MASTER_REQUEST, $response));
|
||||
$listener->onKernelResponse(new ResponseEvent($kernel, new Request(), HttpKernelInterface::MAIN_REQUEST, $response));
|
||||
|
||||
$this->assertTrue($response->headers->has('Expires'));
|
||||
$this->assertTrue($response->headers->hasCacheControlDirective('private'));
|
||||
@ -108,12 +108,12 @@ class SessionListenerTest extends TestCase
|
||||
$kernel = $this->createMock(HttpKernelInterface::class);
|
||||
|
||||
$request = new Request();
|
||||
$listener->onKernelRequest(new RequestEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener->onKernelRequest(new RequestEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST));
|
||||
|
||||
$response = new Response();
|
||||
$response->setSharedMaxAge(60);
|
||||
$response->headers->set(AbstractSessionListener::NO_AUTO_CACHE_CONTROL_HEADER, 'true');
|
||||
$listener->onKernelResponse(new ResponseEvent($kernel, new Request(), HttpKernelInterface::MASTER_REQUEST, $response));
|
||||
$listener->onKernelResponse(new ResponseEvent($kernel, new Request(), HttpKernelInterface::MAIN_REQUEST, $response));
|
||||
|
||||
$this->assertTrue($response->headers->hasCacheControlDirective('public'));
|
||||
$this->assertFalse($response->headers->has('Expires'));
|
||||
@ -135,7 +135,7 @@ class SessionListenerTest extends TestCase
|
||||
]);
|
||||
|
||||
$listener = new SessionListener($container);
|
||||
$listener->onKernelResponse(new ResponseEvent($kernel, new Request(), HttpKernelInterface::MASTER_REQUEST, $response));
|
||||
$listener->onKernelResponse(new ResponseEvent($kernel, new Request(), HttpKernelInterface::MAIN_REQUEST, $response));
|
||||
$this->assertFalse($response->headers->has('Expires'));
|
||||
$this->assertTrue($response->headers->hasCacheControlDirective('public'));
|
||||
$this->assertFalse($response->headers->hasCacheControlDirective('private'));
|
||||
@ -144,7 +144,7 @@ class SessionListenerTest extends TestCase
|
||||
$this->assertFalse($response->headers->has(AbstractSessionListener::NO_AUTO_CACHE_CONTROL_HEADER));
|
||||
}
|
||||
|
||||
public function testSurrogateMasterRequestIsPublic()
|
||||
public function testSurrogateMainRequestIsPublic()
|
||||
{
|
||||
$session = $this->createMock(Session::class);
|
||||
$session->expects($this->exactly(4))->method('getUsageIndex')->will($this->onConsecutiveCalls(0, 1, 1, 1));
|
||||
@ -159,21 +159,21 @@ class SessionListenerTest extends TestCase
|
||||
$request = new Request();
|
||||
$response = new Response();
|
||||
$response->setCache(['public' => true, 'max_age' => '30']);
|
||||
$listener->onKernelRequest(new RequestEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener->onKernelRequest(new RequestEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST));
|
||||
$this->assertTrue($request->hasSession());
|
||||
|
||||
$subRequest = clone $request;
|
||||
$this->assertSame($request->getSession(), $subRequest->getSession());
|
||||
$listener->onKernelRequest(new RequestEvent($kernel, $subRequest, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener->onKernelResponse(new ResponseEvent($kernel, $subRequest, HttpKernelInterface::MASTER_REQUEST, $response));
|
||||
$listener->onFinishRequest(new FinishRequestEvent($kernel, $subRequest, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener->onKernelRequest(new RequestEvent($kernel, $subRequest, HttpKernelInterface::MAIN_REQUEST));
|
||||
$listener->onKernelResponse(new ResponseEvent($kernel, $subRequest, HttpKernelInterface::MAIN_REQUEST, $response));
|
||||
$listener->onFinishRequest(new FinishRequestEvent($kernel, $subRequest, HttpKernelInterface::MAIN_REQUEST));
|
||||
|
||||
$this->assertFalse($response->headers->has('Expires'));
|
||||
$this->assertFalse($response->headers->hasCacheControlDirective('private'));
|
||||
$this->assertFalse($response->headers->hasCacheControlDirective('must-revalidate'));
|
||||
$this->assertSame('30', $response->headers->getCacheControlDirective('max-age'));
|
||||
|
||||
$listener->onKernelResponse(new ResponseEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST, $response));
|
||||
$listener->onKernelResponse(new ResponseEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST, $response));
|
||||
|
||||
$this->assertTrue($response->headers->hasCacheControlDirective('private'));
|
||||
$this->assertTrue($response->headers->hasCacheControlDirective('must-revalidate'));
|
||||
@ -194,14 +194,14 @@ class SessionListenerTest extends TestCase
|
||||
->with(['cookie_secure' => true]);
|
||||
|
||||
$requestStack = new RequestStack();
|
||||
$requestStack->push($masterRequest = new Request([], [], [], [], [], ['HTTPS' => 'on']));
|
||||
$requestStack->push($mainRequest = new Request([], [], [], [], [], ['HTTPS' => 'on']));
|
||||
|
||||
$container = new Container();
|
||||
$container->set('session_storage', $sessionStorage);
|
||||
$container->set('session', $session);
|
||||
$container->set('request_stack', $requestStack);
|
||||
|
||||
$event = new RequestEvent($kernel, $masterRequest, HttpKernelInterface::MASTER_REQUEST);
|
||||
$event = new RequestEvent($kernel, $mainRequest, HttpKernelInterface::MAIN_REQUEST);
|
||||
|
||||
$listener = new SessionListener($container);
|
||||
$listener->onKernelRequest($event);
|
||||
@ -210,10 +210,10 @@ class SessionListenerTest extends TestCase
|
||||
$container->set('session_storage', null);
|
||||
$sessionStorage = null;
|
||||
|
||||
$subRequest = $masterRequest->duplicate();
|
||||
// at this point both master and subrequest have a closure to build the session
|
||||
$subRequest = $mainRequest->duplicate();
|
||||
// at this point both main and subrequest have a closure to build the session
|
||||
|
||||
$masterRequest->getSession();
|
||||
$mainRequest->getSession();
|
||||
|
||||
// calling the factory on the subRequest should not trigger a second call to storage->setOptions()
|
||||
$subRequest->getSession();
|
||||
@ -232,10 +232,10 @@ class SessionListenerTest extends TestCase
|
||||
|
||||
$request = new Request();
|
||||
$request->attributes->set('_stateless', true);
|
||||
$listener->onKernelRequest(new RequestEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener->onKernelRequest(new RequestEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST));
|
||||
|
||||
$this->expectException(UnexpectedSessionUsageException::class);
|
||||
$listener->onKernelResponse(new ResponseEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST, new Response()));
|
||||
$listener->onKernelResponse(new ResponseEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST, new Response()));
|
||||
}
|
||||
|
||||
public function testSessionUsageLogIfStatelessAndSessionUsed()
|
||||
@ -255,9 +255,9 @@ class SessionListenerTest extends TestCase
|
||||
|
||||
$request = new Request();
|
||||
$request->attributes->set('_stateless', true);
|
||||
$listener->onKernelRequest(new RequestEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener->onKernelRequest(new RequestEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST));
|
||||
|
||||
$listener->onKernelResponse(new ResponseEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST, new Response()));
|
||||
$listener->onKernelResponse(new ResponseEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST, new Response()));
|
||||
}
|
||||
|
||||
public function testSessionIsSavedWhenUnexpectedSessionExceptionThrown()
|
||||
@ -276,11 +276,11 @@ class SessionListenerTest extends TestCase
|
||||
$request = new Request();
|
||||
$request->attributes->set('_stateless', true);
|
||||
|
||||
$listener->onKernelRequest(new RequestEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener->onKernelRequest(new RequestEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST));
|
||||
|
||||
$response = new Response();
|
||||
$this->expectException(UnexpectedSessionUsageException::class);
|
||||
$listener->onKernelResponse(new ResponseEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST, $response));
|
||||
$listener->onKernelResponse(new ResponseEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST, $response));
|
||||
}
|
||||
|
||||
public function testSessionUsageCallbackWhenDebugAndStateless()
|
||||
|
@ -45,7 +45,7 @@ class SurrogateListenerTest extends TestCase
|
||||
$listener = new SurrogateListener(new Esi());
|
||||
|
||||
$dispatcher->addListener(KernelEvents::RESPONSE, [$listener, 'onKernelResponse']);
|
||||
$event = new ResponseEvent($kernel, new Request(), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($kernel, new Request(), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
$dispatcher->dispatch($event, KernelEvents::RESPONSE);
|
||||
|
||||
$this->assertEquals('content="ESI/1.0"', $event->getResponse()->headers->get('Surrogate-Control'));
|
||||
@ -59,7 +59,7 @@ class SurrogateListenerTest extends TestCase
|
||||
$listener = new SurrogateListener(new Esi());
|
||||
|
||||
$dispatcher->addListener(KernelEvents::RESPONSE, [$listener, 'onKernelResponse']);
|
||||
$event = new ResponseEvent($kernel, new Request(), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$event = new ResponseEvent($kernel, new Request(), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
$dispatcher->dispatch($event, KernelEvents::RESPONSE);
|
||||
|
||||
$this->assertEquals('', $event->getResponse()->headers->get('Surrogate-Control'));
|
||||
|
@ -51,7 +51,7 @@ class TestSessionListenerTest extends TestCase
|
||||
->willReturn($this->session);
|
||||
}
|
||||
|
||||
public function testShouldSaveMasterRequestSession()
|
||||
public function testShouldSaveMainRequestSession()
|
||||
{
|
||||
$this->sessionHasBeenStarted();
|
||||
$this->sessionMustBeSaved();
|
||||
@ -72,7 +72,7 @@ class TestSessionListenerTest extends TestCase
|
||||
|
||||
@ini_set('session.cookie_lifetime', 0);
|
||||
|
||||
$response = $this->filterResponse(new Request(), HttpKernelInterface::MASTER_REQUEST);
|
||||
$response = $this->filterResponse(new Request(), HttpKernelInterface::MAIN_REQUEST);
|
||||
$cookies = $response->headers->getCookies();
|
||||
|
||||
$this->assertEquals(0, reset($cookies)->getExpiresTime());
|
||||
@ -86,7 +86,7 @@ class TestSessionListenerTest extends TestCase
|
||||
$this->sessionHasBeenStarted();
|
||||
$this->sessionIsEmpty();
|
||||
|
||||
$response = $this->filterResponse(new Request(), HttpKernelInterface::MASTER_REQUEST);
|
||||
$response = $this->filterResponse(new Request(), HttpKernelInterface::MAIN_REQUEST);
|
||||
|
||||
$this->assertSame([], $response->headers->getCookies());
|
||||
}
|
||||
@ -99,10 +99,10 @@ class TestSessionListenerTest extends TestCase
|
||||
|
||||
$kernel = $this->createMock(HttpKernelInterface::class);
|
||||
$request = Request::create('/', 'GET', [], ['MOCKSESSID' => '123']);
|
||||
$event = new RequestEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST);
|
||||
$event = new RequestEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST);
|
||||
$this->listener->onKernelRequest($event);
|
||||
|
||||
$response = $this->filterResponse(new Request(), HttpKernelInterface::MASTER_REQUEST);
|
||||
$response = $this->filterResponse(new Request(), HttpKernelInterface::MAIN_REQUEST);
|
||||
|
||||
$this->assertNotEmpty($response->headers->getCookies());
|
||||
}
|
||||
@ -118,12 +118,12 @@ class TestSessionListenerTest extends TestCase
|
||||
|
||||
$kernel = $this->createMock(HttpKernelInterface::class);
|
||||
$request = Request::create('/', 'GET', [], ['MOCKSESSID' => '123']);
|
||||
$event = new RequestEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST);
|
||||
$event = new RequestEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST);
|
||||
$this->listener->onKernelRequest($event);
|
||||
|
||||
$response = new Response('', 200, ['Set-Cookie' => $existing]);
|
||||
|
||||
$response = $this->filterResponse(new Request(), HttpKernelInterface::MASTER_REQUEST, $response);
|
||||
$response = $this->filterResponse(new Request(), HttpKernelInterface::MAIN_REQUEST, $response);
|
||||
|
||||
$this->assertSame($expected, $response->headers->all()['set-cookie']);
|
||||
}
|
||||
@ -148,14 +148,14 @@ class TestSessionListenerTest extends TestCase
|
||||
public function testDoesNotThrowIfRequestDoesNotHaveASession()
|
||||
{
|
||||
$kernel = $this->createMock(HttpKernelInterface::class);
|
||||
$event = new ResponseEvent($kernel, new Request(), HttpKernelInterface::MASTER_REQUEST, new Response());
|
||||
$event = new ResponseEvent($kernel, new Request(), HttpKernelInterface::MAIN_REQUEST, new Response());
|
||||
|
||||
$this->listener->onKernelResponse($event);
|
||||
|
||||
$this->assertTrue(true);
|
||||
}
|
||||
|
||||
private function filterResponse(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, Response $response = null)
|
||||
private function filterResponse(Request $request, $type = HttpKernelInterface::MAIN_REQUEST, Response $response = null)
|
||||
{
|
||||
$request->setSession($this->session);
|
||||
$response = $response ?: new Response();
|
||||
|
@ -27,7 +27,7 @@ class ValidateRequestListenerTest extends TestCase
|
||||
Request::setTrustedProxies([], -1);
|
||||
}
|
||||
|
||||
public function testListenerThrowsWhenMasterRequestHasInconsistentClientIps()
|
||||
public function testListenerThrowsWhenMainRequestHasInconsistentClientIps()
|
||||
{
|
||||
$this->expectException(ConflictingHeadersException::class);
|
||||
$dispatcher = new EventDispatcher();
|
||||
@ -40,7 +40,7 @@ class ValidateRequestListenerTest extends TestCase
|
||||
$request->headers->set('X_FORWARDED_FOR', '3.3.3.3');
|
||||
|
||||
$dispatcher->addListener(KernelEvents::REQUEST, [new ValidateRequestListener(), 'onKernelRequest']);
|
||||
$event = new RequestEvent($kernel, $request, HttpKernelInterface::MASTER_REQUEST);
|
||||
$event = new RequestEvent($kernel, $request, HttpKernelInterface::MAIN_REQUEST);
|
||||
|
||||
$dispatcher->dispatch($event, KernelEvents::REQUEST);
|
||||
}
|
||||
|
@ -1209,7 +1209,7 @@ class HttpCacheTest extends HttpCacheTestCase
|
||||
$responses = [
|
||||
[
|
||||
'status' => 200,
|
||||
'body' => 'I am a long-lived master response, but I embed a short-lived resource: <esi:include src="/foo" />',
|
||||
'body' => 'I am a long-lived main response, but I embed a short-lived resource: <esi:include src="/foo" />',
|
||||
'headers' => [
|
||||
'Cache-Control' => 's-maxage=300',
|
||||
'Surrogate-Control' => 'content="ESI/1.0"',
|
||||
@ -1267,7 +1267,7 @@ class HttpCacheTest extends HttpCacheTestCase
|
||||
$responses = [
|
||||
[
|
||||
'status' => 200,
|
||||
'body' => 'I am the master response and use expiration caching, but I embed another resource: <esi:include src="/foo" />',
|
||||
'body' => 'I am the main response and use expiration caching, but I embed another resource: <esi:include src="/foo" />',
|
||||
'headers' => [
|
||||
'Cache-Control' => 's-maxage=300',
|
||||
'Surrogate-Control' => 'content="ESI/1.0"',
|
||||
@ -1511,7 +1511,7 @@ class HttpCacheTest extends HttpCacheTestCase
|
||||
$request->server->set('REMOTE_ADDR', '10.0.0.1');
|
||||
|
||||
// Main request
|
||||
$cache->handle($request, HttpKernelInterface::MASTER_REQUEST);
|
||||
$cache->handle($request, HttpKernelInterface::MAIN_REQUEST);
|
||||
|
||||
// Main request was now modified by HttpCache
|
||||
// The surrogate will ask for the request using $this->cache->getRequest()
|
||||
@ -1734,7 +1734,7 @@ class TestKernel implements HttpKernelInterface
|
||||
$this->terminateCalled = true;
|
||||
}
|
||||
|
||||
public function handle(Request $request, $type = self::MASTER_REQUEST, $catch = true): Response
|
||||
public function handle(Request $request, $type = self::MAIN_REQUEST, $catch = true): Response
|
||||
{
|
||||
}
|
||||
}
|
||||
|
@ -131,7 +131,7 @@ class HttpCacheTestCase extends TestCase
|
||||
$this->request = Request::create($uri, $method, [], $cookies, [], $server);
|
||||
$this->request->headers->add($headers);
|
||||
|
||||
$this->response = $this->cache->handle($this->request, HttpKernelInterface::MASTER_REQUEST, $this->catch);
|
||||
$this->response = $this->cache->handle($this->request, HttpKernelInterface::MAIN_REQUEST, $this->catch);
|
||||
|
||||
$this->responses[] = $this->response;
|
||||
}
|
||||
|
@ -58,7 +58,7 @@ class ResponseCacheStrategyTest extends TestCase
|
||||
$this->assertFalse($response->headers->hasCacheControlDirective('s-maxage'));
|
||||
}
|
||||
|
||||
public function testSharedMaxAgeNotSetIfNotSetInMasterRequest()
|
||||
public function testSharedMaxAgeNotSetIfNotSetInMainRequest()
|
||||
{
|
||||
$cacheStrategy = new ResponseCacheStrategy();
|
||||
|
||||
@ -76,7 +76,7 @@ class ResponseCacheStrategyTest extends TestCase
|
||||
$this->assertFalse($response->headers->hasCacheControlDirective('s-maxage'));
|
||||
}
|
||||
|
||||
public function testMasterResponseNotCacheableWhenEmbeddedResponseRequiresValidation()
|
||||
public function testMainResponseNotCacheableWhenEmbeddedResponseRequiresValidation()
|
||||
{
|
||||
$cacheStrategy = new ResponseCacheStrategy();
|
||||
|
||||
@ -84,66 +84,66 @@ class ResponseCacheStrategyTest extends TestCase
|
||||
$embeddedResponse->setLastModified(new \DateTime());
|
||||
$cacheStrategy->add($embeddedResponse);
|
||||
|
||||
$masterResponse = new Response();
|
||||
$masterResponse->setSharedMaxAge(3600);
|
||||
$cacheStrategy->update($masterResponse);
|
||||
$mainResponse = new Response();
|
||||
$mainResponse->setSharedMaxAge(3600);
|
||||
$cacheStrategy->update($mainResponse);
|
||||
|
||||
$this->assertTrue($masterResponse->headers->hasCacheControlDirective('no-cache'));
|
||||
$this->assertTrue($masterResponse->headers->hasCacheControlDirective('must-revalidate'));
|
||||
$this->assertFalse($masterResponse->isFresh());
|
||||
$this->assertTrue($mainResponse->headers->hasCacheControlDirective('no-cache'));
|
||||
$this->assertTrue($mainResponse->headers->hasCacheControlDirective('must-revalidate'));
|
||||
$this->assertFalse($mainResponse->isFresh());
|
||||
}
|
||||
|
||||
public function testValidationOnMasterResponseIsNotPossibleWhenItContainsEmbeddedResponses()
|
||||
public function testValidationOnMainResponseIsNotPossibleWhenItContainsEmbeddedResponses()
|
||||
{
|
||||
$cacheStrategy = new ResponseCacheStrategy();
|
||||
|
||||
// This master response uses the "validation" model
|
||||
$masterResponse = new Response();
|
||||
$masterResponse->setLastModified(new \DateTime());
|
||||
$masterResponse->setEtag('foo');
|
||||
// This main response uses the "validation" model
|
||||
$mainResponse = new Response();
|
||||
$mainResponse->setLastModified(new \DateTime());
|
||||
$mainResponse->setEtag('foo');
|
||||
|
||||
// Embedded response uses "expiry" model
|
||||
$embeddedResponse = new Response();
|
||||
$masterResponse->setSharedMaxAge(3600);
|
||||
$mainResponse->setSharedMaxAge(3600);
|
||||
$cacheStrategy->add($embeddedResponse);
|
||||
|
||||
$cacheStrategy->update($masterResponse);
|
||||
$cacheStrategy->update($mainResponse);
|
||||
|
||||
$this->assertFalse($masterResponse->isValidateable());
|
||||
$this->assertFalse($masterResponse->headers->has('Last-Modified'));
|
||||
$this->assertFalse($masterResponse->headers->has('ETag'));
|
||||
$this->assertTrue($masterResponse->headers->hasCacheControlDirective('no-cache'));
|
||||
$this->assertTrue($masterResponse->headers->hasCacheControlDirective('must-revalidate'));
|
||||
$this->assertFalse($mainResponse->isValidateable());
|
||||
$this->assertFalse($mainResponse->headers->has('Last-Modified'));
|
||||
$this->assertFalse($mainResponse->headers->has('ETag'));
|
||||
$this->assertTrue($mainResponse->headers->hasCacheControlDirective('no-cache'));
|
||||
$this->assertTrue($mainResponse->headers->hasCacheControlDirective('must-revalidate'));
|
||||
}
|
||||
|
||||
public function testMasterResponseWithValidationIsUnchangedWhenThereIsNoEmbeddedResponse()
|
||||
public function testMainResponseWithValidationIsUnchangedWhenThereIsNoEmbeddedResponse()
|
||||
{
|
||||
$cacheStrategy = new ResponseCacheStrategy();
|
||||
|
||||
$masterResponse = new Response();
|
||||
$masterResponse->setLastModified(new \DateTime());
|
||||
$cacheStrategy->update($masterResponse);
|
||||
$mainResponse = new Response();
|
||||
$mainResponse->setLastModified(new \DateTime());
|
||||
$cacheStrategy->update($mainResponse);
|
||||
|
||||
$this->assertTrue($masterResponse->isValidateable());
|
||||
$this->assertTrue($mainResponse->isValidateable());
|
||||
}
|
||||
|
||||
public function testMasterResponseWithExpirationIsUnchangedWhenThereIsNoEmbeddedResponse()
|
||||
public function testMainResponseWithExpirationIsUnchangedWhenThereIsNoEmbeddedResponse()
|
||||
{
|
||||
$cacheStrategy = new ResponseCacheStrategy();
|
||||
|
||||
$masterResponse = new Response();
|
||||
$masterResponse->setSharedMaxAge(3600);
|
||||
$cacheStrategy->update($masterResponse);
|
||||
$mainResponse = new Response();
|
||||
$mainResponse->setSharedMaxAge(3600);
|
||||
$cacheStrategy->update($mainResponse);
|
||||
|
||||
$this->assertTrue($masterResponse->isFresh());
|
||||
$this->assertTrue($mainResponse->isFresh());
|
||||
}
|
||||
|
||||
public function testMasterResponseIsNotCacheableWhenEmbeddedResponseIsNotCacheable()
|
||||
public function testMainResponseIsNotCacheableWhenEmbeddedResponseIsNotCacheable()
|
||||
{
|
||||
$cacheStrategy = new ResponseCacheStrategy();
|
||||
|
||||
$masterResponse = new Response();
|
||||
$masterResponse->setSharedMaxAge(3600); // Public, cacheable
|
||||
$mainResponse = new Response();
|
||||
$mainResponse->setSharedMaxAge(3600); // Public, cacheable
|
||||
|
||||
/* This response has no validation or expiration information.
|
||||
That makes it uncacheable, it is always stale.
|
||||
@ -152,19 +152,19 @@ class ResponseCacheStrategyTest extends TestCase
|
||||
$this->assertFalse($embeddedResponse->isFresh()); // not fresh, as no lifetime is provided
|
||||
|
||||
$cacheStrategy->add($embeddedResponse);
|
||||
$cacheStrategy->update($masterResponse);
|
||||
$cacheStrategy->update($mainResponse);
|
||||
|
||||
$this->assertTrue($masterResponse->headers->hasCacheControlDirective('no-cache'));
|
||||
$this->assertTrue($masterResponse->headers->hasCacheControlDirective('must-revalidate'));
|
||||
$this->assertFalse($masterResponse->isFresh());
|
||||
$this->assertTrue($mainResponse->headers->hasCacheControlDirective('no-cache'));
|
||||
$this->assertTrue($mainResponse->headers->hasCacheControlDirective('must-revalidate'));
|
||||
$this->assertFalse($mainResponse->isFresh());
|
||||
}
|
||||
|
||||
public function testEmbeddingPrivateResponseMakesMainResponsePrivate()
|
||||
{
|
||||
$cacheStrategy = new ResponseCacheStrategy();
|
||||
|
||||
$masterResponse = new Response();
|
||||
$masterResponse->setSharedMaxAge(3600); // public, cacheable
|
||||
$mainResponse = new Response();
|
||||
$mainResponse->setSharedMaxAge(3600); // public, cacheable
|
||||
|
||||
// The embedded response might for example contain per-user data that remains valid for 60 seconds
|
||||
$embeddedResponse = new Response();
|
||||
@ -172,29 +172,29 @@ class ResponseCacheStrategyTest extends TestCase
|
||||
$embeddedResponse->setMaxAge(60); // this would implicitly set "private" as well, but let's be explicit
|
||||
|
||||
$cacheStrategy->add($embeddedResponse);
|
||||
$cacheStrategy->update($masterResponse);
|
||||
$cacheStrategy->update($mainResponse);
|
||||
|
||||
$this->assertTrue($masterResponse->headers->hasCacheControlDirective('private'));
|
||||
$this->assertFalse($masterResponse->headers->hasCacheControlDirective('public'));
|
||||
$this->assertTrue($mainResponse->headers->hasCacheControlDirective('private'));
|
||||
$this->assertFalse($mainResponse->headers->hasCacheControlDirective('public'));
|
||||
}
|
||||
|
||||
public function testEmbeddingPublicResponseDoesNotMakeMainResponsePublic()
|
||||
{
|
||||
$cacheStrategy = new ResponseCacheStrategy();
|
||||
|
||||
$masterResponse = new Response();
|
||||
$masterResponse->setPrivate(); // this is the default, but let's be explicit
|
||||
$masterResponse->setMaxAge(100);
|
||||
$mainResponse = new Response();
|
||||
$mainResponse->setPrivate(); // this is the default, but let's be explicit
|
||||
$mainResponse->setMaxAge(100);
|
||||
|
||||
$embeddedResponse = new Response();
|
||||
$embeddedResponse->setPublic();
|
||||
$embeddedResponse->setSharedMaxAge(100);
|
||||
|
||||
$cacheStrategy->add($embeddedResponse);
|
||||
$cacheStrategy->update($masterResponse);
|
||||
$cacheStrategy->update($mainResponse);
|
||||
|
||||
$this->assertTrue($masterResponse->headers->hasCacheControlDirective('private'));
|
||||
$this->assertFalse($masterResponse->headers->hasCacheControlDirective('public'));
|
||||
$this->assertTrue($mainResponse->headers->hasCacheControlDirective('private'));
|
||||
$this->assertFalse($mainResponse->headers->hasCacheControlDirective('public'));
|
||||
}
|
||||
|
||||
public function testResponseIsExiprableWhenEmbeddedResponseCombinesExpiryAndValidation()
|
||||
@ -206,36 +206,36 @@ class ResponseCacheStrategyTest extends TestCase
|
||||
*/
|
||||
$cacheStrategy = new ResponseCacheStrategy();
|
||||
|
||||
$masterResponse = new Response();
|
||||
$masterResponse->setSharedMaxAge(3600);
|
||||
$mainResponse = new Response();
|
||||
$mainResponse->setSharedMaxAge(3600);
|
||||
|
||||
$embeddedResponse = new Response();
|
||||
$embeddedResponse->setSharedMaxAge(60);
|
||||
$embeddedResponse->setEtag('foo');
|
||||
|
||||
$cacheStrategy->add($embeddedResponse);
|
||||
$cacheStrategy->update($masterResponse);
|
||||
$cacheStrategy->update($mainResponse);
|
||||
|
||||
$this->assertEqualsWithDelta(60, (int) $masterResponse->headers->getCacheControlDirective('s-maxage'), 1);
|
||||
$this->assertEqualsWithDelta(60, (int) $mainResponse->headers->getCacheControlDirective('s-maxage'), 1);
|
||||
}
|
||||
|
||||
public function testResponseIsExpirableButNotValidateableWhenMasterResponseCombinesExpirationAndValidation()
|
||||
public function testResponseIsExpirableButNotValidateableWhenMainResponseCombinesExpirationAndValidation()
|
||||
{
|
||||
$cacheStrategy = new ResponseCacheStrategy();
|
||||
|
||||
$masterResponse = new Response();
|
||||
$masterResponse->setSharedMaxAge(3600);
|
||||
$masterResponse->setEtag('foo');
|
||||
$masterResponse->setLastModified(new \DateTime());
|
||||
$mainResponse = new Response();
|
||||
$mainResponse->setSharedMaxAge(3600);
|
||||
$mainResponse->setEtag('foo');
|
||||
$mainResponse->setLastModified(new \DateTime());
|
||||
|
||||
$embeddedResponse = new Response();
|
||||
$embeddedResponse->setSharedMaxAge(60);
|
||||
|
||||
$cacheStrategy->add($embeddedResponse);
|
||||
$cacheStrategy->update($masterResponse);
|
||||
$cacheStrategy->update($mainResponse);
|
||||
|
||||
$this->assertSame('60', $masterResponse->headers->getCacheControlDirective('s-maxage'));
|
||||
$this->assertFalse($masterResponse->isValidateable());
|
||||
$this->assertSame('60', $mainResponse->headers->getCacheControlDirective('s-maxage'));
|
||||
$this->assertFalse($mainResponse->isValidateable());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -51,7 +51,7 @@ class SubRequestHandlerTest extends TestCase
|
||||
$this->assertSame('https', $request->headers->get('X-Forwarded-Proto'));
|
||||
});
|
||||
|
||||
SubRequestHandler::handle($kernel, $request, HttpKernelInterface::MASTER_REQUEST, true);
|
||||
SubRequestHandler::handle($kernel, $request, HttpKernelInterface::MAIN_REQUEST, true);
|
||||
|
||||
$this->assertSame($globalState, $this->getGlobalState());
|
||||
}
|
||||
@ -75,7 +75,7 @@ class SubRequestHandlerTest extends TestCase
|
||||
$this->assertSame('for="10.0.0.1";host="localhost";proto=http', $request->headers->get('Forwarded'));
|
||||
});
|
||||
|
||||
SubRequestHandler::handle($kernel, $request, HttpKernelInterface::MASTER_REQUEST, true);
|
||||
SubRequestHandler::handle($kernel, $request, HttpKernelInterface::MAIN_REQUEST, true);
|
||||
|
||||
$this->assertSame(self::$globalState, $this->getGlobalState());
|
||||
}
|
||||
@ -97,7 +97,7 @@ class SubRequestHandlerTest extends TestCase
|
||||
$this->assertSame(1234, $request->getPort());
|
||||
});
|
||||
|
||||
SubRequestHandler::handle($kernel, $request, HttpKernelInterface::MASTER_REQUEST, true);
|
||||
SubRequestHandler::handle($kernel, $request, HttpKernelInterface::MAIN_REQUEST, true);
|
||||
|
||||
$this->assertSame($globalState, $this->getGlobalState());
|
||||
}
|
||||
@ -120,7 +120,7 @@ class SubRequestHandlerTest extends TestCase
|
||||
$this->assertSame('https', $request->getScheme());
|
||||
});
|
||||
|
||||
SubRequestHandler::handle($kernel, $request, HttpKernelInterface::MASTER_REQUEST, true);
|
||||
SubRequestHandler::handle($kernel, $request, HttpKernelInterface::MAIN_REQUEST, true);
|
||||
|
||||
$this->assertSame($globalState, $this->getGlobalState());
|
||||
}
|
||||
@ -143,7 +143,7 @@ class TestSubRequestHandlerKernel implements HttpKernelInterface
|
||||
$this->assertCallback = $assertCallback;
|
||||
}
|
||||
|
||||
public function handle(Request $request, $type = self::MASTER_REQUEST, $catch = true): Response
|
||||
public function handle(Request $request, $type = self::MAIN_REQUEST, $catch = true): Response
|
||||
{
|
||||
$assertCallback = $this->assertCallback;
|
||||
$assertCallback($request, $type, $catch);
|
||||
|
@ -54,7 +54,7 @@ class TestHttpKernel extends HttpKernel implements ControllerResolverInterface,
|
||||
}
|
||||
}
|
||||
|
||||
public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = false): Response
|
||||
public function handle(Request $request, $type = HttpKernelInterface::MAIN_REQUEST, $catch = false): Response
|
||||
{
|
||||
$this->catch = $catch;
|
||||
$this->backendRequest = [Request::getTrustedProxies(), Request::getTrustedHeaderSet(), $request];
|
||||
|
@ -43,7 +43,7 @@ class TestMultipleHttpKernel extends HttpKernel implements ControllerResolverInt
|
||||
return $this->backendRequest;
|
||||
}
|
||||
|
||||
public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = false): Response
|
||||
public function handle(Request $request, $type = HttpKernelInterface::MAIN_REQUEST, $catch = false): Response
|
||||
{
|
||||
$this->backendRequest = $request;
|
||||
|
||||
|
@ -37,7 +37,7 @@ class HttpKernelTest extends TestCase
|
||||
$this->expectException(\RuntimeException::class);
|
||||
$kernel = $this->getHttpKernel(new EventDispatcher(), function () { throw new \RuntimeException(); });
|
||||
|
||||
$kernel->handle(new Request(), HttpKernelInterface::MASTER_REQUEST, true);
|
||||
$kernel->handle(new Request(), HttpKernelInterface::MAIN_REQUEST, true);
|
||||
}
|
||||
|
||||
public function testHandleWhenControllerThrowsAnExceptionAndCatchIsFalseAndNoListenerIsRegistered()
|
||||
@ -45,7 +45,7 @@ class HttpKernelTest extends TestCase
|
||||
$this->expectException(\RuntimeException::class);
|
||||
$kernel = $this->getHttpKernel(new EventDispatcher(), function () { throw new \RuntimeException(); });
|
||||
|
||||
$kernel->handle(new Request(), HttpKernelInterface::MASTER_REQUEST, false);
|
||||
$kernel->handle(new Request(), HttpKernelInterface::MAIN_REQUEST, false);
|
||||
}
|
||||
|
||||
public function testHandleWhenControllerThrowsAnExceptionAndCatchIsTrueWithAHandlingListener()
|
||||
@ -56,7 +56,7 @@ class HttpKernelTest extends TestCase
|
||||
});
|
||||
|
||||
$kernel = $this->getHttpKernel($dispatcher, function () { throw new \RuntimeException('foo'); });
|
||||
$response = $kernel->handle(new Request(), HttpKernelInterface::MASTER_REQUEST, true);
|
||||
$response = $kernel->handle(new Request(), HttpKernelInterface::MAIN_REQUEST, true);
|
||||
|
||||
$this->assertEquals('500', $response->getStatusCode());
|
||||
$this->assertEquals('foo', $response->getContent());
|
||||
@ -74,7 +74,7 @@ class HttpKernelTest extends TestCase
|
||||
$kernel = $this->getHttpKernel($dispatcher, function () use ($exception) { throw $exception; });
|
||||
|
||||
try {
|
||||
$kernel->handle(new Request(), HttpKernelInterface::MASTER_REQUEST, true);
|
||||
$kernel->handle(new Request(), HttpKernelInterface::MAIN_REQUEST, true);
|
||||
$this->fail('LogicException expected');
|
||||
} catch (\RuntimeException $e) {
|
||||
$this->assertSame($exception, $e);
|
||||
@ -313,10 +313,10 @@ class HttpKernelTest extends TestCase
|
||||
$dispatcher = new EventDispatcher();
|
||||
$kernel = $this->getHttpKernel($dispatcher, null, $stack);
|
||||
|
||||
$kernel->handle($request, HttpKernelInterface::MASTER_REQUEST);
|
||||
$kernel->handle($request, HttpKernelInterface::MAIN_REQUEST);
|
||||
}
|
||||
|
||||
public function testInconsistentClientIpsOnMasterRequests()
|
||||
public function testInconsistentClientIpsOnMainRequests()
|
||||
{
|
||||
$this->expectException(BadRequestHttpException::class);
|
||||
$request = new Request();
|
||||
@ -331,7 +331,7 @@ class HttpKernelTest extends TestCase
|
||||
});
|
||||
|
||||
$kernel = $this->getHttpKernel($dispatcher);
|
||||
$kernel->handle($request, $kernel::MASTER_REQUEST, false);
|
||||
$kernel->handle($request, $kernel::MAIN_REQUEST, false);
|
||||
|
||||
Request::setTrustedProxies([], -1);
|
||||
}
|
||||
|
@ -190,7 +190,7 @@ class KernelTest extends TestCase
|
||||
|
||||
public function testHandleCallsHandleOnHttpKernel()
|
||||
{
|
||||
$type = HttpKernelInterface::MASTER_REQUEST;
|
||||
$type = HttpKernelInterface::MAIN_REQUEST;
|
||||
$catch = true;
|
||||
$request = new Request();
|
||||
|
||||
@ -212,7 +212,7 @@ class KernelTest extends TestCase
|
||||
|
||||
public function testHandleBootsTheKernel()
|
||||
{
|
||||
$type = HttpKernelInterface::MASTER_REQUEST;
|
||||
$type = HttpKernelInterface::MAIN_REQUEST;
|
||||
$catch = true;
|
||||
$request = new Request();
|
||||
|
||||
@ -678,7 +678,7 @@ class TestKernel implements HttpKernelInterface
|
||||
$this->terminateCalled = true;
|
||||
}
|
||||
|
||||
public function handle(Request $request, int $type = self::MASTER_REQUEST, bool $catch = true): Response
|
||||
public function handle(Request $request, int $type = self::MAIN_REQUEST, bool $catch = true): Response
|
||||
{
|
||||
}
|
||||
|
||||
|
@ -21,7 +21,7 @@
|
||||
"symfony/error-handler": "^4.4|^5.0",
|
||||
"symfony/event-dispatcher": "^5.0",
|
||||
"symfony/http-client-contracts": "^1.1|^2",
|
||||
"symfony/http-foundation": "^4.4|^5.0",
|
||||
"symfony/http-foundation": "^5.3",
|
||||
"symfony/polyfill-ctype": "^1.8",
|
||||
"symfony/polyfill-php73": "^1.9",
|
||||
"symfony/polyfill-php80": "^1.15",
|
||||
|
@ -34,7 +34,7 @@ class CsrfTokenManager implements CsrfTokenManagerInterface
|
||||
* @param string|RequestStack|callable|null $namespace
|
||||
* * null: generates a namespace using $_SERVER['HTTPS']
|
||||
* * string: uses the given string
|
||||
* * RequestStack: generates a namespace using the current master request
|
||||
* * RequestStack: generates a namespace using the current main request
|
||||
* * callable: uses the result of this callable (must return a string)
|
||||
*/
|
||||
public function __construct(TokenGeneratorInterface $generator = null, TokenStorageInterface $storage = null, $namespace = null)
|
||||
@ -50,7 +50,7 @@ class CsrfTokenManager implements CsrfTokenManagerInterface
|
||||
$this->namespace = $superGlobalNamespaceGenerator;
|
||||
} elseif ($namespace instanceof RequestStack) {
|
||||
$this->namespace = function () use ($namespace, $superGlobalNamespaceGenerator) {
|
||||
if ($request = $namespace->getMasterRequest()) {
|
||||
if ($request = $namespace->getMainRequest()) {
|
||||
return $request->isSecure() ? 'https-' : '';
|
||||
}
|
||||
|
||||
|
@ -66,11 +66,20 @@ final class LazyResponseEvent extends RequestEvent
|
||||
return $this->event->getRequestType();
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function isMainRequest(): bool
|
||||
{
|
||||
return $this->event->isMainRequest();
|
||||
}
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function isMasterRequest(): bool
|
||||
{
|
||||
return $this->event->isMasterRequest();
|
||||
trigger_deprecation('symfony/security-http', '5.3', '"%s()" is deprecated, use "isMainRequest()" instead.');
|
||||
|
||||
return $this->event->isMainRequest();
|
||||
}
|
||||
}
|
||||
|
@ -42,7 +42,7 @@ final class LoginThrottlingListener implements EventSubscriberInterface
|
||||
return;
|
||||
}
|
||||
|
||||
$request = $this->requestStack->getMasterRequest();
|
||||
$request = $this->requestStack->getMainRequest();
|
||||
$request->attributes->set(Security::LAST_USERNAME, $passport->getBadge(UserBadge::class)->getUserIdentifier());
|
||||
|
||||
$limit = $this->limiter->consume($request);
|
||||
|
@ -43,7 +43,7 @@ class Firewall implements EventSubscriberInterface
|
||||
|
||||
public function onKernelRequest(RequestEvent $event)
|
||||
{
|
||||
if (!$event->isMasterRequest()) {
|
||||
if (!$event->isMainRequest()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -86,7 +86,7 @@ class ContextListener extends AbstractListener
|
||||
*/
|
||||
public function authenticate(RequestEvent $event)
|
||||
{
|
||||
if (!$this->registered && null !== $this->dispatcher && $event->isMasterRequest()) {
|
||||
if (!$this->registered && null !== $this->dispatcher && $event->isMainRequest()) {
|
||||
$this->dispatcher->addListener(KernelEvents::RESPONSE, [$this, 'onKernelResponse']);
|
||||
$this->registered = true;
|
||||
}
|
||||
@ -153,7 +153,7 @@ class ContextListener extends AbstractListener
|
||||
*/
|
||||
public function onKernelResponse(ResponseEvent $event)
|
||||
{
|
||||
if (!$event->isMasterRequest()) {
|
||||
if (!$event->isMainRequest()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -26,7 +26,7 @@ class ResponseListener implements EventSubscriberInterface
|
||||
{
|
||||
public function onKernelResponse(ResponseEvent $event)
|
||||
{
|
||||
if (!$event->isMasterRequest()) {
|
||||
if (!$event->isMainRequest()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -74,7 +74,7 @@ class AccessListenerTest extends TestCase
|
||||
$this->createMock(AuthenticationManagerInterface::class)
|
||||
);
|
||||
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST));
|
||||
}
|
||||
|
||||
public function testHandleWhenTheTokenIsNotAuthenticated()
|
||||
@ -138,7 +138,7 @@ class AccessListenerTest extends TestCase
|
||||
$authManager
|
||||
);
|
||||
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST));
|
||||
}
|
||||
|
||||
public function testHandleWhenThereIsNoAccessMapEntryMatchingTheRequest()
|
||||
@ -173,7 +173,7 @@ class AccessListenerTest extends TestCase
|
||||
$this->createMock(AuthenticationManagerInterface::class)
|
||||
);
|
||||
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST));
|
||||
}
|
||||
|
||||
public function testHandleWhenAccessMapReturnsEmptyAttributes()
|
||||
@ -201,7 +201,7 @@ class AccessListenerTest extends TestCase
|
||||
$this->createMock(AuthenticationManagerInterface::class)
|
||||
);
|
||||
|
||||
$event = new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST);
|
||||
$event = new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST);
|
||||
|
||||
$listener(new LazyResponseEvent($event));
|
||||
}
|
||||
@ -233,7 +233,7 @@ class AccessListenerTest extends TestCase
|
||||
$this->createMock(AuthenticationManagerInterface::class)
|
||||
);
|
||||
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST));
|
||||
}
|
||||
|
||||
public function testHandleWhenTheSecurityTokenStorageHasNoTokenAndExceptionOnTokenIsFalse()
|
||||
@ -263,7 +263,7 @@ class AccessListenerTest extends TestCase
|
||||
false
|
||||
);
|
||||
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST));
|
||||
}
|
||||
|
||||
public function testHandleWhenPublicAccessIsAllowedAndExceptionOnTokenIsFalse()
|
||||
@ -292,7 +292,7 @@ class AccessListenerTest extends TestCase
|
||||
false
|
||||
);
|
||||
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST));
|
||||
}
|
||||
|
||||
public function testHandleWhenPublicAccessWhileAuthenticated()
|
||||
@ -323,7 +323,7 @@ class AccessListenerTest extends TestCase
|
||||
false
|
||||
);
|
||||
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST));
|
||||
}
|
||||
|
||||
public function testHandleMWithultipleAttributesShouldBeHandledAsAnd()
|
||||
@ -363,6 +363,6 @@ class AccessListenerTest extends TestCase
|
||||
$this->createMock(AuthenticationManagerInterface::class)
|
||||
);
|
||||
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST));
|
||||
}
|
||||
}
|
||||
|
@ -44,7 +44,7 @@ class AnonymousAuthenticationListenerTest extends TestCase
|
||||
;
|
||||
|
||||
$listener = new AnonymousAuthenticationListener($tokenStorage, 'TheSecret', null, $authenticationManager);
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), new Request(), HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), new Request(), HttpKernelInterface::MAIN_REQUEST));
|
||||
}
|
||||
|
||||
public function testHandleWithTokenStorageHavingNoToken()
|
||||
@ -75,7 +75,7 @@ class AnonymousAuthenticationListenerTest extends TestCase
|
||||
;
|
||||
|
||||
$listener = new AnonymousAuthenticationListener($tokenStorage, 'TheSecret', null, $authenticationManager);
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), new Request(), HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), new Request(), HttpKernelInterface::MAIN_REQUEST));
|
||||
}
|
||||
|
||||
public function testHandledEventIsLogged()
|
||||
@ -90,6 +90,6 @@ class AnonymousAuthenticationListenerTest extends TestCase
|
||||
$authenticationManager = $this->createMock(AuthenticationManagerInterface::class);
|
||||
|
||||
$listener = new AnonymousAuthenticationListener($tokenStorage, 'TheSecret', $logger, $authenticationManager);
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), new Request(), HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), new Request(), HttpKernelInterface::MAIN_REQUEST));
|
||||
}
|
||||
}
|
||||
|
@ -112,7 +112,7 @@ class ContextListenerTest extends TestCase
|
||||
$event = new ResponseEvent(
|
||||
$this->createMock(HttpKernelInterface::class),
|
||||
$request,
|
||||
HttpKernelInterface::MASTER_REQUEST,
|
||||
HttpKernelInterface::MAIN_REQUEST,
|
||||
new Response()
|
||||
);
|
||||
|
||||
@ -131,7 +131,7 @@ class ContextListenerTest extends TestCase
|
||||
$event = new ResponseEvent(
|
||||
$this->createMock(HttpKernelInterface::class),
|
||||
$request,
|
||||
HttpKernelInterface::MASTER_REQUEST,
|
||||
HttpKernelInterface::MAIN_REQUEST,
|
||||
new Response()
|
||||
);
|
||||
|
||||
@ -192,7 +192,7 @@ class ContextListenerTest extends TestCase
|
||||
$listener = new ContextListener($tokenStorage, [], 'key123', null, $dispatcher);
|
||||
|
||||
$event->expects($this->any())
|
||||
->method('isMasterRequest')
|
||||
->method('isMainRequest')
|
||||
->willReturn(true);
|
||||
$event->expects($this->any())
|
||||
->method('getRequest')
|
||||
@ -221,7 +221,7 @@ class ContextListenerTest extends TestCase
|
||||
->method('getSession')
|
||||
->willReturn($session);
|
||||
|
||||
$event = new ResponseEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST, new Response());
|
||||
$event = new ResponseEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST, new Response());
|
||||
|
||||
$dispatcher->expects($this->once())
|
||||
->method('removeListener')
|
||||
@ -334,7 +334,7 @@ class ContextListenerTest extends TestCase
|
||||
});
|
||||
|
||||
$listener = new ContextListener($tokenStorage, [new NotSupportingUserProvider(true), new NotSupportingUserProvider(false), new SupportingUserProvider($refreshedUser)], 'context_key', null, $eventDispatcher);
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST));
|
||||
|
||||
$this->assertNull($tokenStorage->getToken());
|
||||
}
|
||||
@ -351,7 +351,7 @@ class ContextListenerTest extends TestCase
|
||||
|
||||
$tokenStorage = new TokenStorage();
|
||||
$listener = new ContextListener($tokenStorage, [], 'context_key', null, null, null, [$tokenStorage, 'getToken']);
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST));
|
||||
|
||||
$this->assertSame($usageIndex, $session->getUsageIndex());
|
||||
}
|
||||
@ -370,7 +370,7 @@ class ContextListenerTest extends TestCase
|
||||
$tokenStorage = new TokenStorage();
|
||||
|
||||
$listener = new ContextListener($tokenStorage, [], 'context_key', null, null, null, [$tokenStorage, 'getToken']);
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST));
|
||||
}
|
||||
|
||||
protected function runSessionOnKernelResponse($newToken, $original = null)
|
||||
@ -402,7 +402,7 @@ class ContextListenerTest extends TestCase
|
||||
$event = new ResponseEvent(
|
||||
$this->createMock(HttpKernelInterface::class),
|
||||
$request,
|
||||
HttpKernelInterface::MASTER_REQUEST,
|
||||
HttpKernelInterface::MAIN_REQUEST,
|
||||
new Response()
|
||||
);
|
||||
|
||||
@ -452,7 +452,7 @@ class ContextListenerTest extends TestCase
|
||||
if ($rememberMeServices) {
|
||||
$listener->setRememberMeServices($rememberMeServices);
|
||||
}
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST));
|
||||
$listener(new RequestEvent($this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST));
|
||||
|
||||
if (null !== $user) {
|
||||
++$usageIndex;
|
||||
|
@ -203,7 +203,7 @@ class ExceptionListenerTest extends TestCase
|
||||
$kernel = $this->createMock(HttpKernelInterface::class);
|
||||
}
|
||||
|
||||
return new ExceptionEvent($kernel, Request::create('/'), HttpKernelInterface::MASTER_REQUEST, $exception);
|
||||
return new ExceptionEvent($kernel, Request::create('/'), HttpKernelInterface::MAIN_REQUEST, $exception);
|
||||
}
|
||||
|
||||
private function createExceptionListener(TokenStorageInterface $tokenStorage = null, AuthenticationTrustResolverInterface $trustResolver = null, HttpUtils $httpUtils = null, AuthenticationEntryPointInterface $authenticationEntryPoint = null, $errorPage = null, AccessDeniedHandlerInterface $accessDeniedHandler = null)
|
||||
|
@ -352,7 +352,7 @@ class RememberMeListenerTest extends TestCase
|
||||
$request = $request ?? new Request();
|
||||
|
||||
$event = $this->getMockBuilder(RequestEvent::class)
|
||||
->setConstructorArgs([$this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MASTER_REQUEST])
|
||||
->setConstructorArgs([$this->createMock(HttpKernelInterface::class), $request, HttpKernelInterface::MAIN_REQUEST])
|
||||
->getMock();
|
||||
$event
|
||||
->expects($this->any())
|
||||
|
@ -53,7 +53,7 @@ class SwitchUserListenerTest extends TestCase
|
||||
$this->userChecker = $this->createMock(UserCheckerInterface::class);
|
||||
$this->accessDecisionManager = $this->createMock(AccessDecisionManagerInterface::class);
|
||||
$this->request = new Request();
|
||||
$this->event = new RequestEvent($this->createMock(HttpKernelInterface::class), $this->request, HttpKernelInterface::MASTER_REQUEST);
|
||||
$this->event = new RequestEvent($this->createMock(HttpKernelInterface::class), $this->request, HttpKernelInterface::MAIN_REQUEST);
|
||||
}
|
||||
|
||||
public function testFirewallNameIsRequired()
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user