class Tapirgo::Search

Tapir search class

@author Jonathan Hartman <j@p4nt5.com>

Attributes

results[R]
token[R]

Public Class Methods

new(token, query_str) click to toggle source
# File lib/tapirgo/search.rb, line 32
def initialize(token, query_str)
  @token = token
  @query = query_str
  @results = JSON.parse(get).map { |r| Search::Result.new(r) }
  self
end

Public Instance Methods

[](index) click to toggle source
# File lib/tapirgo/search.rb, line 39
def [](index)
  results[index]
end
each() { |r| ... } click to toggle source
# File lib/tapirgo/search.rb, line 43
def each
  results.each { |r| yield(r) }
end

Private Instance Methods

get() click to toggle source
# File lib/tapirgo/search.rb, line 52
def get
  response = RestClient.get(uri, accept: :json)
  response.code == 200 || fail(HTTPError, response)
  response.to_s
end
query() click to toggle source
# File lib/tapirgo/search.rb, line 62
def query
  URI.escape(@query)
end
uri() click to toggle source
# File lib/tapirgo/search.rb, line 58
def uri
  "http://www.tapirgo.com/api/1/search.json?token=#{token}&query=#{query}"
end