![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/module-catalog/Model/Product/CopyConstructor/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Catalog\Model\Product\CopyConstructor; use Magento\Catalog\Model\Product\CopyConstructorFactory; use Magento\Catalog\Model\Product\CopyConstructorInterface; /** * Performs duplication process by applying product type convertors * * @api * @since 100.0.2 */ class Composite implements CopyConstructorInterface { /** * @var CopyConstructorInterface[] */ protected $constructors; /** * @param CopyConstructorFactory $factory * @param string[] $constructors */ public function __construct(CopyConstructorFactory $factory, array $constructors = []) { foreach ($constructors as $instance) { $this->constructors[] = $factory->create($instance); } } /** * Build product duplicate * * @param \Magento\Catalog\Model\Product $product * @param \Magento\Catalog\Model\Product $duplicate * @return void */ public function build(\Magento\Catalog\Model\Product $product, \Magento\Catalog\Model\Product $duplicate) { foreach ($this->constructors as $constructor) { $constructor->build($product, $duplicate); } } }