Class: GoogleAjax

Inherits:
Object
  • Object
show all
Defined in:
lib/google_ajax.rb,
lib/google_ajax/feed.rb,
lib/google_ajax/parser.rb,
lib/google_ajax/search.rb,
lib/google_ajax/version.rb,
lib/google_ajax/language.rb

Defined Under Namespace

Modules: VERSION Classes: Errors, Feed, FeedFind, FeedLoad, FeedLookup, Language, LanguageDetect, LanguageTranslate, Parser, Search, SearchBlogs, SearchBooks, SearchImages, SearchLocal, SearchNews, SearchVideo, SearchWeb

Constant Summary collapse

API_BASE =
'http://ajax.googleapis.com/ajax/services/'
@@api_key =
@@referer = nil

Class Method Summary collapse

Class Method Details

.api_keyObject



17
18
19
# File 'lib/google_ajax.rb', line 17

def self.api_key
  @@api_key
end

.api_key=(key) ⇒ Object



20
21
22
# File 'lib/google_ajax.rb', line 20

def self.api_key=(key)
  @@api_key = key
end

.get(api, method, query, args = nil) ⇒ Object

TODO: Pass query to parser, so it knows where it came from. Needed for search paging and useful in general.



31
32
33
34
35
36
37
38
39
40
# File 'lib/google_ajax.rb', line 31

def self.get(api, method, query, args = nil)
  raise "You must assign a value to GoogleAjax.referer" unless @@referer
  url  = "#{API_BASE}#{api}/"
  url += "#{method}?"
  url += "&q=#{CGI::escape(query)}"
  url += "&key=" if @@api_key
  url += "&" + args.collect {|key, value| "#{key}=#{value}"}.join('&') if args && !args.empty?
  data = open(url, "Referer" => @@referer).read
  Parser.parse(api, method, data)
end

.refererObject



23
24
25
# File 'lib/google_ajax.rb', line 23

def self.referer
  @@referer
end

.referer=(referer) ⇒ Object



26
27
28
# File 'lib/google_ajax.rb', line 26

def self.referer=(referer)
  @@referer = referer
end