Sha256: d7f30e78310b5a5323f476fbcd0e536579ef1eb9653ddb61847e55927913c0ab
Contents?: true
Size: 1.2 KB
Versions: 91
Compression:
Stored size: 1.2 KB
Contents
module HBase class Scanner include XmlDecoder def initialize(table, scanner_uri) @table, @scanner_uri = table, scanner_uri end def close end def next end def each parsed_uri = URI.parse(@scanner_uri) Net::HTTP.start(parsed_uri.host, parsed_uri.port) do |session| while true response = session.post(@scanner_uri, "") case response.code.to_i when 404 # over break when 200 # item yield *parse_row_result(response.body) else # error raise "Unexpected response code #{response.code}, body:\n#{response.body}" end end end end private # def parse_row(xml) # doc = REXML::Document.new(xml) # # result = {} # # doc.root.each_element("/row/column") do |column| # name = column.get_elements("name")[0].text.strip # value = column.get_elements("value")[0].text.strip.unpack("m").first # result[name] = value # end # # [doc.root.get_elements("name")[0].text.strip, result] # end end end
Version data entries
91 entries across 91 versions & 3 rubygems