protected function params(Action $action, Request $request) { $inputSpec = $action->getInput(); if (!$inputSpec) { return []; } $input = $this->resolve($inputSpec); return (array) $input($request); }
/** * Use the action collaborators to get a response. * * @param Action $action * @param ServerRequestInterface $request * @param ResponseInterface $response * @return ResponseInterface */ private function getResponse(Action $action, ServerRequestInterface $request, ResponseInterface $response) { $domain = $this->resolve($action->getDomain()); $input = $this->resolve($action->getInput()); $responder = $this->resolve($action->getResponder()); $payload = $this->getPayload($domain, $input, $request); $response = $this->getResponseForPayload($responder, $request, $response, $payload); return $response; }