/** * @inheritDoc */ protected function getParsedBody($body) { $body = json_decode($body, true); if (json_last_error() !== JSON_ERROR_NONE) { $message = 'JSON ' . json_last_error_msg(); throw HttpException::badRequest($message); } return $body; }
/** * @param Dispatcher $dispatcher * @param string $method * @param string $path * * @return [Action, $arguments] * * @throws HttpNotFound * @throws HttpMethodNotAllowed */ private function dispatch(Dispatcher $dispatcher, $method, $path) { $route = $dispatcher->dispatch($method, $path); $status = array_shift($route); if (Dispatcher::FOUND === $status) { return $route; } if (Dispatcher::METHOD_NOT_ALLOWED === $status) { $allowed = array_shift($route); throw HttpException::methodNotAllowed($path, $method, $allowed); } throw HttpException::notFound($path); }
/** * @inheritDoc */ protected function throwException($message) { throw HttpException::badRequest($message); }