From 408ec6c0dcb901b2432c72bd3253fa691c5aede0 Mon Sep 17 00:00:00 2001 From: Pratik Naik Date: Mon, 22 Dec 2008 22:15:53 +0000 Subject: Remove rack_process.rb --- actionpack/lib/action_controller/request.rb | 72 +++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) (limited to 'actionpack/lib/action_controller/request.rb') diff --git a/actionpack/lib/action_controller/request.rb b/actionpack/lib/action_controller/request.rb index cc079792bb..7c125df55a 100755 --- a/actionpack/lib/action_controller/request.rb +++ b/actionpack/lib/action_controller/request.rb @@ -3,6 +3,7 @@ require 'stringio' require 'strscan' require 'active_support/memoizable' +require 'action_controller/cgi_ext' module ActionController # CgiRequest and TestRequest provide concrete implementations. @@ -860,4 +861,75 @@ EOM class UploadedTempfile < Tempfile include UploadedFile end + + class RackRequest < AbstractRequest #:nodoc: + attr_accessor :session_options + + class SessionFixationAttempt < StandardError #:nodoc: + end + + def initialize(env) + @env = env + super() + end + + %w[ AUTH_TYPE GATEWAY_INTERFACE PATH_INFO + PATH_TRANSLATED REMOTE_HOST + REMOTE_IDENT REMOTE_USER SCRIPT_NAME + SERVER_NAME SERVER_PROTOCOL + + HTTP_ACCEPT HTTP_ACCEPT_CHARSET HTTP_ACCEPT_ENCODING + HTTP_ACCEPT_LANGUAGE HTTP_CACHE_CONTROL HTTP_FROM + HTTP_NEGOTIATE HTTP_PRAGMA HTTP_REFERER HTTP_USER_AGENT ].each do |env| + define_method(env.sub(/^HTTP_/n, '').downcase) do + @env[env] + end + end + + def query_string + qs = super + if !qs.blank? + qs + else + @env['QUERY_STRING'] + end + end + + def body_stream #:nodoc: + @env['rack.input'] + end + + def key?(key) + @env.key?(key) + end + + def cookies + Rack::Request.new(@env).cookies + end + + def server_port + @env['SERVER_PORT'].to_i + end + + def server_software + @env['SERVER_SOFTWARE'].split("/").first + end + + def session_options + @env['rack.session.options'] ||= {} + end + + def session_options=(options) + @env['rack.session.options'] = options + end + + def session + @env['rack.session'] ||= {} + end + + def reset_session + @env['rack.session'] = {} + end + end + end -- cgit v1.2.3