lib/bit_wallet/account.rb in bit_wallet-0.0.2 vs lib/bit_wallet/account.rb in bit_wallet-0.0.3
- old
+ new
@@ -24,13 +24,29 @@
end
client.sendfrom(self.name,
options[:to],
amount,
BitWallet.config.min_conf)
+ rescue RestClient::InternalServerError => e
+ parse_error e.response
end
def total_received
client.getreceivedbyaccount(self.name, BitWallet.config.min_conf)
+ end
+
+ private
+
+ def parse_error(response)
+ json_response = JSON.parse(response)
+ hash = json_response.with_indifferent_access
+ error = if hash[:error]
+ case hash[:error][:code]
+ when -6
+ InsufficientFunds.new("cannot send an amount more than what this account (#{self.name}) has")
+ end
+ end
+ fail error if error
end
end
end