Class: Facebooker::FqlMultiquery

Inherits:
Parser
  • Object
show all
Defined in:
lib/facebooker/parser.rb

Overview

nodoc

Constant Summary

Constants inherited from Parser

Parser::PARSERS

Class Method Summary collapse

Methods inherited from Parser

anonymous_field_from, array_of, array_of_hashes, array_of_text_values, booleanize, element, hash_or_value_for, hashinate, parse

Class Method Details

.process(data) ⇒ Object



432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
# File 'lib/facebooker/parser.rb', line 432

def self.process(data)
  root = element('fql_multiquery_response', data)
  root.children.reject { |child| child.text? }.map do |elm|
    elm.children.reject { |child| child.text? }.map do |query|
      if 'name' == query.name
        query.text
      else
        list = query.children.reject { |child| child.text? }
        if list.length == 0
          []
        else
          [list.first.name, array_of_hashes(query, list.first.name)]
        end
      end
    end
  end
end