Ejemplo n.º 1
0
 /**
  * Constructor.
  *
  * @param array $values Defaults to override
  */
 public function __construct(array $values = [])
 {
     parent::__construct();
     $this['debug'] = false;
     $this['app.catch_errors'] = true;
     $this['app.handler'] = $this->share(function ($app) {
         $handler = new Handler(null, null, ['iterate' => true]);
         $handler->handlers(array_map([$handler, 'handler'], $app['app.handlers']));
         return $handler;
     });
     $this['app.handlers'] = $this->share(function ($app) {
         return [new Middleware\ResponseMiddleware($app), new Middleware\RouterMiddleware($app)];
     });
     $this['app.context'] = $this->share(function ($app) {
         return new ContextProxy();
     });
     $this['app.routes'] = $this->share(function ($app) {
         return new Route();
     });
     foreach ($values as $key => $value) {
         $this[$key] = $value;
     }
 }