private function newInstanceWithFactoryMethod()
{
$method = $this->wrappedObject->getFactoryMethod();
if (!is_array($method)) {
$className = $this->wrappedObject->getClassName();
if (is_string($method) && !method_exists($className, $method)) {
throw $this->namedConstructorNotFound($method, $this->wrappedObject->getArguments());
}
}
return call_user_func_array($method, $this->wrappedObject->getArguments());
}