Class: MovableErb

Inherits:
Object
  • Object
show all
Defined in:
lib/movable_erb.rb

Defined Under Namespace

Classes: CSV, Erb

Constant Summary collapse

VERSION =
"0.2.0"
DEFAULT_TEMPLATE =
File.expand_path(File.dirname(__FILE__) + '/templates/mtimport.erb')

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options = {}) ⇒ MovableErb

Returns a new instance of MovableErb.



7
8
9
10
11
12
13
14
15
16
17
# File 'lib/movable_erb.rb', line 7

def initialize(options = {})
  @erb = MovableErb::Erb.setup do |erb|
    erb.template = options[:template] || DEFAULT_TEMPLATE
  end
  if options[:csv]
    @csv = MovableErb::CSV.setup do |csv|
      csv.filename = options[:csv]
    end
  end
  @separator = options[:separator] || ""
end

Instance Attribute Details

#csvObject

Returns the value of attribute csv.



3
4
5
# File 'lib/movable_erb.rb', line 3

def csv
  @csv
end

#erbObject

Returns the value of attribute erb.



3
4
5
# File 'lib/movable_erb.rb', line 3

def erb
  @erb
end

#separatorObject

Returns the value of attribute separator.



3
4
5
# File 'lib/movable_erb.rb', line 3

def separator
  @separator
end

Instance Method Details

#convertObject



19
20
21
22
23
24
25
26
27
# File 'lib/movable_erb.rb', line 19

def convert
  @results = []
  csv.parse!
  csv.hashes.each do |hash_data|
    erb.data = hash_data
    @results << erb.build!
  end
  @results.join(separator)
end