wire-framework 0.1.3.9 → 0.1.4

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: 4d75b13cbad991d78864514fb544f1de7089fec6
4
- data.tar.gz: 554b88453478582491e7cc6e2cccb15802e87955
3
+ metadata.gz: 9156ed687ffe7062a0bff85e0bc97cbb7deb8e6f
4
+ data.tar.gz: 7c2baa963043f78f34d5a82489e016124f8c2082
5
5
  SHA512:
6
- metadata.gz: ea3d3ece9fc459ae55201030e7e1281313511e374367c8d7ca701ae45b032cfe883df819c95f97d544b2f78e47a9dcf379447251db3b605a4a02a2e5cdb4e507
7
- data.tar.gz: e449b217817e5b4a87d4bed3beacd94c7bf58185b4c2af6861738c5f38890fb1a830ea36fa33e5446aaadcbe06bb7fa38e6d61f905ec064ba646558e6144a203
6
+ metadata.gz: 77d111e4c49c4bb5d88bf6093caab235ab2de24db63ea5d0c022e5a3c0111911372d72dc43fdf9d88ed7ae531bebafb6b4ed8e0405ae784cdedefade7abd3351
7
+ data.tar.gz: f94c19a099f2a9a421fc55ecd631aaa947fd456c8a41c9ed50f41b894c45f127a6f1e3d2d278e7ce966af1fbde417c96c7b159b203ded83132a60a80e2e4fc3c
data/lib/app/render.rb CHANGED
@@ -7,6 +7,7 @@ require 'json'
7
7
  require_relative '../wire'
8
8
  require_relative 'render/document'
9
9
  require_relative 'render/editor'
10
+ require_relative 'render/error'
10
11
  require_relative 'render/instant'
11
12
  require_relative 'render/page'
12
13
  require_relative 'render/partial'
@@ -22,8 +22,8 @@ module Render
22
22
  else
23
23
  response
24
24
  end
25
- rescue RestClient::ResourceNotFound
26
- [404, {}, $apps[404][:template][:path].render(self, locals = { actions: actions, context: context })]
25
+ rescue RestClient::ResourceNotFound => e
26
+ [404, {}, [e.response]]
27
27
  end
28
28
  end
29
29
 
@@ -0,0 +1,56 @@
1
+ require_relative '../render'
2
+
3
+ module Render
4
+ module Error
5
+ extend Render
6
+
7
+ def self.error(match, path)
8
+ unless $current_app[:errors]
9
+ $current_app[:errors] = {}
10
+ end
11
+ $current_app[:errors][match] = Tilt.new(path, 1, { ugly: true })
12
+ end
13
+
14
+ def self.error_check(actions, context, result)
15
+ errors = context.app[:errors]
16
+ if errors
17
+ template = errors[result.first]
18
+ if template
19
+ result[2] = template.render(self, {actions: actions, context: context, result: result})
20
+ end
21
+ end
22
+ result
23
+ end
24
+
25
+ def self.invoke(actions, context)
26
+ begin
27
+ case context.action
28
+ when :create
29
+ result = forward(:create, context)
30
+ when :read
31
+ if context.uri[3]
32
+ result = forward(:read, context)
33
+ else
34
+ result = forward(:readAll, context)
35
+ end
36
+ when :update
37
+ result = forward(:update, context)
38
+ else
39
+ result = 405
40
+ end
41
+ if result.is_a? Fixnum
42
+ result = [result,{},[]]
43
+ else
44
+ headers = {}
45
+ result.headers.each do |k,v|
46
+ headers[k.to_s.capitalize] = v
47
+ end
48
+ result = [result.code,headers,[result.to_s]]
49
+ end
50
+ rescue RestClient::ResourceNotFound => e
51
+ result = [404,{},e.to_s]
52
+ end
53
+ error_check(actions, context, result)
54
+ end
55
+ end
56
+ end
data/lib/wire.rb CHANGED
@@ -24,5 +24,5 @@ end
24
24
  # @author Bryan T. Meyers
25
25
  module Wire
26
26
  # Current version of the Wire Gem
27
- VERSION = '0.1.3.9'
27
+ VERSION = '0.1.4'
28
28
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wire-framework
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3.9
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bryan T. Meyers
@@ -168,6 +168,7 @@ files:
168
168
  - lib/app/render.rb
169
169
  - lib/app/render/document.rb
170
170
  - lib/app/render/editor.rb
171
+ - lib/app/render/error.rb
171
172
  - lib/app/render/instant.rb
172
173
  - lib/app/render/page.rb
173
174
  - lib/app/render/partial.rb