Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
AssignSourcesValidator.php
Go to the documentation of this file.
1 <?php
6 declare(strict_types=1);
7 
9 
12 use Magento\Framework\Validation\ValidationResultFactory;
15 
21 {
25  private $validationResultFactory;
26 
30  private $sourceRepository;
31 
37  public function __construct(
38  ValidationResultFactory $validationResultFactory,
39  SourceRepositoryInterface $sourceRepository
40  ) {
41  $this->validationResultFactory = $validationResultFactory;
42  $this->sourceRepository = $sourceRepository;
43  }
44 
48  public function validate(array $skus, array $sourceCodes): ValidationResult
49  {
50  $errors = [];
51  foreach ($sourceCodes as $sourceCode) {
52  try {
53  $this->sourceRepository->get($sourceCode);
54  } catch (NoSuchEntityException $e) {
55  $errors[] = __('Source %sourceCode does not exist', ['sourceCode' => $sourceCode]);
56  }
57  }
58 
59  return $this->validationResultFactory->create(['errors' => $errors]);
60  }
61 }
__()
Definition: __.php:13
foreach($websiteCodes as $websiteCode) $skus
$sourceCode
Definition: inventory.phtml:11
$sourceRepository
Definition: source.php:20
__construct(ValidationResultFactory $validationResultFactory, SourceRepositoryInterface $sourceRepository)
$errors
Definition: overview.phtml:9