board-client 0.3.0 → 0.99.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +4 -0
- data/.rspec +1 -0
- data/.rvmrc +47 -0
- data/Gemfile +1 -7
- data/README.md +63 -17
- data/Rakefile +4 -44
- data/board-client.gemspec +22 -66
- data/lib/board/client.rb +41 -22
- data/lib/board/client/api.rb +29 -0
- data/lib/board/client/candidates.rb +13 -0
- data/lib/board/client/organizations.rb +17 -0
- data/lib/board/client/request.rb +98 -0
- data/lib/board/client/user_organizations.rb +20 -0
- data/lib/board/client/users.rb +21 -0
- data/lib/board/client/version.rb +5 -0
- data/spec/board/client_spec.rb +27 -83
- data/spec/cassettes/candidate_exists_with_id.yml +30 -0
- data/spec/cassettes/candidate_id_does_not_exist.yml +336 -0
- data/spec/cassettes/candidate_invite_email_exists.yml +30 -0
- data/spec/cassettes/candidate_invite_when_invalid.yml +30 -0
- data/spec/cassettes/candidate_invite_when_valid.yml +32 -0
- data/spec/cassettes/list_user_organizations_with_invalid_id.yml +346 -0
- data/spec/cassettes/list_user_organizations_with_valid_id.yml +30 -0
- data/spec/cassettes/organization_add_user.yml +26 -0
- data/spec/cassettes/organization_add_user_-_organization_does_not_exist.yml +356 -0
- data/spec/cassettes/organization_add_user_-_user_does_not_exist.yml +348 -0
- data/spec/cassettes/organization_create_is_invalid.yml +30 -0
- data/spec/cassettes/organization_create_is_valid.yml +32 -0
- data/spec/cassettes/organization_exists_with_email.yml +30 -0
- data/spec/cassettes/organization_exists_with_id.yml +30 -0
- data/spec/cassettes/organization_id_does_not_exist.yml +354 -0
- data/spec/cassettes/organization_name_does_not_exist.yml +334 -0
- data/spec/cassettes/unsubscribe_email_does_not_exist.yml +340 -0
- data/spec/cassettes/unsubscribe_email_exists.yml +30 -0
- data/spec/cassettes/user_does_exist.yml +30 -0
- data/spec/cassettes/user_does_not_exist.yml +32 -0
- data/spec/cassettes/user_email_does_not_exist.yml +334 -0
- data/spec/cassettes/user_email_md5_does_not_exist.yml +334 -0
- data/spec/cassettes/user_exists_with_email.yml +30 -0
- data/spec/cassettes/user_exists_with_email_md5.yml +30 -0
- data/spec/cassettes/user_exists_with_id.yml +30 -0
- data/spec/cassettes/user_id_does_not_exist.yml +346 -0
- data/spec/cassettes/user_missing_attributes.yml +30 -0
- data/spec/integration/candidates/find_spec.rb +28 -0
- data/spec/integration/candidates/invite_spec.rb +48 -0
- data/spec/integration/organizations/add_user_spec.rb +34 -0
- data/spec/integration/organizations/create_spec.rb +38 -0
- data/spec/integration/organizations/find_spec.rb +50 -0
- data/spec/integration/users/create_spec.rb +54 -0
- data/spec/integration/users/find_spec.rb +73 -0
- data/spec/integration/users/list_organizations_spec.rb +36 -0
- data/spec/integration/users/unsubscribe_spec.rb +27 -0
- data/spec/spec_helper.rb +6 -5
- data/spec/support/integration_helpers.rb +17 -0
- data/spec/support/vcr.rb +11 -0
- metadata +144 -52
- data/Gemfile.lock +0 -22
- data/lib/board/candidate_search.rb +0 -45
- data/lib/board/request.rb +0 -78
- data/spec/board/candidate_search_spec.rb +0 -45
- data/spec/spec.opts +0 -1
@@ -0,0 +1,98 @@
|
|
1
|
+
require 'uri'
|
2
|
+
require 'net/http'
|
3
|
+
require 'net/https'
|
4
|
+
|
5
|
+
module Board
|
6
|
+
module Client::Request
|
7
|
+
|
8
|
+
def post(path, params)
|
9
|
+
request path, params, :post
|
10
|
+
end
|
11
|
+
|
12
|
+
def get(path, params = {})
|
13
|
+
request path, params, :get
|
14
|
+
end
|
15
|
+
|
16
|
+
def request(path, params, method)
|
17
|
+
params.merge!(:user_credentials => @api_key)
|
18
|
+
|
19
|
+
uri = URI.parse(@endpoint + path)
|
20
|
+
http = Net::HTTP.new(uri.host, uri.port)
|
21
|
+
|
22
|
+
if uri.port == 443 # ssl?
|
23
|
+
http.use_ssl = true
|
24
|
+
http.verify_mode = OpenSSL::SSL::VERIFY_PEER
|
25
|
+
end
|
26
|
+
|
27
|
+
case method
|
28
|
+
when :get
|
29
|
+
request = Net::HTTP::Get.new(uri.request_uri)
|
30
|
+
when :post
|
31
|
+
request = Net::HTTP::Post.new(uri.request_uri)
|
32
|
+
end
|
33
|
+
|
34
|
+
request.set_form_data(params)
|
35
|
+
response = http.request(request)
|
36
|
+
|
37
|
+
case response.code
|
38
|
+
when /2../
|
39
|
+
if response.body.empty?
|
40
|
+
true
|
41
|
+
else
|
42
|
+
Yajl::Parser.parse(response.body)
|
43
|
+
end
|
44
|
+
when '400'
|
45
|
+
raise Client::BadRequest.new(response)
|
46
|
+
when '401'
|
47
|
+
raise Client::Unauthorized.new(response)
|
48
|
+
when '403'
|
49
|
+
raise Client::Forbidden.new(response)
|
50
|
+
when '404'
|
51
|
+
raise Client::NotFound.new(response)
|
52
|
+
when '406'
|
53
|
+
raise Client::NotAcceptable.new(response)
|
54
|
+
when '409'
|
55
|
+
raise Client::Conflict.new(response)
|
56
|
+
when '422'
|
57
|
+
raise Client::UnprocessableEntity.new(response)
|
58
|
+
when '500'
|
59
|
+
raise Client::InternalServerError.new(response)
|
60
|
+
when '501'
|
61
|
+
raise Client::NotImplemented.new(response)
|
62
|
+
when '502'
|
63
|
+
raise Client::BadGateway.new(response)
|
64
|
+
when '503'
|
65
|
+
raise Client::ServiceUnavailable.new(response)
|
66
|
+
else
|
67
|
+
raise Client::Error.new(response)
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
def hash_to_query_string(hash)
|
72
|
+
params = ''
|
73
|
+
stack = []
|
74
|
+
|
75
|
+
hash.each do |k, v|
|
76
|
+
if v.is_a?(Hash)
|
77
|
+
stack << [k,v]
|
78
|
+
else
|
79
|
+
params << "#{k}=#{v}&"
|
80
|
+
end
|
81
|
+
end
|
82
|
+
|
83
|
+
stack.each do |parent, hash|
|
84
|
+
hash.each do |k, v|
|
85
|
+
if v.is_a?(Hash)
|
86
|
+
stack << ["#{parent}[#{k}]", v]
|
87
|
+
else
|
88
|
+
params << "#{parent}[#{k}]=#{v}&"
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
92
|
+
|
93
|
+
params.chop! # trailing &
|
94
|
+
params
|
95
|
+
end
|
96
|
+
|
97
|
+
end
|
98
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
module Board
|
2
|
+
class Client::UserOrganizations < Client::API
|
3
|
+
|
4
|
+
def list(attributes)
|
5
|
+
user_id = attributes.fetch(:user_id) {
|
6
|
+
raise ArgumentError, "user_id is required"
|
7
|
+
}
|
8
|
+
|
9
|
+
get("/users/#{user_id}/organizations")
|
10
|
+
end
|
11
|
+
|
12
|
+
def create(attributes)
|
13
|
+
user_id = attributes.fetch(:user_id)
|
14
|
+
organization_id = attributes.fetch(:organization_id)
|
15
|
+
|
16
|
+
post("/users/#{user_id}/organizations", :id => organization_id)
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
module Board
|
2
|
+
class Client::Users < Client::API
|
3
|
+
|
4
|
+
def create(attributes)
|
5
|
+
post("/users", attributes)
|
6
|
+
end
|
7
|
+
|
8
|
+
def find(id)
|
9
|
+
if id.is_a?(Hash)
|
10
|
+
get("/users", id)
|
11
|
+
else
|
12
|
+
get("/users/#{id}")
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
def unsubscribe(email)
|
17
|
+
get("/users/unsubscribe", :email => email)
|
18
|
+
end
|
19
|
+
|
20
|
+
end
|
21
|
+
end
|
data/spec/board/client_spec.rb
CHANGED
@@ -1,30 +1,8 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
|
-
module RequestTracking
|
4
|
-
|
5
|
-
class Request < Struct.new(:path, :params, :method); end
|
6
|
-
|
7
|
-
def request(path, params, method)
|
8
|
-
requests << Request.new(path, params, method)
|
9
|
-
end
|
10
|
-
|
11
|
-
def requests
|
12
|
-
@requests ||= []
|
13
|
-
end
|
14
|
-
|
15
|
-
end
|
16
|
-
|
17
3
|
describe Board::Client do
|
18
4
|
|
19
|
-
let(:client) {
|
20
|
-
client = Board::Client.new('VALID_KEY')
|
21
|
-
client.extend(RequestTracking)
|
22
|
-
client
|
23
|
-
}
|
24
|
-
|
25
|
-
def last_request
|
26
|
-
@last_request ||= client.requests.last
|
27
|
-
end
|
5
|
+
let(:client) { Board::Client.new('VALID_KEY') }
|
28
6
|
|
29
7
|
describe "when creating" do
|
30
8
|
context 'and missing an API key' do
|
@@ -40,66 +18,32 @@ describe Board::Client do
|
|
40
18
|
end
|
41
19
|
end
|
42
20
|
|
43
|
-
describe
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
last_request.path.should == '/users/invalid'
|
71
|
-
last_request.method.should == :get
|
72
|
-
last_request.params.should == { :email => 'bob@rm.com' }
|
73
|
-
end
|
74
|
-
end
|
75
|
-
|
76
|
-
describe '#unsubscribe' do
|
77
|
-
it 'performs the correct request' do
|
78
|
-
client.unsubscribe(:email => 'bob@rm.com')
|
79
|
-
|
80
|
-
last_request.path.should == '/users/unsubscribe'
|
81
|
-
last_request.method.should == :get
|
82
|
-
last_request.params.should == { :email => 'bob@rm.com' }
|
83
|
-
end
|
84
|
-
end
|
85
|
-
|
86
|
-
describe '#create_candidate_invitation' do
|
87
|
-
it 'performs the correct request' do
|
88
|
-
client.create_candidate_invitation(:email => 'bob@rm.com')
|
89
|
-
|
90
|
-
last_request.path.should == '/candidate_invitations'
|
91
|
-
last_request.method.should == :post
|
92
|
-
last_request.params.should == { :email => 'bob@rm.com' }
|
93
|
-
end
|
94
|
-
end
|
95
|
-
|
96
|
-
describe '#candidates' do
|
97
|
-
it 'performs the correct request' do
|
98
|
-
client.find_candidate(42)
|
99
|
-
|
100
|
-
last_request.path.should == '/candidates/42'
|
101
|
-
last_request.method.should == :get
|
102
|
-
last_request.params.should == {}
|
21
|
+
describe "when processing responses" do
|
22
|
+
{
|
23
|
+
400 => Board::Client::BadRequest,
|
24
|
+
401 => Board::Client::Unauthorized,
|
25
|
+
403 => Board::Client::Forbidden,
|
26
|
+
404 => Board::Client::NotFound,
|
27
|
+
406 => Board::Client::NotAcceptable,
|
28
|
+
409 => Board::Client::Conflict,
|
29
|
+
422 => Board::Client::UnprocessableEntity,
|
30
|
+
500 => Board::Client::InternalServerError,
|
31
|
+
501 => Board::Client::NotImplemented,
|
32
|
+
502 => Board::Client::BadGateway,
|
33
|
+
503 => Board::Client::ServiceUnavailable,
|
34
|
+
}.each do |code, exception|
|
35
|
+
context "when HTTP status code is #{code}" do
|
36
|
+
before do
|
37
|
+
stub_request(:get, 'http://localhost:3000/api/v1/users/42').
|
38
|
+
to_return(:status => code)
|
39
|
+
end
|
40
|
+
|
41
|
+
it "raises #{exception.name} error" do
|
42
|
+
expect {
|
43
|
+
client.users.find(42)
|
44
|
+
}.to raise_error(exception)
|
45
|
+
end
|
46
|
+
end
|
103
47
|
end
|
104
48
|
end
|
105
49
|
|
@@ -0,0 +1,30 @@
|
|
1
|
+
---
|
2
|
+
- !ruby/struct:VCR::HTTPInteraction
|
3
|
+
request: !ruby/struct:VCR::Request
|
4
|
+
method: :get
|
5
|
+
uri: http://localhost:3000/api/v1/candidates/100
|
6
|
+
body: user_credentials=Bdrc3t1LaiWtygbJ4jD6
|
7
|
+
headers:
|
8
|
+
content-type:
|
9
|
+
- application/x-www-form-urlencoded
|
10
|
+
response: !ruby/struct:VCR::Response
|
11
|
+
status: !ruby/struct:VCR::ResponseStatus
|
12
|
+
code: 200
|
13
|
+
message: OK
|
14
|
+
headers:
|
15
|
+
x-ua-compatible:
|
16
|
+
- IE=Edge
|
17
|
+
etag:
|
18
|
+
- "\"df04f11b2167cb0eedf2f169014bfaec\""
|
19
|
+
content-type:
|
20
|
+
- application/json; charset=utf-8
|
21
|
+
date:
|
22
|
+
- Mon, 29 Aug 2011 18:18:58 GMT
|
23
|
+
x-runtime:
|
24
|
+
- "0.929935"
|
25
|
+
cache-control:
|
26
|
+
- max-age=0, private, must-revalidate
|
27
|
+
transfer-encoding:
|
28
|
+
- chunked
|
29
|
+
body: "{\"resume_text\":null,\"full_time\":false,\"city\":\"Kaelaview\",\"location\":\"Kaelaview, OH\",\"minimum_compensation\":41070,\"zip_code\":null,\"resume_filename\":null,\"seasonal\":false,\"part_time\":false,\"last_activity_at\":\"2011-08-16T18:18:19Z\",\"id\":100,\"willing_to_relocate\":false,\"work_interests\":[1014,1070,1087,1090],\"phone\":null,\"profile_url\":\"https://localhost/candidates/100\",\"resume_url\":null,\"highest_education_level\":4,\"internship\":false,\"last_name\":\"Reichel\",\"contract\":false,\"email\":\"candidate@recruitmilitary.com\",\"state\":\"OH\",\"first_name\":\"Raina\"}"
|
30
|
+
http_version: "1.1"
|
@@ -0,0 +1,336 @@
|
|
1
|
+
---
|
2
|
+
- !ruby/struct:VCR::HTTPInteraction
|
3
|
+
request: !ruby/struct:VCR::Request
|
4
|
+
method: :get
|
5
|
+
uri: http://localhost:3000/api/v1/candidates/42
|
6
|
+
body: user_credentials=Bdrc3t1LaiWtygbJ4jD6
|
7
|
+
headers:
|
8
|
+
content-type:
|
9
|
+
- application/x-www-form-urlencoded
|
10
|
+
response: !ruby/struct:VCR::Response
|
11
|
+
status: !ruby/struct:VCR::ResponseStatus
|
12
|
+
code: 404
|
13
|
+
message: Not Found
|
14
|
+
headers:
|
15
|
+
content-type:
|
16
|
+
- text/html
|
17
|
+
date:
|
18
|
+
- Mon, 29 Aug 2011 18:19:00 GMT
|
19
|
+
x-runtime:
|
20
|
+
- "0.412695"
|
21
|
+
content-length:
|
22
|
+
- "51248"
|
23
|
+
body: |
|
24
|
+
<html xmlns="http://www.w3.org/1999/xhtml">
|
25
|
+
<head>
|
26
|
+
<title>Action Controller: Exception caught</title>
|
27
|
+
<style>
|
28
|
+
body { background-color: #fff; color: #333; }
|
29
|
+
|
30
|
+
body, p, ol, ul, td {
|
31
|
+
font-family: verdana, arial, helvetica, sans-serif;
|
32
|
+
font-size: 13px;
|
33
|
+
line-height: 18px;
|
34
|
+
}
|
35
|
+
|
36
|
+
pre {
|
37
|
+
background-color: #eee;
|
38
|
+
padding: 10px;
|
39
|
+
font-size: 11px;
|
40
|
+
}
|
41
|
+
|
42
|
+
a { color: #000; }
|
43
|
+
a:visited { color: #666; }
|
44
|
+
a:hover { color: #fff; background-color:#000; }
|
45
|
+
</style>
|
46
|
+
</head>
|
47
|
+
<body>
|
48
|
+
|
49
|
+
<h1>
|
50
|
+
ActiveRecord::RecordNotFound
|
51
|
+
in Api::V1::CandidatesController#show
|
52
|
+
</h1>
|
53
|
+
<pre>Couldn't find User with ID=42</pre>
|
54
|
+
|
55
|
+
|
56
|
+
<p><code>Rails.root: /Users/michaelguterl/code/rm/board</code></p>
|
57
|
+
|
58
|
+
<div id="traces">
|
59
|
+
<a href="#" onclick="document.getElementById('Framework-Trace').style.display='none';document.getElementById('Full-Trace').style.display='none';document.getElementById('Application-Trace').style.display='block';; return false;">Application Trace</a> |
|
60
|
+
<a href="#" onclick="document.getElementById('Application-Trace').style.display='none';document.getElementById('Full-Trace').style.display='none';document.getElementById('Framework-Trace').style.display='block';; return false;">Framework Trace</a> |
|
61
|
+
<a href="#" onclick="document.getElementById('Application-Trace').style.display='none';document.getElementById('Framework-Trace').style.display='none';document.getElementById('Full-Trace').style.display='block';; return false;">Full Trace</a>
|
62
|
+
|
63
|
+
<div id="Application-Trace" style="display: block;">
|
64
|
+
<pre><code>app/controllers/api/v1/candidates_controller.rb:19:in `find_candidate'</code></pre>
|
65
|
+
</div>
|
66
|
+
<div id="Framework-Trace" style="display: none;">
|
67
|
+
<pre><code>activerecord (3.0.9) lib/active_record/relation/finder_methods.rb:304:in `find_one'
|
68
|
+
friendly_id (3.2.1) lib/friendly_id/active_record_adapter/relation.rb:148:in `find_one'
|
69
|
+
activerecord (3.0.9) lib/active_record/relation/finder_methods.rb:289:in `find_with_ids'
|
70
|
+
activerecord (3.0.9) lib/active_record/relation/finder_methods.rb:107:in `find'
|
71
|
+
activerecord (3.0.9) lib/active_record/base.rb:444:in `__send__'
|
72
|
+
activerecord (3.0.9) lib/active_record/base.rb:444:in `find'
|
73
|
+
activesupport (3.0.9) lib/active_support/callbacks.rb:472:in `_run__154108811__process_action__453433196__callbacks'
|
74
|
+
activesupport (3.0.9) lib/active_support/callbacks.rb:410:in `send'
|
75
|
+
activesupport (3.0.9) lib/active_support/callbacks.rb:410:in `_run_process_action_callbacks'
|
76
|
+
activesupport (3.0.9) lib/active_support/callbacks.rb:94:in `send'
|
77
|
+
activesupport (3.0.9) lib/active_support/callbacks.rb:94:in `run_callbacks'
|
78
|
+
actionpack (3.0.9) lib/abstract_controller/callbacks.rb:17:in `process_action'
|
79
|
+
actionpack (3.0.9) lib/action_controller/metal/instrumentation.rb:30:in `process_action'
|
80
|
+
activesupport (3.0.9) lib/active_support/notifications.rb:52:in `instrument'
|
81
|
+
activesupport (3.0.9) lib/active_support/notifications/instrumenter.rb:21:in `instrument'
|
82
|
+
activesupport (3.0.9) lib/active_support/notifications.rb:52:in `instrument'
|
83
|
+
actionpack (3.0.9) lib/action_controller/metal/instrumentation.rb:29:in `process_action'
|
84
|
+
actionpack (3.0.9) lib/action_controller/metal/rescue.rb:17:in `process_action'
|
85
|
+
newrelic_rpm (3.0.1) lib/new_relic/agent/instrumentation/rails3/action_controller.rb:34:in `process_action'
|
86
|
+
newrelic_rpm (3.0.1) lib/new_relic/agent/instrumentation/controller_instrumentation.rb:253:in `perform_action_with_newrelic_trace'
|
87
|
+
newrelic_rpm (3.0.1) lib/new_relic/agent/method_tracer.rb:193:in `trace_execution_scoped'
|
88
|
+
newrelic_rpm (3.0.1) lib/new_relic/agent/instrumentation/controller_instrumentation.rb:248:in `perform_action_with_newrelic_trace'
|
89
|
+
newrelic_rpm (3.0.1) lib/new_relic/agent/instrumentation/rails3/action_controller.rb:33:in `process_action'
|
90
|
+
actionpack (3.0.9) lib/abstract_controller/base.rb:119:in `process'
|
91
|
+
actionpack (3.0.9) lib/abstract_controller/rendering.rb:41:in `process'
|
92
|
+
actionpack (3.0.9) lib/action_controller/metal.rb:138:in `dispatch'
|
93
|
+
actionpack (3.0.9) lib/action_controller/metal/rack_delegation.rb:14:in `dispatch'
|
94
|
+
actionpack (3.0.9) lib/action_controller/metal.rb:178:in `action'
|
95
|
+
actionpack (3.0.9) lib/action_dispatch/routing/route_set.rb:62:in `call'
|
96
|
+
actionpack (3.0.9) lib/action_dispatch/routing/route_set.rb:62:in `dispatch'
|
97
|
+
actionpack (3.0.9) lib/action_dispatch/routing/route_set.rb:27:in `call'
|
98
|
+
rack-mount (0.6.14) lib/rack/mount/route_set.rb:148:in `call'
|
99
|
+
rack-mount (0.6.14) lib/rack/mount/code_generation.rb:93:in `recognize'
|
100
|
+
rack-mount (0.6.14) lib/rack/mount/code_generation.rb:75:in `optimized_each'
|
101
|
+
rack-mount (0.6.14) lib/rack/mount/code_generation.rb:92:in `recognize'
|
102
|
+
rack-mount (0.6.14) lib/rack/mount/route_set.rb:139:in `call'
|
103
|
+
actionpack (3.0.9) lib/action_dispatch/routing/route_set.rb:493:in `call'
|
104
|
+
/Users/michaelguterl/.rvm/gems/ree-1.8.7-2011.03@rm-board/bundler/gems/oauth2-provider-465353dcca4f/lib/oauth2/provider/rack/middleware.rb:14:in `call'
|
105
|
+
/Users/michaelguterl/.rvm/gems/ree-1.8.7-2011.03@rm-board/bundler/gems/oauth2-provider-465353dcca4f/lib/oauth2/provider/rack/middleware.rb:10:in `catch'
|
106
|
+
/Users/michaelguterl/.rvm/gems/ree-1.8.7-2011.03@rm-board/bundler/gems/oauth2-provider-465353dcca4f/lib/oauth2/provider/rack/middleware.rb:10:in `call'
|
107
|
+
newrelic_rpm (3.0.1) lib/new_relic/rack/browser_monitoring.rb:18:in `call'
|
108
|
+
newrelic_rpm (3.0.1) lib/new_relic/rack/developer_mode.rb:24:in `call'
|
109
|
+
hoptoad_notifier (2.4.11) lib/hoptoad_notifier/rack.rb:27:in `call'
|
110
|
+
haml (3.0.25) lib/sass/plugin/rack.rb:41:in `call'
|
111
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/best_standards_support.rb:17:in `call'
|
112
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/head.rb:14:in `call'
|
113
|
+
rack (1.2.3) lib/rack/methodoverride.rb:24:in `call'
|
114
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/params_parser.rb:21:in `call'
|
115
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/flash.rb:182:in `call'
|
116
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/session/abstract_store.rb:149:in `call'
|
117
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/cookies.rb:302:in `call'
|
118
|
+
activerecord (3.0.9) lib/active_record/query_cache.rb:32:in `call'
|
119
|
+
activerecord (3.0.9) lib/active_record/connection_adapters/abstract/query_cache.rb:28:in `cache'
|
120
|
+
activerecord (3.0.9) lib/active_record/query_cache.rb:12:in `cache'
|
121
|
+
activerecord (3.0.9) lib/active_record/query_cache.rb:31:in `call'
|
122
|
+
activerecord (3.0.9) lib/active_record/connection_adapters/abstract/connection_pool.rb:354:in `call'
|
123
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/callbacks.rb:46:in `call'
|
124
|
+
activesupport (3.0.9) lib/active_support/callbacks.rb:416:in `_run_call_callbacks'
|
125
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/callbacks.rb:44:in `call'
|
126
|
+
rack (1.2.3) lib/rack/sendfile.rb:107:in `call'
|
127
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/remote_ip.rb:48:in `call'
|
128
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/show_exceptions.rb:47:in `call'
|
129
|
+
railties (3.0.9) lib/rails/rack/logger.rb:13:in `call'
|
130
|
+
rack (1.2.3) lib/rack/runtime.rb:17:in `call'
|
131
|
+
activesupport (3.0.9) lib/active_support/cache/strategy/local_cache.rb:72:in `call'
|
132
|
+
rack (1.2.3) lib/rack/lock.rb:11:in `call'
|
133
|
+
rack (1.2.3) lib/rack/lock.rb:11:in `synchronize'
|
134
|
+
rack (1.2.3) lib/rack/lock.rb:11:in `call'
|
135
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/static.rb:30:in `call'
|
136
|
+
hoptoad_notifier (2.4.11) lib/hoptoad_notifier/user_informer.rb:12:in `call'
|
137
|
+
railties (3.0.9) lib/rails/application.rb:168:in `call'
|
138
|
+
railties (3.0.9) lib/rails/application.rb:77:in `send'
|
139
|
+
railties (3.0.9) lib/rails/application.rb:77:in `method_missing'
|
140
|
+
rack (1.2.3) lib/rack/urlmap.rb:47:in `call'
|
141
|
+
rack (1.2.3) lib/rack/urlmap.rb:41:in `each'
|
142
|
+
rack (1.2.3) lib/rack/urlmap.rb:41:in `call'
|
143
|
+
railties (3.0.9) lib/rails/rack/log_tailer.rb:14:in `call'
|
144
|
+
rack (1.2.3) lib/rack/content_length.rb:13:in `call'
|
145
|
+
rack (1.2.3) lib/rack/chunked.rb:15:in `call'
|
146
|
+
rack (1.2.3) lib/rack/handler/mongrel.rb:67:in `process'
|
147
|
+
mongrel (1.1.5) lib/mongrel.rb:159:in `process_client'
|
148
|
+
mongrel (1.1.5) lib/mongrel.rb:158:in `each'
|
149
|
+
mongrel (1.1.5) lib/mongrel.rb:158:in `process_client'
|
150
|
+
mongrel (1.1.5) lib/mongrel.rb:285:in `run'
|
151
|
+
mongrel (1.1.5) lib/mongrel.rb:285:in `initialize'
|
152
|
+
mongrel (1.1.5) lib/mongrel.rb:285:in `new'
|
153
|
+
mongrel (1.1.5) lib/mongrel.rb:285:in `run'
|
154
|
+
mongrel (1.1.5) lib/mongrel.rb:268:in `initialize'
|
155
|
+
mongrel (1.1.5) lib/mongrel.rb:268:in `new'
|
156
|
+
mongrel (1.1.5) lib/mongrel.rb:268:in `run'
|
157
|
+
rack (1.2.3) lib/rack/handler/mongrel.rb:38:in `run'
|
158
|
+
rack (1.2.3) lib/rack/server.rb:217:in `start'
|
159
|
+
railties (3.0.9) lib/rails/commands/server.rb:65:in `start'
|
160
|
+
railties (3.0.9) lib/rails/commands.rb:30
|
161
|
+
railties (3.0.9) lib/rails/commands.rb:27:in `tap'
|
162
|
+
railties (3.0.9) lib/rails/commands.rb:27
|
163
|
+
script/rails:6:in `require'
|
164
|
+
script/rails:6</code></pre>
|
165
|
+
</div>
|
166
|
+
<div id="Full-Trace" style="display: none;">
|
167
|
+
<pre><code>activerecord (3.0.9) lib/active_record/relation/finder_methods.rb:304:in `find_one'
|
168
|
+
friendly_id (3.2.1) lib/friendly_id/active_record_adapter/relation.rb:148:in `find_one'
|
169
|
+
activerecord (3.0.9) lib/active_record/relation/finder_methods.rb:289:in `find_with_ids'
|
170
|
+
activerecord (3.0.9) lib/active_record/relation/finder_methods.rb:107:in `find'
|
171
|
+
activerecord (3.0.9) lib/active_record/base.rb:444:in `__send__'
|
172
|
+
activerecord (3.0.9) lib/active_record/base.rb:444:in `find'
|
173
|
+
app/controllers/api/v1/candidates_controller.rb:19:in `find_candidate'
|
174
|
+
activesupport (3.0.9) lib/active_support/callbacks.rb:472:in `_run__154108811__process_action__453433196__callbacks'
|
175
|
+
activesupport (3.0.9) lib/active_support/callbacks.rb:410:in `send'
|
176
|
+
activesupport (3.0.9) lib/active_support/callbacks.rb:410:in `_run_process_action_callbacks'
|
177
|
+
activesupport (3.0.9) lib/active_support/callbacks.rb:94:in `send'
|
178
|
+
activesupport (3.0.9) lib/active_support/callbacks.rb:94:in `run_callbacks'
|
179
|
+
actionpack (3.0.9) lib/abstract_controller/callbacks.rb:17:in `process_action'
|
180
|
+
actionpack (3.0.9) lib/action_controller/metal/instrumentation.rb:30:in `process_action'
|
181
|
+
activesupport (3.0.9) lib/active_support/notifications.rb:52:in `instrument'
|
182
|
+
activesupport (3.0.9) lib/active_support/notifications/instrumenter.rb:21:in `instrument'
|
183
|
+
activesupport (3.0.9) lib/active_support/notifications.rb:52:in `instrument'
|
184
|
+
actionpack (3.0.9) lib/action_controller/metal/instrumentation.rb:29:in `process_action'
|
185
|
+
actionpack (3.0.9) lib/action_controller/metal/rescue.rb:17:in `process_action'
|
186
|
+
newrelic_rpm (3.0.1) lib/new_relic/agent/instrumentation/rails3/action_controller.rb:34:in `process_action'
|
187
|
+
newrelic_rpm (3.0.1) lib/new_relic/agent/instrumentation/controller_instrumentation.rb:253:in `perform_action_with_newrelic_trace'
|
188
|
+
newrelic_rpm (3.0.1) lib/new_relic/agent/method_tracer.rb:193:in `trace_execution_scoped'
|
189
|
+
newrelic_rpm (3.0.1) lib/new_relic/agent/instrumentation/controller_instrumentation.rb:248:in `perform_action_with_newrelic_trace'
|
190
|
+
newrelic_rpm (3.0.1) lib/new_relic/agent/instrumentation/rails3/action_controller.rb:33:in `process_action'
|
191
|
+
actionpack (3.0.9) lib/abstract_controller/base.rb:119:in `process'
|
192
|
+
actionpack (3.0.9) lib/abstract_controller/rendering.rb:41:in `process'
|
193
|
+
actionpack (3.0.9) lib/action_controller/metal.rb:138:in `dispatch'
|
194
|
+
actionpack (3.0.9) lib/action_controller/metal/rack_delegation.rb:14:in `dispatch'
|
195
|
+
actionpack (3.0.9) lib/action_controller/metal.rb:178:in `action'
|
196
|
+
actionpack (3.0.9) lib/action_dispatch/routing/route_set.rb:62:in `call'
|
197
|
+
actionpack (3.0.9) lib/action_dispatch/routing/route_set.rb:62:in `dispatch'
|
198
|
+
actionpack (3.0.9) lib/action_dispatch/routing/route_set.rb:27:in `call'
|
199
|
+
rack-mount (0.6.14) lib/rack/mount/route_set.rb:148:in `call'
|
200
|
+
rack-mount (0.6.14) lib/rack/mount/code_generation.rb:93:in `recognize'
|
201
|
+
rack-mount (0.6.14) lib/rack/mount/code_generation.rb:75:in `optimized_each'
|
202
|
+
rack-mount (0.6.14) lib/rack/mount/code_generation.rb:92:in `recognize'
|
203
|
+
rack-mount (0.6.14) lib/rack/mount/route_set.rb:139:in `call'
|
204
|
+
actionpack (3.0.9) lib/action_dispatch/routing/route_set.rb:493:in `call'
|
205
|
+
/Users/michaelguterl/.rvm/gems/ree-1.8.7-2011.03@rm-board/bundler/gems/oauth2-provider-465353dcca4f/lib/oauth2/provider/rack/middleware.rb:14:in `call'
|
206
|
+
/Users/michaelguterl/.rvm/gems/ree-1.8.7-2011.03@rm-board/bundler/gems/oauth2-provider-465353dcca4f/lib/oauth2/provider/rack/middleware.rb:10:in `catch'
|
207
|
+
/Users/michaelguterl/.rvm/gems/ree-1.8.7-2011.03@rm-board/bundler/gems/oauth2-provider-465353dcca4f/lib/oauth2/provider/rack/middleware.rb:10:in `call'
|
208
|
+
newrelic_rpm (3.0.1) lib/new_relic/rack/browser_monitoring.rb:18:in `call'
|
209
|
+
newrelic_rpm (3.0.1) lib/new_relic/rack/developer_mode.rb:24:in `call'
|
210
|
+
hoptoad_notifier (2.4.11) lib/hoptoad_notifier/rack.rb:27:in `call'
|
211
|
+
haml (3.0.25) lib/sass/plugin/rack.rb:41:in `call'
|
212
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/best_standards_support.rb:17:in `call'
|
213
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/head.rb:14:in `call'
|
214
|
+
rack (1.2.3) lib/rack/methodoverride.rb:24:in `call'
|
215
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/params_parser.rb:21:in `call'
|
216
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/flash.rb:182:in `call'
|
217
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/session/abstract_store.rb:149:in `call'
|
218
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/cookies.rb:302:in `call'
|
219
|
+
activerecord (3.0.9) lib/active_record/query_cache.rb:32:in `call'
|
220
|
+
activerecord (3.0.9) lib/active_record/connection_adapters/abstract/query_cache.rb:28:in `cache'
|
221
|
+
activerecord (3.0.9) lib/active_record/query_cache.rb:12:in `cache'
|
222
|
+
activerecord (3.0.9) lib/active_record/query_cache.rb:31:in `call'
|
223
|
+
activerecord (3.0.9) lib/active_record/connection_adapters/abstract/connection_pool.rb:354:in `call'
|
224
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/callbacks.rb:46:in `call'
|
225
|
+
activesupport (3.0.9) lib/active_support/callbacks.rb:416:in `_run_call_callbacks'
|
226
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/callbacks.rb:44:in `call'
|
227
|
+
rack (1.2.3) lib/rack/sendfile.rb:107:in `call'
|
228
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/remote_ip.rb:48:in `call'
|
229
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/show_exceptions.rb:47:in `call'
|
230
|
+
railties (3.0.9) lib/rails/rack/logger.rb:13:in `call'
|
231
|
+
rack (1.2.3) lib/rack/runtime.rb:17:in `call'
|
232
|
+
activesupport (3.0.9) lib/active_support/cache/strategy/local_cache.rb:72:in `call'
|
233
|
+
rack (1.2.3) lib/rack/lock.rb:11:in `call'
|
234
|
+
rack (1.2.3) lib/rack/lock.rb:11:in `synchronize'
|
235
|
+
rack (1.2.3) lib/rack/lock.rb:11:in `call'
|
236
|
+
actionpack (3.0.9) lib/action_dispatch/middleware/static.rb:30:in `call'
|
237
|
+
hoptoad_notifier (2.4.11) lib/hoptoad_notifier/user_informer.rb:12:in `call'
|
238
|
+
railties (3.0.9) lib/rails/application.rb:168:in `call'
|
239
|
+
railties (3.0.9) lib/rails/application.rb:77:in `send'
|
240
|
+
railties (3.0.9) lib/rails/application.rb:77:in `method_missing'
|
241
|
+
rack (1.2.3) lib/rack/urlmap.rb:47:in `call'
|
242
|
+
rack (1.2.3) lib/rack/urlmap.rb:41:in `each'
|
243
|
+
rack (1.2.3) lib/rack/urlmap.rb:41:in `call'
|
244
|
+
railties (3.0.9) lib/rails/rack/log_tailer.rb:14:in `call'
|
245
|
+
rack (1.2.3) lib/rack/content_length.rb:13:in `call'
|
246
|
+
rack (1.2.3) lib/rack/chunked.rb:15:in `call'
|
247
|
+
rack (1.2.3) lib/rack/handler/mongrel.rb:67:in `process'
|
248
|
+
mongrel (1.1.5) lib/mongrel.rb:159:in `process_client'
|
249
|
+
mongrel (1.1.5) lib/mongrel.rb:158:in `each'
|
250
|
+
mongrel (1.1.5) lib/mongrel.rb:158:in `process_client'
|
251
|
+
mongrel (1.1.5) lib/mongrel.rb:285:in `run'
|
252
|
+
mongrel (1.1.5) lib/mongrel.rb:285:in `initialize'
|
253
|
+
mongrel (1.1.5) lib/mongrel.rb:285:in `new'
|
254
|
+
mongrel (1.1.5) lib/mongrel.rb:285:in `run'
|
255
|
+
mongrel (1.1.5) lib/mongrel.rb:268:in `initialize'
|
256
|
+
mongrel (1.1.5) lib/mongrel.rb:268:in `new'
|
257
|
+
mongrel (1.1.5) lib/mongrel.rb:268:in `run'
|
258
|
+
rack (1.2.3) lib/rack/handler/mongrel.rb:38:in `run'
|
259
|
+
rack (1.2.3) lib/rack/server.rb:217:in `start'
|
260
|
+
railties (3.0.9) lib/rails/commands/server.rb:65:in `start'
|
261
|
+
railties (3.0.9) lib/rails/commands.rb:30
|
262
|
+
railties (3.0.9) lib/rails/commands.rb:27:in `tap'
|
263
|
+
railties (3.0.9) lib/rails/commands.rb:27
|
264
|
+
script/rails:6:in `require'
|
265
|
+
script/rails:6</code></pre>
|
266
|
+
</div>
|
267
|
+
</div>
|
268
|
+
|
269
|
+
|
270
|
+
|
271
|
+
<h2 style="margin-top: 30px">Request</h2>
|
272
|
+
<p><b>Parameters</b>: <pre>{"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6",
|
273
|
+
"id"=>"42"}</pre></p>
|
274
|
+
|
275
|
+
<p><a href="#" onclick="document.getElementById('session_dump').style.display='block'; return false;">Show session dump</a></p>
|
276
|
+
<div id="session_dump" style="display:none"><pre></pre></div>
|
277
|
+
|
278
|
+
<p><a href="#" onclick="document.getElementById('env_dump').style.display='block'; return false;">Show env dump</a></p>
|
279
|
+
<div id="env_dump" style="display:none"><pre>CONTENT_LENGTH: "37"
|
280
|
+
CONTENT_TYPE: "application/x-www-form-urlencoded"
|
281
|
+
GATEWAY_INTERFACE: "CGI/1.2"
|
282
|
+
HTTP_ACCEPT: "*/*"
|
283
|
+
HTTP_HOST: "localhost:3000"
|
284
|
+
HTTP_VERSION: "HTTP/1.1"
|
285
|
+
PATH_INFO: "/api/v1/candidates/42"
|
286
|
+
QUERY_STRING: ""
|
287
|
+
REMOTE_ADDR: "127.0.0.1"
|
288
|
+
REQUEST_METHOD: "GET"
|
289
|
+
REQUEST_PATH: "/api/v1/candidates/42"
|
290
|
+
REQUEST_URI: "/api/v1/candidates/42"
|
291
|
+
SCRIPT_NAME: ""
|
292
|
+
SERVER_NAME: "localhost"
|
293
|
+
SERVER_PORT: "3000"
|
294
|
+
SERVER_PROTOCOL: "HTTP/1.1"
|
295
|
+
SERVER_SOFTWARE: "Mongrel 1.1.5"
|
296
|
+
action_controller.instance: #<Api::V1::CandidatesController:0x10e2a26c8 @_action_name="show", @_headers={"Content-Type"=>"text/html"}, @current_user_session=#<UserSession: {:unauthorized_record=>"<protected>"}>, @_config=#<OrderedHash {}>, @_env={"action_dispatch.request.formats"=>[#<Mime::Type:0x10b13b710 @symbol=nil, @synonyms=[], @string="*/*">], "action_dispatch.request.parameters"=>{"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6", "action"=>"show", "id"=>"42", "controller"=>"api/v1/candidates"}, "rack.session"=>{}, "HTTP_ACCEPT"=>"*/*", "HTTP_HOST"=>"localhost:3000", "SERVER_NAME"=>"localhost", "action_dispatch.remote_ip"=>#<ActionDispatch::RemoteIp::RemoteIpGetter:0x10e4bb338 @env={...}, @trusted_proxies=/(^127\.0\.0\.1$|^(10|172\.(1[6-9]|2[0-9]|30|31)|192\.168)\.)/i, @check_ip_spoofing=true, @remote_addrs=[]>, "rack.url_scheme"=>"http", "REQUEST_PATH"=>"/api/v1/candidates/42", "CONTENT_LENGTH"=>"37", "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.unsigned_session_cookie"=>{}, "rack.errors"=>#<IO:0x1094fcd10>, "CONTENT_TYPE"=>"application/x-www-form-urlencoded", "SERVER_PROTOCOL"=>"HTTP/1.1", "hoptoad.error_id"=>nil, "action_dispatch.request.accepts"=>[#<Mime::Type:0x10b13b710 @symbol=nil, @synonyms=[], @string="*/*">], "action_dispatch.secret_token"=>"83967e16c1b5ea7b4d2ebe7e14135a9472ea4e95cef9becba105bc5887b9fd997f834e05ffd72d402b425e9c2a87ef70b56c5ae19c86c1e49bfb03462c074425", "rack.version"=>[1, 1], "rack.run_once"=>false, "SERVER_SOFTWARE"=>"Mongrel 1.1.5", "PATH_INFO"=>"/api/v1/candidates/42", "REMOTE_ADDR"=>"127.0.0.1", "action_dispatch.request.path_parameters"=>{:action=>"show", :id=>"42", :controller=>"api/v1/candidates"}, "SCRIPT_NAME"=>"", "action_dispatch.parameter_filter"=>[:password], "action_dispatch.show_exceptions"=>true, "rack.multithread"=>false, "HTTP_VERSION"=>"HTTP/1.1", "action_dispatch.request.request_parameters"=>{"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6"}, "rack.request.form_vars"=>"user_credentials=Bdrc3t1LaiWtygbJ4jD6", "action_dispatch.cookies"=>{}, "rack.multiprocess"=>false, "REQUEST_URI"=>"/api/v1/candidates/42", "rack.request.query_hash"=>{}, "rack.request.form_input"=>#<StringIO:0x10e4bc9b8>, "SERVER_PORT"=>"3000", "action_controller.instance"=>#<Api::V1::CandidatesController:0x10e2a26c8 ...>, "rack.session.options"=>{:expire_after=>nil, :httponly=>true, :domain=>nil, :path=>"/", :secure=>false, :id=>nil}, "REQUEST_METHOD"=>"GET", "oauth2"=>#<OAuth2::Provider::Rack::ResourceRequest:0x10e4aefc0 @env={...}>, "rack.request.query_string"=>"", "rack.request.form_hash"=>{"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6"}, "action_dispatch.request.content_type"=>#<Mime::Type:0x108a2fe28 @symbol=:url_encoded_form, @synonyms=[], @string="application/x-www-form-urlencoded">, "QUERY_STRING"=>"", "rack.input"=>#<StringIO:0x10e4bc9b8>, "GATEWAY_INTERFACE"=>"CGI/1.2"}, @_response=#<ActionDispatch::Response:0x10e2a2538 @cookie=[], @cache_control={}, @body=[], @header={}, @writer=#<Proc:0x0000000108d46878@/Users/michaelguterl/.rvm/gems/ree-1.8.7-2011.03@rm-board/gems/actionpack-3.0.9/lib/action_dispatch/http/response.rb:43>, @block=nil, @blank=false, @status=200, @sending_file=false, @etag=nil, @length=0, @request=#<ActionDispatch::Request:0x10e2a2600 @request_method="GET", @filtered_parameters={"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6", "action"=>"show", "id"=>"42", "controller"=>"api/v1/candidates"}, @fullpath="/api/v1/candidates/42", @env={"action_dispatch.request.formats"=>[#<Mime::Type:0x10b13b710 @symbol=nil, @synonyms=[], @string="*/*">], "action_dispatch.request.parameters"=>{"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6", "action"=>"show", "id"=>"42", "controller"=>"api/v1/candidates"}, "rack.session"=>{}, "HTTP_ACCEPT"=>"*/*", "HTTP_HOST"=>"localhost:3000", "SERVER_NAME"=>"localhost", "action_dispatch.remote_ip"=>#<ActionDispatch::RemoteIp::RemoteIpGetter:0x10e4bb338 @env={...}, @trusted_proxies=/(^127\.0\.0\.1$|^(10|172\.(1[6-9]|2[0-9]|30|31)|192\.168)\.)/i, @check_ip_spoofing=true, @remote_addrs=[]>, "rack.url_scheme"=>"http", "REQUEST_PATH"=>"/api/v1/candidates/42", "CONTENT_LENGTH"=>"37", "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.unsigned_session_cookie"=>{}, "rack.errors"=>#<IO:0x1094fcd10>, "CONTENT_TYPE"=>"application/x-www-form-urlencoded", "SERVER_PROTOCOL"=>"HTTP/1.1", "hoptoad.error_id"=>nil, "action_dispatch.request.accepts"=>[#<Mime::Type:0x10b13b710 @symbol=nil, @synonyms=[], @string="*/*">], "action_dispatch.secret_token"=>"83967e16c1b5ea7b4d2ebe7e14135a9472ea4e95cef9becba105bc5887b9fd997f834e05ffd72d402b425e9c2a87ef70b56c5ae19c86c1e49bfb03462c074425", "rack.version"=>[1, 1], "rack.run_once"=>false, "SERVER_SOFTWARE"=>"Mongrel 1.1.5", "PATH_INFO"=>"/api/v1/candidates/42", "REMOTE_ADDR"=>"127.0.0.1", "action_dispatch.request.path_parameters"=>{:action=>"show", :id=>"42", :controller=>"api/v1/candidates"}, "SCRIPT_NAME"=>"", "action_dispatch.parameter_filter"=>[:password], "action_dispatch.show_exceptions"=>true, "rack.multithread"=>false, "HTTP_VERSION"=>"HTTP/1.1", "action_dispatch.request.request_parameters"=>{"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6"}, "rack.request.form_vars"=>"user_credentials=Bdrc3t1LaiWtygbJ4jD6", "action_dispatch.cookies"=>{}, "rack.multiprocess"=>false, "REQUEST_URI"=>"/api/v1/candidates/42", "rack.request.query_hash"=>{}, "rack.request.form_input"=>#<StringIO:0x10e4bc9b8>, "SERVER_PORT"=>"3000", "action_controller.instance"=>#<Api::V1::CandidatesController:0x10e2a26c8 ...>, "rack.session.options"=>{:expire_after=>nil, :httponly=>true, :domain=>nil, :path=>"/", :secure=>false, :id=>nil}, "REQUEST_METHOD"=>"GET", "oauth2"=>#<OAuth2::Provider::Rack::ResourceRequest:0x10e4aefc0 @env={...}>, "rack.request.query_string"=>"", "rack.request.form_hash"=>{"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6"}, "action_dispatch.request.content_type"=>#<Mime::Type:0x108a2fe28 @symbol=:url_encoded_form, @synonyms=[], @string="application/x-www-form-urlencoded">, "QUERY_STRING"=>"", "rack.input"=>#<StringIO:0x10e4bc9b8>, "GATEWAY_INTERFACE"=>"CGI/1.2"}, @method="GET">>, @lookup_context=#<ActionView::LookupContext:0x10e2a21c8 @view_paths=[#<ActionView::FileSystemResolver:0x10ad35d28 @caching=false, @path="/Users/michaelguterl/code/rm/board/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10ad36ca0 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/ssl_requirement/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10ad83910 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/serialized_attributes/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10adf8f30 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/haml/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10af2a1b0 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/formtastic/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10af6ec70 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/caching_presenter/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10af82c70 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/attribute_mapper/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10affa1d0 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/alter_table/app/views", @cached={}>], @details_key=nil, @details={:handlers=>[:haml, :rhtml, :rjs, :rxml, :builder, :erb], :formats=>[:html, :text, :js, :css, :ics, :csv, :xml, :rss, :atom, :yaml, :multipart_form, :url_encoded_form, :json], :locale=>[:en, :en]}, @skip_default_locale=false, @frozen_formats=false>, @_request=#<ActionDispatch::Request:0x10e2a2600 @request_method="GET", @filtered_parameters={"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6", "action"=>"show", "id"=>"42", "controller"=>"api/v1/candidates"}, @fullpath="/api/v1/candidates/42", @env={"action_dispatch.request.formats"=>[#<Mime::Type:0x10b13b710 @symbol=nil, @synonyms=[], @string="*/*">], "action_dispatch.request.parameters"=>{"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6", "action"=>"show", "id"=>"42", "controller"=>"api/v1/candidates"}, "rack.session"=>{}, "HTTP_ACCEPT"=>"*/*", "HTTP_HOST"=>"localhost:3000", "SERVER_NAME"=>"localhost", "action_dispatch.remote_ip"=>#<ActionDispatch::RemoteIp::RemoteIpGetter:0x10e4bb338 @env={...}, @trusted_proxies=/(^127\.0\.0\.1$|^(10|172\.(1[6-9]|2[0-9]|30|31)|192\.168)\.)/i, @check_ip_spoofing=true, @remote_addrs=[]>, "rack.url_scheme"=>"http", "REQUEST_PATH"=>"/api/v1/candidates/42", "CONTENT_LENGTH"=>"37", "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.unsigned_session_cookie"=>{}, "rack.errors"=>#<IO:0x1094fcd10>, "CONTENT_TYPE"=>"application/x-www-form-urlencoded", "SERVER_PROTOCOL"=>"HTTP/1.1", "hoptoad.error_id"=>nil, "action_dispatch.request.accepts"=>[#<Mime::Type:0x10b13b710 @symbol=nil, @synonyms=[], @string="*/*">], "action_dispatch.secret_token"=>"83967e16c1b5ea7b4d2ebe7e14135a9472ea4e95cef9becba105bc5887b9fd997f834e05ffd72d402b425e9c2a87ef70b56c5ae19c86c1e49bfb03462c074425", "rack.version"=>[1, 1], "rack.run_once"=>false, "SERVER_SOFTWARE"=>"Mongrel 1.1.5", "PATH_INFO"=>"/api/v1/candidates/42", "REMOTE_ADDR"=>"127.0.0.1", "action_dispatch.request.path_parameters"=>{:action=>"show", :id=>"42", :controller=>"api/v1/candidates"}, "SCRIPT_NAME"=>"", "action_dispatch.parameter_filter"=>[:password], "action_dispatch.show_exceptions"=>true, "rack.multithread"=>false, "HTTP_VERSION"=>"HTTP/1.1", "action_dispatch.request.request_parameters"=>{"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6"}, "rack.request.form_vars"=>"user_credentials=Bdrc3t1LaiWtygbJ4jD6", "action_dispatch.cookies"=>{}, "rack.multiprocess"=>false, "REQUEST_URI"=>"/api/v1/candidates/42", "rack.request.query_hash"=>{}, "rack.request.form_input"=>#<StringIO:0x10e4bc9b8>, "SERVER_PORT"=>"3000", "action_controller.instance"=>#<Api::V1::CandidatesController:0x10e2a26c8 ...>, "rack.session.options"=>{:expire_after=>nil, :httponly=>true, :domain=>nil, :path=>"/", :secure=>false, :id=>nil}, "REQUEST_METHOD"=>"GET", "oauth2"=>#<OAuth2::Provider::Rack::ResourceRequest:0x10e4aefc0 @env={...}>, "rack.request.query_string"=>"", "rack.request.form_hash"=>{"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6"}, "action_dispatch.request.content_type"=>#<Mime::Type:0x108a2fe28 @symbol=:url_encoded_form, @synonyms=[], @string="application/x-www-form-urlencoded">, "QUERY_STRING"=>"", "rack.input"=>#<StringIO:0x10e4bc9b8>, "GATEWAY_INTERFACE"=>"CGI/1.2"}, @method="GET">, @_params={"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6", "action"=>"show", "id"=>"42", "controller"=>"api/v1/candidates"}, @_response_body=nil, @view_context_class=nil, @action_has_layout=true, @_status=200, @current_user=#<User id: 1, created_at: "2011-08-29 18:18:18", updated_at: "2011-08-29 18:19:00", email: "staff@recruitmilitary.com", crypted_password: "0c2e2255b213959ab77da74dd2a427681990dafefb999048f4f...", password_salt: "BUuHfUgauBblH5J5aghi", persistence_token: "ea6022d6e567f73727b2e80a0cae54b97c21031ee8232fa9162...", login_count: 0, last_request_at: "2011-08-29 18:19:00", last_login_at: nil, current_login_at: nil, last_login_ip: nil, current_login_ip: nil, first_name: "Staff", last_name: "McStafforson", phone: nil, unsubscribed_at: nil, searchable: false, perishable_token: "VvcG_hApZlllgs6G531w", secret_id: "8997cf28a075ac67ac4372eda8fefc39", single_access_token: "Bdrc3t1LaiWtygbJ4jD6", email_md5: "3e67fa7c8045d085e66a51deee26cbc4", hidden_at: nil, primary_role_id: 3, email_invalid_at: nil, agreement_acknowledged_at: nil, agreement_initials: nil, confirmed_at: "2011-08-29 18:18:18">>
|
297
|
+
action_dispatch.cookies: {}
|
298
|
+
action_dispatch.parameter_filter: [:password]
|
299
|
+
action_dispatch.remote_ip: #<ActionDispatch::RemoteIp::RemoteIpGetter:0x10e4bb338 @env={"action_dispatch.request.formats"=>[#<Mime::Type:0x10b13b710 @symbol=nil, @synonyms=[], @string="*/*">], "action_dispatch.request.parameters"=>{"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6", "action"=>"show", "id"=>"42", "controller"=>"api/v1/candidates"}, "rack.session"=>{}, "HTTP_ACCEPT"=>"*/*", "HTTP_HOST"=>"localhost:3000", "SERVER_NAME"=>"localhost", "action_dispatch.remote_ip"=>#<ActionDispatch::RemoteIp::RemoteIpGetter:0x10e4bb338 ...>, "rack.url_scheme"=>"http", "REQUEST_PATH"=>"/api/v1/candidates/42", "CONTENT_LENGTH"=>"37", "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.unsigned_session_cookie"=>{}, "rack.errors"=>#<IO:0x1094fcd10>, "CONTENT_TYPE"=>"application/x-www-form-urlencoded", "SERVER_PROTOCOL"=>"HTTP/1.1", "hoptoad.error_id"=>nil, "action_dispatch.request.accepts"=>[#<Mime::Type:0x10b13b710 @symbol=nil, @synonyms=[], @string="*/*">], "action_dispatch.secret_token"=>"83967e16c1b5ea7b4d2ebe7e14135a9472ea4e95cef9becba105bc5887b9fd997f834e05ffd72d402b425e9c2a87ef70b56c5ae19c86c1e49bfb03462c074425", "rack.version"=>[1, 1], "rack.run_once"=>false, "SERVER_SOFTWARE"=>"Mongrel 1.1.5", "PATH_INFO"=>"/api/v1/candidates/42", "REMOTE_ADDR"=>"127.0.0.1", "action_dispatch.request.path_parameters"=>{:action=>"show", :id=>"42", :controller=>"api/v1/candidates"}, "SCRIPT_NAME"=>"", "action_dispatch.parameter_filter"=>[:password], "action_dispatch.show_exceptions"=>true, "rack.multithread"=>false, "HTTP_VERSION"=>"HTTP/1.1", "action_dispatch.request.request_parameters"=>{"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6"}, "rack.request.form_vars"=>"user_credentials=Bdrc3t1LaiWtygbJ4jD6", "action_dispatch.cookies"=>{}, "rack.multiprocess"=>false, "REQUEST_URI"=>"/api/v1/candidates/42", "rack.request.query_hash"=>{}, "rack.request.form_input"=>#<StringIO:0x10e4bc9b8>, "SERVER_PORT"=>"3000", "action_controller.instance"=>#<Api::V1::CandidatesController:0x10e2a26c8 @_action_name="show", @_headers={"Content-Type"=>"text/html"}, @current_user_session=#<UserSession: {:unauthorized_record=>"<protected>"}>, @_config=#<OrderedHash {}>, @_env={...}, @_response=#<ActionDispatch::Response:0x10e2a2538 @cookie=[], @cache_control={}, @body=[], @header={}, @writer=#<Proc:0x0000000108d46878@/Users/michaelguterl/.rvm/gems/ree-1.8.7-2011.03@rm-board/gems/actionpack-3.0.9/lib/action_dispatch/http/response.rb:43>, @block=nil, @blank=false, @status=200, @sending_file=false, @etag=nil, @length=0, @request=#<ActionDispatch::Request:0x10e2a2600 @request_method="GET", @filtered_parameters={"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6", "action"=>"show", "id"=>"42", "controller"=>"api/v1/candidates"}, @fullpath="/api/v1/candidates/42", @env={...}, @method="GET">>, @lookup_context=#<ActionView::LookupContext:0x10e2a21c8 @view_paths=[#<ActionView::FileSystemResolver:0x10ad35d28 @caching=false, @path="/Users/michaelguterl/code/rm/board/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10ad36ca0 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/ssl_requirement/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10ad83910 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/serialized_attributes/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10adf8f30 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/haml/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10af2a1b0 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/formtastic/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10af6ec70 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/caching_presenter/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10af82c70 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/attribute_mapper/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10affa1d0 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/alter_table/app/views", @cached={}>], @details_key=nil, @details={:handlers=>[:haml, :rhtml, :rjs, :rxml, :builder, :erb], :formats=>[:html, :text, :js, :css, :ics, :csv, :xml, :rss, :atom, :yaml, :multipart_form, :url_encoded_form, :json], :locale=>[:en, :en]}, @skip_default_locale=false, @frozen_formats=false>, @_request=#<ActionDispatch::Request:0x10e2a2600 @request_method="GET", @filtered_parameters={"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6", "action"=>"show", "id"=>"42", "controller"=>"api/v1/candidates"}, @fullpath="/api/v1/candidates/42", @env={...}, @method="GET">, @_params={"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6", "action"=>"show", "id"=>"42", "controller"=>"api/v1/candidates"}, @_response_body=nil, @view_context_class=nil, @action_has_layout=true, @_status=200, @current_user=#<User id: 1, created_at: "2011-08-29 18:18:18", updated_at: "2011-08-29 18:19:00", email: "staff@recruitmilitary.com", crypted_password: "0c2e2255b213959ab77da74dd2a427681990dafefb999048f4f...", password_salt: "BUuHfUgauBblH5J5aghi", persistence_token: "ea6022d6e567f73727b2e80a0cae54b97c21031ee8232fa9162...", login_count: 0, last_request_at: "2011-08-29 18:19:00", last_login_at: nil, current_login_at: nil, last_login_ip: nil, current_login_ip: nil, first_name: "Staff", last_name: "McStafforson", phone: nil, unsubscribed_at: nil, searchable: false, perishable_token: "VvcG_hApZlllgs6G531w", secret_id: "8997cf28a075ac67ac4372eda8fefc39", single_access_token: "Bdrc3t1LaiWtygbJ4jD6", email_md5: "3e67fa7c8045d085e66a51deee26cbc4", hidden_at: nil, primary_role_id: 3, email_invalid_at: nil, agreement_acknowledged_at: nil, agreement_initials: nil, confirmed_at: "2011-08-29 18:18:18">>, "rack.session.options"=>{:expire_after=>nil, :httponly=>true, :domain=>nil, :path=>"/", :secure=>false, :id=>nil}, "REQUEST_METHOD"=>"GET", "oauth2"=>#<OAuth2::Provider::Rack::ResourceRequest:0x10e4aefc0 @env={...}>, "rack.request.query_string"=>"", "rack.request.form_hash"=>{"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6"}, "action_dispatch.request.content_type"=>#<Mime::Type:0x108a2fe28 @symbol=:url_encoded_form, @synonyms=[], @string="application/x-www-form-urlencoded">, "QUERY_STRING"=>"", "rack.input"=>#<StringIO:0x10e4bc9b8>, "GATEWAY_INTERFACE"=>"CGI/1.2"}, @trusted_proxies=/(^127\.0\.0\.1$|^(10|172\.(1[6-9]|2[0-9]|30|31)|192\.168)\.)/i, @check_ip_spoofing=true, @remote_addrs=[]>
|
300
|
+
action_dispatch.request.accepts: [#<Mime::Type:0x10b13b710 @symbol=nil, @synonyms=[], @string="*/*">]
|
301
|
+
action_dispatch.request.content_type: #<Mime::Type:0x108a2fe28 @symbol=:url_encoded_form, @synonyms=[], @string="application/x-www-form-urlencoded">
|
302
|
+
action_dispatch.request.formats: [#<Mime::Type:0x10b13b710 @symbol=nil, @synonyms=[], @string="*/*">]
|
303
|
+
action_dispatch.request.parameters: {"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6", "action"=>"show", "id"=>"42", "controller"=>"api/v1/candidates"}
|
304
|
+
action_dispatch.request.path_parameters: {:action=>"show", :id=>"42", :controller=>"api/v1/candidates"}
|
305
|
+
action_dispatch.request.query_parameters: {}
|
306
|
+
action_dispatch.request.request_parameters: {"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6"}
|
307
|
+
action_dispatch.request.unsigned_session_cookie: {}
|
308
|
+
action_dispatch.secret_token: "83967e16c1b5ea7b4d2ebe7e14135a9472ea4e95cef9becba105bc5887b9fd997f834e05ffd72d402b425e9c2a87ef70b56c5ae19c86c1e49bfb03462c074425"
|
309
|
+
action_dispatch.show_exceptions: true
|
310
|
+
hoptoad.error_id: nil
|
311
|
+
oauth2: #<OAuth2::Provider::Rack::ResourceRequest:0x10e4aefc0 @env={"action_dispatch.request.formats"=>[#<Mime::Type:0x10b13b710 @symbol=nil, @synonyms=[], @string="*/*">], "action_dispatch.request.parameters"=>{"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6", "action"=>"show", "id"=>"42", "controller"=>"api/v1/candidates"}, "rack.session"=>{}, "HTTP_ACCEPT"=>"*/*", "HTTP_HOST"=>"localhost:3000", "SERVER_NAME"=>"localhost", "action_dispatch.remote_ip"=>#<ActionDispatch::RemoteIp::RemoteIpGetter:0x10e4bb338 @env={...}, @trusted_proxies=/(^127\.0\.0\.1$|^(10|172\.(1[6-9]|2[0-9]|30|31)|192\.168)\.)/i, @check_ip_spoofing=true, @remote_addrs=[]>, "rack.url_scheme"=>"http", "REQUEST_PATH"=>"/api/v1/candidates/42", "CONTENT_LENGTH"=>"37", "action_dispatch.request.query_parameters"=>{}, "action_dispatch.request.unsigned_session_cookie"=>{}, "rack.errors"=>#<IO:0x1094fcd10>, "CONTENT_TYPE"=>"application/x-www-form-urlencoded", "SERVER_PROTOCOL"=>"HTTP/1.1", "hoptoad.error_id"=>nil, "action_dispatch.request.accepts"=>[#<Mime::Type:0x10b13b710 @symbol=nil, @synonyms=[], @string="*/*">], "action_dispatch.secret_token"=>"83967e16c1b5ea7b4d2ebe7e14135a9472ea4e95cef9becba105bc5887b9fd997f834e05ffd72d402b425e9c2a87ef70b56c5ae19c86c1e49bfb03462c074425", "rack.version"=>[1, 1], "rack.run_once"=>false, "SERVER_SOFTWARE"=>"Mongrel 1.1.5", "PATH_INFO"=>"/api/v1/candidates/42", "REMOTE_ADDR"=>"127.0.0.1", "action_dispatch.request.path_parameters"=>{:action=>"show", :id=>"42", :controller=>"api/v1/candidates"}, "SCRIPT_NAME"=>"", "action_dispatch.parameter_filter"=>[:password], "action_dispatch.show_exceptions"=>true, "rack.multithread"=>false, "HTTP_VERSION"=>"HTTP/1.1", "action_dispatch.request.request_parameters"=>{"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6"}, "rack.request.form_vars"=>"user_credentials=Bdrc3t1LaiWtygbJ4jD6", "action_dispatch.cookies"=>{}, "rack.multiprocess"=>false, "REQUEST_URI"=>"/api/v1/candidates/42", "rack.request.query_hash"=>{}, "rack.request.form_input"=>#<StringIO:0x10e4bc9b8>, "SERVER_PORT"=>"3000", "action_controller.instance"=>#<Api::V1::CandidatesController:0x10e2a26c8 @_action_name="show", @_headers={"Content-Type"=>"text/html"}, @current_user_session=#<UserSession: {:unauthorized_record=>"<protected>"}>, @_config=#<OrderedHash {}>, @_env={...}, @_response=#<ActionDispatch::Response:0x10e2a2538 @cookie=[], @cache_control={}, @body=[], @header={}, @writer=#<Proc:0x0000000108d46878@/Users/michaelguterl/.rvm/gems/ree-1.8.7-2011.03@rm-board/gems/actionpack-3.0.9/lib/action_dispatch/http/response.rb:43>, @block=nil, @blank=false, @status=200, @sending_file=false, @etag=nil, @length=0, @request=#<ActionDispatch::Request:0x10e2a2600 @request_method="GET", @filtered_parameters={"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6", "action"=>"show", "id"=>"42", "controller"=>"api/v1/candidates"}, @fullpath="/api/v1/candidates/42", @env={...}, @method="GET">>, @lookup_context=#<ActionView::LookupContext:0x10e2a21c8 @view_paths=[#<ActionView::FileSystemResolver:0x10ad35d28 @caching=false, @path="/Users/michaelguterl/code/rm/board/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10ad36ca0 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/ssl_requirement/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10ad83910 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/serialized_attributes/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10adf8f30 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/haml/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10af2a1b0 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/formtastic/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10af6ec70 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/caching_presenter/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10af82c70 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/attribute_mapper/app/views", @cached={}>, #<ActionView::FileSystemResolver:0x10affa1d0 @caching=false, @path="/Users/michaelguterl/code/rm/board/vendor/plugins/alter_table/app/views", @cached={}>], @details_key=nil, @details={:handlers=>[:haml, :rhtml, :rjs, :rxml, :builder, :erb], :formats=>[:html, :text, :js, :css, :ics, :csv, :xml, :rss, :atom, :yaml, :multipart_form, :url_encoded_form, :json], :locale=>[:en, :en]}, @skip_default_locale=false, @frozen_formats=false>, @_request=#<ActionDispatch::Request:0x10e2a2600 @request_method="GET", @filtered_parameters={"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6", "action"=>"show", "id"=>"42", "controller"=>"api/v1/candidates"}, @fullpath="/api/v1/candidates/42", @env={...}, @method="GET">, @_params={"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6", "action"=>"show", "id"=>"42", "controller"=>"api/v1/candidates"}, @_response_body=nil, @view_context_class=nil, @action_has_layout=true, @_status=200, @current_user=#<User id: 1, created_at: "2011-08-29 18:18:18", updated_at: "2011-08-29 18:19:00", email: "staff@recruitmilitary.com", crypted_password: "0c2e2255b213959ab77da74dd2a427681990dafefb999048f4f...", password_salt: "BUuHfUgauBblH5J5aghi", persistence_token: "ea6022d6e567f73727b2e80a0cae54b97c21031ee8232fa9162...", login_count: 0, last_request_at: "2011-08-29 18:19:00", last_login_at: nil, current_login_at: nil, last_login_ip: nil, current_login_ip: nil, first_name: "Staff", last_name: "McStafforson", phone: nil, unsubscribed_at: nil, searchable: false, perishable_token: "VvcG_hApZlllgs6G531w", secret_id: "8997cf28a075ac67ac4372eda8fefc39", single_access_token: "Bdrc3t1LaiWtygbJ4jD6", email_md5: "3e67fa7c8045d085e66a51deee26cbc4", hidden_at: nil, primary_role_id: 3, email_invalid_at: nil, agreement_acknowledged_at: nil, agreement_initials: nil, confirmed_at: "2011-08-29 18:18:18">>, "rack.session.options"=>{:expire_after=>nil, :httponly=>true, :domain=>nil, :path=>"/", :secure=>false, :id=>nil}, "REQUEST_METHOD"=>"GET", "oauth2"=>#<OAuth2::Provider::Rack::ResourceRequest:0x10e4aefc0 ...>, "rack.request.query_string"=>"", "rack.request.form_hash"=>{"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6"}, "action_dispatch.request.content_type"=>#<Mime::Type:0x108a2fe28 @symbol=:url_encoded_form, @synonyms=[], @string="application/x-www-form-urlencoded">, "QUERY_STRING"=>"", "rack.input"=>#<StringIO:0x10e4bc9b8>, "GATEWAY_INTERFACE"=>"CGI/1.2"}>
|
312
|
+
rack.errors: #<IO:0x1094fcd10>
|
313
|
+
rack.input: #<StringIO:0x10e4bc9b8>
|
314
|
+
rack.multiprocess: false
|
315
|
+
rack.multithread: false
|
316
|
+
rack.request.form_hash: {"user_credentials"=>"Bdrc3t1LaiWtygbJ4jD6"}
|
317
|
+
rack.request.form_input: #<StringIO:0x10e4bc9b8>
|
318
|
+
rack.request.form_vars: "user_credentials=Bdrc3t1LaiWtygbJ4jD6"
|
319
|
+
rack.request.query_hash: {}
|
320
|
+
rack.request.query_string: ""
|
321
|
+
rack.run_once: false
|
322
|
+
rack.session: {}
|
323
|
+
rack.session.options: {:expire_after=>nil, :httponly=>true, :domain=>nil, :path=>"/", :secure=>false, :id=>nil}
|
324
|
+
rack.url_scheme: "http"
|
325
|
+
rack.version: [1, 1]</pre></div>
|
326
|
+
|
327
|
+
|
328
|
+
<h2 style="margin-top: 30px">Response</h2>
|
329
|
+
<p><b>Headers</b>: <pre>None</pre></p>
|
330
|
+
|
331
|
+
|
332
|
+
|
333
|
+
</body>
|
334
|
+
</html>
|
335
|
+
|
336
|
+
http_version: "1.1"
|