repres-dosser 1.2 → 1.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 60aec68e0da81f0486985e4c4a07b298286f0f6a
4
- data.tar.gz: e911af85e074591bb3aadafd6c9271b47358ae55
3
+ metadata.gz: a0f36fbda1d513150d66f62df418774c8094c260
4
+ data.tar.gz: 115f2058adb44eaf85ef31e020a8a23e581e15b4
5
5
  SHA512:
6
- metadata.gz: 0689f3ed1af02ba2560f30cf43f5a99dad8bd8561b98381a11d29aa58fefb7bd9ed38bbffa72260de81dcdf742a16cf239aba9ea75894f8b510d334604ecb7b7
7
- data.tar.gz: 066bcaf68fbf9bab6b479c54ea142d7ebc4495f50cd9990db49f42e3b145e322ab8744d081d09afd5c18fa792dba204f73668ae6c5b744fecf53b4e268180a3f
6
+ metadata.gz: b1c8e66c84d9f274da7573d7ca37beaa6f8d9f555f4ab5f547c94e30f3345d09bc7e5cc06e04ba35140842efd96cced2d4ebfdc7cfd106611d313ad53ea4d9d8
7
+ data.tar.gz: 13a471c003090e390242aac6f10a13035de8fa041f485a4b439456a90ebb6b030f138cdc2a409d2aa73ceedb6541a0fac2c120118cc849b9f8beb12bbb90b120
@@ -5,6 +5,7 @@ module Repres::Dosser::Concerns::ResourcePresentation
5
5
  CODE_SUCCESS = 'success'.freeze
6
6
  CODE_FAILURE = 'failure'.freeze
7
7
 
8
+ CODE_FAILURE_FORBIDDEN = 'failure-forbidden'.freeze
8
9
  CODE_FAILURE_NOT_FOUND = 'failure-not-found'.freeze
9
10
  CODE_FAILURE_WRONG_PARAMETER = 'failure-wrong-parameter'.freeze
10
11
  CODE_FAILURE_WRONG_STATE = 'failure-wrong-state'.freeze
@@ -13,70 +14,131 @@ module Repres::Dosser::Concerns::ResourcePresentation
13
14
 
14
15
  attr_writer :criteria
15
16
 
17
+ # https://httpstatuses.com/
18
+ # http://www.restapitutorial.com/httpstatuscodes.html
19
+ # http://guides.rubyonrails.org/layouts_and_rendering.html#the-status-option
20
+
16
21
  # 200
17
- def render_ok(collection: [], success: true, code: self.class::CODE_SUCCESS, message: '成功', size: collection.size, errors: {})
18
- result = {
22
+ def render_ok(
23
+ success: true,
24
+ code: self.class::CODE_SUCCESS,
25
+ message: '成功',
26
+ collection: [],
27
+ size: collection.size,
28
+ errors: {})
29
+ respond_result :ok,
19
30
  success: success,
20
31
  code: code,
21
32
  message: message,
22
33
  collection: collection,
23
34
  size: size,
24
35
  errors: errors
25
- }
26
- respond_result :ok, result
27
36
  end
28
37
 
29
38
  # 201
30
- def render_created(collection: [], success: true, code: self.class::CODE_SUCCESS, message: '成功', size: collection.size, errors: {})
31
- result = {
39
+ def render_created(
40
+ success: true,
41
+ code: self.class::CODE_SUCCESS,
42
+ message: '成功',
43
+ collection: [],
44
+ size: collection.size,
45
+ errors: {})
46
+ respond_result :created,
47
+ success: success,
48
+ code: code,
49
+ message: message,
50
+ collection: collection,
51
+ size: size,
52
+ errors: errors
53
+ end
54
+
55
+ =begin
56
+ # 204
57
+ def render_no_content(
58
+ success: true,
59
+ code: self.class::CODE_SUCCESS,
60
+ message: '成功',
61
+ collection: [],
62
+ size: collection.size,
63
+ errors: {})
64
+ respond_result :no_content,
32
65
  success: success,
33
66
  code: code,
34
67
  message: message,
35
68
  collection: collection,
36
69
  size: size,
37
70
  errors: errors
38
- }
39
- respond_result :created, result
40
71
  end
72
+ =end
41
73
 
42
74
  # 400
43
- def render_bad_request(success: false, code: self.class::CODE_FAILURE_WRONG_PARAMETER, message: '参数错误', collection: [], size: 0, errors: {})
44
- result = {
75
+ def render_bad_request(
76
+ success: false,
77
+ code: self.class::CODE_FAILURE_WRONG_PARAMETER,
78
+ message: '参数错误',
79
+ collection: [],
80
+ size: collection.size,
81
+ errors: {})
82
+ respond_result :bad_request,
45
83
  success: success,
46
84
  code: code,
47
85
  message: message,
48
86
  collection: collection,
49
87
  size: size,
50
88
  errors: errors
51
- }
52
- respond_result :bad_request, result
53
89
  end
54
- =begin
55
- # 400 bad request - blank parameter
56
- def render_blank_parameter(success: false, code: self.class::CODE_FAILURE_WRONG_PARAMETER, message: '参数', parameter_name)
57
- result = {
58
- success: false,
59
- code: self.class::CODE_FAILURE_WRONG_PARAMETER,
60
- message: "#{parameter_name}参数不能为空。",
61
- collection: [],
62
- size: 0,
63
- errors: { parameter_name => [ '不能为空' ] }
64
- }
65
- respond_result :bad_request, result
90
+
91
+ # 401
92
+ def render_unauthorized(
93
+ success: false,
94
+ code: self.class::CODE_FAILURE,
95
+ message: '请先登录',
96
+ collection: [],
97
+ size: collection.size,
98
+ errors: {})
99
+ respond_result :unauthorized,
100
+ success: success,
101
+ code: code,
102
+ message: message,
103
+ collection: collection,
104
+ size: size,
105
+ errors: errors
66
106
  end
67
- =end
107
+
108
+ # 403 forbidden
109
+ def render_forbidden(
110
+ success: false,
111
+ code: self.class::CODE_FAILURE_FORBIDDEN,
112
+ message: '无权访问',
113
+ collection: [],
114
+ size: collection.size,
115
+ errors: {})
116
+ respond_result :forbidden,
117
+ success: success,
118
+ code: code,
119
+ message: message,
120
+ collection: collection,
121
+ size: size,
122
+ errors: errors
123
+ end
124
+
68
125
  # 404
69
- def render_not_found(success: false, code: self.class::CODE_FAILURE_NOT_FOUND, message: '没有找到符合条件的信息', collection: [], size: 0, errors: {})
70
- result = {
126
+ def render_not_found(
127
+ success: false,
128
+ code: self.class::CODE_FAILURE_NOT_FOUND,
129
+ message: '没有找到符合条件的信息',
130
+ collection: [],
131
+ size: collection.size,
132
+ errors: {})
133
+ respond_result :not_found,
71
134
  success: success,
72
135
  code: code,
73
136
  message: message,
74
137
  collection: collection,
75
138
  size: size,
76
139
  errors: errors
77
- }
78
- respond_result :not_found, result
79
140
  end
141
+
80
142
  =begin
81
143
  # 404 not found - inexistent
82
144
  def render_inexistent(parameter_name, message)
@@ -91,19 +153,25 @@ module Repres::Dosser::Concerns::ResourcePresentation
91
153
  respond_result :not_found, result
92
154
  end
93
155
  =end
156
+
94
157
  # 409
95
- def render_conflict(success: false, code: self.class::CODE_FAILURE_WRONG_STATE, message: '', collection: [], size: 0, errors: {})
96
- result = {
158
+ def render_conflict(
159
+ success: false,
160
+ code: self.class::CODE_FAILURE_WRONG_STATE,
161
+ message: '',
162
+ collection: [],
163
+ size: collection.size,
164
+ errors: {})
165
+ respond_result :conflict,
97
166
  success: success,
98
167
  code: code,
99
168
  message: message,
100
169
  collection: collection,
101
170
  size: size,
102
171
  errors: errors
103
- }
104
- respond_result :conflict, result
105
172
  end
106
173
 
174
+ =begin
107
175
  # 409 conflict - wrong parameter
108
176
  def render_wrong_parameter(success: false, code: self.class::CODE_FAILURE_WRONG_PARAMETER, message: '', collection: [], size: 0, errors: {})
109
177
  result = {
@@ -116,9 +184,22 @@ module Repres::Dosser::Concerns::ResourcePresentation
116
184
  }
117
185
  respond_result :conflict, result
118
186
  end
187
+ =end
119
188
 
120
- def render_internal_server_error(success: false, code: self.class::CODE_FAILURE, message: '出现临时网络故障,请稍后重试。', collection: [], size: 0, errors: {})
121
- respond_result :conflict, success: success, code: code, message: message, collection: collection, size: size, errors: errors
189
+ def render_internal_server_error(
190
+ success: false,
191
+ code: self.class::CODE_FAILURE,
192
+ message: '出现临时网络故障,请稍后重试。',
193
+ collection: [],
194
+ size: collection.size,
195
+ errors: {})
196
+ respond_result :internal_server_error,
197
+ success: success,
198
+ code: code,
199
+ message: message,
200
+ collection: collection,
201
+ size: size,
202
+ errors: errors
122
203
  end
123
204
 
124
205
  def respond_result(status, result)
@@ -1,5 +1,5 @@
1
1
  module Repres
2
2
  module Dosser
3
- VERSION = '1.2'.freeze
3
+ VERSION = '1.3'.freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: repres-dosser
3
3
  version: !ruby/object:Gem::Version
4
- version: '1.2'
4
+ version: '1.3'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Topbit Du
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-04-06 00:00:00.000000000 Z
11
+ date: 2016-05-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails