class Heel::Request - heel-3.1.0 Documentation

# class Heel::Request

nothing more than a rack request with some additional methods and overridingwhere the erros get written

### Attributes

root_dir[R]

### Public Class Methods

new(env, root_dir) click to toggle source

Initialize the request with the environment and the root directory of therequest

Calls superclass method

    # File lib/heel/request.rb, line 16
    def initialize(env, root_dir)
      super(env)
      @root_dir = root_dir
    end

### Public Instance Methods

base_uri() click to toggle source

    # File lib/heel/request.rb, line 35
    def base_uri
      @base_uri ||= ::Rack::Utils.unescape(path_info)
    end

for_directory?() click to toggle source

    # File lib/heel/request.rb, line 52
    def for_directory?
      stat.directory?
    end

for_file?() click to toggle source

    # File lib/heel/request.rb, line 56
    def for_file?
      stat.file?
    end

forbidden?() click to toggle source

a request must be for something that below the root directory

    # File lib/heel/request.rb, line 42
    def forbidden?
      request_path.index(root_dir) != 0
    end

found?() click to toggle source

a request is only good for something that actually exists and is readable

    # File lib/heel/request.rb, line 48
    def found?
      File.exist?(request_path) and (stat.directory? or stat.file?) and stat.readable?
    end

highlighting?() click to toggle source

was the highlighting parameter true or false?

    # File lib/heel/request.rb, line 62
    def highlighting?
      return !(%w[ off false ].include? self.GET['highlighting'].to_s.downcase)
    end

request_path() click to toggle source

normalize the request path to the full file path of the request from the+root_dir+

    # File lib/heel/request.rb, line 30
    def request_path
      @request_path ||= ::File.expand_path(::File.join(root_dir, ::Rack::Utils.unescape(path_info)))
    end

stat() click to toggle source

a stat of the file mentioned in the request path

    # File lib/heel/request.rb, line 23
    def stat
      @stat ||= ::File.stat(request_path)
    end