Example #1
0
 /**
  * @param callable|string $controller
  * @param array           $vars
  * @param BaseRoute       $route
  *
  * @throws \Exception
  *
  * @return ApiResponse
  */
 public function dispatch(callable $controller, array $vars = [], BaseRoute $route = null)
 {
     if ($group = $route->getParentGroup()) {
         $this->response = (new PipelineProcessor())->handlePayload(new Payload($group, $this->request, $this->response))->getResponse();
     }
     $this->response = (new PipelineProcessor())->handlePayload(new Payload($route, $this->request, $this->response))->getResponse();
     return call_user_func_array($controller, [$this->request, $this->response, $vars]);
 }