Class: Lotr::Sdk::Client
- Inherits:
-
Object
- Object
- Lotr::Sdk::Client
- Defined in:
- lib/lotr/sdk/client.rb
Instance Method Summary collapse
- #book(id:) ⇒ Object
-
#book_list(page: 1) ⇒ Object
Books.
- #character(id:) ⇒ Object
-
#character_list(page: 1) ⇒ Object
Characters.
-
#initialize(key) ⇒ Client
constructor
A new instance of Client.
- #movie(id:) ⇒ Object
-
#movie_list(page: 1) ⇒ Object
Movies.
- #query_api(endpoint, page = nil) ⇒ Object
- #quote(id:) ⇒ Object
-
#quote_list(page: 1) ⇒ Object
Quotes.
Constructor Details
#initialize(key) ⇒ Client
Returns a new instance of Client.
6 7 8 9 |
# File 'lib/lotr/sdk/client.rb', line 6 def initialize(key) @key = key @base_url = 'https://the-one-api.dev/v2' end |
Instance Method Details
#book(id:) ⇒ Object
30 31 32 |
# File 'lib/lotr/sdk/client.rb', line 30 def book(id:) Dataset.new( query_api("book/#{id}") ) end |
#book_list(page: 1) ⇒ Object
Books
26 27 28 |
# File 'lib/lotr/sdk/client.rb', line 26 def book_list(page:1) Dataset.new( query_api('book',page) ) end |
#character(id:) ⇒ Object
48 49 50 |
# File 'lib/lotr/sdk/client.rb', line 48 def character(id:) Dataset.new( query_api("character/#{id}") ) end |
#character_list(page: 1) ⇒ Object
Characters
44 45 46 |
# File 'lib/lotr/sdk/client.rb', line 44 def character_list(page:1) Dataset.new( query_api('character',page) ) end |
#movie(id:) ⇒ Object
21 22 23 |
# File 'lib/lotr/sdk/client.rb', line 21 def movie(id:) Dataset.new( query_api("movie/#{id}") ) end |
#movie_list(page: 1) ⇒ Object
Movies
17 18 19 |
# File 'lib/lotr/sdk/client.rb', line 17 def movie_list(page:1) Dataset.new( query_api('movie',page) ) end |
#query_api(endpoint, page = nil) ⇒ Object
11 12 13 14 |
# File 'lib/lotr/sdk/client.rb', line 11 def query_api(endpoint,page=nil) page_param = "page=#{page}" if page HTTP.auth("Bearer #{@key}").get("#{@base_url}/#{endpoint}?#{page_param}") end |