Skip to content
This repository was archived by the owner on Jan 29, 2020. It is now read-only.

Commit 9db3610

Browse files
committed
Replace ApplicationRunner with zend-httphandlerrunner
This patch removes the `ApplicationRunner`, and replaces it with zend-httphandlerrunner's `RequestHandlerInterface` and emitters.
1 parent 84d6857 commit 9db3610

16 files changed

+95
-258
lines changed

composer.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
"zendframework/zend-diactoros": "^1.3.10",
3131
"zendframework/zend-expressive-router": "^3.0.0alpha1",
3232
"zendframework/zend-expressive-template": "^2.0.0-dev",
33+
"zendframework/zend-httphandlerrunner": "^1.0",
3334
"zendframework/zend-stratigility": "^3.0.0alpha2"
3435
},
3536
"require-dev": {

composer.lock

Lines changed: 55 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Application.php

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
use Psr\Http\Server\MiddlewareInterface;
1515
use Psr\Http\Server\RequestHandlerInterface;
1616
use Zend\Expressive\Router\PathBasedRoutingMiddleware;
17+
use Zend\HttpHandlerRunner\RequestHandlerRunner;
1718
use Zend\Stratigility\MiddlewarePipeInterface;
1819

1920
use function Zend\Stratigility\path;
@@ -36,15 +37,15 @@ class Application implements MiddlewareInterface, RequestHandlerInterface
3637
private $routes;
3738

3839
/**
39-
* @var ApplicationRunner
40+
* @var RequestHandlerRunner
4041
*/
4142
private $runner;
4243

4344
public function __construct(
4445
MiddlewareFactory $factory,
4546
MiddlewarePipeInterface $pipeline,
4647
PathBasedRoutingMiddleware $routes,
47-
ApplicationRunner $runner
48+
RequestHandlerRunner $runner
4849
) {
4950
$this->factory = $factory;
5051
$this->pipeline = $pipeline;
@@ -73,11 +74,11 @@ public function process(ServerRequestInterface $request, RequestHandlerInterface
7374
/**
7475
* Run the application.
7576
*
76-
* Proxies to the ApplicationRunner::run() method.
77+
* Proxies to the RequestHandlerRunner::run() method.
7778
*/
78-
public function run(ServerRequestInterface $request = null) : void
79+
public function run() : void
7980
{
80-
$this->runner->run($request);
81+
$this->runner->run();
8182
}
8283

8384
/**

src/ApplicationRunner.php

Lines changed: 0 additions & 100 deletions
This file was deleted.

src/ConfigProvider.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111

1212
use Psr\Http\Message\ResponseInterface;
1313
use Zend\Diactoros\Response\EmitterInterface;
14+
use Zend\HttpHandlerRunner\RequestHandlerRunner;
1415
use Zend\Stratigility\Middleware\ErrorHandler;
1516
use Zend\Stratigility\Middleware\ErrorResponseGenerator;
1617

@@ -40,7 +41,6 @@ public function getDependencies() : array
4041
'factories' => [
4142
Application::class => Container\ApplicationFactory::class,
4243
ApplicationPipeline::class => Container\ApplicationPipelineFactory::class,
43-
ApplicationRunner::class => Container\ApplicationRunnerFactory::class,
4444
EmitterInterface::class => Container\EmitterFactory::class,
4545
ErrorHandler::class => Container\ErrorHandlerFactory::class,
4646
// Change the following in development to the WhoopsErrorResponseGeneratorFactory:
@@ -49,6 +49,7 @@ public function getDependencies() : array
4949
MiddlewareContainer::class => Container\MiddlewareContainerFactory::class,
5050
MiddlewareFactory::class => Container\MiddlewareFactoryFactory::class,
5151
Middleware\NotFoundMiddleware::class => Container\NotFoundMiddlewareFactory::class,
52+
RequestHandlerRunner::class => Container\RequestHandlerRunnerFactory::class,
5253
ResponseInterface::class => Container\ResponseFactory::class,
5354
Router\DispatchMiddleware::class => Container\DispatchMiddlewareFactory::class,
5455
Router\PathBasedRoutingMiddleware::class => Container\RouteMiddlewareFactory::class,

src/Container/ApplicationFactory.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@
1212
use Psr\Container\ContainerInterface;
1313
use Zend\Expressive\Application;
1414
use Zend\Expressive\ApplicationPipeline;
15-
use Zend\Expressive\ApplicationRunner;
1615
use Zend\Expressive\MiddlewareFactory;
1716
use Zend\Expressive\Router\PathBasedRoutingMiddleware;
17+
use Zend\HttpHandlerRunner\RequestHandlerRunner;
1818
use Zend\Stratigility\MiddlewarePipe;
1919

2020
/**
@@ -27,7 +27,7 @@
2727
* - Zend\Expressive\ApplicationPipeline, which should resolve to a
2828
* Zend\Stratigility\MiddlewarePipeInterface instance.
2929
* - Zend\Expressive\Middleware\RouteMiddleware.
30-
* - Zend\Expressive\ApplicationRunner.
30+
* - Zend\HttpHandler\RequestHandlerRunner.
3131
*/
3232
class ApplicationFactory
3333
{
@@ -37,7 +37,7 @@ public function __invoke(ContainerInterface $container) : Application
3737
$container->get(MiddlewareFactory::class),
3838
$container->get(ApplicationPipeline::class),
3939
$container->get(PathBasedRoutingMiddleware::class),
40-
$container->get(ApplicationRunner::class)
40+
$container->get(RequestHandlerRunner::class)
4141
);
4242
}
4343
}

src/Container/EmitterFactory.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@
1010
namespace Zend\Expressive\Container;
1111

1212
use Psr\Container\ContainerInterface;
13-
use Zend\Diactoros\Response\EmitterInterface;
14-
use Zend\Diactoros\Response\SapiEmitter;
15-
use Zend\Expressive\Emitter\EmitterStack;
13+
use Zend\HttpHandlerRunner\Emitter\EmitterInterface;
14+
use Zend\HttpHandlerRunner\Emitter\EmitterStack;
15+
use Zend\HttpHandlerRunner\Emitter\SapiEmitter;
1616

1717
class EmitterFactory
1818
{

src/Container/ApplicationRunnerFactory.php renamed to src/Container/RequestHandlerRunnerFactory.php

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@
1010
namespace Zend\Expressive\Container;
1111

1212
use Psr\Container\ContainerInterface;
13-
use Zend\Diactoros\Response\EmitterInterface;
1413
use Zend\Expressive\Application;
1514
use Zend\Expressive\ApplicationPipeline;
16-
use Zend\Expressive\ApplicationRunner;
1715
use Zend\Expressive\ServerRequestFactory;
1816
use Zend\Expressive\ServerRequestErrorResponseGenerator;
17+
use Zend\HttpHandlerRunner\Emitter\EmitterInterface;
18+
use Zend\HttpHandlerRunner\RequestHandlerRunner;
1919

2020
/**
2121
* Create an ApplicationRunner instance.
@@ -33,13 +33,13 @@
3333
* to a PHP callable that accepts a Throwable argument, and which will return
3434
* a Psr\Http\Message\ResponseInterface instance.
3535
*
36-
* It also consumes the service Zend\Diactoros\Response\EmitterInterface.
36+
* It also consumes the service Zend\HttpHandlerRunner\Emitter\EmitterInterface.
3737
*/
38-
class ApplicationRunnerFactory
38+
class RequestHandlerRunnerFactory
3939
{
40-
public function __invoke(ContainerInterface $container) : ApplicationRunner
40+
public function __invoke(ContainerInterface $container) : RequestHandlerRunner
4141
{
42-
return new ApplicationRunner(
42+
return new RequestHandlerRunner(
4343
$container->get(ApplicationPipeline::class),
4444
$container->get(EmitterInterface::class),
4545
$container->get(ServerRequestFactory::class),

0 commit comments

Comments
 (0)