class Moip2::TransferApi

Attributes

client[R]

Public Class Methods

new(client) click to toggle source
# File lib/moip2/transfer_api.rb, line 5
def initialize(client)
  @client = client
end

Public Instance Methods

create(transfer) click to toggle source
# File lib/moip2/transfer_api.rb, line 9
def create(transfer)
  Resource::Transfer.new client.post(base_path, transfer)
end
find_all(limit: nil, offset: nil, filters: nil, status: nil) click to toggle source
# File lib/moip2/transfer_api.rb, line 17
def find_all(limit: nil, offset: nil, filters: nil, status: nil)
  response = client.get(uri_encode(limit, offset, filters, status))
  Resource::Transfer.new json_to_object(response)
end
reverse(transfers_id) click to toggle source
# File lib/moip2/transfer_api.rb, line 22
def reverse(transfers_id)
  Resource::Transfer.new client.post("#{base_path}/#{transfers_id}/reverse", nil)
end
show(transfers_id) click to toggle source
# File lib/moip2/transfer_api.rb, line 13
def show(transfers_id)
  Resource::Transfer.new client.get("#{base_path}/#{transfers_id}")
end

Private Instance Methods

base_path() click to toggle source
# File lib/moip2/transfer_api.rb, line 28
def base_path
  "/v2/transfers"
end
json_to_object(json) click to toggle source
# File lib/moip2/transfer_api.rb, line 45
def json_to_object(json)
  json.transfers.map! { |transfer| Resource::Transfer.new transfer }
  json
end
uri_encode(limit, offset, filters, status) click to toggle source
# File lib/moip2/transfer_api.rb, line 32
def uri_encode(limit, offset, filters, status)
  encoded_filters = Moip2::Util::FiltersEncoder.encode(filters)

  params = {
    limit: limit,
    offset: offset,
    filters: encoded_filters,
    status: status,
  }.reject { |_, value| value.nil? }
  query_string = URI.encode_www_form(params)
  path = "#{base_path}?#{query_string}"
end