bitExpert\Disco\Proxy\LazyBean\MethodGenerator\MagicWakeup::__construct PHP Method

__construct() public method

Creates a new {@link \bitExpert\Disco\Proxy\MethodGenerator\MagicWakeup}.
public __construct ( ReflectionClass $originalClass, Zend\Code\Generator\PropertyGenerator $valueHolderProperty, Zend\Code\Generator\PropertyGenerator $valueHolderBeanIdProperty )
$originalClass ReflectionClass
$valueHolderProperty Zend\Code\Generator\PropertyGenerator
$valueHolderBeanIdProperty Zend\Code\Generator\PropertyGenerator
    public function __construct(ReflectionClass $originalClass, PropertyGenerator $valueHolderProperty, PropertyGenerator $valueHolderBeanIdProperty)
    {
        parent::__construct($originalClass, '__wakeup');
        $valueHolder = $valueHolderProperty->getName();
        $valueHolderBeanId = $valueHolderBeanIdProperty->getName();
        $this->setBody('$beanFactory = \\' . BeanFactoryRegistry::class . '::getInstance();' . PHP_EOL . PHP_EOL . '$this->' . $valueHolder . ' = $beanFactory->get($this->' . $valueHolderBeanId . ');' . PHP_EOL . 'if ($this->' . $valueHolder . ' instanceof \\' . VirtualProxyInterface::class . ') {' . PHP_EOL . '    $this->' . $valueHolder . ' = $this->' . $valueHolder . '->getWrappedValueHolderValue();' . PHP_EOL . '}' . PHP_EOL);
    }
MagicWakeup