class Mdm::Enrollment::Service::Base

Public Class Methods

accepted_params() click to toggle source
# File lib/mdm/enrollment/service/base.rb, line 13
def self.accepted_params
  []
end
available_services() click to toggle source
# File lib/mdm/enrollment/service/base.rb, line 9
def self.available_services
  [:account]
end

Public Instance Methods

authenticate?() click to toggle source
# File lib/mdm/enrollment/service/base.rb, line 43
def authenticate?
  true
end
method() click to toggle source
# File lib/mdm/enrollment/service/base.rb, line 35
def method
  raise 'Subclasses must implement this method'
end
params() click to toggle source
# File lib/mdm/enrollment/service/base.rb, line 47
def params
  @params ||= {}
end
params=(params) click to toggle source
# File lib/mdm/enrollment/service/base.rb, line 51
def params=(params)
  @params = params.permit(self.class.accepted_params)
end
path() click to toggle source
# File lib/mdm/enrollment/service/base.rb, line 39
def path
  raise 'Subclasses must implement this method'
end
result() click to toggle source
# File lib/mdm/enrollment/service/base.rb, line 31
def result
  raise 'Subclasses must implement this method'
end
start() click to toggle source
# File lib/mdm/enrollment/service/base.rb, line 17
def start
  if authenticate?
    client.authenticate!
  end

  options = if [:post, :put].include? method
              { body: params.to_json }
            else
              { query: params }
            end

  client.send(method, path, options)
end

Protected Instance Methods

client() click to toggle source
# File lib/mdm/enrollment/service/base.rb, line 57
def client
  @client ||= Enrollment::Client.new
end