Sha256: f8e9bd8f4531ba36dcc7eae2e8757037576c9ca469e029e4f0578e0177c4110e

Contents?: true

Size: 968 Bytes

Versions: 2

Compression:

Stored size: 968 Bytes

Contents

module MastercoinWallet
  class Network
    include Observable

    def initialize
       @mutex = Mutex.new
    end

    def sync!
      Thread.new do 
        @address = Address.new(MastercoinWallet::config.address).find

        MastercoinWallet.config.set_key(:balance, (@address["balance"] || 0))
        MastercoinWallet.config.set_key(:test_balance, (@address["test_balance"] || 0))

        ["received_transactions", "sent_transactions", "exodus_transactions", "bitcoin_transactions", "spendable_outputs"].each do |x|
          if @address[x]
            MastercoinWallet.config.set_key(x, @address[x])
          end
        end

        if @address["spendable_outputs"]
          MastercoinWallet.config.set_key(:btc_balance, "%.8f" % MastercoinWallet.config.spendable_outputs.inject(0){|sum, x| sum += x["value"].to_f})
        end

        self.changed(true)

        MastercoinWallet.config.save

        notify_observers(true)
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
mastercoin-wallet-0.0.2 lib/mastercoin-wallet/network.rb
mastercoin-wallet-0.0.1 lib/mastercoin-wallet/network.rb