class OpenSource::LicensesAPI
Public Class Methods
new(base_url: 'https://api.opensource.org')
click to toggle source
# File lib/opensource/license.rb, line 7 def initialize(base_url: 'https://api.opensource.org') @base_url = base_url end
Public Instance Methods
all()
click to toggle source
# File lib/opensource/license.rb, line 11 def all request 'licenses/' end
get(id)
click to toggle source
# File lib/opensource/license.rb, line 19 def get(id) request "license/#{id}" end
tagged(tag)
click to toggle source
# File lib/opensource/license.rb, line 15 def tagged(tag) request "licenses/#{tag}" end
Private Instance Methods
request(resource)
click to toggle source
# File lib/opensource/license.rb, line 25 def request(resource) response = Net::HTTP.get_response URI "#{@base_url}/#{resource}" raise KeyError, "Resource not found: #{resource}" unless response.is_a? Net::HTTPOK JSON.parse(response.body).map { |o| Hashie::Mash.new o } end