webmachine 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. data/Gemfile +12 -10
  2. data/Guardfile +1 -1
  3. data/README.md +1 -1
  4. data/examples/application.rb +35 -0
  5. data/lib/webmachine.rb +4 -3
  6. data/lib/webmachine/adapter.rb +36 -0
  7. data/lib/webmachine/adapters/mongrel.rb +18 -12
  8. data/lib/webmachine/adapters/rack.rb +26 -7
  9. data/lib/webmachine/adapters/webrick.rb +20 -16
  10. data/lib/webmachine/application.rb +108 -0
  11. data/lib/webmachine/chunked_body.rb +2 -2
  12. data/lib/webmachine/configuration.rb +24 -14
  13. data/lib/webmachine/decision/conneg.rb +9 -10
  14. data/lib/webmachine/decision/flow.rb +25 -28
  15. data/lib/webmachine/decision/fsm.rb +21 -22
  16. data/lib/webmachine/decision/helpers.rb +3 -3
  17. data/lib/webmachine/dispatcher.rb +18 -10
  18. data/lib/webmachine/dispatcher/route.rb +54 -17
  19. data/lib/webmachine/errors.rb +1 -1
  20. data/lib/webmachine/headers.rb +2 -2
  21. data/lib/webmachine/media_type.rb +2 -2
  22. data/lib/webmachine/request.rb +78 -3
  23. data/lib/webmachine/resource.rb +3 -2
  24. data/lib/webmachine/resource/authentication.rb +4 -3
  25. data/lib/webmachine/resource/callbacks.rb +4 -3
  26. data/lib/webmachine/resource/encodings.rb +4 -3
  27. data/lib/webmachine/response.rb +3 -2
  28. data/lib/webmachine/streaming.rb +4 -4
  29. data/lib/webmachine/version.rb +1 -1
  30. data/spec/webmachine/adapter_spec.rb +40 -0
  31. data/spec/webmachine/adapters/mongrel_spec.rb +22 -0
  32. data/spec/webmachine/adapters/rack_spec.rb +34 -8
  33. data/spec/webmachine/adapters/webrick_spec.rb +18 -0
  34. data/spec/webmachine/application_spec.rb +73 -0
  35. data/spec/webmachine/dispatcher/route_spec.rb +59 -2
  36. data/spec/webmachine/dispatcher_spec.rb +17 -5
  37. data/spec/webmachine/request_spec.rb +158 -1
  38. data/webmachine.gemspec +6 -27
  39. metadata +304 -112
  40. data/spec/tests.org +0 -80
@@ -1,7 +1,7 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe Webmachine::Dispatcher do
4
- let(:dispatcher) { described_class }
4
+ let(:dispatcher) { Webmachine.application.dispatcher }
5
5
  let(:request) { Webmachine::Request.new("GET", URI.parse("http://localhost:8080/"), Webmachine::Headers["accept" => "*/*"], "") }
6
6
  let(:response) { Webmachine::Response.new }
7
7
  let(:resource) do
@@ -15,7 +15,7 @@ describe Webmachine::Dispatcher do
15
15
  end
16
16
  end
17
17
  let(:fsm){ mock }
18
-
18
+
19
19
  before { dispatcher.reset }
20
20
 
21
21
  it "should add routes from a block" do
@@ -23,9 +23,9 @@ describe Webmachine::Dispatcher do
23
23
  Webmachine.routes do
24
24
  add ['*'], _resource
25
25
  end.should == Webmachine
26
- dispatcher.instance_variable_get(:@routes).should have(1).item
26
+ dispatcher.routes.should have(1).item
27
27
  end
28
-
28
+
29
29
  it "should add routes" do
30
30
  expect {
31
31
  dispatcher.add_route ['*'], resource
@@ -39,9 +39,21 @@ describe Webmachine::Dispatcher do
39
39
 
40
40
  it "should route to the proper resource" do
41
41
  dispatcher.add_route ["goodbye"], resource2
42
- dispatcher.add_route ['*'], resource
42
+ dispatcher.add_route ['*'], resource
43
43
  Webmachine::Decision::FSM.should_receive(:new).with(instance_of(resource), request, response).and_return(fsm)
44
44
  fsm.should_receive(:run)
45
45
  dispatcher.dispatch(request, response)
46
46
  end
47
+
48
+ it "should add routes with guards" do
49
+ dispatcher.add [], lambda {|req| req.method == "POST" }, resource
50
+ dispatcher.add ['*'], resource2 do |req|
51
+ !req.query.empty?
52
+ end
53
+ request.uri.query = "?foo=bar"
54
+ dispatcher.routes.should have(2).items
55
+ Webmachine::Decision::FSM.should_receive(:new).with(instance_of(resource2), request, response).and_return(fsm)
56
+ fsm.should_receive(:run)
57
+ dispatcher.dispatch(request, response)
58
+ end
47
59
  end
@@ -1,7 +1,14 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe Webmachine::Request do
4
- subject { Webmachine::Request.new("GET", URI.parse("http://localhost:8080/some/resource"), Webmachine::Headers.new, "") }
4
+ subject { request }
5
+
6
+ let(:uri) { URI.parse("http://localhost:8080/some/resource") }
7
+ let(:http_method) { "GET" }
8
+ let(:headers) { Webmachine::Headers.new }
9
+ let(:body) { "" }
10
+ let(:request) { Webmachine::Request.new(http_method, uri, headers, body) }
11
+
5
12
  it "should provide access to the headers via brackets" do
6
13
  subject.headers['Accept'] = "*/*"
7
14
  subject["accept"].should == "*/*"
@@ -26,4 +33,154 @@ describe Webmachine::Request do
26
33
  subject.uri.query = "a%20b=foo+bar&c+d=baz%20quux"
27
34
  subject.query.should == {"a b" => "foo bar", "c d" => "baz quux"}
28
35
  end
36
+
37
+ it "should handle a query parameter value of nil" do
38
+ subject.uri.query = nil
39
+ subject.query.should == {}
40
+ end
41
+
42
+ describe '#https?' do
43
+ subject { request.https? }
44
+
45
+ context "when the request was issued via HTTPS" do
46
+ let(:uri) { URI.parse("https://localhost.com:8080/some/resource") }
47
+
48
+ it { should be_true }
49
+ end
50
+
51
+ context "when the request was not issued via HTTPS" do
52
+ let(:uri) { URI.parse("http://localhost.com:8080/some/resource") }
53
+
54
+ it { should be_false }
55
+ end
56
+ end
57
+
58
+ describe '#get?' do
59
+ subject { request.get? }
60
+
61
+ context "when the request method is GET" do
62
+ let(:http_method) { "GET" }
63
+
64
+ it { should be_true }
65
+ end
66
+
67
+ context "when the request method is not GET" do
68
+ let(:http_method) { "POST" }
69
+
70
+ it { should be_false }
71
+ end
72
+ end
73
+
74
+ describe '#head?' do
75
+ subject { request.head? }
76
+
77
+ context "when the request method is HEAD" do
78
+ let(:http_method) { "HEAD" }
79
+
80
+ it { should be_true }
81
+ end
82
+
83
+ context "when the request method is not HEAD" do
84
+ let(:http_method) { "GET" }
85
+
86
+ it { should be_false }
87
+ end
88
+ end
89
+
90
+ describe '#post?' do
91
+ subject { request.post? }
92
+
93
+ context "when the request method is POST" do
94
+ let(:http_method) { "POST" }
95
+
96
+ it { should be_true }
97
+ end
98
+
99
+ context "when the request method is not POST" do
100
+ let(:http_method) { "GET" }
101
+
102
+ it { should be_false }
103
+ end
104
+ end
105
+
106
+ describe '#put?' do
107
+ subject { request.put? }
108
+
109
+ context "when the request method is PUT" do
110
+ let(:http_method) { "PUT" }
111
+
112
+ it { should be_true }
113
+ end
114
+
115
+ context "when the request method is not PUT" do
116
+ let(:http_method) { "GET" }
117
+
118
+ it { should be_false }
119
+ end
120
+ end
121
+
122
+ describe '#delete?' do
123
+ subject { request.delete? }
124
+
125
+ context "when the request method is DELETE" do
126
+ let(:http_method) { "DELETE" }
127
+
128
+ it { should be_true }
129
+ end
130
+
131
+ context "when the request method is not DELETE" do
132
+ let(:http_method) { "GET" }
133
+
134
+ it { should be_false }
135
+ end
136
+ end
137
+
138
+ describe '#trace?' do
139
+ subject { request.trace? }
140
+
141
+ context "when the request method is TRACE" do
142
+ let(:http_method) { "TRACE" }
143
+
144
+ it { should be_true }
145
+ end
146
+
147
+ context "when the request method is not TRACE" do
148
+ let(:http_method) { "GET" }
149
+
150
+ it { should be_false }
151
+ end
152
+ end
153
+
154
+ describe '#connect?' do
155
+ subject { request.connect? }
156
+
157
+ context "when the request method is CONNECT" do
158
+ let(:http_method) { "CONNECT" }
159
+
160
+ it { should be_true }
161
+ end
162
+
163
+ context "when the request method is not CONNECT" do
164
+ let(:http_method) { "GET" }
165
+
166
+ it { should be_false }
167
+ end
168
+ end
169
+
170
+ describe '#options?' do
171
+ subject { request.options? }
172
+
173
+ context "when the request method is OPTIONS" do
174
+ let(:http_method) { "OPTIONS" }
175
+
176
+ it { should be_true }
177
+ end
178
+
179
+ context "when the request method is not OPTIONS" do
180
+ let(:http_method) { "GET" }
181
+
182
+ it { should be_false }
183
+ end
184
+ end
185
+
29
186
  end
data/webmachine.gemspec CHANGED
@@ -4,7 +4,6 @@ require 'webmachine/version'
4
4
  Gem::Specification.new do |gem|
5
5
  gem.name = "webmachine"
6
6
  gem.version = Webmachine::VERSION
7
- gem.date = File.mtime("lib/webmachine/version.rb")
8
7
  gem.summary = %Q{webmachine is a toolkit for building HTTP applications,}
9
8
  gem.description = <<-DESC.gsub(/\s+/, ' ')
10
9
  webmachine is a toolkit for building HTTP applications in a declarative fashion, that avoids
@@ -15,32 +14,12 @@ Gem::Specification.new do |gem|
15
14
  gem.authors = ["Sean Cribbs"]
16
15
  gem.email = ["sean@basho.com"]
17
16
 
18
- if gem.respond_to? :specification_version then
19
- gem.specification_version = 3
20
-
21
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
22
- gem.add_runtime_dependency(%q<i18n>, [">= 0.4.0"])
23
- gem.add_development_dependency(%q<rspec>, ["~> 2.6.0"])
24
- gem.add_development_dependency(%q<yard>, ["~> 0.7.3"])
25
- gem.add_development_dependency(%q<rake>)
26
- gem.add_development_dependency(%q<mongrel>, ['~>1.2.beta'])
27
- gem.add_development_dependency(%q<rack>)
28
- else
29
- gem.add_dependency(%q<i18n>, [">= 0.4.0"])
30
- gem.add_dependency(%q<rspec>, ["~> 2.6.0"])
31
- gem.add_dependency(%q<yard>, ["~> 0.7.3"])
32
- gem.add_dependency(%q<rake>)
33
- gem.add_dependency(%q<mongrel>, ['~>1.2.beta'])
34
- gem.add_dependency(%q<rack>)
35
- end
36
- else
37
- gem.add_dependency(%q<i18n>, [">= 0.4.0"])
38
- gem.add_dependency(%q<rspec>, ["~> 2.6.0"])
39
- gem.add_dependency(%q<yard>, ["~> 0.7.3"])
40
- gem.add_dependency(%q<rake>)
41
- gem.add_dependency(%q<mongrel>, ['~>1.2.beta'])
42
- gem.add_dependency(%q<rack>)
43
- end
17
+ gem.add_runtime_dependency(%q<i18n>, [">= 0.4.0"])
18
+ gem.add_development_dependency(%q<rspec>, ["~> 2.8.0"])
19
+ gem.add_development_dependency(%q<yard>, ["~> 0.7.3"])
20
+ gem.add_development_dependency(%q<rake>)
21
+ gem.add_development_dependency(%q<mongrel>, ['~>1.2.beta'])
22
+ gem.add_development_dependency(%q<rack>)
44
23
 
45
24
  ignores = File.read(".gitignore").split(/\r?\n/).reject{ |f| f =~ /^(#.+|\s*)$/ }.map {|f| Dir[f] }.flatten
46
25
  gem.files = (Dir['**/*','.gitignore'] - ignores).reject {|f| !File.file?(f) }
metadata CHANGED
@@ -1,125 +1,92 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: webmachine
3
- version: !ruby/object:Gem::Version
4
- hash: 19
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.4.0
5
5
  prerelease:
6
- segments:
7
- - 0
8
- - 3
9
- - 0
10
- version: 0.3.0
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Sean Cribbs
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2011-11-09 00:00:00 -03:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
12
+ date: 2012-02-06 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
22
15
  name: i18n
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: &2151902760 !ruby/object:Gem::Requirement
25
17
  none: false
26
- requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- hash: 15
30
- segments:
31
- - 0
32
- - 4
33
- - 0
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
34
21
  version: 0.4.0
35
22
  type: :runtime
36
- version_requirements: *id001
37
- - !ruby/object:Gem::Dependency
38
- name: rspec
39
23
  prerelease: false
40
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: *2151902760
25
+ - !ruby/object:Gem::Dependency
26
+ name: rspec
27
+ requirement: &2151898320 !ruby/object:Gem::Requirement
41
28
  none: false
42
- requirements:
29
+ requirements:
43
30
  - - ~>
44
- - !ruby/object:Gem::Version
45
- hash: 23
46
- segments:
47
- - 2
48
- - 6
49
- - 0
50
- version: 2.6.0
31
+ - !ruby/object:Gem::Version
32
+ version: 2.8.0
51
33
  type: :development
52
- version_requirements: *id002
53
- - !ruby/object:Gem::Dependency
54
- name: yard
55
34
  prerelease: false
56
- requirement: &id003 !ruby/object:Gem::Requirement
35
+ version_requirements: *2151898320
36
+ - !ruby/object:Gem::Dependency
37
+ name: yard
38
+ requirement: &2151896220 !ruby/object:Gem::Requirement
57
39
  none: false
58
- requirements:
40
+ requirements:
59
41
  - - ~>
60
- - !ruby/object:Gem::Version
61
- hash: 5
62
- segments:
63
- - 0
64
- - 7
65
- - 3
42
+ - !ruby/object:Gem::Version
66
43
  version: 0.7.3
67
44
  type: :development
68
- version_requirements: *id003
69
- - !ruby/object:Gem::Dependency
70
- name: rake
71
45
  prerelease: false
72
- requirement: &id004 !ruby/object:Gem::Requirement
46
+ version_requirements: *2151896220
47
+ - !ruby/object:Gem::Dependency
48
+ name: rake
49
+ requirement: &2151894820 !ruby/object:Gem::Requirement
73
50
  none: false
74
- requirements:
75
- - - ">="
76
- - !ruby/object:Gem::Version
77
- hash: 3
78
- segments:
79
- - 0
80
- version: "0"
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
81
55
  type: :development
82
- version_requirements: *id004
83
- - !ruby/object:Gem::Dependency
84
- name: mongrel
85
56
  prerelease: false
86
- requirement: &id005 !ruby/object:Gem::Requirement
57
+ version_requirements: *2151894820
58
+ - !ruby/object:Gem::Dependency
59
+ name: mongrel
60
+ requirement: &2151893880 !ruby/object:Gem::Requirement
87
61
  none: false
88
- requirements:
62
+ requirements:
89
63
  - - ~>
90
- - !ruby/object:Gem::Version
91
- hash: 31098129
92
- segments:
93
- - 1
94
- - 2
95
- - beta
64
+ - !ruby/object:Gem::Version
96
65
  version: 1.2.beta
97
66
  type: :development
98
- version_requirements: *id005
99
- - !ruby/object:Gem::Dependency
100
- name: rack
101
67
  prerelease: false
102
- requirement: &id006 !ruby/object:Gem::Requirement
68
+ version_requirements: *2151893880
69
+ - !ruby/object:Gem::Dependency
70
+ name: rack
71
+ requirement: &2151893320 !ruby/object:Gem::Requirement
103
72
  none: false
104
- requirements:
105
- - - ">="
106
- - !ruby/object:Gem::Version
107
- hash: 3
108
- segments:
109
- - 0
110
- version: "0"
73
+ requirements:
74
+ - - ! '>='
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
111
77
  type: :development
112
- version_requirements: *id006
113
- description: " webmachine is a toolkit for building HTTP applications in a declarative fashion, that avoids the confusion of going through a CGI-style interface like Rack. It is strongly influenced by the original Erlang project of the same name and shares its opinionated nature about HTTP. "
114
- email:
78
+ prerelease: false
79
+ version_requirements: *2151893320
80
+ description: ! ' webmachine is a toolkit for building HTTP applications in a declarative
81
+ fashion, that avoids the confusion of going through a CGI-style interface like Rack.
82
+ It is strongly influenced by the original Erlang project of the same name and shares
83
+ its opinionated nature about HTTP. '
84
+ email:
115
85
  - sean@basho.com
116
86
  executables: []
117
-
118
87
  extensions: []
119
-
120
88
  extra_rdoc_files: []
121
-
122
- files:
89
+ files:
123
90
  - doc/_index.html
124
91
  - doc/class_list.html
125
92
  - doc/css/common.css
@@ -141,6 +108,7 @@ files:
141
108
  - doc/Webmachine/Adapters/WEBrick/Server.html
142
109
  - doc/Webmachine/Adapters/WEBrick.html
143
110
  - doc/Webmachine/Adapters.html
111
+ - doc/Webmachine/Application.html
144
112
  - doc/Webmachine/CallableEncoder.html
145
113
  - doc/Webmachine/ChunkedBody.html
146
114
  - doc/Webmachine/Configuration.html
@@ -167,15 +135,22 @@ files:
167
135
  - doc/Webmachine/Resource.html
168
136
  - doc/Webmachine/Response.html
169
137
  - doc/Webmachine/StreamingEncoder.html
138
+ - doc/Webmachine/Trace/Call.html
139
+ - doc/Webmachine/Trace/TraceResource.html
140
+ - doc/Webmachine/Trace/Wrapper.html
141
+ - doc/Webmachine/Trace.html
170
142
  - doc/Webmachine/Translation.html
171
143
  - doc/Webmachine.html
144
+ - examples/application.rb
172
145
  - examples/webrick.rb
173
146
  - Gemfile
174
147
  - Guardfile
148
+ - lib/webmachine/adapter.rb
175
149
  - lib/webmachine/adapters/mongrel.rb
176
150
  - lib/webmachine/adapters/rack.rb
177
151
  - lib/webmachine/adapters/webrick.rb
178
152
  - lib/webmachine/adapters.rb
153
+ - lib/webmachine/application.rb
179
154
  - lib/webmachine/chunked_body.rb
180
155
  - lib/webmachine/configuration.rb
181
156
  - lib/webmachine/decision/conneg.rb
@@ -201,6 +176,13 @@ files:
201
176
  - lib/webmachine/version.rb
202
177
  - lib/webmachine/version.rbc
203
178
  - lib/webmachine.rb
179
+ - pkg/public/map.png
180
+ - pkg/public/trace.html.erb
181
+ - pkg/public/wmtrace.css
182
+ - pkg/public/wmtrace.js
183
+ - pkg/tests.org
184
+ - pkg/trace/trace_resource.rb
185
+ - pkg/trace.rb
204
186
  - pkg/webmachine-0.1.0/examples/webrick.rb
205
187
  - pkg/webmachine-0.1.0/Gemfile
206
188
  - pkg/webmachine-0.1.0/Guardfile
@@ -316,11 +298,228 @@ files:
316
298
  - pkg/webmachine-0.2.0/spec/webmachine/request_spec.rb
317
299
  - pkg/webmachine-0.2.0/webmachine.gemspec
318
300
  - pkg/webmachine-0.2.0.gem
301
+ - pkg/webmachine-0.3.0/doc/_index.html
302
+ - pkg/webmachine-0.3.0/doc/class_list.html
303
+ - pkg/webmachine-0.3.0/doc/css/common.css
304
+ - pkg/webmachine-0.3.0/doc/css/full_list.css
305
+ - pkg/webmachine-0.3.0/doc/css/style.css
306
+ - pkg/webmachine-0.3.0/doc/file.README.html
307
+ - pkg/webmachine-0.3.0/doc/file_list.html
308
+ - pkg/webmachine-0.3.0/doc/frames.html
309
+ - pkg/webmachine-0.3.0/doc/index.html
310
+ - pkg/webmachine-0.3.0/doc/js/app.js
311
+ - pkg/webmachine-0.3.0/doc/js/full_list.js
312
+ - pkg/webmachine-0.3.0/doc/js/jquery.js
313
+ - pkg/webmachine-0.3.0/doc/method_list.html
314
+ - pkg/webmachine-0.3.0/doc/top-level-namespace.html
315
+ - pkg/webmachine-0.3.0/doc/Webmachine/Adapters/Mongrel/Handler.html
316
+ - pkg/webmachine-0.3.0/doc/Webmachine/Adapters/Mongrel.html
317
+ - pkg/webmachine-0.3.0/doc/Webmachine/Adapters/Rack.html
318
+ - pkg/webmachine-0.3.0/doc/Webmachine/Adapters/WEBrick/RequestBody.html
319
+ - pkg/webmachine-0.3.0/doc/Webmachine/Adapters/WEBrick/Server.html
320
+ - pkg/webmachine-0.3.0/doc/Webmachine/Adapters/WEBrick.html
321
+ - pkg/webmachine-0.3.0/doc/Webmachine/Adapters.html
322
+ - pkg/webmachine-0.3.0/doc/Webmachine/CallableEncoder.html
323
+ - pkg/webmachine-0.3.0/doc/Webmachine/ChunkedBody.html
324
+ - pkg/webmachine-0.3.0/doc/Webmachine/Configuration.html
325
+ - pkg/webmachine-0.3.0/doc/Webmachine/Decision/Conneg/MediaTypeList.html
326
+ - pkg/webmachine-0.3.0/doc/Webmachine/Decision/Conneg/PriorityList.html
327
+ - pkg/webmachine-0.3.0/doc/Webmachine/Decision/Conneg.html
328
+ - pkg/webmachine-0.3.0/doc/Webmachine/Decision/Flow.html
329
+ - pkg/webmachine-0.3.0/doc/Webmachine/Decision/FSM.html
330
+ - pkg/webmachine-0.3.0/doc/Webmachine/Decision/Helpers.html
331
+ - pkg/webmachine-0.3.0/doc/Webmachine/Decision.html
332
+ - pkg/webmachine-0.3.0/doc/Webmachine/Dispatcher/Route.html
333
+ - pkg/webmachine-0.3.0/doc/Webmachine/Dispatcher.html
334
+ - pkg/webmachine-0.3.0/doc/Webmachine/EnumerableEncoder.html
335
+ - pkg/webmachine-0.3.0/doc/Webmachine/Error.html
336
+ - pkg/webmachine-0.3.0/doc/Webmachine/FiberEncoder.html
337
+ - pkg/webmachine-0.3.0/doc/Webmachine/Headers.html
338
+ - pkg/webmachine-0.3.0/doc/Webmachine/InvalidResource.html
339
+ - pkg/webmachine-0.3.0/doc/Webmachine/MalformedRequest.html
340
+ - pkg/webmachine-0.3.0/doc/Webmachine/MediaType.html
341
+ - pkg/webmachine-0.3.0/doc/Webmachine/Request.html
342
+ - pkg/webmachine-0.3.0/doc/Webmachine/Resource/Authentication.html
343
+ - pkg/webmachine-0.3.0/doc/Webmachine/Resource/Callbacks.html
344
+ - pkg/webmachine-0.3.0/doc/Webmachine/Resource/Encodings.html
345
+ - pkg/webmachine-0.3.0/doc/Webmachine/Resource.html
346
+ - pkg/webmachine-0.3.0/doc/Webmachine/Response.html
347
+ - pkg/webmachine-0.3.0/doc/Webmachine/StreamingEncoder.html
348
+ - pkg/webmachine-0.3.0/doc/Webmachine/Translation.html
349
+ - pkg/webmachine-0.3.0/doc/Webmachine.html
350
+ - pkg/webmachine-0.3.0/examples/webrick.rb
351
+ - pkg/webmachine-0.3.0/Gemfile
352
+ - pkg/webmachine-0.3.0/Guardfile
353
+ - pkg/webmachine-0.3.0/lib/webmachine/adapters/mongrel.rb
354
+ - pkg/webmachine-0.3.0/lib/webmachine/adapters/rack.rb
355
+ - pkg/webmachine-0.3.0/lib/webmachine/adapters/webrick.rb
356
+ - pkg/webmachine-0.3.0/lib/webmachine/adapters.rb
357
+ - pkg/webmachine-0.3.0/lib/webmachine/chunked_body.rb
358
+ - pkg/webmachine-0.3.0/lib/webmachine/configuration.rb
359
+ - pkg/webmachine-0.3.0/lib/webmachine/decision/conneg.rb
360
+ - pkg/webmachine-0.3.0/lib/webmachine/decision/flow.rb
361
+ - pkg/webmachine-0.3.0/lib/webmachine/decision/fsm.rb
362
+ - pkg/webmachine-0.3.0/lib/webmachine/decision/helpers.rb
363
+ - pkg/webmachine-0.3.0/lib/webmachine/decision.rb
364
+ - pkg/webmachine-0.3.0/lib/webmachine/dispatcher/route.rb
365
+ - pkg/webmachine-0.3.0/lib/webmachine/dispatcher.rb
366
+ - pkg/webmachine-0.3.0/lib/webmachine/errors.rb
367
+ - pkg/webmachine-0.3.0/lib/webmachine/fiber18.rb
368
+ - pkg/webmachine-0.3.0/lib/webmachine/headers.rb
369
+ - pkg/webmachine-0.3.0/lib/webmachine/locale/en.yml
370
+ - pkg/webmachine-0.3.0/lib/webmachine/media_type.rb
371
+ - pkg/webmachine-0.3.0/lib/webmachine/request.rb
372
+ - pkg/webmachine-0.3.0/lib/webmachine/resource/authentication.rb
373
+ - pkg/webmachine-0.3.0/lib/webmachine/resource/callbacks.rb
374
+ - pkg/webmachine-0.3.0/lib/webmachine/resource/encodings.rb
375
+ - pkg/webmachine-0.3.0/lib/webmachine/resource.rb
376
+ - pkg/webmachine-0.3.0/lib/webmachine/response.rb
377
+ - pkg/webmachine-0.3.0/lib/webmachine/streaming.rb
378
+ - pkg/webmachine-0.3.0/lib/webmachine/translation.rb
379
+ - pkg/webmachine-0.3.0/lib/webmachine/version.rb
380
+ - pkg/webmachine-0.3.0/lib/webmachine.rb
381
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/examples/webrick.rb
382
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/Gemfile
383
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/Guardfile
384
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/adapters/webrick.rb
385
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/adapters.rb
386
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/decision/conneg.rb
387
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/decision/flow.rb
388
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/decision/fsm.rb
389
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/decision/helpers.rb
390
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/decision.rb
391
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/dispatcher/route.rb
392
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/dispatcher.rb
393
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/errors.rb
394
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/headers.rb
395
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/locale/en.yml
396
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/request.rb
397
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/resource/callbacks.rb
398
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/resource/encodings.rb
399
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/resource.rb
400
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/response.rb
401
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/streaming.rb
402
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/translation.rb
403
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine/version.rb
404
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/lib/webmachine.rb
405
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/Rakefile
406
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/README.md
407
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/spec/spec_helper.rb
408
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/spec/tests.org
409
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/spec/webmachine/decision/conneg_spec.rb
410
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/spec/webmachine/decision/flow_spec.rb
411
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/spec/webmachine/dispatcher/route_spec.rb
412
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/spec/webmachine/dispatcher_spec.rb
413
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/spec/webmachine/headers_spec.rb
414
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/spec/webmachine/request_spec.rb
415
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0/webmachine.gemspec
416
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.1.0.gem
417
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/examples/webrick.rb
418
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/Gemfile
419
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/Guardfile
420
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/adapters/mongrel.rb
421
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/adapters/webrick.rb
422
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/adapters.rb
423
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/configuration.rb
424
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/decision/conneg.rb
425
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/decision/flow.rb
426
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/decision/fsm.rb
427
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/decision/helpers.rb
428
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/decision.rb
429
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/dispatcher/route.rb
430
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/dispatcher.rb
431
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/errors.rb
432
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/headers.rb
433
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/locale/en.yml
434
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/media_type.rb
435
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/request.rb
436
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/resource/callbacks.rb
437
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/resource/encodings.rb
438
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/resource.rb
439
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/response.rb
440
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/streaming.rb
441
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/translation.rb
442
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine/version.rb
443
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/lib/webmachine.rb
444
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/examples/webrick.rb
445
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/Gemfile
446
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/Guardfile
447
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/adapters/webrick.rb
448
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/adapters.rb
449
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/decision/conneg.rb
450
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/decision/flow.rb
451
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/decision/fsm.rb
452
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/decision/helpers.rb
453
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/decision.rb
454
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/dispatcher/route.rb
455
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/dispatcher.rb
456
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/errors.rb
457
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/headers.rb
458
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/locale/en.yml
459
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/request.rb
460
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/resource/callbacks.rb
461
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/resource/encodings.rb
462
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/resource.rb
463
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/response.rb
464
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/streaming.rb
465
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/translation.rb
466
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine/version.rb
467
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/lib/webmachine.rb
468
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/Rakefile
469
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/README.md
470
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/spec/spec_helper.rb
471
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/spec/tests.org
472
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/spec/webmachine/decision/conneg_spec.rb
473
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/spec/webmachine/decision/flow_spec.rb
474
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/spec/webmachine/dispatcher/route_spec.rb
475
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/spec/webmachine/dispatcher_spec.rb
476
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/spec/webmachine/headers_spec.rb
477
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/spec/webmachine/request_spec.rb
478
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0/webmachine.gemspec
479
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/pkg/webmachine-0.1.0.gem
480
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/Rakefile
481
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/README.md
482
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/spec/spec_helper.rb
483
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/spec/tests.org
484
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/spec/webmachine/configuration_spec.rb
485
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/spec/webmachine/decision/conneg_spec.rb
486
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/spec/webmachine/decision/flow_spec.rb
487
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/spec/webmachine/decision/helpers_spec.rb
488
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/spec/webmachine/dispatcher/route_spec.rb
489
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/spec/webmachine/dispatcher_spec.rb
490
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/spec/webmachine/errors_spec.rb
491
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/spec/webmachine/headers_spec.rb
492
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/spec/webmachine/media_type_spec.rb
493
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/spec/webmachine/request_spec.rb
494
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0/webmachine.gemspec
495
+ - pkg/webmachine-0.3.0/pkg/webmachine-0.2.0.gem
496
+ - pkg/webmachine-0.3.0/Rakefile
497
+ - pkg/webmachine-0.3.0/README.md
498
+ - pkg/webmachine-0.3.0/spec/spec_helper.rb
499
+ - pkg/webmachine-0.3.0/spec/tests.org
500
+ - pkg/webmachine-0.3.0/spec/webmachine/adapters/rack_spec.rb
501
+ - pkg/webmachine-0.3.0/spec/webmachine/chunked_body_spec.rb
502
+ - pkg/webmachine-0.3.0/spec/webmachine/configuration_spec.rb
503
+ - pkg/webmachine-0.3.0/spec/webmachine/decision/conneg_spec.rb
504
+ - pkg/webmachine-0.3.0/spec/webmachine/decision/flow_spec.rb
505
+ - pkg/webmachine-0.3.0/spec/webmachine/decision/helpers_spec.rb
506
+ - pkg/webmachine-0.3.0/spec/webmachine/dispatcher/route_spec.rb
507
+ - pkg/webmachine-0.3.0/spec/webmachine/dispatcher_spec.rb
508
+ - pkg/webmachine-0.3.0/spec/webmachine/errors_spec.rb
509
+ - pkg/webmachine-0.3.0/spec/webmachine/headers_spec.rb
510
+ - pkg/webmachine-0.3.0/spec/webmachine/media_type_spec.rb
511
+ - pkg/webmachine-0.3.0/spec/webmachine/request_spec.rb
512
+ - pkg/webmachine-0.3.0/spec/webmachine/resource/authentication_spec.rb
513
+ - pkg/webmachine-0.3.0/webmachine.gemspec
514
+ - pkg/webmachine-0.3.0.gem
319
515
  - Rakefile
320
516
  - README.md
321
517
  - spec/spec_helper.rb
322
- - spec/tests.org
518
+ - spec/webmachine/adapter_spec.rb
519
+ - spec/webmachine/adapters/mongrel_spec.rb
323
520
  - spec/webmachine/adapters/rack_spec.rb
521
+ - spec/webmachine/adapters/webrick_spec.rb
522
+ - spec/webmachine/application_spec.rb
324
523
  - spec/webmachine/chunked_body_spec.rb
325
524
  - spec/webmachine/configuration_spec.rb
326
525
  - spec/webmachine/decision/conneg_spec.rb
@@ -335,44 +534,37 @@ files:
335
534
  - spec/webmachine/resource/authentication_spec.rb
336
535
  - webmachine.gemspec
337
536
  - .gitignore
338
- has_rdoc: true
339
537
  homepage: http://github.com/seancribbs/webmachine-ruby
340
538
  licenses: []
341
-
342
539
  post_install_message:
343
540
  rdoc_options: []
344
-
345
- require_paths:
541
+ require_paths:
346
542
  - lib
347
- required_ruby_version: !ruby/object:Gem::Requirement
543
+ required_ruby_version: !ruby/object:Gem::Requirement
348
544
  none: false
349
- requirements:
350
- - - ">="
351
- - !ruby/object:Gem::Version
352
- hash: 3
353
- segments:
354
- - 0
355
- version: "0"
356
- required_rubygems_version: !ruby/object:Gem::Requirement
545
+ requirements:
546
+ - - ! '>='
547
+ - !ruby/object:Gem::Version
548
+ version: '0'
549
+ required_rubygems_version: !ruby/object:Gem::Requirement
357
550
  none: false
358
- requirements:
359
- - - ">="
360
- - !ruby/object:Gem::Version
361
- hash: 3
362
- segments:
363
- - 0
364
- version: "0"
551
+ requirements:
552
+ - - ! '>='
553
+ - !ruby/object:Gem::Version
554
+ version: '0'
365
555
  requirements: []
366
-
367
556
  rubyforge_project:
368
- rubygems_version: 1.6.2
557
+ rubygems_version: 1.8.15
369
558
  signing_key:
370
559
  specification_version: 3
371
560
  summary: webmachine is a toolkit for building HTTP applications,
372
- test_files:
561
+ test_files:
373
562
  - spec/spec_helper.rb
374
- - spec/tests.org
563
+ - spec/webmachine/adapter_spec.rb
564
+ - spec/webmachine/adapters/mongrel_spec.rb
375
565
  - spec/webmachine/adapters/rack_spec.rb
566
+ - spec/webmachine/adapters/webrick_spec.rb
567
+ - spec/webmachine/application_spec.rb
376
568
  - spec/webmachine/chunked_body_spec.rb
377
569
  - spec/webmachine/configuration_spec.rb
378
570
  - spec/webmachine/decision/conneg_spec.rb