/**
  * @return array
  */
 public function resolveAttributeColumns()
 {
     if (empty($this->attributesFields)) {
         $attributes = $this->attributeRepository->findAll();
         $currencyCodes = $this->currencyRepository->getActivatedCurrencyCodes();
         $values = $this->valuesResolver->resolveEligibleValues($attributes);
         foreach ($values as $value) {
             if (null !== $value['locale'] && null !== $value['scope']) {
                 $field = sprintf('%s-%s-%s', $value['attribute'], $value['locale'], $value['scope']);
             } elseif (null !== $value['locale']) {
                 $field = sprintf('%s-%s', $value['attribute'], $value['locale']);
             } elseif (null !== $value['scope']) {
                 $field = sprintf('%s-%s', $value['attribute'], $value['scope']);
             } else {
                 $field = $value['attribute'];
             }
             if (AttributeTypes::PRICE_COLLECTION === $value['type']) {
                 $this->attributesFields[] = $field;
                 foreach ($currencyCodes as $currencyCode) {
                     $currencyField = sprintf('%s-%s', $field, $currencyCode);
                     $this->attributesFields[] = $currencyField;
                 }
             } elseif (AttributeTypes::METRIC === $value['type']) {
                 $this->attributesFields[] = $field;
                 $metricField = sprintf('%s-%s', $field, 'unit');
                 $this->attributesFields[] = $metricField;
             } else {
                 $this->attributesFields[] = $field;
             }
         }
     }
     return $this->attributesFields;
 }
 /**
  * {@inheritdoc}
  */
 public function dump(OutputInterface $output, HelperSet $helperSet)
 {
     $output->writeln("<info>Useable attributes filters...</info>");
     $attributes = $this->repository->findAll();
     $rows = [];
     foreach ($attributes as $attribute) {
         $field = $attribute->getCode();
         $filter = $this->registry->getAttributeFilter($attribute);
         if ($filter) {
             $class = get_class($filter);
             $operators = implode(', ', $filter->getOperators());
         } else {
             $class = 'Not supported';
             $operators = '';
         }
         $rows[] = [$field, $attribute->isLocalizable() ? 'yes' : 'no', $attribute->isScopable() ? 'yes' : 'no', $attribute->getAttributeType(), $class, $operators];
     }
     $table = $helperSet->get('table');
     $headers = ['attribute', 'localizable', 'scopable', 'attribute type', 'filter_class', 'operators'];
     $table->setHeaders($headers)->setRows($rows);
     $table->render($output);
 }