* @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\Pack\CommandHandler; use PrestaShop\PrestaShop\Adapter\Product\Pack\Update\ProductPackUpdater; use PrestaShop\PrestaShop\Core\Domain\Product\Pack\Command\RemoveAllProductsFromPackCommand; use PrestaShop\PrestaShop\Core\Domain\Product\Pack\CommandHandler\RemoveAllProductsFromPackHandlerInterface; /** * Handles @see RemoveAllProductsFromPackCommand using legacy object model */ final class RemoveAllProductsFromPackHandler implements RemoveAllProductsFromPackHandlerInterface { /** * @var ProductPackUpdater */ private $productPackUpdater; /** * @param ProductPackUpdater $productPackUpdater */ public function __construct( ProductPackUpdater $productPackUpdater ) { $this->productPackUpdater = $productPackUpdater; } /** * {@inheritdoc} */ public function handle(RemoveAllProductsFromPackCommand $command): void { $this->productPackUpdater->setPackProducts($command->getPackId(), []); } }