class Aflexi::Base

Public Class Methods

api_call(method, *params) click to toggle source
# File lib/aflexi/base.rb, line 8
def api_call(method, *params)
  Aflexi.last_request_params = Aflexi.username, Aflexi.secret, *params

  request = client.send(:create).methodCall("#{service_name}.#{method}", *Aflexi.last_request_params)
  Aflexi.last_request_response = client.send(:do_rpc, request, false)

  ok, param = client.send(:parser).parseMethodResponse(Aflexi.last_request_response)

  if ok
    param
  else
    raise param
  end
rescue Exception => error
  Aflexi.on_error.call(error) if Aflexi.on_error
  raise
end
client() click to toggle source
# File lib/aflexi/base.rb, line 26
def client
  XMLRPC::Client.new2 Aflexi.url, nil, Aflexi.timeout
end
service_name() click to toggle source
# File lib/aflexi/base.rb, line 30
def service_name
  klass_name = name.split("::").last
  klass_name[0,1].downcase + klass_name[1..-1] + "s"
end