rack-rscript 1.1.2 → 1.1.3

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 67eaf987c95218ab325c90f6cdc5950a91d83ec4
4
- data.tar.gz: b351e24514900fd5f9d9ac6db045e69799af0c75
3
+ metadata.gz: e6bf34f921036c9bb60b380fb41e64280db27289
4
+ data.tar.gz: 52f2d2b76ee05e29c1575d876b601c1ff2225a9f
5
5
  SHA512:
6
- metadata.gz: 90139ab92d16f29258861fc9cfc11df3126aa4a59d41e511bcb5c9dd5fec15231dde62b287210a213da8452dd50604e4544727cb1772758274093f253c43fb7c
7
- data.tar.gz: d220fbc8ee425c9e93bb61176eea4a51b5eb8176e5507e89559ff7df9deece05e90d32beacded05365e7a6bcebb86c253e86eff864802aa9313f9790d30cd67d
6
+ metadata.gz: a7a072f5034d81ab1ec3afeb2b803822f8c674f94784443e2fd068c6a85db5146c4363682619c8edbf07a200b796a8419eb89d22f9b519351031a6b80402f4bd
7
+ data.tar.gz: d8913dcf856a2e1b08c2c04352cdcb95a70d2745b146771c547bdcfe4abc2d8934f0ce6d7ca23489170ef76b0155afdd4d39cca0b79956aef3ed2bc00c22d205
Binary file
data.tar.gz.sig CHANGED
Binary file
@@ -97,61 +97,7 @@ class RackRscript
97
97
  raw_request
98
98
  end
99
99
 
100
- content, content_type, status_code = run_route(request, env['REQUEST_METHOD'])
101
-
102
- if content.is_a? Redirect then
103
-
104
- redirectx = content
105
- res = Rack::Response.new
106
- res.redirect(redirectx.to_url)
107
- res.finish
108
-
109
- else
110
-
111
- e = $!
112
-
113
- if e then
114
- content, status_code = e, 500
115
- @log.debug 'RackRscript/call/error: ' + e if @log
116
- elsif content.nil? then
117
- content, status_code = "404: page not found", 404
118
- end
119
-
120
- tilt_proc = lambda do |s, content_type|
121
- type = content_type[/[^\/]+$/]
122
- s = [s,{}] unless s.is_a? Array
123
- content, options = s
124
- [Tilt[type].new() {|x| content}.render(self, options), 'text/html']
125
- end
126
-
127
- passthru_proc = lambda{|c, ct| [c,ct]}
128
-
129
-
130
-
131
- ct_list = {
132
- 'text/html' => passthru_proc,
133
- 'text/haml' => tilt_proc,
134
- 'text/slim' => tilt_proc,
135
- 'text/plain' => passthru_proc,
136
- 'text/xml' => passthru_proc,
137
- 'text/css' => passthru_proc,
138
- 'text/markdown' => passthru_proc,
139
- 'application/xml' => passthru_proc,
140
- 'application/xhtml' => passthru_proc,
141
- 'application/json' => passthru_proc,
142
- 'image/png' => passthru_proc,
143
- 'image/jpeg' => passthru_proc,
144
- 'image/svg+xml' => passthru_proc
145
- }
146
-
147
- content_type ||= 'text/html'
148
- status_code ||= 200
149
- proc = ct_list[content_type]
150
- proc ||= passthru_proc
151
- content, content_type = proc.call(content, content_type)
152
-
153
- [status_code, {"Content-Type" => content_type}, [content]]
154
- end
100
+ run_request(request)
155
101
  end
156
102
 
157
103
  def clear_cache()
@@ -162,7 +108,8 @@ class RackRscript
162
108
 
163
109
  if @params[:splat] then
164
110
  @params.each do |k,v|
165
- @params.delete k unless k == :splat or k == :package or k == :job or k == :captures
111
+ @params.delete k unless k == :splat or k == :package \
112
+ or k == :job or k == :captures
166
113
  end
167
114
  end
168
115
 
@@ -174,7 +121,7 @@ class RackRscript
174
121
  @params.merge! h
175
122
  end
176
123
 
177
- @params.merge! @req_params
124
+ @params.merge! @req.params
178
125
  result, args = @rrscript.read([url, jobs.split(/\s/), \
179
126
  qargs].flatten)
180
127
 
@@ -225,7 +172,8 @@ class RackRscript
225
172
  end
226
173
 
227
174
  get /\/(.*)\/do\/(\w+)\/(\w+)/ do |d, package,job|
228
- run_job(("%s%s/%s.rsf" % [@url_base, d, package]), "//job:" + job, params)
175
+ run_job(("%s%s/%s.rsf" % [@url_base, d, package]),
176
+ "//job:" + job, params)
229
177
  end
230
178
 
231
179
  post '/do/:package/:job' do |package,job|
@@ -307,6 +255,67 @@ class RackRscript
307
255
  end
308
256
 
309
257
  end
258
+
259
+ def run_request(request)
260
+
261
+ content, content_type, status_code = run_route(request,
262
+ @env['REQUEST_METHOD'])
263
+
264
+ if content.is_a? Redirect then
265
+
266
+ redirectx = content
267
+ res = Rack::Response.new
268
+ res.redirect(redirectx.to_url)
269
+ res.finish
270
+
271
+ else
272
+
273
+ e = $!
274
+
275
+ if e then
276
+ content, status_code = e, 500
277
+ @log.debug 'RackRscript/call/error: ' + e if @log
278
+ elsif content.nil? then
279
+ content, status_code = "404: page not found", 404
280
+ end
281
+
282
+ tilt_proc = lambda do |s, content_type|
283
+ type = content_type[/[^\/]+$/]
284
+ s = [s,{}] unless s.is_a? Array
285
+ content, options = s
286
+ [Tilt[type].new() {|x| content}.render(self, options), 'text/html']
287
+ end
288
+
289
+ passthru_proc = lambda{|c, ct| [c,ct]}
290
+
291
+ ct_list = {
292
+ 'text/html' => passthru_proc,
293
+ 'text/haml' => tilt_proc,
294
+ 'text/slim' => tilt_proc,
295
+ 'text/plain' => passthru_proc,
296
+ 'text/xml' => passthru_proc,
297
+ 'text/css' => passthru_proc,
298
+ 'text/markdown' => passthru_proc,
299
+ 'application/xml' => passthru_proc,
300
+ 'application/xhtml' => passthru_proc,
301
+ 'application/json' => passthru_proc,
302
+ 'image/png' => passthru_proc,
303
+ 'image/jpeg' => passthru_proc,
304
+ 'image/svg+xml' => passthru_proc
305
+ }
306
+
307
+ content_type ||= 'text/html'
308
+ status_code ||= 200
309
+ proc = ct_list[content_type]
310
+ proc ||= passthru_proc
311
+ content, content_type = proc.call(content, content_type)
312
+
313
+ [status_code, {"Content-Type" => content_type}, [content]]
314
+ end
315
+
316
+ end
317
+
318
+ alias jumpto run_request
310
319
 
311
320
  private
312
321
 
@@ -322,7 +331,7 @@ class RackRscript
322
331
  layout = Tilt[type.to_s].new(options) {|x| @templates[:layout][:content]}
323
332
 
324
333
  unless @templates[name] then
325
- template(name, type) { File.read("views/%s.%s" % [name.to_s, type.to_s]) }
334
+ template(name, type) { File.read("views/%s.%s" % [name.to_s, type.to_s])}
326
335
  end
327
336
 
328
337
  template = Tilt[type.to_s].new(options) {|x| @templates[name][:content]}
@@ -335,10 +344,15 @@ class RackRscript
335
344
  end
336
345
 
337
346
  def tilt(name, options={})
347
+
338
348
  options = {locals: {}}.merge!(opt)
339
349
  locals = options.delete :locals
340
- layout = Tilt[@templates[:layout][:type].to_s].new(options) {|x| @templates[:layout][:content]}
341
- template = Tilt[@templates[name][:type].to_s].new(options) {|x| @templates[name][:content]}
350
+ layout = Tilt[@templates[:layout][:type].to_s].new(options)\
351
+ {|x| @templates[:layout][:content]}
352
+ template = Tilt[@templates[name][:type].to_s].new(options) \
353
+ {|x| @templates[name][:content]}
342
354
  layout.render{ template.render(self, locals)}
355
+
343
356
  end
357
+
344
358
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rack-rscript
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.2
4
+ version: 1.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -31,7 +31,7 @@ cert_chain:
31
31
  vvLi4Y0qQy/Uz/kHVXzfeLcG657aNIu8ogA1I3Xnlz0sqlNoDhk5sSBd2BsfkVFS
32
32
  sTo/69YTrLx1zw==
33
33
  -----END CERTIFICATE-----
34
- date: 2018-07-22 00:00:00.000000000 Z
34
+ date: 2018-07-23 00:00:00.000000000 Z
35
35
  dependencies:
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rack
metadata.gz.sig CHANGED
@@ -1 +1 @@
1
- T��ѝ`�G��g�.�PŦâ(e,�k^U U/L/���F�~`>�@@��4��h=[ad��|�YGCc`li',U�חM��ؾ+(j�xF ��=qvM"sss O�:���.dpg�~10u+ #�:K�="����3�*�4Y�H��F����qv؜T�"fLG�'�� RqW �cj��&f��;�O�D���1<����ok�����v����ܧF%|��ܷX�9�P�%�>C*THt;`L�
1
+ ^��1��+�G��!/�h�2�+����V��rob* p%���ל:�K��<�Zݠ�C���E�7O�QT�� 3㥲ĺg��JF����� ��C�,�J���NKt{D�p��ʋ���cD�xƿ.>��H@�)3$�L 6^��v[r�D�.8��q�C���Vu�#UE$�+ƛ���5fi;���锷���ݽw ���-�������]� 9�h;���y�.@�ƾo%!�g�p��}���