class YaKassa::V3::BaseRequest

Attributes

response[R]

Public Class Methods

new(idempotence_key, params = {}) click to toggle source
# File lib/ya_kassa/v3/base_request.rb, line 9
def initialize(idempotence_key, params = {})
  @params = params
  @idempotence_key = idempotence_key
  @response = nil
end

Public Instance Methods

body() click to toggle source
# File lib/ya_kassa/v3/base_request.rb, line 20
def body
  { }
end
create() click to toggle source
# File lib/ya_kassa/v3/base_request.rb, line 15
def create
  return errors unless valid?
  send_request
end

Private Instance Methods

api_client() click to toggle source
# File lib/ya_kassa/v3/base_request.rb, line 40
def api_client
  raise 'Method not implemented'
end
api_client_get() click to toggle source
# File lib/ya_kassa/v3/base_request.rb, line 36
def api_client_get
  Client::Get.new(router.payment_status_url)
end
api_client_post() click to toggle source
# File lib/ya_kassa/v3/base_request.rb, line 32
def api_client_post
  Client::Post.new(url, body.to_json, @idempotence_key)
end
router() click to toggle source
# File lib/ya_kassa/v3/base_request.rb, line 48
def router
  Router.new(payment_id: @params[:payment_id])
end
send_request() click to toggle source
# File lib/ya_kassa/v3/base_request.rb, line 26
def send_request
  resp = api_client.request
  raise resp.inspect unless resp[:body].present?
  @response = JSON.parse(resp[:body])
end
url() click to toggle source
# File lib/ya_kassa/v3/base_request.rb, line 44
def url
  raise 'Method not implemented'
end