Magento Extensions Rating 2024
EXTENSIONS BY CATEGORY
B2B (Business-To-Business)
Blog
Customer
ERP (Enterprise Resource Planning)
Mega Menu
One Step Checkout
Order
POS (Point Of Sale)
Search
Shopping Cart
Sitemap
SEO
Social
Stock & Inventory Management
EXTENSIONS BY DEVELOPER
aheadWorks
Amasty
Boost My Shop
BSS Commerce
Magestore
MageWorx
Mirasvit
Templates Master
Wyomind
XTENTO
Magento 2 Documentation
Magento 2 Documentation
2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
vendor
magento
module-ui
DataProvider
Modifier
Pool.php
Go to the documentation of this file.
1
<?php
7
namespace
Magento\Ui\DataProvider\Modifier
;
8
9
use
Magento\Framework\Exception\LocalizedException
;
10
14
class
Pool
implements
\Magento\Ui\DataProvider\Modifier\PoolInterface
15
{
19
protected
$modifiers
= [];
20
24
protected
$modifiersInstances
= [];
25
29
protected
$factory
;
30
35
public
function
__construct
(
36
ModifierFactory
$factory
,
37
array
$modifiers
= []
38
) {
39
$this->factory =
$factory
;
40
$this->modifiers = $this->
sort
(
$modifiers
);
41
}
42
48
public
function
getModifiers
()
49
{
50
return
$this->modifiers
;
51
}
52
59
public
function
getModifiersInstances
()
60
{
61
if
($this->modifiersInstances) {
62
return
$this->modifiersInstances
;
63
}
64
65
foreach
($this->modifiers as $modifier) {
66
if
(empty($modifier[
'class'
])) {
67
throw
new
LocalizedException
(
__
(
'The parameter "class" is missing. Set the "class" and try again.'
));
68
}
69
70
if
(empty($modifier[
'sortOrder'
])) {
71
throw
new
LocalizedException
(
72
__
(
'The parameter "sortOrder" is missing. Set the "sortOrder" and try again.'
)
73
);
74
}
75
76
$this->modifiersInstances[$modifier[
'class'
]] = $this->factory->create($modifier[
'class'
]);
77
}
78
79
return
$this->modifiersInstances
;
80
}
81
88
protected
function
sort
(array
$data
)
89
{
90
usort(
$data
,
function
(array $a, array $b) {
91
$a[
'sortOrder'
] = $this->
getSortOrder
($a);
92
$b[
'sortOrder'
] = $this->
getSortOrder
($b);
93
94
if
($a[
'sortOrder'
] == $b[
'sortOrder'
]) {
95
return
0;
96
}
97
98
return
($a[
'sortOrder'
] < $b[
'sortOrder'
]) ? -1 : 1;
99
});
100
101
return
$data
;
102
}
103
110
protected
function
getSortOrder
(array
$variable
)
111
{
112
return
!empty(
$variable
[
'sortOrder'
]) ?
$variable
[
'sortOrder'
] : 0;
113
}
114
}
Magento\Framework\Exception\LocalizedException
Definition:
LocalizedException.php:17
Magento\Ui\DataProvider\Modifier\Pool\__construct
__construct(ModifierFactory $factory, array $modifiers=[])
Definition:
Pool.php:35
Magento\Ui\DataProvider\Modifier\Pool\getSortOrder
getSortOrder(array $variable)
Definition:
Pool.php:110
Magento\Ui\DataProvider\Modifier\Pool
Definition:
Pool.php:14
Magento\Ui\DataProvider\Modifier\Pool\$modifiersInstances
$modifiersInstances
Definition:
Pool.php:24
__
__()
Definition:
__.php:13
Magento\Ui\DataProvider\Modifier
Definition:
Dummy.php:6
$variable
$variable
Definition:
variable.php:7
Magento\Ui\DataProvider\Modifier\Pool\$factory
$factory
Definition:
Pool.php:29
$data
$data
Definition:
attribute_set_with_image_attribute.php:16
Magento\Ui\DataProvider\Modifier\PoolInterface
Definition:
PoolInterface.php:12
Magento\Ui\DataProvider\Modifier\Pool\$modifiers
$modifiers
Definition:
Pool.php:19
Magento\Ui\DataProvider\Modifier\ModifierFactory
Definition:
ModifierFactory.php:13
Magento\Ui\DataProvider\Modifier\Pool\sort
sort(array $data)
Definition:
Pool.php:88
Magento\Ui\DataProvider\Modifier\Pool\getModifiersInstances
getModifiersInstances()
Definition:
Pool.php:59
Magento\Ui\DataProvider\Modifier\Pool\getModifiers
getModifiers()
Definition:
Pool.php:48