* @copyright Since 2007 PrestaShop SA and Contributors * @license https://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0) */ declare(strict_types=1); namespace PrestaShop\PrestaShop\Adapter\Product\Update\Filler; use PrestaShop\PrestaShop\Core\Domain\Product\Command\UpdateProductCommand; use Product; /** * Fills product properties which can be considered as product details */ class DetailsFiller implements ProductFillerInterface { /** * {@inheritDoc} */ public function fillUpdatableProperties(Product $product, UpdateProductCommand $command): array { $updatableProperties = []; if (null !== $command->getEan13()) { $product->ean13 = $command->getEan13()->getValue(); $updatableProperties[] = 'ean13'; } if (null !== $command->getIsbn()) { $product->isbn = $command->getIsbn()->getValue(); $updatableProperties[] = 'isbn'; } if (null !== $command->getMpn()) { $product->mpn = $command->getMpn(); $updatableProperties[] = 'mpn'; } if (null !== $command->getReference()) { $product->reference = $command->getReference()->getValue(); $updatableProperties[] = 'reference'; } if (null !== $command->getUpc()) { $product->upc = $command->getUpc()->getValue(); $updatableProperties[] = 'upc'; } return $updatableProperties; } }