GATEWAY_INTERFACE: "CGI/1.1"
HTTP_ACCEPT: "text/html"
HTTP_COOKIE: "_depot_session=BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5; path=/; HttpOnly"
HTTP_HOST: "localhost:3000"
HTTP_VERSION: "HTTP/1.1"
PATH_INFO: "/carts/wibble"
QUERY_STRING: ""
REMOTE_ADDR: "127.0.0.1"
REMOTE_HOST: "localhost"
REQUEST_METHOD: "GET"
REQUEST_PATH: "/"
REQUEST_URI: "http://localhost:3000/carts/wibble"
SCRIPT_NAME: ""
SERVER_NAME: "localhost"
SERVER_PORT: "3000"
SERVER_PROTOCOL: "HTTP/1.1"
SERVER_SOFTWARE: "WEBrick/1.3.1 (Ruby/1.8.7/2011-06-30)"
action_controller.instance: #<CartsController:0x7f722db73238 @lookup_context=#<ActionView::LookupContext:0x7f722db72a90 @view_paths=[#<ActionView::FileSystemResolver:0x7f722ef995a0 @cached={}, @path="/home/rubys/git/awdwr/edition4/work-30/depot/app/views", @caching=false>], @details_key=nil, @skip_default_locale=false, @details={:handlers=>[:builder, :rjs, :erb, :rhtml, :rxml], :formats=>[:html], :locale=>[:en, :en]}, @frozen_formats=false>, @_headers={"Content-Type"=>"text/html"}, @view_context_class=nil, @_env={"action_dispatch.request.formats"=>[#<Mime::Type:0x7f722f06f2e0 @symbol=:html, @string="text/html", @synonyms=["application/xhtml+xml"]>], "action_dispatch.request.parameters"=>{"action"=>"show", "id"=>"wibble", "controller"=>"carts"}, "rack.session"=>{"_csrf_token"=>"XfBkHT3bi21zPDXz4/aaqukTv2yc783VZwcBDNHbDWE=", "session_id"=>"6f8035ed41e1d1979f63f558302a290d", "cart_id"=>1}, "HTTP_HOST"=>"localhost:3000", "HTTP_ACCEPT"=>"text/html", "SERVER_NAME"=>"localhost", "rack.request.cookie_hash"=>{"HttpOnly"=>nil, "_depot_session"=>"BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5", "path"=>"/"}, "action_dispatch.remote_ip"=>#<ActionDispatch::RemoteIp::RemoteIpGetter:0x7f722d737de0 @check_ip_spoofing=true, @env={...}, @trusted_proxies=/(^127\.0\.0\.1$|^(10|172\.(1[6-9]|2[0-9]|30|31)|192\.168)\.)/i>, "REQUEST_PATH"=>"/", "rack.url_scheme"=>"http", "REMOTE_HOST"=>"localhost", "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.unsigned_session_cookie"=>{"_csrf_token"=>"XfBkHT3bi21zPDXz4/aaqukTv2yc783VZwcBDNHbDWE=", "session_id"=>"6f8035ed41e1d1979f63f558302a290d", "cart_id"=>1, "flash"=>{}}, "rack.errors"=>#<IO:0x7f72334d4ac0>, "SERVER_PROTOCOL"=>"HTTP/1.1", "action_dispatch.request.accepts"=>[#<Mime::Type:0x7f722f06f2e0 @symbol=:html, @string="text/html", @synonyms=["application/xhtml+xml"]>], "action_dispatch.secret_token"=>"bfb1db3c00dbefb2c1385a5cb6f0ada125a284e826c9838c575d213b8ed879c75ac08564c58eab49535f5233d9f52b1946394890cbb80fcff264aa75bc3cd0f6", "rack.version"=>[1, 1], "rack.run_once"=>false, "SERVER_SOFTWARE"=>"WEBrick/1.3.1 (Ruby/1.8.7/2011-06-30)", "REMOTE_ADDR"=>"127.0.0.1", "PATH_INFO"=>"/carts/wibble", "action_dispatch.request.path_parameters"=>{:action=>"show", :controller=>"carts", :id=>"wibble"}, "rack.request.cookie_string"=>"_depot_session=BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5; path=/; HttpOnly", "SCRIPT_NAME"=>"", "action_dispatch.parameter_filter"=>[:password], "action_dispatch.show_exceptions"=>true, "HTTP_VERSION"=>"HTTP/1.1", "rack.multithread"=>false, "HTTP_COOKIE"=>"_depot_session=BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5; path=/; HttpOnly", "action_dispatch.request.request_parameters"=>{}, "action_dispatch.cookies"=>{"HttpOnly"=>nil, "_depot_session"=>"BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5", "path"=>"/"}, "rack.multiprocess"=>false, "REQUEST_URI"=>"http://localhost:3000/carts/wibble", "rack.request.query_hash"=>{}, "SERVER_PORT"=>"3000", "action_controller.instance"=>#<CartsController:0x7f722db73238 ...>, "rack.session.options"=>{:httponly=>true, :secure=>false, :expire_after=>nil, :id=>"6f8035ed41e1d1979f63f558302a290d", :domain=>nil, :path=>"/"}, "REQUEST_METHOD"=>"GET", "rack.request.query_string"=>"", "action_dispatch.request.content_type"=>nil, "rack.input"=>#<StringIO:0x7f722d7394b0>, "QUERY_STRING"=>"", "GATEWAY_INTERFACE"=>"CGI/1.1"}, @action_has_layout=true, @_action_name="show", @_params={"action"=>"show", "id"=>"wibble", "controller"=>"carts"}, @_config=#<OrderedHash {}>, @_response=#<ActionDispatch::Response:0x7f722db730a8 @cookie=[], @header={}, @status=200, @request=#<ActionDispatch::Request:0x7f722db73170 @request_method="GET", @method="GET", @env={"action_dispatch.request.formats"=>[#<Mime::Type:0x7f722f06f2e0 @symbol=:html, @string="text/html", @synonyms=["application/xhtml+xml"]>], "action_dispatch.request.parameters"=>{"action"=>"show", "id"=>"wibble", "controller"=>"carts"}, "rack.session"=>{"_csrf_token"=>"XfBkHT3bi21zPDXz4/aaqukTv2yc783VZwcBDNHbDWE=", "session_id"=>"6f8035ed41e1d1979f63f558302a290d", "cart_id"=>1}, "HTTP_HOST"=>"localhost:3000", "HTTP_ACCEPT"=>"text/html", "SERVER_NAME"=>"localhost", "rack.request.cookie_hash"=>{"HttpOnly"=>nil, "_depot_session"=>"BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5", "path"=>"/"}, "action_dispatch.remote_ip"=>#<ActionDispatch::RemoteIp::RemoteIpGetter:0x7f722d737de0 @check_ip_spoofing=true, @env={...}, @trusted_proxies=/(^127\.0\.0\.1$|^(10|172\.(1[6-9]|2[0-9]|30|31)|192\.168)\.)/i>, "REQUEST_PATH"=>"/", "rack.url_scheme"=>"http", "REMOTE_HOST"=>"localhost", "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.unsigned_session_cookie"=>{"_csrf_token"=>"XfBkHT3bi21zPDXz4/aaqukTv2yc783VZwcBDNHbDWE=", "session_id"=>"6f8035ed41e1d1979f63f558302a290d", "cart_id"=>1, "flash"=>{}}, "rack.errors"=>#<IO:0x7f72334d4ac0>, "SERVER_PROTOCOL"=>"HTTP/1.1", "action_dispatch.request.accepts"=>[#<Mime::Type:0x7f722f06f2e0 @symbol=:html, @string="text/html", @synonyms=["application/xhtml+xml"]>], "action_dispatch.secret_token"=>"bfb1db3c00dbefb2c1385a5cb6f0ada125a284e826c9838c575d213b8ed879c75ac08564c58eab49535f5233d9f52b1946394890cbb80fcff264aa75bc3cd0f6", "rack.version"=>[1, 1], "rack.run_once"=>false, "SERVER_SOFTWARE"=>"WEBrick/1.3.1 (Ruby/1.8.7/2011-06-30)", "REMOTE_ADDR"=>"127.0.0.1", "PATH_INFO"=>"/carts/wibble", "action_dispatch.request.path_parameters"=>{:action=>"show", :controller=>"carts", :id=>"wibble"}, "rack.request.cookie_string"=>"_depot_session=BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5; path=/; HttpOnly", "SCRIPT_NAME"=>"", "action_dispatch.parameter_filter"=>[:password], "action_dispatch.show_exceptions"=>true, "HTTP_VERSION"=>"HTTP/1.1", "rack.multithread"=>false, "HTTP_COOKIE"=>"_depot_session=BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5; path=/; HttpOnly", "action_dispatch.request.request_parameters"=>{}, "action_dispatch.cookies"=>{"HttpOnly"=>nil, "_depot_session"=>"BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5", "path"=>"/"}, "rack.multiprocess"=>false, "REQUEST_URI"=>"http://localhost:3000/carts/wibble", "rack.request.query_hash"=>{}, "SERVER_PORT"=>"3000", "action_controller.instance"=>#<CartsController:0x7f722db73238 ...>, "rack.session.options"=>{:httponly=>true, :secure=>false, :expire_after=>nil, :id=>"6f8035ed41e1d1979f63f558302a290d", :domain=>nil, :path=>"/"}, "REQUEST_METHOD"=>"GET", "rack.request.query_string"=>"", "action_dispatch.request.content_type"=>nil, "rack.input"=>#<StringIO:0x7f722d7394b0>, "QUERY_STRING"=>"", "GATEWAY_INTERFACE"=>"CGI/1.1"}, @filtered_parameters={"action"=>"show", "id"=>"wibble", "controller"=>"carts"}, @fullpath="/carts/wibble">, @body=[], @length=0, @etag=nil, @block=nil, @writer=#<Proc:0x00007f722f226ed0@/home/rubys/git/rails/actionpack/lib/action_dispatch/http/response.rb:43>, @blank=false, @sending_file=false, @cache_control={}>, @_status=200, @_response_body=nil, @_request=#<ActionDispatch::Request:0x7f722db73170 @request_method="GET", @method="GET", @env={"action_dispatch.request.formats"=>[#<Mime::Type:0x7f722f06f2e0 @symbol=:html, @string="text/html", @synonyms=["application/xhtml+xml"]>], "action_dispatch.request.parameters"=>{"action"=>"show", "id"=>"wibble", "controller"=>"carts"}, "rack.session"=>{"_csrf_token"=>"XfBkHT3bi21zPDXz4/aaqukTv2yc783VZwcBDNHbDWE=", "session_id"=>"6f8035ed41e1d1979f63f558302a290d", "cart_id"=>1}, "HTTP_HOST"=>"localhost:3000", "HTTP_ACCEPT"=>"text/html", "SERVER_NAME"=>"localhost", "rack.request.cookie_hash"=>{"HttpOnly"=>nil, "_depot_session"=>"BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5", "path"=>"/"}, "action_dispatch.remote_ip"=>#<ActionDispatch::RemoteIp::RemoteIpGetter:0x7f722d737de0 @check_ip_spoofing=true, @env={...}, @trusted_proxies=/(^127\.0\.0\.1$|^(10|172\.(1[6-9]|2[0-9]|30|31)|192\.168)\.)/i>, "REQUEST_PATH"=>"/", "rack.url_scheme"=>"http", "REMOTE_HOST"=>"localhost", "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.unsigned_session_cookie"=>{"_csrf_token"=>"XfBkHT3bi21zPDXz4/aaqukTv2yc783VZwcBDNHbDWE=", "session_id"=>"6f8035ed41e1d1979f63f558302a290d", "cart_id"=>1, "flash"=>{}}, "rack.errors"=>#<IO:0x7f72334d4ac0>, "SERVER_PROTOCOL"=>"HTTP/1.1", "action_dispatch.request.accepts"=>[#<Mime::Type:0x7f722f06f2e0 @symbol=:html, @string="text/html", @synonyms=["application/xhtml+xml"]>], "action_dispatch.secret_token"=>"bfb1db3c00dbefb2c1385a5cb6f0ada125a284e826c9838c575d213b8ed879c75ac08564c58eab49535f5233d9f52b1946394890cbb80fcff264aa75bc3cd0f6", "rack.version"=>[1, 1], "rack.run_once"=>false, "SERVER_SOFTWARE"=>"WEBrick/1.3.1 (Ruby/1.8.7/2011-06-30)", "REMOTE_ADDR"=>"127.0.0.1", "PATH_INFO"=>"/carts/wibble", "action_dispatch.request.path_parameters"=>{:action=>"show", :controller=>"carts", :id=>"wibble"}, "rack.request.cookie_string"=>"_depot_session=BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5; path=/; HttpOnly", "SCRIPT_NAME"=>"", "action_dispatch.parameter_filter"=>[:password], "action_dispatch.show_exceptions"=>true, "HTTP_VERSION"=>"HTTP/1.1", "rack.multithread"=>false, "HTTP_COOKIE"=>"_depot_session=BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5; path=/; HttpOnly", "action_dispatch.request.request_parameters"=>{}, "action_dispatch.cookies"=>{"HttpOnly"=>nil, "_depot_session"=>"BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5", "path"=>"/"}, "rack.multiprocess"=>false, "REQUEST_URI"=>"http://localhost:3000/carts/wibble", "rack.request.query_hash"=>{}, "SERVER_PORT"=>"3000", "action_controller.instance"=>#<CartsController:0x7f722db73238 ...>, "rack.session.options"=>{:httponly=>true, :secure=>false, :expire_after=>nil, :id=>"6f8035ed41e1d1979f63f558302a290d", :domain=>nil, :path=>"/"}, "REQUEST_METHOD"=>"GET", "rack.request.query_string"=>"", "action_dispatch.request.content_type"=>nil, "rack.input"=>#<StringIO:0x7f722d7394b0>, "QUERY_STRING"=>"", "GATEWAY_INTERFACE"=>"CGI/1.1"}, @filtered_parameters={"action"=>"show", "id"=>"wibble", "controller"=>"carts"}, @fullpath="/carts/wibble">>
action_dispatch.cookies: {"HttpOnly"=>nil, "_depot_session"=>"BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5", "path"=>"/"}
action_dispatch.parameter_filter: [:password]
action_dispatch.remote_ip: #<ActionDispatch::RemoteIp::RemoteIpGetter:0x7f722d737de0 @check_ip_spoofing=true, @env={"action_dispatch.request.formats"=>[#<Mime::Type:0x7f722f06f2e0 @symbol=:html, @string="text/html", @synonyms=["application/xhtml+xml"]>], "action_dispatch.request.parameters"=>{"action"=>"show", "id"=>"wibble", "controller"=>"carts"}, "rack.session"=>{"_csrf_token"=>"XfBkHT3bi21zPDXz4/aaqukTv2yc783VZwcBDNHbDWE=", "session_id"=>"6f8035ed41e1d1979f63f558302a290d", "cart_id"=>1}, "HTTP_HOST"=>"localhost:3000", "HTTP_ACCEPT"=>"text/html", "SERVER_NAME"=>"localhost", "rack.request.cookie_hash"=>{"HttpOnly"=>nil, "_depot_session"=>"BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5", "path"=>"/"}, "action_dispatch.remote_ip"=>#<ActionDispatch::RemoteIp::RemoteIpGetter:0x7f722d737de0 ...>, "REQUEST_PATH"=>"/", "rack.url_scheme"=>"http", "REMOTE_HOST"=>"localhost", "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.unsigned_session_cookie"=>{"_csrf_token"=>"XfBkHT3bi21zPDXz4/aaqukTv2yc783VZwcBDNHbDWE=", "session_id"=>"6f8035ed41e1d1979f63f558302a290d", "cart_id"=>1, "flash"=>{}}, "rack.errors"=>#<IO:0x7f72334d4ac0>, "SERVER_PROTOCOL"=>"HTTP/1.1", "action_dispatch.request.accepts"=>[#<Mime::Type:0x7f722f06f2e0 @symbol=:html, @string="text/html", @synonyms=["application/xhtml+xml"]>], "action_dispatch.secret_token"=>"bfb1db3c00dbefb2c1385a5cb6f0ada125a284e826c9838c575d213b8ed879c75ac08564c58eab49535f5233d9f52b1946394890cbb80fcff264aa75bc3cd0f6", "rack.version"=>[1, 1], "rack.run_once"=>false, "SERVER_SOFTWARE"=>"WEBrick/1.3.1 (Ruby/1.8.7/2011-06-30)", "REMOTE_ADDR"=>"127.0.0.1", "PATH_INFO"=>"/carts/wibble", "action_dispatch.request.path_parameters"=>{:action=>"show", :controller=>"carts", :id=>"wibble"}, "rack.request.cookie_string"=>"_depot_session=BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5; path=/; HttpOnly", "SCRIPT_NAME"=>"", "action_dispatch.parameter_filter"=>[:password], "action_dispatch.show_exceptions"=>true, "HTTP_VERSION"=>"HTTP/1.1", "rack.multithread"=>false, "HTTP_COOKIE"=>"_depot_session=BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5; path=/; HttpOnly", "action_dispatch.request.request_parameters"=>{}, "action_dispatch.cookies"=>{"HttpOnly"=>nil, "_depot_session"=>"BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5", "path"=>"/"}, "rack.multiprocess"=>false, "REQUEST_URI"=>"http://localhost:3000/carts/wibble", "rack.request.query_hash"=>{}, "SERVER_PORT"=>"3000", "action_controller.instance"=>#<CartsController:0x7f722db73238 @lookup_context=#<ActionView::LookupContext:0x7f722db72a90 @view_paths=[#<ActionView::FileSystemResolver:0x7f722ef995a0 @cached={}, @path="/home/rubys/git/awdwr/edition4/work-30/depot/app/views", @caching=false>], @details_key=nil, @skip_default_locale=false, @details={:handlers=>[:builder, :rjs, :erb, :rhtml, :rxml], :formats=>[:html], :locale=>[:en, :en]}, @frozen_formats=false>, @_headers={"Content-Type"=>"text/html"}, @view_context_class=nil, @_env={...}, @action_has_layout=true, @_action_name="show", @_params={"action"=>"show", "id"=>"wibble", "controller"=>"carts"}, @_config=#<OrderedHash {}>, @_response=#<ActionDispatch::Response:0x7f722db730a8 @cookie=[], @header={}, @status=200, @request=#<ActionDispatch::Request:0x7f722db73170 @request_method="GET", @method="GET", @env={...}, @filtered_parameters={"action"=>"show", "id"=>"wibble", "controller"=>"carts"}, @fullpath="/carts/wibble">, @body=[], @length=0, @etag=nil, @block=nil, @writer=#<Proc:0x00007f722f226ed0@/home/rubys/git/rails/actionpack/lib/action_dispatch/http/response.rb:43>, @blank=false, @sending_file=false, @cache_control={}>, @_status=200, @_response_body=nil, @_request=#<ActionDispatch::Request:0x7f722db73170 @request_method="GET", @method="GET", @env={...}, @filtered_parameters={"action"=>"show", "id"=>"wibble", "controller"=>"carts"}, @fullpath="/carts/wibble">>, "rack.session.options"=>{:httponly=>true, :secure=>false, :expire_after=>nil, :id=>"6f8035ed41e1d1979f63f558302a290d", :domain=>nil, :path=>"/"}, "REQUEST_METHOD"=>"GET", "rack.request.query_string"=>"", "action_dispatch.request.content_type"=>nil, "rack.input"=>#<StringIO:0x7f722d7394b0>, "QUERY_STRING"=>"", "GATEWAY_INTERFACE"=>"CGI/1.1"}, @trusted_proxies=/(^127\.0\.0\.1$|^(10|172\.(1[6-9]|2[0-9]|30|31)|192\.168)\.)/i>
action_dispatch.request.accepts: [#<Mime::Type:0x7f722f06f2e0 @symbol=:html, @string="text/html", @synonyms=["application/xhtml+xml"]>]
action_dispatch.request.content_type: nil
action_dispatch.request.formats: [#<Mime::Type:0x7f722f06f2e0 @symbol=:html, @string="text/html", @synonyms=["application/xhtml+xml"]>]
action_dispatch.request.parameters: {"action"=>"show", "id"=>"wibble", "controller"=>"carts"}
action_dispatch.request.path_parameters: {:action=>"show", :controller=>"carts", :id=>"wibble"}
action_dispatch.request.query_parameters: {}
action_dispatch.request.request_parameters: {}
action_dispatch.request.unsigned_session_cookie: {"_csrf_token"=>"XfBkHT3bi21zPDXz4/aaqukTv2yc783VZwcBDNHbDWE=", "session_id"=>"6f8035ed41e1d1979f63f558302a290d", "cart_id"=>1, "flash"=>{}}
action_dispatch.secret_token: "bfb1db3c00dbefb2c1385a5cb6f0ada125a284e826c9838c575d213b8ed879c75ac08564c58eab49535f5233d9f52b1946394890cbb80fcff264aa75bc3cd0f6"
action_dispatch.show_exceptions: true
rack.errors: #<IO:0x7f72334d4ac0>
rack.input: #<StringIO:0x7f722d7394b0>
rack.multiprocess: false
rack.multithread: false
rack.request.cookie_hash: {"HttpOnly"=>nil, "_depot_session"=>"BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5", "path"=>"/"}
rack.request.cookie_string: "_depot_session=BAh7CSIQX2NzcmZfdG9rZW4iMVhmQmtIVDNiaTIxelBEWHo0L2FhcXVrVHYyeWM3ODNWWndjQkROSGJEV0U9Ig9zZXNzaW9uX2lkIiU2ZjgwMzVlZDQxZTFkMTk3OWY2M2Y1NTgzMDJhMjkwZCIMY2FydF9pZGkGIgpmbGFzaElDOiVBY3Rpb25EaXNwYXRjaDo6Rmxhc2g6OkZsYXNoSGFzaHsGOgtub3RpY2UiKExpbmUgaXRlbSB3YXMgc3VjY2Vzc2Z1bGx5IGNyZWF0ZWQuBjoKQHVzZWRvOghTZXQGOgpAaGFzaHsGOwZU--e43140c4e9a1aa67afc13e1c05dafd3848dcabb5; path=/; HttpOnly"
rack.request.query_hash: {}
rack.request.query_string: ""
rack.run_once: false
rack.session: {"_csrf_token"=>"XfBkHT3bi21zPDXz4/aaqukTv2yc783VZwcBDNHbDWE=", "session_id"=>"6f8035ed41e1d1979f63f558302a290d", "cart_id"=>1}
rack.session.options: {:httponly=>true, :secure=>false, :expire_after=>nil, :id=>"6f8035ed41e1d1979f63f558302a290d", :domain=>nil, :path=>"/"}
rack.url_scheme: "http"
rack.version: [1, 1]