Module: Jsender
Constant Summary collapse
- VERSION =
"1.1.0"
Instance Method Summary collapse
- #error(message = nil) ⇒ Object
-
#error_json(msg, code = nil, data = nil) ⇒ String
Jsend json.
- #fail_data(data = nil) ⇒ Object
-
#fail_json(data = nil) ⇒ String
Jsend json.
- #failure(message = nil, data = nil) ⇒ Object
- #has_data?(result, key = nil) ⇒ Boolean
- #notifications_include?(result, pattern) ⇒ Boolean
- #report(status, message, result = nil) ⇒ Object
- #success(message = nil, data = nil) ⇒ Object
- #success_data(data = nil) ⇒ Object
-
#success_json(data = nil) ⇒ String
Jsend json.
Instance Method Details
#error(message = nil) ⇒ Object
13 14 15 |
# File 'lib/jsender.rb', line 13 def error( = nil) report('error', ) end |
#error_json(msg, code = nil, data = nil) ⇒ String
74 75 76 77 78 79 80 81 |
# File 'lib/jsender.rb', line 74 def error_json(msg, code = nil, data = nil) code, data = validate_and_sanitize(msg, code, data) jsend = { :status => 'error', :message => msg } generate_error_json(jsend, code, data) end |
#fail_data(data = nil) ⇒ Object
22 23 24 |
# File 'lib/jsender.rb', line 22 def fail_data(data = nil) failure(nil, data) end |
#fail_json(data = nil) ⇒ String
Returns jsend json.
61 62 63 64 65 66 67 |
# File 'lib/jsender.rb', line 61 def fail_json(data = nil) raise ArgumentError, 'Optional data argument should be of type Hash' if invalid_hash?(data) return JSON.generate({ :status => 'fail', :data => data }) end |
#failure(message = nil, data = nil) ⇒ Object
17 18 19 20 |
# File 'lib/jsender.rb', line 17 def failure( = nil, data = nil) ||= 'fail' report('fail', , data) end |
#has_data?(result, key = nil) ⇒ Boolean
35 36 37 38 39 40 |
# File 'lib/jsender.rb', line 35 def has_data?(result, key = nil) return false if key.nil? return false if (result.nil?) or (result['data'].nil?) return false if (not key.nil?) and (result['data'][key].nil?) true end |
#notifications_include?(result, pattern) ⇒ Boolean
42 43 44 45 |
# File 'lib/jsender.rb', line 42 def notifications_include?(result, pattern) return false unless has_data?(result, 'notifications') result['data']['notifications'].to_s.include?(pattern) end |
#report(status, message, result = nil) ⇒ Object
6 7 8 9 10 11 |
# File 'lib/jsender.rb', line 6 def report(status, , result = nil) return {'status' => 'error', 'message' => } if status == 'error' data = compile_data(result) data['notifications'] = .is_a?(Array) ? : [] {'status' => status, 'data' => data} end |
#success(message = nil, data = nil) ⇒ Object
30 31 32 33 |
# File 'lib/jsender.rb', line 30 def success( = nil, data = nil) ||= 'success' report('success', , data) end |
#success_data(data = nil) ⇒ Object
26 27 28 |
# File 'lib/jsender.rb', line 26 def success_data(data = nil) success(nil, data) end |
#success_json(data = nil) ⇒ String
Returns jsend json.
50 51 52 53 54 55 56 |
# File 'lib/jsender.rb', line 50 def success_json(data = nil) raise ArgumentError, 'Optional data argument should be of type Hash' if invalid_hash?(data) return JSON.generate({ :status => 'success', :data => data }) end |