1 | <?php |
||
2 | /** |
||
3 | * Copyright © Getnet. All rights reserved. |
||
4 | * |
||
5 | * @author Bruno Elisei <[email protected]> |
||
6 | * See LICENSE for license details. |
||
7 | */ |
||
8 | |||
9 | namespace Getnet\SubSellerMagento\Model\Seller; |
||
10 | |||
11 | use Getnet\SubSellerMagento\Model\Seller\SubSeller as SubSellerModel; |
||
12 | use Getnet\SubSellerMagento\Model\Seller\SubSellerFactory as SubSellerModelFactory; |
||
13 | use Magento\Framework\Exception\NoSuchEntityException; |
||
14 | |||
15 | class SubSellerRegistry |
||
16 | { |
||
17 | /** |
||
18 | * @var SubSellerModelFactory |
||
19 | */ |
||
20 | private $subSellerModelFactory; |
||
21 | |||
22 | /** |
||
23 | * @var SubSellerModel[] |
||
24 | */ |
||
25 | private $subSellerRegistryById = []; |
||
26 | |||
27 | /** |
||
28 | * Constructor. |
||
29 | * |
||
30 | * @param SubSellerModelFactory $sellerModelSubSellerFactory |
||
31 | */ |
||
32 | public function __construct( |
||
33 | SubSellerModelFactory $sellerModelSubSellerFactory |
||
34 | ) { |
||
35 | $this->subSellerModelFactory = $sellerModelSubSellerFactory; |
||
36 | } |
||
37 | |||
38 | /** |
||
39 | * Register SubSeller Model to registry. |
||
40 | * |
||
41 | * @param SubSellerModel $subSellerModel |
||
42 | * |
||
43 | * @return void |
||
44 | */ |
||
45 | public function registerSubSeller(SubSellerModel $subSellerModel) |
||
46 | { |
||
47 | $this->subSellerRegistryById[$subSellerModel->getId()] = $subSellerModel; |
||
48 | } |
||
49 | |||
50 | /** |
||
51 | * Retrieve SubSeller Model from registry given an id. |
||
52 | * |
||
53 | * @param int $subSellerId |
||
54 | * |
||
55 | * @throws NoSuchEntityException |
||
56 | * |
||
57 | * @return SubSellerModel |
||
58 | */ |
||
59 | public function retrieveSubSeller($subSellerId) |
||
60 | { |
||
61 | if (isset($this->subSellerRegistryById[$subSellerId])) { |
||
62 | return $this->subSellerRegistryById[$subSellerId]; |
||
63 | } |
||
64 | /** @var SubSellerModel $subSellerModel */ |
||
65 | $subSellerModel = $this->subSellerModelFactory->create()->load($subSellerId); |
||
0 ignored issues
–
show
|
|||
66 | if (!$subSellerModel->getId()) { |
||
67 | // sub seller does not exist |
||
68 | throw NoSuchEntityException::singleField('subSellerId', $subSellerId); |
||
69 | } |
||
70 | $this->subSellerRegistryById[$subSellerModel->getId()] = $subSellerModel; |
||
71 | |||
72 | return $subSellerModel; |
||
73 | } |
||
74 | |||
75 | /** |
||
76 | * Remove an instance of the SubSeller Model from the registry. |
||
77 | * |
||
78 | * @param int $subSellerId |
||
79 | * |
||
80 | * @return void |
||
81 | */ |
||
82 | public function removeSubSeller($subSellerId) |
||
83 | { |
||
84 | unset($this->subSellerRegistryById[$subSellerId]); |
||
85 | } |
||
86 | } |
||
87 |
This function has been deprecated. The supplier of the function has supplied an explanatory message.
The explanatory message should give you some clue as to whether and when the function will be removed and what other function to use instead.