class BombBomb::API
Public Class Methods
new(email, pw)
click to toggle source
# File lib/bomb_bomb.rb, line 7 def initialize(email, pw) @email = email @pw = pw end
Public Instance Methods
call(method, args)
click to toggle source
# File lib/bomb_bomb.rb, line 12 def call(method, args) parsed_response = make_call(method, args) parsed_response end
method_missing(method, *args)
click to toggle source
# File lib/bomb_bomb.rb, line 17 def method_missing(method, *args) method = camelize_method(method) call(method, args) end
Private Instance Methods
camelize_method(method)
click to toggle source
# File lib/bomb_bomb.rb, line 36 def camelize_method(method) method = method.to_s.gsub(/\/(.?)/) { "::#{$1.upcase}" }.gsub(/(?:^|_)(.)/) { $1.upcase } testmethod = method[0].chr.upcase + method[1..-1] end
make_call(method, args)
click to toggle source
# File lib/bomb_bomb.rb, line 31 def make_call(method, args) response = Curl.post("https://app.bombbomb.com/app/api/api.php?method=#{method}", param_fields(args)) JSON.load("[#{response.body_str}]").first end
param_fields(args)
click to toggle source
# File lib/bomb_bomb.rb, line 23 def param_fields(args) params = {} params["email"] = @email params["pw"] = @pw params = args.first.merge(params) if args.first params end