__initializer__ = $initializer; $this->__cloner__ = $cloner; } /** * {@inheritDoc} * @param string $name */ public function __get($name) { $this->__initializer__ && $this->__initializer__->__invoke($this, '__get', array($name)); return parent::__get($name); } /** * {@inheritDoc} * @param string $name * @param mixed $value */ public function __set($name, $value) { $this->__initializer__ && $this->__initializer__->__invoke($this, '__set', array($name, $value)); return parent::__set($name, $value); } /** * * @return array */ public function __sleep() { if ($this->__isInitialized__) { return array('__isInitialized__', 'id', 'uvi', 'company', 'createdBy', 'valuation', 'priceGuide', 'auction', 'region', 'type', 'referenceNumber', 'stockNumber', 'registrationNumber', 'vinNumber', 'engineNumber', 'fuelType', 'transmissionType', 'exteriorColour', 'interiorColour', 'condition', 'vehicleYear', 'km', 'upholstery', 'papers', 'papersNotes', 'natis', 'spareKeys', 'fullServiceHistory', 'fshNotes', 'tradePriceDate', 'tradePrice', 'retailPrice', 'oldTradePriceDate', 'oldTradePrice', 'oldRetailPrice', 'retailAmountRequired', 'purchasePrice', 'salePrice', 'listPriceDate', 'listPrice', 'oldListPriceDate', 'oldListPrice', 'mainImage', 'frontImage', 'rightImage', 'leftImage', 'backImage', 'interiorImage', 'engineImage', 'natisImage', 'accessories', 'accessoryNotes', 'damages', 'damageTotal', 'damageNotes', 'previousRepairsNoted', 'previousRepairsNotes', 'coverReceived', 'numberOfOffers', 'highestOffer', 'loadedOnPriceGuide', 'timesListed', 'highestBid', 'adherence', 'reset', 'previousState', 'jobState', 'created', 'updated', 'archived'); } return array('__isInitialized__', 'id', 'uvi', 'company', 'createdBy', 'valuation', 'priceGuide', 'auction', 'region', 'type', 'referenceNumber', 'stockNumber', 'registrationNumber', 'vinNumber', 'engineNumber', 'fuelType', 'transmissionType', 'exteriorColour', 'interiorColour', 'condition', 'vehicleYear', 'km', 'upholstery', 'papers', 'papersNotes', 'natis', 'spareKeys', 'fullServiceHistory', 'fshNotes', 'tradePriceDate', 'tradePrice', 'retailPrice', 'oldTradePriceDate', 'oldTradePrice', 'oldRetailPrice', 'retailAmountRequired', 'purchasePrice', 'salePrice', 'listPriceDate', 'listPrice', 'oldListPriceDate', 'oldListPrice', 'mainImage', 'frontImage', 'rightImage', 'leftImage', 'backImage', 'interiorImage', 'engineImage', 'natisImage', 'accessories', 'accessoryNotes', 'damages', 'damageTotal', 'damageNotes', 'previousRepairsNoted', 'previousRepairsNotes', 'coverReceived', 'numberOfOffers', 'highestOffer', 'loadedOnPriceGuide', 'timesListed', 'highestBid', 'adherence', 'reset', 'previousState', 'jobState', 'created', 'updated', 'archived'); } /** * */ public function __wakeup() { if ( ! $this->__isInitialized__) { $this->__initializer__ = function (Stock $proxy) { $proxy->__setInitializer(null); $proxy->__setCloner(null); $existingProperties = get_object_vars($proxy); foreach ($proxy->__getLazyProperties() as $property => $defaultValue) { if ( ! array_key_exists($property, $existingProperties)) { $proxy->$property = $defaultValue; } } }; } } /** * */ public function __clone() { $this->__cloner__ && $this->__cloner__->__invoke($this, '__clone', array()); } /** * Forces initialization of the proxy */ public function __load() { $this->__initializer__ && $this->__initializer__->__invoke($this, '__load', array()); } /** * {@inheritDoc} * @internal generated method: use only when explicitly handling proxy specific loading logic */ public function __isInitialized() { return $this->__isInitialized__; } /** * {@inheritDoc} * @internal generated method: use only when explicitly handling proxy specific loading logic */ public function __setInitialized($initialized) { $this->__isInitialized__ = $initialized; } /** * {@inheritDoc} * @internal generated method: use only when explicitly handling proxy specific loading logic */ public function __setInitializer(\Closure $initializer = null) { $this->__initializer__ = $initializer; } /** * {@inheritDoc} * @internal generated method: use only when explicitly handling proxy specific loading logic */ public function __getInitializer() { return $this->__initializer__; } /** * {@inheritDoc} * @internal generated method: use only when explicitly handling proxy specific loading logic */ public function __setCloner(\Closure $cloner = null) { $this->__cloner__ = $cloner; } /** * {@inheritDoc} * @internal generated method: use only when explicitly handling proxy specific cloning logic */ public function __getCloner() { return $this->__cloner__; } /** * {@inheritDoc} * @internal generated method: use only when explicitly handling proxy specific loading logic * @static */ public function __getLazyProperties() { return self::$lazyPropertiesDefaults; } /** * {@inheritDoc} */ public function addAccessory(\Stock\Entity\Accessory $accessory) { $this->__initializer__ && $this->__initializer__->__invoke($this, 'addAccessory', array($accessory)); return parent::addAccessory($accessory); } /** * {@inheritDoc} */ public function addDamage(\Stock\Entity\Damage $damage) { $this->__initializer__ && $this->__initializer__->__invoke($this, 'addDamage', array($damage)); return parent::addDamage($damage); } /** * {@inheritDoc} */ public function setCreateTime() { $this->__initializer__ && $this->__initializer__->__invoke($this, 'setCreateTime', array()); return parent::setCreateTime(); } /** * {@inheritDoc} */ public function setUpdateTime() { $this->__initializer__ && $this->__initializer__->__invoke($this, 'setUpdateTime', array()); return parent::setUpdateTime(); } /** * {@inheritDoc} */ public function postInsert() { $this->__initializer__ && $this->__initializer__->__invoke($this, 'postInsert', array()); return parent::postInsert(); } /** * {@inheritDoc} */ public function toArray(array $expand = array ( ), array $intersect = array ( ), $showIdentifiers = false, $expandAll = 0) { $this->__initializer__ && $this->__initializer__->__invoke($this, 'toArray', array($expand, $intersect, $showIdentifiers, $expandAll)); return parent::toArray($expand, $intersect, $showIdentifiers, $expandAll); } /** * {@inheritDoc} */ public function accessoriesToArray($showIdentifiers = false) { $this->__initializer__ && $this->__initializer__->__invoke($this, 'accessoriesToArray', array($showIdentifiers)); return parent::accessoriesToArray($showIdentifiers); } /** * {@inheritDoc} */ public function damagesToArray($showIdentifiers = false) { $this->__initializer__ && $this->__initializer__->__invoke($this, 'damagesToArray', array($showIdentifiers)); return parent::damagesToArray($showIdentifiers); } /** * {@inheritDoc} */ public function fromArray($data = array ( )) { $this->__initializer__ && $this->__initializer__->__invoke($this, 'fromArray', array($data)); return parent::fromArray($data); } }