class Moodle::Api::Client

The client is responsible for making requests and delegating config setup to configuration

Attributes

configuration[W]
filter_params[R]
token_service[W]
web_service_name[R]

Public Class Methods

new(options = {}) click to toggle source
# File lib/moodle/api/client.rb, line 9
def initialize(options = {})
  configure(options)
end

Public Instance Methods

configuration() click to toggle source
# File lib/moodle/api/client.rb, line 37
def configuration
  @configuration ||= Configuration.new
end
configure(options = {}, &block) click to toggle source
# File lib/moodle/api/client.rb, line 29
def configure(options = {}, &block)
  configuration.configure(options, &block)
end
make_request(web_service_name, filter_params = {}) click to toggle source
# File lib/moodle/api/client.rb, line 13
def make_request(web_service_name, filter_params = {})
  @web_service_name = web_service_name
  @filter_params = filter_params

  Request.new.post(configuration.web_service_api_url, request_params)
end
request_params() click to toggle source
# File lib/moodle/api/client.rb, line 20
def request_params
  {
    params: filter_params.merge!(moodlewsrestformat: configuration.format,
                                 wsfunction: web_service_name,
                                 wstoken: configuration.token),
    headers: { 'Accept' => 'json' }
  }
end
reset_configuration() click to toggle source
# File lib/moodle/api/client.rb, line 33
def reset_configuration
  configuration.reset
end