shortUrlService = $shortUrlService; } /** * @param Request $request * @param Response $response * @param callable|null $out * @return null|Response */ public function dispatch(Request $request, Response $response, callable $out = null) { try { $query = $request->getQueryParams(); $shortUrls = $this->shortUrlService->listShortUrls(isset($query['page']) ? $query['page'] : 1); return new JsonResponse(['shortUrls' => $this->serializePaginator($shortUrls)]); } catch (\Exception $e) { return new JsonResponse([ 'error' => RestUtils::UNKNOWN_ERROR, 'message' => 'Unexpected error occured', ], 500); } } }