From 7f524153a680dafe074b5c156dc300e3464af8d6 Mon Sep 17 00:00:00 2001 From: Yuri Kuznetsov Date: Fri, 16 Apr 2021 12:05:38 +0300 Subject: [PATCH] injectable factory use binding for implementation resolved --- application/Espo/Core/InjectableFactory.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/application/Espo/Core/InjectableFactory.php b/application/Espo/Core/InjectableFactory.php index f990dca2c2..f0eedcb304 100644 --- a/application/Espo/Core/InjectableFactory.php +++ b/application/Espo/Core/InjectableFactory.php @@ -170,13 +170,13 @@ class InjectableFactory if ($bindingContainer && $bindingContainer->has($class, $param)) { $binding = $bindingContainer->get($class, $param); - return $this->resolveBinding($binding); + return $this->resolveBinding($binding, $bindingContainer); } if ($this->bindingContainer && $this->bindingContainer->has($class, $param)) { $binding = $this->bindingContainer->get($class, $param); - return $this->resolveBinding($binding); + return $this->resolveBinding($binding, $bindingContainer); } if (!$dependencyClass && $param->isDefaultValueAvailable()) { @@ -227,7 +227,7 @@ class InjectableFactory /** * @return mixed */ - private function resolveBinding(Binding $binding) + private function resolveBinding(Binding $binding, ?BindingContainer $bindingContainer) { $type = $binding->getType(); $value = $binding->getValue(); @@ -237,7 +237,7 @@ class InjectableFactory } if ($type === Binding::IMPLEMENTATION_CLASS_NAME) { - return $this->create($value); + return $this->createInternal($value, null, $bindingContainer); } if ($type === Binding::VALUE) {