public function registerProvider($owner, $subOwner, $areaName, $hookType, $category, $className, $method, $serviceId = null) { $pareaId = $this->registerArea($areaName, self::PROVIDER, $owner, $subOwner, $category); $provider = new Entity\HookProviderEntity(); $provider->setOwner($owner); $provider->setSubowner($subOwner); $provider->setPareaid($pareaId); $provider->setHooktype($hookType); $provider->setCategory($category); $provider->setClassname($className); $provider->setMethod($method); $provider->setServiceid($serviceId); $this->em->persist($provider); $this->em->flush(); }
public function registerProvider($owner, $subOwner, $areaName, $hookType, $category, $className, $method, $serviceId = null) { $pareaId = $this->registerArea($areaName, self::PROVIDER, $owner, $subOwner, $category); $existingProvider = $this->getProviderByAreaAndType($pareaId, $hookType); if (!empty($existingProvider)) { if (System::isDevelopmentMode()) { LogUtil::registerWarning(__f('The hook provider for area "%1$s" of type "%2$s" could not be registered for "%3$s" because it already exists.', array($pareaId, $hookType, $owner))); } else { $warns = LogUtil::getWarningMessages(false); $msg = __f('Hook providers could not be registered for "%1$s" because they already exist.', array($owner)); if (!in_array(DataUtil::formatForDisplayHTML($msg), $warns)) { LogUtil::registerWarning($msg); } } return; } $provider = new Entity\HookProviderEntity(); $provider->setOwner($owner); $provider->setSubowner($subOwner); $provider->setPareaid($pareaId); $provider->setHooktype($hookType); $provider->setCategory($category); $provider->setClassname($className); $provider->setMethod($method); $provider->setServiceid($serviceId); $this->em->persist($provider); $this->em->flush(); }