Exemple #1
0
 /**
  * Instantiates a bean using the constructor.
  *
  * @param BeanDefinition $definition
  *
  * @return object
  */
 private function _instantiateByConstructor(BeanDefinition $definition)
 {
     $class = $definition->getClass();
     if ($definition->hasProxyClass()) {
         $class = $definition->getProxyClassName();
     }
     $rClass = $this->_reflectionFactory->getClass($class);
     $factoryMethod = $rClass->getConstructor();
     if ($factoryMethod !== null) {
         $args = $this->_sortArgsWithNames($definition, $factoryMethod);
         if (empty($args)) {
             return $rClass->newInstanceArgs();
         } else {
             return $rClass->newInstanceArgs($args);
         }
     } else {
         return $rClass->newInstanceArgs();
     }
 }