Class: EPM::Transact
- Inherits:
-
Object
- Object
- EPM::Transact
- Defined in:
- lib/epm/transact.rb
Instance Method Summary collapse
-
#initialize(recipient, data, settings = {}) ⇒ Transact
constructor
A new instance of Transact.
- #transact ⇒ Object
Constructor Details
#initialize(recipient, data, settings = {}) ⇒ Transact
Returns a new instance of Transact.
5 6 7 8 9 10 |
# File 'lib/epm/transact.rb', line 5 def initialize recipient, data, settings={} @uri = URI.parse "http://localhost:#{settings['json-port']}" @settings = settings @recipient = EPM::HexData.hex_guard recipient @data = EPM::HexData.construct_data data end |
Instance Method Details
#transact ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/epm/transact.rb', line 12 def transact if @settings['preferred-client'] == 'cpp' params = { 'sec' => @settings["address-private-key"], 'xValue' => '', 'aDest' => @recipient, 'bData' => @data, 'xGas' => '100000', 'xGasPrice' => '100000000000000' } post_body = { 'method' => 'transact', 'params' => params, 'id' => 'epm-rpc', "jsonrpc" => "2.0" }.to_json elsif @settings['preferred-client'] == ('go' || 'ethereal') params = { 'recipient' => @recipient, 'value' => '', 'gas' => '100000', 'gasprice' => '100000000000000', 'body' => @data, } post_body = { 'method' => 'EthereumApi.Transact', 'params' => params, 'id' => 'epm-rpc', "jsonrpc" => "2.0" }.to_json end return EPM::Server.http_post_request @uri, post_body end |