* @license MIT */ class InitializeProxy extends MethodGenerator { /** * Constructor * * @param PropertyGenerator $initializerProperty * @param PropertyGenerator $valueHolderProperty * * @throws \Zend\Code\Generator\Exception\InvalidArgumentException */ public function __construct(PropertyGenerator $initializerProperty, PropertyGenerator $valueHolderProperty) { parent::__construct('initializeProxy'); $this->setReturnType('bool'); $initializer = $initializerProperty->getName(); $this->setBody( 'return $this->' . $initializer . ' && $this->' . $initializer . '->__invoke($this->' . $valueHolderProperty->getName() . ', $this, \'initializeProxy\', array(), $this->' . $initializer . ');' ); } }