Class: Etherlite::Configuration

Inherits:
Object
  • Object
show all
Includes:
Railties::ConfigurationExtensions
Defined in:
lib/etherlite/railtie.rb,
lib/etherlite/configuration.rb

Overview

Add rails specifig related configuration parameters

Constant Summary collapse

DEFAULTS =
{
  url: 'http://127.0.0.1:8545',
  enable_nonce_cache: false,
  use_parity: false,
  chain_id: nil, # any chain
  logger: nil # set by method
}

Instance Attribute Summary collapse

Attributes included from Railties::ConfigurationExtensions

#contracts_path

Instance Method Summary collapse

Methods included from Railties::ConfigurationExtensions

included

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



20
21
22
# File 'lib/etherlite/configuration.rb', line 20

def initialize
  assign_attributes DEFAULTS
end

Instance Attribute Details

#chain_idObject

Returns the value of attribute chain_id.



11
12
13
# File 'lib/etherlite/configuration.rb', line 11

def chain_id
  @chain_id
end

#enable_nonce_cacheObject

Returns the value of attribute enable_nonce_cache.



11
12
13
# File 'lib/etherlite/configuration.rb', line 11

def enable_nonce_cache
  @enable_nonce_cache
end

#loggerObject

Returns the value of attribute logger.



11
12
13
# File 'lib/etherlite/configuration.rb', line 11

def logger
  @logger
end

#urlObject

Returns the value of attribute url.



11
12
13
# File 'lib/etherlite/configuration.rb', line 11

def url
  @url
end

#use_parityObject

Returns the value of attribute use_parity.



11
12
13
# File 'lib/etherlite/configuration.rb', line 11

def use_parity
  @use_parity
end

Instance Method Details

#assign_attributes(_options) ⇒ Object



28
29
30
31
# File 'lib/etherlite/configuration.rb', line 28

def assign_attributes(_options)
  _options.each { |k, v| public_send("#{k}=", v) }
  self
end

#default_connection_optionsObject



13
14
15
16
17
18
# File 'lib/etherlite/configuration.rb', line 13

def default_connection_options
  {
    chain_id: chain_id,
    use_parity: use_parity
  }
end

#resetObject



24
25
26
# File 'lib/etherlite/configuration.rb', line 24

def reset
  assign_attributes DEFAULTS
end