0, 'y' => 0]; public function __construct(?Client $client = null) { if (!$client) { return; } $this->name = $client->getName(); $this->serialNumber = $client->getSerialNumber(); $this->netiface = $client->getNetiface(); $this->organizationalUnit = new OrganizationalUnitOutput($client->getOrganizationalUnit()); $this->netDriver = $client->getNetDriver(); $this->mac = $client->getMac(); $this->ip = $client->getIp(); $this->position = $client->getPosition(); if ($client->getMenu()) { $this->menu = new MenuOutput($client->getMenu()); } if ($client->getHardwareProfile()) { $this->hardwareProfile = new HardwareProfileOutput($client->getHardwareProfile()); } } public function createOrUpdateEntity(?Client $client = null): Client { if (!$client) { $client = new Client(); } $client->setName($this->name); $client->setSerialNumber($this->serialNumber); $client->setNetiface($this->netiface); $client->setOrganizationalUnit($this->organizationalUnit->getEntity()); $client->setNetDriver($this->netDriver); $client->setMac($this->mac); $client->setIp($this->ip); $client->setMenu($this->menu?->getEntity()); $client->setHardwareProfile($this->hardwareProfile?->getEntity()); $client->setPosition($this->position); return $client; } }