Sha256: 8036fcbc3c701a03a80a0bce1ae1d45e59afdf2bd1d931f8d490eb91f79fca75
Contents?: true
Size: 880 Bytes
Versions: 20
Compression:
Stored size: 880 Bytes
Contents
# encoding: utf-8 module TestServer module Actions class HandleError private attr_reader :exception, :original_message, :handler_klass, :backtrace public def initialize(exception, handler_klass = ErrorHandler) @exception = exception.class @original_message = exception.message @backtrace = exception.backtrace @handler_klass = handler_klass end def run handler = handler_klass.find exception handler.original_message = original_message handler.backtrace = backtrace handler.execute(parsed_message) end private def parsed_message result = JSON.parse(original_message) return {} unless result.kind_of? Hash result rescue JSON::ParserError {} end end end end
Version data entries
20 entries across 20 versions & 1 rubygems