class Ya::API::Direct::DirectServiceBase

Attributes

method_items[R]
version[R]

Public Class Methods

new(client, methods_data) click to toggle source
# File lib/ya/api/direct/direct_service_base.rb, line 4
def initialize(client, methods_data)
  @client = client
  @method_items = methods_data
  init_methods
end

Protected Instance Methods

callback_by_result(result={}) click to toggle source
# File lib/ya/api/direct/direct_service_base.rb, line 25
def callback_by_result(result={})
end
exec_request(method, request_body) click to toggle source
# File lib/ya/api/direct/direct_service_base.rb, line 21
def exec_request(method, request_body)
  client.gateway.request method, request_body, @version
end
init_methods() click to toggle source
# File lib/ya/api/direct/direct_service_base.rb, line 11
def init_methods
  @method_items.each do |method|
    self.class.send :define_method, method do |params = {}|
      result = exec_request(method, params || {})
      callback_by_result result
      result[:data]
    end
  end
end