class Bitcoin::Node::Configuration

Attributes

conf[R]

Public Class Methods

new(opts = {}) click to toggle source

initialize configuration @param [Hash] opts parameter for node.

# File lib/bitcoin/node/configuration.rb, line 11
def initialize(opts = {})
  # TODO apply configuration file.
  opts[:network] = :mainnet unless opts[:network]
  opts[:relay] = false unless opts[:relay]
  Bitcoin.chain_params = opts[:network]

  begin
    ini_file = IniParse.parse(File.read("#{Bitcoin.base_dir}/bitcoinrb.conf"))
    @conf = Hash[ ini_file.to_h['__anonymous__'].map{|k,v| [k.to_sym, v] } ]
  rescue => e
    @conf = {}
  end
  @conf.merge!(opts)
end

Public Instance Methods

host() click to toggle source
# File lib/bitcoin/node/configuration.rb, line 26
def host
  'localhost'
end
port() click to toggle source
# File lib/bitcoin/node/configuration.rb, line 30
def port
  Bitcoin.chain_params.default_port - 1
end
server_url() click to toggle source
# File lib/bitcoin/node/configuration.rb, line 34
def server_url
  "http://#{host}:#{port}"
end