Class: Rupology::Client
- Inherits:
-
Object
- Object
- Rupology::Client
- Defined in:
- lib/rupology/client.rb
Constant Summary collapse
- DEFAULT_URL =
'https://repology.org'.freeze
Instance Method Summary collapse
- #filter(params = {}) ⇒ Object
-
#initialize(url = DEFAULT_URL) ⇒ Client
constructor
A new instance of Client.
- #metapackage(package) ⇒ Object
- #metapackages(pivot_package, up_to = false) ⇒ Object
- #problems(type, key, params = {}) ⇒ Object
Constructor Details
#initialize(url = DEFAULT_URL) ⇒ Client
Returns a new instance of Client.
8 9 10 |
# File 'lib/rupology/client.rb', line 8 def initialize(url = DEFAULT_URL) @connection = Faraday.new(url: url) end |
Instance Method Details
#filter(params = {}) ⇒ Object
27 28 29 30 31 32 33 |
# File 'lib/rupology/client.rb', line 27 def filter(params = {}) response = @connection.get do |request| request.url('/api/v1/metapackages/') request.params = params end JSON.parse(response.body) end |
#metapackage(package) ⇒ Object
12 13 14 15 16 17 |
# File 'lib/rupology/client.rb', line 12 def (package) response = @connection.get do |request| request.url('/api/v1/metapackage/' + package) end JSON.parse(response.body) end |
#metapackages(pivot_package, up_to = false) ⇒ Object
19 20 21 22 23 24 25 |
# File 'lib/rupology/client.rb', line 19 def (pivot_package, up_to = false) response = @connection.get do |request| pivot_package = '..' + pivot_package if up_to request.url('/api/v1/metapackages/' + pivot_package + '/') end JSON.parse(response.body) end |
#problems(type, key, params = {}) ⇒ Object
35 36 37 38 39 40 41 |
# File 'lib/rupology/client.rb', line 35 def problems(type, key, params = {}) response = @connection.get do |request| request.url('/api/v1/' + type + '/' + key + '/problems') request.params = params end JSON.parse(response.body) end |