Exception: Fanforce::Error::AppFailed
Overview
A 3rd-party app crapped out
Instance Attribute Summary collapse
#env, #public_errors
Class Method Summary
collapse
Instance Method Summary
collapse
#code, #curl_command, #for, #format_error, #format_errors
Constructor Details
#initialize(_id, e, msg, &block) ⇒ AppFailed
Returns a new instance of AppFailed.
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
|
# File 'lib/fanforce/errors/_base.rb', line 125
def initialize(_id, e, msg, &block)
app_dev_error = {}
app_dev_error[:problem] = msg
if e.is_a?(Fanforce::Errors::WebhookFailed)
app_dev_error[:request_url] = e.request_url
app_dev_error[:request_params] = e.request_params
app_dev_error[:response_code] = e.response_code
app_dev_error[:response_body] = e.response_body.to_s
app_dev_error[:curl_command] = "curl -X POST -d \"#{e.request_params.to_param}\" #{e.request_url}"
end
@app_dev_errors = e.respond_to?(:app_dev_errors) ? e.app_dev_errors : []
@app_dev_errors << app_dev_error
self.class.handler_blocks.each {|block| block.call(_id, app_dev_error, e.backtrace) }
super(msg)
end
|
Instance Attribute Details
#app_dev_error ⇒ Object
Returns the value of attribute app_dev_error.
120
121
122
|
# File 'lib/fanforce/errors/_base.rb', line 120
def app_dev_error
@app_dev_error
end
|
Class Method Details
.handler(&block) ⇒ Object
142
143
144
|
# File 'lib/fanforce/errors/_base.rb', line 142
def self.handler(&block)
handler_blocks << block
end
|
.handler_blocks ⇒ Object
146
147
148
|
# File 'lib/fanforce/errors/_base.rb', line 146
def self.handler_blocks
@handler_blocks ||= []
end
|
Instance Method Details
#default_error_code ⇒ Object
123
|
# File 'lib/fanforce/errors/_base.rb', line 123
def default_error_code; :third_party_error end
|
#default_message ⇒ Object
121
|
# File 'lib/fanforce/errors/_base.rb', line 121
def default_message; 'Third-Party App Error' end
|
#valid_error_codes ⇒ Object
122
|
# File 'lib/fanforce/errors/_base.rb', line 122
def valid_error_codes; [:third_party_error] end
|