Ouzo\Injection\InstanceFactory::injectDependencies PHP Method

injectDependencies() private method

private injectDependencies ( InstanceRepository $repository, $instance )
$repository InstanceRepository
    private function injectDependencies(InstanceRepository $repository, $instance)
    {
        $annotations = $this->provider->getMetadata($instance);
        $class = new ReflectionClass($instance);
        $properties = $class->getProperties();
        foreach ($properties as $property) {
            $annotation = Arrays::getValue($annotations, $property->getName());
            if ($annotation) {
                $binder = $this->bindings->getBinder($annotation['className'], $annotation['name']);
                $dependencyInstance = $repository->getInstance($this, $binder);
                $property->setAccessible(true);
                $property->setValue($instance, $dependencyInstance);
            }
        }
    }