Class: CultureGrid::Index
- Inherits:
-
Object
- Object
- CultureGrid::Index
- Defined in:
- lib/culturegrid.rb
Instance Method Summary collapse
- #get(opts) ⇒ Object
-
#initialize(base = "http://culturegrid.org.uk/index/select/") ⇒ Index
constructor
A new instance of Index.
- #query(terms, opts = {}) ⇒ Object
- #result(opts) ⇒ Object
- #search(terms, opts = {}) ⇒ Object
Constructor Details
#initialize(base = "http://culturegrid.org.uk/index/select/") ⇒ Index
Returns a new instance of Index.
14 15 16 |
# File 'lib/culturegrid.rb', line 14 def initialize(base="http://culturegrid.org.uk/index/select/") @base = base end |
Instance Method Details
#get(opts) ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/culturegrid.rb', line 18 def get(opts) q = [] opts[:version] ||= "2.2" opts[:indent] ||= "on" opts[:start] ||= "0" opts[:rows] ||= "10" opts.each_pair do |opt,val| q << "#{opt}=#{CGI::escape(val)}" end url = "#{@base}?#{q.join("&")}" Nokogiri::XML(Weary.get(url).perform.body) end |
#query(terms, opts = {}) ⇒ Object
36 37 38 |
# File 'lib/culturegrid.rb', line 36 def query(terms, opts={}) self.result({:q=>terms}.merge(opts)) end |
#result(opts) ⇒ Object
32 33 34 |
# File 'lib/culturegrid.rb', line 32 def result(opts) self.get(opts).css("doc").collect{|a| Doc.new(a)} end |
#search(terms, opts = {}) ⇒ Object
40 41 42 |
# File 'lib/culturegrid.rb', line 40 def search(terms, opts={}) self.query("dc.title all \"#{terms}\" OR fullText all \"#{terms}\"", opts) end |