| Current Path : /home/rtorresani/www/vendor/magento/module-inventory-catalog/Model/ |
| Current File : //home/rtorresani/www/vendor/magento/module-inventory-catalog/Model/IsSingleSourceMode.php |
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
declare(strict_types=1);
namespace Magento\InventoryCatalog\Model;
use Magento\Framework\Api\SearchCriteriaBuilder;
use Magento\InventoryApi\Api\Data\SourceInterface;
use Magento\InventoryApi\Api\SourceRepositoryInterface;
use Magento\InventoryCatalogApi\Model\IsSingleSourceModeInterface;
/**
* @inheritdoc
*/
class IsSingleSourceMode implements IsSingleSourceModeInterface
{
/**
* @var SearchCriteriaBuilder
*/
private $searchCriteriaBuilder;
/**
* @var SourceRepositoryInterface
*/
private $sourceRepository;
/**
* @param SourceRepositoryInterface $sourceRepository
* @param SearchCriteriaBuilder $searchCriteriaBuilder
*/
public function __construct(
SourceRepositoryInterface $sourceRepository,
SearchCriteriaBuilder $searchCriteriaBuilder
) {
$this->sourceRepository = $sourceRepository;
$this->searchCriteriaBuilder = $searchCriteriaBuilder;
}
/**
* @inheritdoc
*/
public function execute(): bool
{
$searchCriteria = $this->searchCriteriaBuilder
->addFilter(SourceInterface::ENABLED, true)
->create();
$searchResult = $this->sourceRepository->getList($searchCriteria);
return $searchResult->getTotalCount() < 2;
}
}