'Retrieved Remark', 'message' => 'You have successfully retrieved a Remark' ]; } /** @var CanFetchRemark */ private $canFetchRemark; /** @var FetchesRemark */ private $fetchesRemark; /** * FetchRemarkControllersLogic constructor. * @param CanFetchRemark $canFetchRemark * @param FetchesRemark $fetchesRemark */ public function __construct(CanFetchRemark $canFetchRemark, FetchesRemark $fetchesRemark) { $this->canFetchRemark = $canFetchRemark; $this->fetchesRemark = $fetchesRemark; } /** * @param Request $request * @return JsonResponse * @throws ErrorException */ public function logic(Request $request) : JsonResponse { $this->canFetchRemark->passes(); $query = $this->fetchesRemark->execute(['id' => $request->route('id')]); return $this->resourceResponse(new RemarkResource($query)); } }