Class: Usher::Interface::Rack::Route

Inherits:
Route
  • Object
show all
Defined in:
lib/usher/interface/rack/route.rb

Instance Attribute Summary collapse

Attributes inherited from Route

#conditions, #default_values, #destination, #generate_with, #grapher, #match_partially, #named, #original_path, #parent_route, #paths, #priority, #recognizable, #requirements, #router

Instance Method Summary collapse

Methods inherited from Route

#destination_keys, #dup, #find_matching_path, #initialize, #inspect, #match_partially!, #name, #recognizable!, #recognizable?, #to, #to_s, #unrecognizable!

Constructor Details

This class inherits a constructor from Usher::Route

Instance Attribute Details

#redirect_on_trailing_slashObject

Returns the value of attribute redirect_on_trailing_slash.



6
7
8
# File 'lib/usher/interface/rack/route.rb', line 6

def redirect_on_trailing_slash
  @redirect_on_trailing_slash
end

Instance Method Details

#redirect(path, status = 302) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
# File 'lib/usher/interface/rack/route.rb', line 8

def redirect(path, status = 302)
  unless (300..399).include?(status)
    raise ArgumentError, "Status has to be an integer between 300 and 399"
  end
  @destination = lambda do |env|
    response = ::Rack::Response.new
    response.redirect(path, status)
    response.finish
  end
  self
end