createContact = $createContact; } public function execute(string $type, int $referenceId, Request $request) { try{ $object = new ContactObject($request->input('name'), $request->input('designation'), $request->input('contact'), $request->input('email')); return $this->createContact->execute($object, $type, $referenceId); } catch (CannotCreateContactException $exception){ throw new InternalServerErrorException("Failed to create contact because {$exception->getMessage()}"); } } }