'Created Company', 'message' => 'You have successfully created a new Company' ]; } /** @var CreateCompanyProcessor */ private $createCompanyProcessor; /** * CreateCompanyLogic constructor. * @param CreateCompanyProcessor $createCompanyProcessor */ public function __construct(CreateCompanyProcessor $createCompanyProcessor) { $this->createCompanyProcessor = $createCompanyProcessor; } /** * @param Request $request * @return JsonResponse * @throws ErrorException */ public function logic(Request $request) : JsonResponse { try { return $this->resourceResponse(new CompanyResource($this->createCompanyProcessor->execute($request))); } catch (\Exception $exception){ throw new ErrorException($exception->getMessage(), $exception->getCode()); } } }