module LinkedRails::Controller::ErrorHandling
Private Instance Methods
add_error_snackbar(error)
click to toggle source
# File lib/linked_rails/controller/error_handling.rb, line 17 def add_error_snackbar(error) add_exec_action_header(response.headers, ontola_snackbar_action(error.error.message)) end
add_error_snackbar?(_error)
click to toggle source
# File lib/linked_rails/controller/error_handling.rb, line 21 def add_error_snackbar?(_error) !%w[GET HEAD].include?(request.method) end
error_mode(exception)
click to toggle source
# File lib/linked_rails/controller/error_handling.rb, line 40 def error_mode(exception) @_error_mode = true Rails.logger.error exception @_uc = nil end
error_resource(status, error, url = request.original_url)
click to toggle source
# File lib/linked_rails/controller/error_handling.rb, line 46 def error_resource(status, error, url = request.original_url) LinkedRails.rdf_error_class.new(status, url, error) end
error_response_serializer(error, type, status: nil)
click to toggle source
# File lib/linked_rails/controller/error_handling.rb, line 50 def error_response_serializer(error, type, status: nil) status ||= error_status(error) error = error_resource(status, error) add_error_snackbar(error) if add_error_snackbar?(error) render type => error, status: status end
error_status(error)
click to toggle source
# File lib/linked_rails/controller/error_handling.rb, line 57 def error_status(error) self.class.error_status_codes[error.class.to_s] || 500 end
handle_and_report_error(error)
click to toggle source
# File lib/linked_rails/controller/error_handling.rb, line 33 def handle_and_report_error(error) raise if Rails.env.development? || Rails.env.test? raise if response_body handle_error(error) end
handle_error(error)
click to toggle source
# File lib/linked_rails/controller/error_handling.rb, line 25 def handle_error(error) respond_to do |format| (LinkedRails::Renderers.rdf_content_types + [:json]).each do |type| format.send(type) { error_response_serializer(error, type) } end end end