Class: Peddler::Handlers::TabDelimitedHandler
- Inherits:
-
Object
- Object
- Peddler::Handlers::TabDelimitedHandler
- Defined in:
- lib/peddler/handlers.rb
Class Method Summary collapse
-
.decode_response(res) ⇒ Object
Decodes tab-delimited content into an array of OpenStruct objects.
Class Method Details
.decode_response(res) ⇒ Object
Decodes tab-delimited content into an array of OpenStruct objects. It assumes first line contains parameter names.
18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/peddler/handlers.rb', line 18 def self.decode_response(res) lines = res.split("\n") if lines.size > 1 params = lines[0].split("\t").collect{ |value| value.gsub(/-/, '_') } params_size = params.size (1..(lines.size - 1)).collect do |line_key| values = lines[line_key].split("\t") data = (0..(params_size - 1)).inject({}) { |memo, key| memo.merge( { params[key] => values[key] } ) } OpenStruct.new(data) end else res end end |