6 declare(strict_types=1);
35 private $objectManager;
40 private $filterProcessor;
45 private $columnProvider;
58 $this->filterProcessor = $filterProcessor;
59 $this->columnProvider = $columnProvider;
71 $collection = $this->objectManager->create(Collection::class);
75 foreach ($this->retrieveFilterData(
$filters) as $columnName =>
$value) {
77 if (!$attributeDefinition) {
79 'Given column name "%columnName" is not present in collection.',
80 [
'columnName' => $columnName]
84 $type = $attributeDefinition->getData(
'backend_type');
86 throw new LocalizedException(
__(
87 'There is no backend type specified for column "%columnName".',
88 [
'columnName' => $columnName]
101 private function retrieveFilterData(array
$filters)
__construct(ObjectManagerInterface $objectManager, FilterProcessorAggregator $filterProcessor, ColumnProviderInterface $columnProvider)
const FILTER_ELEMENT_GROUP
create(AttributeCollection $attributeCollection, array $filters)