class Platon::Transaction
Constants
- DEFAULT_STEP
- DEFAULT_TIMEOUT
Attributes
connection[RW]
id[RW]
input[RW]
input_parameters[RW]
mined[RW]
Public Class Methods
from_blockchain(address, connection = IpcClient.new)
click to toggle source
# File lib/platon/transaction.rb, line 37 def self.from_blockchain(address, connection = IpcClient.new) Transaction.new(address, connection, nil, nil) end
new(id, connection, data, input_parameters = [])
click to toggle source
# File lib/platon/transaction.rb, line 10 def initialize(id, connection, data, input_parameters = []) @mined = false @connection = connection @id = id @input = data @input_parameters = input_parameters end
Public Instance Methods
address()
click to toggle source
# File lib/platon/transaction.rb, line 18 def address @id end
mined?()
click to toggle source
# File lib/platon/transaction.rb, line 22 def mined? return true if @mined tx = @connection.platon_get_transaction_by_hash(@id) @mined = !tx.nil? && tx["blockNumber"].present? end
wait_for_miner(timeout: DEFAULT_TIMEOUT, step: DEFAULT_STEP)
click to toggle source
# File lib/platon/transaction.rb, line 28 def wait_for_miner(timeout: DEFAULT_TIMEOUT, step: DEFAULT_STEP) start_time = Time.now loop do raise Timeout::Error if ((Time.now - start_time) > timeout) return true if self.mined? sleep step end end