class StrategyStore::Configuration
StrategyStore
global configuration
Public Class Methods
new()
click to toggle source
# File lib/strategy_store/configuration.rb, line 29 def initialize @registered_strategies ||= HashWithIndifferentAccess.new default_strategy end
Public Instance Methods
fetch_strategy(strategy_ui_id)
click to toggle source
# File lib/strategy_store/configuration.rb, line 39 def fetch_strategy(strategy_ui_id) # TODO : Do not raise error here, just warning a message that the strategy is not registered in initialize raise StrategyStore::StrategyMissing.new(strategy_ui_id) unless @registered_strategies[strategy_ui_id] @registered_strategies[strategy_ui_id] end
register_strategy(strategy_ui_id, &block)
click to toggle source
# File lib/strategy_store/configuration.rb, line 34 def register_strategy(strategy_ui_id, &block) raise StrategyStore::StrategyAlreadyRegister.new(self) if @registered_strategies[strategy_ui_id] @registered_strategies[strategy_ui_id] = StrategyStore::StrategyDSL.new(strategy_ui_id, &block) end
Protected Instance Methods
default_strategy()
click to toggle source
# File lib/strategy_store/configuration.rb, line 51 def default_strategy @_default_strategy ||= register_strategy(:default) do |strategy| strategy.strategy_methods = [:perform] end end