Sha256: a391cebd641ab84d8ac14662128df44933d9cee39a67c2c75e2732808e8dd49e

Contents?: true

Size: 812 Bytes

Versions: 3

Compression:

Stored size: 812 Bytes

Contents

module QuizApiClient::Services
  class QuizSessionEventsService < BaseApiService
    def token(scope:, exp: nil, resource_id: nil)
      return unless allowed_scopes.include?(scope)
      generate_token(scope: scope, exp: exp, resource_id: resource_id)
    end

    def list(params:, default_token: nil)
      raise 'Quiz Session Id Required' unless params.key?(:quiz_session_id)
      get_from_quiz_api(params: params, token: token_for_api(default_token, scope_list, params[:quiz_session_id]))
    end

    def scope_list
      'quiz_sessions.log'
    end

    private

    def get_from_quiz_api(params:, token:)
      client(token: token).get(
        "/api/quiz_sessions/#{params[:quiz_session_id]}/quiz_session_events",
        {}
      )
    end

    def allowed_scopes
      [scope_list]
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
quiz_api_client-0.1.10 lib/quiz_api_client/services/quiz_session_events_service.rb
quiz_api_client-0.1.9 lib/quiz_api_client/services/quiz_session_events_service.rb
quiz_api_client-0.1.8 lib/quiz_api_client/services/quiz_session_events_service.rb