Added Grav\Framework\DI\Container class

This commit is contained in:
Matias Griese
2018-10-22 11:27:30 +03:00
parent bdc3f41ac2
commit beb1b41317
5 changed files with 27 additions and 6 deletions

View File

@@ -5,6 +5,7 @@
* Added PSR-7 and PSR-15 classes
* Added `RequestHandler` class
* Added `Page::httpResponseCode()` and `Page::httpHeaders()` methods
* Added `Grav\Framework\DI\Container` class
1. [](#improved)
* Added apcu autoloader optimization
1. [](#bugfix)

View File

@@ -29,11 +29,11 @@ use Grav\Common\Processors\SiteSetupProcessor;
use Grav\Common\Processors\TasksProcessor;
use Grav\Common\Processors\ThemesProcessor;
use Grav\Common\Processors\TwigProcessor;
use Grav\Framework\DI\Container;
use Grav\Framework\Psr7\Response;
use Grav\Framework\RequestHandler\RequestHandler;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use RocketTheme\Toolbox\DI\Container;
use RocketTheme\Toolbox\Event\Event;
use RocketTheme\Toolbox\Event\EventDispatcher;
@@ -140,7 +140,7 @@ class Grav extends Container
*/
public function process()
{
$container = new \Pimple\Psr11\Container(new Container(
$container = new Container(
[
'siteSetupProcessor' => function () {
return new SiteSetupProcessor($this);
@@ -194,7 +194,7 @@ class Grav extends Container
return new RenderProcessor($this);
},
]
));
);
$default = function (ServerRequestInterface $request) {
return new Response(404);

View File

@@ -13,7 +13,7 @@ use Grav\Framework\RequestHandler\RequestHandler;
use Psr\Http\Server\MiddlewareInterface;
use RocketTheme\Toolbox\Event\Event;
class RequestHandlerInitEvent extends Event
class RequestHandlerEvent extends Event
{
public function addMiddleware($name, MiddlewareInterface $middleware)
{

View File

@@ -9,11 +9,11 @@
namespace Grav\Common\Processors;
use Grav\Common\Processors\Events\RequestHandlerEvent;
use Grav\Common\Uri;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
use RocketTheme\Toolbox\Event\Event;
class RequestProcessor extends ProcessorBase
{
@@ -28,7 +28,7 @@ class RequestProcessor extends ProcessorBase
->withAttribute('route', Uri::getCurrentRoute())
->withAttribute('referrer', $this->container['uri']->referrer());
$event = new Event(['handler' => $handler]);
$event = new RequestHandlerEvent(['handler' => $handler]);
$this->container->fireEvent('onRequestHandlerInit', $event);
$this->stopTimer();

View File

@@ -0,0 +1,20 @@
<?php
declare(strict_types=1);
namespace Grav\Framework\DI;
use Psr\Container\ContainerInterface;
class Container extends \Pimple\Container implements ContainerInterface
{
public function get($id)
{
return $this->offsetGet($id);
}
public function has($id)
{
return $this->offsetExists($id);
}
}