From 0f207f629e17d71ba1b1c9a90979d80fea351b2a Mon Sep 17 00:00:00 2001 From: Dawid Date: Sat, 8 Dec 2018 19:06:35 +0100 Subject: [PATCH] Moved middlewareprovider to http application layer --- src/Application/Application.php | 5 ----- src/Application/HttpApplication.php | 10 ++++++++++ tests/Fixtures/NullApplication.php | 6 +++--- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/src/Application/Application.php b/src/Application/Application.php index 6a0cf1a..41b19d1 100644 --- a/src/Application/Application.php +++ b/src/Application/Application.php @@ -10,7 +10,6 @@ use Igni\Application\Listeners\OnShutDownListener; use Igni\Application\Providers\ConfigProvider; use Igni\Application\Providers\ControllerProvider; -use Igni\Application\Providers\MiddlewareProvider; use Igni\Application\Providers\ServiceProvider; use Igni\Container\DependencyResolver; use Igni\Container\ServiceLocator; @@ -188,9 +187,5 @@ protected function initializeModule(&$module): void if ($module instanceof ServiceProvider) { $module->provideServices($this->getContainer()); } - - if ($module instanceof MiddlewareProvider) { - $module->provideMiddleware($this->getMiddlewareAggregator()); - } } } diff --git a/src/Application/HttpApplication.php b/src/Application/HttpApplication.php index 772f229..e0e9a25 100644 --- a/src/Application/HttpApplication.php +++ b/src/Application/HttpApplication.php @@ -7,6 +7,7 @@ use Igni\Application\Http\Controller; use Igni\Application\Http\MiddlewareAggregator; use Igni\Application\Http\GenericRouter; +use Igni\Application\Providers\MiddlewareProvider; use Igni\Network\Http\Middleware\CallableMiddleware; use Igni\Network\Http\Middleware\ErrorMiddleware; use Igni\Network\Http\Middleware\MiddlewarePipe; @@ -366,6 +367,15 @@ protected function getMiddlewarePipe(): MiddlewarePipe return $this->pipeline = $this->composeMiddlewarePipe(); } + protected function initializeModule(&$module): void + { + parent::initializeModule($module); + + if ($module instanceof MiddlewareProvider) { + $module->provideMiddleware($this->getMiddlewareAggregator()); + } + } + private function composeMiddlewarePipe(): MiddlewarePipe { $pipe = new MiddlewarePipe(); diff --git a/tests/Fixtures/NullApplication.php b/tests/Fixtures/NullApplication.php index 7b4a7bf..26324aa 100644 --- a/tests/Fixtures/NullApplication.php +++ b/tests/Fixtures/NullApplication.php @@ -2,21 +2,21 @@ namespace Igni\Tests\Fixtures; -use Igni\Application\Application; use Igni\Application\Controller; use Igni\Application\ControllerAggregator; use Igni\Application\Http\MiddlewareAggregator; use Igni\Application\HttpApplication; use Igni\Container\ServiceLocator; +use Igni\Network\Server\HttpServer; use Psr\Http\Server\MiddlewareInterface; -class NullApplication extends Application +class NullApplication extends HttpApplication { public $onBoot = false; public $onShutDown = false; public $onRun = false; - public function run(): void + public function run(HttpServer $server = null): void { $this->handleOnBootListeners(); $this->initialize();