class Xmrto::Transfer
Attributes
state[RW]
uuid[RW]
Public Class Methods
create(btc_address, btc_amount)
click to toggle source
# File lib/xmrto/transfer.rb, line 16 def self.create(btc_address, btc_amount) new.create(btc_address, btc_amount) end
new(uuid = nil)
click to toggle source
# File lib/xmrto/transfer.rb, line 12 def initialize(uuid = nil) self.uuid = uuid end
status(uuid)
click to toggle source
# File lib/xmrto/transfer.rb, line 20 def self.status(uuid) new(uuid).update end
Public Instance Methods
create(btc_address, btc_amount)
click to toggle source
# File lib/xmrto/transfer.rb, line 24 def create(btc_address, btc_amount) request = post_request("/order_create/", { "btc_dest_address": btc_address, "btc_amount": btc_amount }) self.uuid = request["uuid"] self.state = request["state"] self end
livenet?()
click to toggle source
# File lib/xmrto/transfer.rb, line 48 def livenet? Xmrto.config.network == :livenet end
method_missing(m, *args, &block)
click to toggle source
Calls superclass method
# File lib/xmrto/transfer.rb, line 36 def method_missing(m, *args, &block) if instance_values.has_key?(m.to_s) instance_values[m.to_s] else super end end
post_request(endpoint, args)
click to toggle source
# File lib/xmrto/transfer.rb, line 52 def post_request(endpoint, args) url = "#{base_url}#{endpoint}" p "sending POST request to: #{url} with params: #{args.to_json}" if Xmrto.config.debug response = HTTParty.post(url, body: args.to_json, headers: { 'Content-Type' => 'application/json' } ) if response["error"] raise("Xmrto::Error#{response["error"][-3..-1]}".constantize, response["error_msg"] ) end response end
testnet?()
click to toggle source
# File lib/xmrto/transfer.rb, line 44 def testnet? Xmrto.config.network == :testnet end
update()
click to toggle source
# File lib/xmrto/transfer.rb, line 31 def update fetch_status.map{|attr, value| instance_variable_set("@#{attr}", value) } state end
Private Instance Methods
base_url()
click to toggle source
# File lib/xmrto/transfer.rb, line 64 def base_url if testnet? "https://test.xmr.to/api/v2/xmr2btc" else "https://xmr.to/api/v2/xmr2btc" end end
fetch_status()
click to toggle source
# File lib/xmrto/transfer.rb, line 72 def fetch_status post_request("/order_status_query/", {uuid: uuid}) end