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