Class: ActivePublicResources::Drivers::Quizlet
- Defined in:
- lib/active_public_resources/drivers/quizlet.rb
Constant Summary collapse
- DRIVER_NAME =
"quizlet"
Instance Method Summary collapse
-
#initialize(config_options = {}) ⇒ Quizlet
constructor
A new instance of Quizlet.
- #perform_request(request_criteria) ⇒ Object
Constructor Details
#initialize(config_options = {}) ⇒ Quizlet
Returns a new instance of Quizlet.
9 10 11 12 |
# File 'lib/active_public_resources/drivers/quizlet.rb', line 9 def initialize(={}) (, [:client_id]) @client_id = [:client_id] end |
Instance Method Details
#perform_request(request_criteria) ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/active_public_resources/drivers/quizlet.rb', line 14 def perform_request(request_criteria) raise StandardError.new("driver has not been initialized properly") unless @client_id.present? request_criteria.validate_presence!([:query]) uri = URI('https://api.quizlet.com/2.0/search/sets') params = { 'q' => request_criteria.query, 'page' => request_criteria.page || 1, 'per_page' => request_criteria.per_page || 25, 'client_id' => @client_id } uri.query = URI.encode_www_form(params) res = Net::HTTP.get_response(uri) results = JSON.parse(res.body) return parse_results(request_criteria, results) end |