canCreateSegment = $canCreateSegment; $this->createsSegment = $createsSegment; } /** * @param string $name * @param int $companyModuleId * @return Model * @throws \App\Classes\Exceptions\AccessForbiddenException * @throws \App\Classes\Exceptions\MalformedRequestException * @throws \App\Classes\Exceptions\RequestValidationException */ public function execute(string $name, int $companyModuleId =1): Model { $segement_object = new SegmentObject($name, $companyModuleId); $this->canCreateSegment->passes($segement_object); return $this->createsSegment->execute($segement_object); } }