class Navigatrix::Rendering::StrategyFactory
Constants
- DEFAULT_ITEM_STRATEGY
- DEFAULT_LIST_STRATEGY
Public Class Methods
find_item_strategy(strategy_or_name, strategies = Navigatrix.item_renderers)
click to toggle source
# File lib/navigatrix/rendering/strategy_factory.rb, line 13 def self.find_item_strategy(strategy_or_name, strategies = Navigatrix.item_renderers) find_strategy(strategy_or_name, strategies, DEFAULT_ITEM_STRATEGY) end
find_list_strategy(strategy_or_name, strategies = Navigatrix.list_renderers)
click to toggle source
# File lib/navigatrix/rendering/strategy_factory.rb, line 9 def self.find_list_strategy(strategy_or_name, strategies = Navigatrix.list_renderers) find_strategy(strategy_or_name, strategies, DEFAULT_LIST_STRATEGY) end
find_strategy(strategy_or_name, strategies, default)
click to toggle source
# File lib/navigatrix/rendering/strategy_factory.rb, line 17 def self.find_strategy(strategy_or_name, strategies, default) return strategy_or_name if strategy_or_name.is_a?(Class) strategy_or_name ||= default strategies.fetch(strategy_or_name) do raise(MissingStrategy, "can't find strategy #{strategy_or_name}") end end