<?php
namespace Proxies\__CG__\BitBag\OpenMarketplace\Component\Addressing\Entity;
/**
* DO NOT EDIT THIS FILE - IT WAS CREATED BY DOCTRINE'S PROXY GENERATOR
*/
class Zone extends \BitBag\OpenMarketplace\Component\Addressing\Entity\Zone 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__', 'id', 'code', 'name', 'type', 'scope', 'members'];
}
return ['__isInitialized__', 'id', 'code', 'name', 'type', 'scope', 'members'];
}
/**
*
*/
public function __wakeup()
{
if ( ! $this->__isInitialized__) {
$this->__initializer__ = function (Zone $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 __toString(): string
{
$this->__initializer__ && $this->__initializer__->__invoke($this, '__toString', []);
return parent::__toString();
}
/**
* {@inheritDoc}
*/
public function getId()
{
if ($this->__isInitialized__ === false) {
return (int) parent::getId();
}
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getId', []);
return parent::getId();
}
/**
* {@inheritDoc}
*/
public function getCode(): ?string
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getCode', []);
return parent::getCode();
}
/**
* {@inheritDoc}
*/
public function setCode(?string $code): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setCode', [$code]);
parent::setCode($code);
}
/**
* {@inheritDoc}
*/
public function getName(): ?string
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getName', []);
return parent::getName();
}
/**
* {@inheritDoc}
*/
public function setName(?string $name): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setName', [$name]);
parent::setName($name);
}
/**
* {@inheritDoc}
*/
public function getType(): ?string
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getType', []);
return parent::getType();
}
/**
* {@inheritDoc}
*/
public function setType(?string $type): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setType', [$type]);
parent::setType($type);
}
/**
* {@inheritDoc}
*/
public function getScope(): ?string
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getScope', []);
return parent::getScope();
}
/**
* {@inheritDoc}
*/
public function setScope(?string $scope): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'setScope', [$scope]);
parent::setScope($scope);
}
/**
* {@inheritDoc}
*/
public function getMembers(): \Doctrine\Common\Collections\Collection
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'getMembers', []);
return parent::getMembers();
}
/**
* {@inheritDoc}
*/
public function hasMembers(): bool
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'hasMembers', []);
return parent::hasMembers();
}
/**
* {@inheritDoc}
*/
public function addMember(\Sylius\Component\Addressing\Model\ZoneMemberInterface $member): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'addMember', [$member]);
parent::addMember($member);
}
/**
* {@inheritDoc}
*/
public function removeMember(\Sylius\Component\Addressing\Model\ZoneMemberInterface $member): void
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'removeMember', [$member]);
parent::removeMember($member);
}
/**
* {@inheritDoc}
*/
public function hasMember(\Sylius\Component\Addressing\Model\ZoneMemberInterface $member): bool
{
$this->__initializer__ && $this->__initializer__->__invoke($this, 'hasMember', [$member]);
return parent::hasMember($member);
}
}