Sha256: 1338d318aeb8a55333b863796c03c72d79521d43e672c65a8e00374a68b544f0

Contents?: true

Size: 647 Bytes

Versions: 1

Compression:

Stored size: 647 Bytes

Contents

require 'rodimus'
require 'csv'
require 'json'

class CsvInput
  include Rodimus::Step

  def initialize
    @incoming = CSV.open('worldbank-sample.csv')
    @incoming.readline # skip the headers
  end

  def process_row(row)
    row.to_json
  end
end

class FormattedText
  include Rodimus::Step

  def initialize
    @outgoing = STDOUT.dup
  end

  def process_row(row)
    data = JSON.parse(row)
    "In #{data.first} during #{data[1]}, CO2 emissions were #{data[2]} metric tons  per capita." 
  end
end

t = Rodimus::Transformation.new
s1 = CsvInput.new
s2 = FormattedText.new
t.steps << s1
t.steps << s2
t.run
puts "Transformation complete!"

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rodimus-0.1.2 examples/csv_input_stdout.rb