diff options
author | Christoph Helma <helma@in-silico.ch> | 2019-08-24 15:06:53 +0200 |
---|---|---|
committer | Christoph Helma <helma@in-silico.ch> | 2019-08-24 15:06:53 +0200 |
commit | 8e1e8b94539dbdd74bd4ac28295cbfd1b84036ab (patch) | |
tree | 28528e19dc6ed4cca7ed824e939dedd6c4acc94c /lib/error.rb | |
parent | 1ee7de09c969e16fd11522d22179224e694b0161 (diff) | |
parent | 488ce9fe6d4b715680675861105b8c52a7535140 (diff) |
Merge remote-tracking branch 'origin/development'
Diffstat (limited to 'lib/error.rb')
-rw-r--r-- | lib/error.rb | 66 |
1 files changed, 0 insertions, 66 deletions
diff --git a/lib/error.rb b/lib/error.rb deleted file mode 100644 index 39b3c76..0000000 --- a/lib/error.rb +++ /dev/null @@ -1,66 +0,0 @@ -module OpenToxError - attr_accessor :http_code, :message, :cause - def initialize message=nil - message = message.to_s.gsub(/\A"|"\Z/, '') if message # remove quotes - super message - @http_code ||= 500 - @message = message.to_s - @cause = cut_backtrace(caller) - $logger.error("\n"+JSON.pretty_generate({ - :http_code => @http_code, - :message => @message, - :cause => @cause - })) - end - - def cut_backtrace(trace) - if trace.is_a?(Array) - cut_index = trace.find_index{|line| line.match(/sinatra|minitest/)} - cut_index ||= trace.size - cut_index -= 1 - cut_index = trace.size-1 if cut_index < 0 - trace[0..cut_index] - else - trace - end - end - -end - -class RuntimeError - include OpenToxError -end - -# clutters log file with library errors -#class NoMethodError - #include OpenToxError -#end - -module OpenTox - - class Error < RuntimeError - include OpenToxError - - def initialize(code, message=nil) - @http_code = code - super message - end - end - - # OpenTox errors - RestClientWrapper.known_errors.each do |error| - # create error classes - c = Class.new Error do - define_method :initialize do |message=nil| - super error[:code], message - end - end - OpenTox.const_set error[:class],c - - # define global methods for raising errors, eg. bad_request_error - Object.send(:define_method, error[:method]) do |message| - raise c.new(message) - end - end - -end |