<?php
namespace Proxies\__CG__\App\Entity;
/**
* DO NOT EDIT THIS FILE - IT WAS CREATED BY DOCTRINE'S PROXY GENERATOR
*/
class ProductModel extends \App\Entity\ProductModel implements \Doctrine\ORM\Proxy\Proxy
{
/**
* @var \Closure the callback responsible for loading properties in the proxy object. This callback is called with
* three parameters, being respectively the proxy object to be initialized, the method that triggered the
* initialization process and an array of ordered parameters that were passed to that method.
*
* @see \Doctrine\Common\Proxy\Proxy::__setInitializer
*/
public $__initializer__;
/**
* @var \Closure the callback responsible of loading properties that need to be copied in the cloned object
*
* @see \Doctrine\Common\Proxy\Proxy::__setCloner
*/
public $__cloner__;
/**
* @var boolean flag indicating if this object was already initialized
*
* @see \Doctrine\Persistence\Proxy::__isInitialized
*/
public $__isInitialized__ = false;
/**
* @var array<string, null> properties to be lazy loaded, indexed by property name
*/
public static $lazyPropertiesNames = array (
);
/**
* @var array<string, mixed> default values of properties to be lazy loaded, with keys being the property names
*
* @see \Doctrine\Common\Proxy\Proxy::__getLazyProperties
*/
public static $lazyPropertiesDefaults = array (
);
public function __construct(?\Closure $initializer = null, ?\Closure $cloner = null)
{
$this->__initializer__ = $initializer;
$this->__cloner__ = $cloner;
}
/**
*
* @return array
*/
public function __sleep()
{
if ($this->__isInitialized__) {
return ['__isInitialized__', 'tranlatedEntity', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'id', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'code', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'attributes', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'children', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'parent', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'descriptions', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'manufacturer', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'countryRestrictions', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'dateAdded', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'lastModified', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'status', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'products', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'variant', 'languageId', 'currentLocale'];
}
return ['__isInitialized__', 'tranlatedEntity', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'id', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'code', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'attributes', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'children', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'parent', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'descriptions', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'manufacturer', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'countryRestrictions', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'dateAdded', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'lastModified', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'status', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'products', '' . "\0" . 'App\\Entity\\ProductModel' . "\0" . 'variant', 'languageId', 'currentLocale'];
}
/**
*
*/
public function __wakeup()
{
if ( ! $this->__isInitialized__) {
$this->__initializer__ = function (ProductModel $proxy) {
$proxy->__setInitializer(null);
$proxy->__setCloner(null);
$existingProperties = get_object_vars($proxy);
foreach ($proxy::$lazyPropertiesDefaults as $property => $defaultValue) {
if ( ! array_key_exists($property, $existingProperties)) {
$proxy->$property = $defaultValue;
}
}
};
}
}
/**
*
*/
public function __clone()
{
$this->__cloner__ && $this->__cloner__->__invoke($this, '__clone', []);
}
/**
* Forces initialization of the proxy
*/
public function __load(): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, '__load', []);
}
/**
* {@inheritDoc}
* @internal generated method: use only when explicitly handling proxy specific loading logic
*/
public function __isInitialized(): bool
{
return $this->__isInitialized__;
}
/**
* {@inheritDoc}
* @internal generated method: use only when explicitly handling proxy specific loading logic
*/
public function __setInitialized($initialized): void
{
$this->__isInitialized__ = $initialized;
}
/**
* {@inheritDoc}
* @internal generated method: use only when explicitly handling proxy specific loading logic
*/
public function __setInitializer(?\Closure $initializer = null): void
{
$this->__initializer__ = $initializer;
}
/**
* {@inheritDoc}
* @internal generated method: use only when explicitly handling proxy specific loading logic
*/
public function __getInitializer(): ?\Closure
{
return $this->__initializer__;
}
/**
* {@inheritDoc}
* @internal generated method: use only when explicitly handling proxy specific loading logic
*/
public function __setCloner(?\Closure $cloner = null): void
{
$this->__cloner__ = $cloner;
}
/**
* {@inheritDoc}
* @internal generated method: use only when explicitly handling proxy specific cloning logic
*/
public function __getCloner(): ?\Closure
{
return $this->__cloner__;
}
/**
* {@inheritDoc}
* @internal generated method: use only when explicitly handling proxy specific loading logic
* @deprecated no longer in use - generated code now relies on internal components rather than generated public API
* @static
*/
public function __getLazyProperties(): array
{
return self::$lazyPropertiesDefaults;
}
/**
* {@inheritDoc}
*/
public function getId(): int
{
if ($this->__isInitialized__ === false) {
return (int) parent::getId();
}
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getId', []);
return parent::getId();
}
/**
* {@inheritDoc}
*/
public function getAttributes()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getAttributes', []);
return parent::getAttributes();
}
/**
* {@inheritDoc}
*/
public function getChildren()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getChildren', []);
return parent::getChildren();
}
/**
* {@inheritDoc}
*/
public function getParent()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getParent', []);
return parent::getParent();
}
/**
* {@inheritDoc}
*/
public function getDescriptions()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getDescriptions', []);
return parent::getDescriptions();
}
/**
* {@inheritDoc}
*/
public function getPictures()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getPictures', []);
return parent::getPictures();
}
/**
* {@inheritDoc}
*/
public function getManufacturer(): ?\App\Entity\Manufacturer
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getManufacturer', []);
return parent::getManufacturer();
}
/**
* {@inheritDoc}
*/
public function getCountryRestrictions()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getCountryRestrictions', []);
return parent::getCountryRestrictions();
}
/**
* {@inheritDoc}
*/
public function getCode(): ?string
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getCode', []);
return parent::getCode();
}
/**
* {@inheritDoc}
*/
public function getDateAdded(): \DateTime
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getDateAdded', []);
return parent::getDateAdded();
}
/**
* {@inheritDoc}
*/
public function getLastModified(): ?\DateTime
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getLastModified', []);
return parent::getLastModified();
}
/**
* {@inheritDoc}
*/
public function getStatus(): bool
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getStatus', []);
return parent::getStatus();
}
/**
* {@inheritDoc}
*/
public function getVariant(): ?\App\Entity\ProductModelVariant
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getVariant', []);
return parent::getVariant();
}
/**
* {@inheritDoc}
*/
public function setId(int $id): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setId', [$id]);
parent::setId($id);
}
/**
* {@inheritDoc}
*/
public function setAttributes($attributes): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setAttributes', [$attributes]);
parent::setAttributes($attributes);
}
/**
* {@inheritDoc}
*/
public function setChildren($children): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setChildren', [$children]);
parent::setChildren($children);
}
/**
* {@inheritDoc}
*/
public function setParent($parent): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setParent', [$parent]);
parent::setParent($parent);
}
/**
* {@inheritDoc}
*/
public function setDescriptions($descriptions): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setDescriptions', [$descriptions]);
parent::setDescriptions($descriptions);
}
/**
* {@inheritDoc}
*/
public function setPictures($pictures): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setPictures', [$pictures]);
parent::setPictures($pictures);
}
/**
* {@inheritDoc}
*/
public function setManufacturer(?\App\Entity\Manufacturer $manufacturer): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setManufacturer', [$manufacturer]);
parent::setManufacturer($manufacturer);
}
/**
* {@inheritDoc}
*/
public function setCountryRestrictions($countryRestrictions): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setCountryRestrictions', [$countryRestrictions]);
parent::setCountryRestrictions($countryRestrictions);
}
/**
* {@inheritDoc}
*/
public function setCode(?string $code): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setCode', [$code]);
parent::setCode($code);
}
/**
* {@inheritDoc}
*/
public function setDateAdded(\DateTime $dateAdded): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setDateAdded', [$dateAdded]);
parent::setDateAdded($dateAdded);
}
/**
* {@inheritDoc}
*/
public function setLastModified(?\DateTime $lastModified): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setLastModified', [$lastModified]);
parent::setLastModified($lastModified);
}
/**
* {@inheritDoc}
*/
public function setStatus(bool $status): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setStatus', [$status]);
parent::setStatus($status);
}
/**
* {@inheritDoc}
*/
public function setVariant(?\App\Entity\ProductModelVariant $variant): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setVariant', [$variant]);
parent::setVariant($variant);
}
/**
* {@inheritDoc}
*/
public function hasParent()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'hasParent', []);
return parent::hasParent();
}
/**
* {@inheritDoc}
*/
public function hasChildren()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'hasChildren', []);
return parent::hasChildren();
}
/**
* {@inheritDoc}
*/
public function toArray(): array
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'toArray', []);
return parent::toArray();
}
/**
* {@inheritDoc}
*/
public function loadDescriptions(\Doctrine\ORM\EntityManager $em)
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'loadDescriptions', [$em]);
return parent::loadDescriptions($em);
}
/**
* {@inheritDoc}
*/
public function getProductModelDescription($lang = 'fr'): ?\App\Entity\ProductModelDescription
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getProductModelDescription', [$lang]);
return parent::getProductModelDescription($lang);
}
/**
* {@inheritDoc}
*/
public function getProducts()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getProducts', []);
return parent::getProducts();
}
/**
* {@inheritDoc}
*/
public function setProducts($products): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setProducts', [$products]);
parent::setProducts($products);
}
/**
* {@inheritDoc}
*/
public function getDefaultProduct(): ?\App\Entity\Product
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getDefaultProduct', []);
return parent::getDefaultProduct();
}
/**
* {@inheritDoc}
*/
public function getAllProducts()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getAllProducts', []);
return parent::getAllProducts();
}
/**
* {@inheritDoc}
*/
public function getAssets()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getAssets', []);
return parent::getAssets();
}
/**
* {@inheritDoc}
*/
public function prePersit(\Doctrine\ORM\Event\LifecycleEventArgs $args)
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'prePersit', [$args]);
return parent::prePersit($args);
}
/**
* {@inheritDoc}
*/
public function getLanguageId()
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getLanguageId', []);
return parent::getLanguageId();
}
/**
* {@inheritDoc}
*/
public function setLanguageId($languageId)
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setLanguageId', [$languageId]);
return parent::setLanguageId($languageId);
}
/**
* {@inheritDoc}
*/
public function setCurrentLocale($locale)
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setCurrentLocale', [$locale]);
return parent::setCurrentLocale($locale);
}
/**
* {@inheritDoc}
*/
public function translate($languageCode = 'fr')
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'translate', [$languageCode]);
return parent::translate($languageCode);
}
/**
* {@inheritDoc}
*/
public function __call($method, $arguments)
{
$this->__initializer__ && $this->__initializer__->__invoke($this, '__call', [$method, $arguments]);
return parent::__call($method, $arguments);
}
}