/**
  * Converts a flat field to a structured one
  *
  * @param string $column
  * @param string $value
  *
  * @throws \LogicException
  *
  * @return array
  */
 public function convert($column, $value)
 {
     $associationFields = $this->assocFieldResolver->resolveAssociationColumns();
     if (in_array($column, $associationFields)) {
         $value = $this->fieldSplitter->splitCollection($value);
         list($associationTypeCode, $associatedWith) = $this->fieldSplitter->splitFieldName($column);
         return ['associations' => [$associationTypeCode => [$associatedWith => $value]]];
     } elseif (in_array($column, ['categories'])) {
         return [$column => $this->fieldSplitter->splitCollection($value)];
     } elseif (in_array($column, ['groups'])) {
         return $this->extractVariantGroup($value);
     } elseif ('enabled' === $column) {
         return [$column => (bool) $value];
     } elseif ('family' === $column) {
         return [$column => $value];
     }
     throw new \LogicException(sprintf('No converters found for attribute type "%s"', $column));
 }
 /**
  * @param string $column
  *
  * @return string
  */
 protected function getColumnCode($column)
 {
     $splitedColumn = $this->fieldSplitter->splitFieldName($column);
     return is_array($splitedColumn) ? $splitedColumn[0] : $column;
 }