Class: FriendlyRoutes::Composer
- Inherits:
-
Object
- Object
- FriendlyRoutes::Composer
- Defined in:
- lib/friendly_routes/services/composer.rb
Overview
Compoer will map passed params to friendly_route params
Instance Method Summary collapse
- #call ⇒ Object
- #can_be_composed? ⇒ Boolean
-
#initialize(route, params = {}) ⇒ Composer
constructor
A new instance of Composer.
Constructor Details
#initialize(route, params = {}) ⇒ Composer
Returns a new instance of Composer.
6 7 8 9 |
# File 'lib/friendly_routes/services/composer.rb', line 6 def initialize(route, params = {}) @route = route @params = params.dup end |
Instance Method Details
#call ⇒ Object
11 12 13 14 15 16 17 |
# File 'lib/friendly_routes/services/composer.rb', line 11 def call return unless @route @route.dynamic_params.each do |param| compose(param) end @params end |
#can_be_composed? ⇒ Boolean
19 20 21 22 23 24 |
# File 'lib/friendly_routes/services/composer.rb', line 19 def can_be_composed? return unless @route @route.required_params.all? do |param| param.allowed? @params[param.name] end end |