Exemplo n.º 1
0
 /**
  * Adds or overwrites the given pointcut.
  *
  * @param PointcutDefinition $pointcut Pointcut.
  *
  * @return void
  */
 public function setPointcut(PointcutDefinition $pointcut)
 {
     $name = $pointcut->getName();
     $this->_pointcuts[$name] = $pointcut;
     $this->_cache->store('AspectManagerPointcut' . $name, $pointcut);
 }
Exemplo n.º 2
0
 /**
  * Returns a bean definition.
  *
  * @param string $name Bean name.
  *
  * @return BeanDefinition
  * @throws BeanFactoryException
  */
 public function getBeanDefinition($name)
 {
     if (isset($this->_beanAliases[$name])) {
         $name = $this->_beanAliases[$name];
     }
     if (isset($this->_beanDefs[$name])) {
         return $this->_beanDefs[$name];
     }
     $beanDefinition = null;
     if ($this->_beanDefCache !== null) {
         $beanDefinition = $this->_beanDefCache->fetch($name, $result);
     }
     if ($beanDefinition) {
         $this->_beanDefs[$name] = $beanDefinition;
         return $beanDefinition;
     }
     foreach ($this->_beanDefinitionProviders as $provider) {
         $beanDefinition = $provider->getBeanDefinition($name);
         if ($beanDefinition) {
             $beanDefinition->setClass($this->_searchAndReplaceProperties($beanDefinition->getClass()));
             break;
         }
     }
     if (!$beanDefinition) {
         throw new BeanFactoryException('Unknown bean: ' . $name);
     }
     $beanDefinition = $this->_lifecycleManager->afterDefinition($beanDefinition);
     $this->_beanDefs[$name] = $beanDefinition;
     $this->_beanDefCache->store($name, $beanDefinition);
     foreach ($beanDefinition->getAliases() as $alias) {
         $this->_beanAliases[$alias] = $name;
     }
     return $beanDefinition;
 }