Class: Wallets::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/wallets/configuration.rb

Overview

Configuration for the Wallets gem. This is the single source of truth for the wallet owner API, ledger callbacks, and installation-time table names.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
# File 'lib/wallets/configuration.rb', line 27

def initialize
  # Keep the out-of-the-box default close to the most common "main wallet"
  # use case while still allowing apps to override it immediately.
  @default_asset = :credits
  @additional_categories = []
  @allow_negative_balance = false
  @low_balance_threshold = nil
  @transfer_expiration_policy = :preserve
  # This prefix is used by the models at runtime and by the install
  # migration when it is executed for the first time.
  @table_prefix = "wallets_"

  @on_balance_credited_callback = nil
  @on_balance_debited_callback = nil
  @on_transfer_completed_callback = nil
  @on_low_balance_reached_callback = nil
  @on_balance_depleted_callback = nil
  @on_insufficient_balance_callback = nil
end

Instance Attribute Details

#additional_categoriesObject

Returns the value of attribute additional_categories.



12
13
14
# File 'lib/wallets/configuration.rb', line 12

def additional_categories
  @additional_categories
end

#allow_negative_balanceObject

Basic Settings



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

def allow_negative_balance
  @allow_negative_balance
end

#default_assetObject

Returns the value of attribute default_asset.



12
13
14
# File 'lib/wallets/configuration.rb', line 12

def default_asset
  @default_asset
end

#low_balance_thresholdObject

Returns the value of attribute low_balance_threshold.



13
14
15
# File 'lib/wallets/configuration.rb', line 13

def low_balance_threshold
  @low_balance_threshold
end

#on_balance_credited_callbackObject (readonly)

Lifecycle Callbacks



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

def on_balance_credited_callback
  @on_balance_credited_callback
end

#on_balance_debited_callbackObject (readonly)

Lifecycle Callbacks



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

def on_balance_debited_callback
  @on_balance_debited_callback
end

#on_balance_depleted_callbackObject (readonly)

Lifecycle Callbacks



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

def on_balance_depleted_callback
  @on_balance_depleted_callback
end

#on_insufficient_balance_callbackObject (readonly)

Lifecycle Callbacks



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

def on_insufficient_balance_callback
  @on_insufficient_balance_callback
end

#on_low_balance_reached_callbackObject (readonly)

Lifecycle Callbacks



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

def on_low_balance_reached_callback
  @on_low_balance_reached_callback
end

#on_transfer_completed_callbackObject (readonly)

Lifecycle Callbacks



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

def on_transfer_completed_callback
  @on_transfer_completed_callback
end

#table_prefixObject

Returns the value of attribute table_prefix.



12
13
14
# File 'lib/wallets/configuration.rb', line 12

def table_prefix
  @table_prefix
end

#transfer_expiration_policyObject

Returns the value of attribute transfer_expiration_policy.



14
15
16
# File 'lib/wallets/configuration.rb', line 14

def transfer_expiration_policy
  @transfer_expiration_policy
end

Instance Method Details

#on_balance_credited(&block) ⇒ Object



85
86
87
# File 'lib/wallets/configuration.rb', line 85

def on_balance_credited(&block)
  @on_balance_credited_callback = block
end

#on_balance_debited(&block) ⇒ Object



89
90
91
# File 'lib/wallets/configuration.rb', line 89

def on_balance_debited(&block)
  @on_balance_debited_callback = block
end

#on_balance_depleted(&block) ⇒ Object



101
102
103
# File 'lib/wallets/configuration.rb', line 101

def on_balance_depleted(&block)
  @on_balance_depleted_callback = block
end

#on_insufficient_balance(&block) ⇒ Object



105
106
107
# File 'lib/wallets/configuration.rb', line 105

def on_insufficient_balance(&block)
  @on_insufficient_balance_callback = block
end

#on_low_balance_reached(&block) ⇒ Object



97
98
99
# File 'lib/wallets/configuration.rb', line 97

def on_low_balance_reached(&block)
  @on_low_balance_reached_callback = block
end

#on_transfer_completed(&block) ⇒ Object



93
94
95
# File 'lib/wallets/configuration.rb', line 93

def on_transfer_completed(&block)
  @on_transfer_completed_callback = block
end