doze 0.0.11 → 0.0.12

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.
data/README.md ADDED
@@ -0,0 +1,29 @@
1
+ # Doze
2
+
3
+ RESTful resource-oriented API framework.
4
+
5
+ * Hierarchical routing
6
+ * RESTful concepts are baked in to the library, not as an afterthought
7
+ * Content-Type negotiation
8
+ * Simple, extendable authentication
9
+
10
+ # Hello, world
11
+
12
+ ``` ruby
13
+
14
+ require 'doze'
15
+
16
+ class HelloWorld
17
+ include Doze::Resource
18
+ include Doze::Serialization::Resource
19
+
20
+ def get_data
21
+ {:message => 'Hello, World'}
22
+ end
23
+ end
24
+
25
+ run Doze::Application.new(HelloWorld.new)
26
+
27
+ ```
28
+
29
+ Take a look at example/example_app.rb for a more complex version
data/lib/doze/page.rb ADDED
@@ -0,0 +1,12 @@
1
+ module Doze
2
+ # Mixin for returning the data as is, without serializing to another format.
3
+ module Page
4
+ def get
5
+ media_type = Doze::MediaType.new('text/html')
6
+ Doze::Entity.new(media_type) do
7
+ get_data
8
+ end
9
+ end
10
+ end
11
+ end
12
+
@@ -52,7 +52,7 @@ module Doze::Serialization
52
52
  return {} if status == nil || status.empty?
53
53
  raise "bad content body:\n'#{status}' should == '#{boundary + EOL}'" unless status == boundary + EOL
54
54
  # second argument to Regexp.quote is for KCODE
55
- rx = /(?:#{EOL})?#{Regexp.quote(boundary,'n')}(#{EOL}|--)/
55
+ rx = /(?:#{EOL})?#{Regexp.new(Regexp.escape(boundary), {}, 'n')}(#{EOL}|--)/
56
56
  loop {
57
57
  head = nil
58
58
  body = ''
@@ -75,7 +75,7 @@ module Doze::Serialization
75
75
  name = head[NAME_REGEX, 1]
76
76
 
77
77
  if filename && !filename.empty?
78
- body = Tempfile.new(:Doze)
78
+ body = Tempfile.new('Doze')
79
79
  body.binmode if defined? body.binmode
80
80
  end
81
81
  next
data/lib/doze/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Doze
2
- VERSION = '0.0.11'
2
+ VERSION = '0.0.12'
3
3
  end
metadata CHANGED
@@ -1,120 +1,125 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: doze
3
- version: !ruby/object:Gem::Version
4
- hash: 9
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.12
5
5
  prerelease:
6
- segments:
7
- - 0
8
- - 0
9
- - 11
10
- version: 0.0.11
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Matthew Willson
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2013-02-13 00:00:00 +00:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
12
+ date: 2013-10-18 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
22
15
  name: rake
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
25
17
  none: false
26
- requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- hash: 3
30
- segments:
31
- - 0
32
- version: "0"
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
33
22
  type: :development
34
- version_requirements: *id001
35
- - !ruby/object:Gem::Dependency
36
- name: rack-test
37
23
  prerelease: false
38
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: !ruby/object:Gem::Requirement
39
25
  none: false
40
- requirements:
41
- - - ">="
42
- - !ruby/object:Gem::Version
43
- hash: 3
44
- segments:
45
- - 0
46
- version: "0"
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: rack-test
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
47
38
  type: :development
48
- version_requirements: *id002
49
- - !ruby/object:Gem::Dependency
50
- name: mocha
51
39
  prerelease: false
52
- requirement: &id003 !ruby/object:Gem::Requirement
40
+ version_requirements: !ruby/object:Gem::Requirement
53
41
  none: false
54
- requirements:
55
- - - ">="
56
- - !ruby/object:Gem::Version
57
- hash: 3
58
- segments:
59
- - 0
60
- version: "0"
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ - !ruby/object:Gem::Dependency
47
+ name: mocha
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
61
54
  type: :development
62
- version_requirements: *id003
63
- - !ruby/object:Gem::Dependency
64
- name: rdoc
65
55
  prerelease: false
66
- requirement: &id004 !ruby/object:Gem::Requirement
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: rdoc
64
+ requirement: !ruby/object:Gem::Requirement
67
65
  none: false
68
- requirements:
69
- - - ">="
70
- - !ruby/object:Gem::Version
71
- hash: 3
72
- segments:
73
- - 0
74
- version: "0"
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
75
70
  type: :development
76
- version_requirements: *id004
77
- - !ruby/object:Gem::Dependency
78
- name: rack
79
71
  prerelease: false
80
- requirement: &id005 !ruby/object:Gem::Requirement
72
+ version_requirements: !ruby/object:Gem::Requirement
81
73
  none: false
82
- requirements:
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
78
+ - !ruby/object:Gem::Dependency
79
+ name: rack
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
83
  - - ~>
84
- - !ruby/object:Gem::Version
85
- hash: 15
86
- segments:
87
- - 1
88
- - 0
89
- version: "1.0"
84
+ - !ruby/object:Gem::Version
85
+ version: '1.0'
90
86
  type: :runtime
91
- version_requirements: *id005
92
- - !ruby/object:Gem::Dependency
93
- name: json
94
87
  prerelease: false
95
- requirement: &id006 !ruby/object:Gem::Requirement
88
+ version_requirements: !ruby/object:Gem::Requirement
96
89
  none: false
97
- requirements:
90
+ requirements:
98
91
  - - ~>
99
- - !ruby/object:Gem::Version
100
- hash: 9
101
- segments:
102
- - 1
103
- - 5
104
- - 5
105
- version: 1.5.5
92
+ - !ruby/object:Gem::Version
93
+ version: '1.0'
94
+ - !ruby/object:Gem::Dependency
95
+ name: json
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ! '>='
100
+ - !ruby/object:Gem::Version
101
+ version: '0'
106
102
  type: :runtime
107
- version_requirements: *id006
108
- description: Library for building restful APIs, with hierarchical routing, content type handling and other RESTful stuff
109
- email:
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ description: ! 'Library for building restful APIs, with hierarchical routing, content
111
+ type
112
+
113
+ handling and other RESTful stuff
114
+
115
+ '
116
+ email:
110
117
  - matthew@playlouder.com
111
118
  executables: []
112
-
113
119
  extensions: []
114
-
115
- extra_rdoc_files:
116
- - README
117
- files:
120
+ extra_rdoc_files:
121
+ - README.md
122
+ files:
118
123
  - lib/doze.rb
119
124
  - lib/doze/error.rb
120
125
  - lib/doze/uri_template.rb
@@ -144,10 +149,11 @@ files:
144
149
  - lib/doze/responder/error.rb
145
150
  - lib/doze/responder/main.rb
146
151
  - lib/doze/responder/resource.rb
152
+ - lib/doze/page.rb
147
153
  - lib/doze/resource.rb
148
154
  - lib/doze/application.rb
149
155
  - lib/doze/router.rb
150
- - README
156
+ - README.md
151
157
  - test/functional/resource_representation_test.rb
152
158
  - test/functional/method_support_test.rb
153
159
  - test/functional/router_test.rb
@@ -164,45 +170,36 @@ files:
164
170
  - test/functional/get_and_conneg_test.rb
165
171
  - test/functional/serialization_test.rb
166
172
  - test/functional/media_type_test.rb
167
- has_rdoc: true
168
173
  homepage: https://github.com/mjwillson/doze
169
174
  licenses: []
170
-
171
175
  post_install_message:
172
- rdoc_options:
176
+ rdoc_options:
173
177
  - --title
174
178
  - Doze
175
179
  - --main
176
- - README
180
+ - README.md
177
181
  - --line-numbers
178
- require_paths:
182
+ require_paths:
179
183
  - lib
180
- required_ruby_version: !ruby/object:Gem::Requirement
184
+ required_ruby_version: !ruby/object:Gem::Requirement
181
185
  none: false
182
- requirements:
183
- - - ">="
184
- - !ruby/object:Gem::Version
185
- hash: 3
186
- segments:
187
- - 0
188
- version: "0"
189
- required_rubygems_version: !ruby/object:Gem::Requirement
186
+ requirements:
187
+ - - ! '>='
188
+ - !ruby/object:Gem::Version
189
+ version: '0'
190
+ required_rubygems_version: !ruby/object:Gem::Requirement
190
191
  none: false
191
- requirements:
192
- - - ">="
193
- - !ruby/object:Gem::Version
194
- hash: 3
195
- segments:
196
- - 0
197
- version: "0"
192
+ requirements:
193
+ - - ! '>='
194
+ - !ruby/object:Gem::Version
195
+ version: '0'
198
196
  requirements: []
199
-
200
197
  rubyforge_project:
201
- rubygems_version: 1.6.2
198
+ rubygems_version: 1.8.23
202
199
  signing_key:
203
200
  specification_version: 3
204
201
  summary: RESTful resource-oriented API framework
205
- test_files:
202
+ test_files:
206
203
  - test/functional/resource_representation_test.rb
207
204
  - test/functional/method_support_test.rb
208
205
  - test/functional/router_test.rb
data/README DELETED
@@ -1,6 +0,0 @@
1
- # Doze
2
-
3
- RESTful resource-oriented API framework
4
-
5
- # Example application
6
-