Sha256: 31e57165e980cd5be377f39ed0010985399a0b53b2711fa01ba1932d1c267de9
Contents?: true
Size: 1.08 KB
Versions: 2
Compression:
Stored size: 1.08 KB
Contents
module Dbla class Repository < Blacklight::AbstractRepository extend Deprecation self.deprecation_horizon = 'blacklight 6.0' def find id, params = {} data = get("#{url}/#{id}?api_key=#{api_key}") Response.new(data, params,{}) end def search params = {} data = nil #TODO Move this into a SearchBuilder, add a generator if params['q'] q = "?api_key=#{api_key}&q=#{params['q']}" if params.page q << "&page=#{params.page}" end if params.rows q << "&page_size=#{params.rows}" end puts url + q data = get(url + q) end Response.new(data, params,{}) end def get(uri) uri = URI(uri) Net::HTTP.start(uri.host, uri.port) do |http| request = Net::HTTP::Get.new uri response = http.request request return JSON.parse(response.body) end end def api_key Dbla.config[:api_key] end def url @url ||= (Dbla.config[:url] + blacklight_config.document_model.name.downcase.pluralize).freeze end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
dbla-0.0.2 | lib/dbla/repository.rb |
dbla-0.0.1 | lib/dbla/repository.rb |