Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
BulkSourceAssign.php
Go to the documentation of this file.
1 <?php
6 declare(strict_types=1);
7 
9 
15 
20 {
24  private $assignValidator;
25 
29  private $bulkSourceAssign;
30 
34  private $sourceItemIndexer;
35 
43  public function __construct(
44  BulkSourceAssignValidatorInterface $assignValidator,
45  BulkSourceAssignResource $bulkSourceAssign,
46  SourceItemIndexer $sourceItemIndexer
47  ) {
48  $this->assignValidator = $assignValidator;
49  $this->bulkSourceAssign = $bulkSourceAssign;
50  $this->sourceItemIndexer = $sourceItemIndexer;
51  }
52 
56  public function execute(array $skus, array $sourceCodes): int
57  {
58  $validationResult = $this->assignValidator->validate($skus, $sourceCodes);
59  if (!$validationResult->isValid()) {
60  throw new ValidationException(__('Validation Failed'), null, 0, $validationResult);
61  }
62 
63  $res = $this->bulkSourceAssign->execute($skus, $sourceCodes);
64  $this->sourceItemIndexer->executeList($sourceCodes);
65 
66  return $res;
67  }
68 }
execute(array $skus, array $sourceCodes)
__()
Definition: __.php:13
foreach($websiteCodes as $websiteCode) $skus
__construct(BulkSourceAssignValidatorInterface $assignValidator, BulkSourceAssignResource $bulkSourceAssign, SourceItemIndexer $sourceItemIndexer)