Sha256: ff8e27c33f229be7f07607a564cf5e6eb1f8b6e0ba742e82303145c45879f935
Contents?: true
Size: 1.74 KB
Versions: 3
Compression:
Stored size: 1.74 KB
Contents
module Peatio module Nexbit class Wallet < Peatio::Wallet::Abstract def initialize(settings = {}) @settings = settings end def configure(settings = {}) # Clean client state during configure. @client = nil @settings.merge!(settings.slice(*SUPPORTED_SETTINGS)) @wallet = @settings.fetch(:wallet) do raise Peatio::Wallet::MissingSettingError, :wallet end.slice(:uri, :address) @currency = @settings.fetch(:currency) do raise Peatio::Wallet::MissingSettingError, :currency end.slice(:id, :base_factor, :options) end def create_address!(_options = {}) { address: client.json_rpc(:getnewaddress) } rescue Nexbit::Client::Error => e raise Peatio::Wallet::ClientError, e end def create_transaction!(transaction, options = {}) txid = client.json_rpc(:sendtoaddress, [ transaction.to_address, transaction.amount, '', '', options[:subtract_fee].to_s == 'true' # subtract fee from transaction amount. ]) transaction.hash = txid transaction rescue Nexbit::Client::Error => e raise Peatio::Wallet::ClientError, e end def load_balance! client.json_rpc(:getbalance).to_d rescue Nexbit::Client::Error => e raise Peatio::Wallet::ClientError, e end private def client uri = @wallet.fetch(:uri) { raise Peatio::Wallet::MissingSettingError, :uri } @client ||= Client.new(uri) end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
peatio-nexbit-0.1.5 | lib/peatio/nexbit/wallet.rb |
peatio-nexbit-0.1.2a | lib/peatio/nexbit/wallet.rb |
peatio-nexbit-0.1.2 | lib/peatio/nexbit/wallet.rb |