class Utopia::Controller::Rewrite::Rewriter
Rewrite
a request path based on a set of defined rules.
Attributes
rules[R]
Public Class Methods
new()
click to toggle source
# File lib/utopia/controller/rewrite.rb, line 79 def initialize @rules = [] end
Public Instance Methods
apply(context, request, path)
click to toggle source
# File lib/utopia/controller/rewrite.rb, line 89 def apply(context, request, path) @rules.each do |rule| path = rule.apply(context, request, path) end return path end
call(context, request, path)
click to toggle source
# File lib/utopia/controller/rewrite.rb, line 97 def call(context, request, path) path.components = apply(context, request, path).components end
extract_prefix(**patterns, &block)
click to toggle source
# File lib/utopia/controller/rewrite.rb, line 85 def extract_prefix(**patterns, &block) @rules << ExtractPrefixRule.new(patterns, block) end