Skip to content

Commit 4210d9e

Browse files
committed
HttpExtension: uses interfaces IRequest & IResponse instead of Request & Response (BC break) [Closes #90]
1 parent c8c14c1 commit 4210d9e

File tree

1 file changed

+17
-4
lines changed

1 file changed

+17
-4
lines changed

src/Bridges/HttpDI/HttpExtension.php

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -43,20 +43,33 @@ public function loadConfiguration()
4343
$config = $this->validateConfig($this->defaults);
4444

4545
$builder->addDefinition($this->prefix('requestFactory'))
46-
->setClass(Nette\Http\RequestFactory::class)
46+
->setFactory(Nette\Http\RequestFactory::class)
4747
->addSetup('setProxy', [$config['proxy']]);
4848

4949
$builder->addDefinition($this->prefix('request'))
50-
->setClass(Nette\Http\Request::class)
51-
->setFactory('@Nette\Http\RequestFactory::createHttpRequest');
50+
->setFactory('@Nette\Http\RequestFactory::createHttpRequest')
51+
->setClass(Nette\Http\IRequest::class);
5252

5353
$builder->addDefinition($this->prefix('response'))
54-
->setClass(Nette\Http\Response::class);
54+
->setFactory(Nette\Http\Response::class)
55+
->setClass(Nette\Http\IResponse::class);
5556

5657
if ($this->name === 'http') {
5758
$builder->addAlias('nette.httpRequestFactory', $this->prefix('requestFactory'));
5859
$builder->addAlias('httpRequest', $this->prefix('request'));
5960
$builder->addAlias('httpResponse', $this->prefix('response'));
61+
62+
$builder->addDefinition($this->prefix('oldRequest'))
63+
->setFactory($this->prefix('@request'))
64+
->setClass(Nette\Http\Request::class)
65+
->addSetup('::trigger_error', ['Service Nette\Http\Request should be autowired via interface Nette\Http\IRequest.', E_USER_DEPRECATED])
66+
->setAutowired(Nette\Http\Request::class);
67+
68+
$builder->addDefinition($this->prefix('oldResponse'))
69+
->setFactory($this->prefix('@response'))
70+
->setClass(Nette\Http\Response::class)
71+
->addSetup('::trigger_error', ['Service Nette\Http\Response should be autowired via interface Nette\Http\IResponse.', E_USER_DEPRECATED])
72+
->setAutowired(Nette\Http\Response::class);
6073
}
6174
}
6275

0 commit comments

Comments
 (0)