Class: BusinessCatalyst::CSV::CatalogTransformer

Inherits:
Transformer
  • Object
show all
Defined in:
lib/business_catalyst/csv/transformers/catalog_transformer.rb

Instance Attribute Summary

Attributes inherited from Transformer

#input

Instance Method Summary collapse

Methods inherited from Transformer

#initialize, transform

Constructor Details

This class inherits a constructor from BusinessCatalyst::CSV::Transformer

Instance Method Details

#normalized_inputObject



6
7
8
9
10
11
12
13
14
15
16
# File 'lib/business_catalyst/csv/transformers/catalog_transformer.rb', line 6

def normalized_input
  # ensure at least a 1D array
  normalized_input = input.kind_of?(Array) ? input : [input]

  # now convert to 2D array
  unless normalized_input.first.kind_of?(Array)
    normalized_input = [normalized_input]
  end

  normalized_input
end

#transformObject



18
19
20
21
22
23
24
25
26
27
# File 'lib/business_catalyst/csv/transformers/catalog_transformer.rb', line 18

def transform
  normalized_input.map { |path|
    if path.any?
      sanitized_names = path.map { |name|
        BusinessCatalyst.sanitize_catalog_name(name)
      }
      "/" + sanitized_names.join("/")
    end
  }.join(";")
end