/**
  * @param Request       $request
  * @param Response      $response
  * @param callable|NULL $next
  *
  * @return Response
  */
 public function __invoke(Request $request, Response $response, callable $next = NULL)
 {
     $elapsed_time = elapsed_time_since_request();
     $response->getBody()->write("<div>Elapsed time : {$elapsed_time}</div>" . PHP_EOL);
     // delegate to parent
     return parent::__invoke($request, $response, $next);
 }
 /**
  * Routing Middleware entry point.
  *
  * Route determination and execution is handled entirely by this object.
  *
  * @param Request       $request
  * @param Response      $response
  * @param callable|NULL $next
  *
  * @return Response
  */
 public function __invoke(Request $request, Response $response, callable $next = NULL)
 {
     // we need to get the routing object here due to the strict
     // middleware __invoke method signature.
     $this->routing = $this->forge->make(Routing::class);
     // evaluate the route and return state
     list($status, $action, $input) = $this->routing->evaluate_route($this->routing->match());
     // verify that the route is valid
     $error_response = $this->routing->getRouteError($response, $status);
     // has an error been detected?
     if (is_null($error_response)) {
         // No, so execute the route
         return $this->routing->executeRouteAction($input, $action) ? parent::__invoke($request, $response, $next) : $response;
     } else {
         // otherwise return the error response
         return $error_response;
     }
 }
 /**
  * @param Request  $request
  * @param Response $response
  * @param callable $next
  *
  * @return Response
  */
 public function __invoke(Request $request, Response $response, callable $next = NULL)
 {
     $response->getBody()->write('<div>End of Line.</div>' . PHP_EOL);
     // delegate to parent
     return parent::__invoke($request, $response, $next);
 }
Exemple #4
0
 /**
  * @param Request       $request
  * @param Response      $response
  * @param callable|NULL $next
  *
  * @return Response
  */
 public function __invoke(Request $request, Response $response, callable $next = NULL)
 {
     $msg = $this->logged_in ? "<div>You are logged in!</div>" : "<div>You need to login.</div>";
     $response->getBody()->write($msg);
     return $this->logged_in ? parent::__invoke($request, $response, $next) : $response;
 }