getQuery(); if ($query->hasSearchCriteria()) { return $query->search(PaginationStrategy::OFFSET())->toResponse($request); } return $query->index()->toResponse($request); } /** * Store a newly created resource. * * @param SongStoreRequest $request * @return JsonResponse */ public function store(SongStoreRequest $request): JsonResponse { $resource = $request->getQuery()->store(); return $resource->toResponse($request); } /** * Display the specified resource. * * @param SongShowRequest $request * @param Song $song * @return JsonResponse */ public function show(SongShowRequest $request, Song $song): JsonResponse { $resource = $request->getQuery()->show($song); return $resource->toResponse($request); } /** * Update the specified resource. * * @param SongUpdateRequest $request * @param Song $song * @return JsonResponse */ public function update(SongUpdateRequest $request, Song $song): JsonResponse { $resource = $request->getQuery()->update($song); return $resource->toResponse($request); } /** * Remove the specified resource. * * @param SongDestroyRequest $request * @param Song $song * @return JsonResponse */ public function destroy(SongDestroyRequest $request, Song $song): JsonResponse { $resource = $request->getQuery()->destroy($song); return $resource->toResponse($request); } /** * Restore the specified resource. * * @param SongRestoreRequest $request * @param Song $song * @return JsonResponse */ public function restore(SongRestoreRequest $request, Song $song): JsonResponse { $resource = $request->getQuery()->restore($song); return $resource->toResponse($request); } /** * Hard-delete the specified resource. * * @param SongForceDeleteRequest $request * @param Song $song * @return JsonResponse */ public function forceDelete(SongForceDeleteRequest $request, Song $song): JsonResponse { return $request->getQuery()->forceDelete($song); } }