class Rookout::Processor::RookError

Attributes

exception[R]
message[R]
parameters[R]

Public Class Methods

new(exception, message = "") click to toggle source
# File lib/rookout/processor/rook_error.rb, line 11
def initialize exception, message = ""
  @exception = exception
  @traceback = exception.backtrace

  if @exception.is_a? Exceptions::ToolException
    raw_type = @exception.class.to_s
    @type = raw_type[raw_type.rindex(":") + 1..raw_type.length]
    @message = @exception.message
    @parameters = @exception.parameters
  else
    @type = "Unknown"
    @message = message
    @parameters = nil
  end
end

Public Instance Methods

dumps() click to toggle source
# File lib/rookout/processor/rook_error.rb, line 29
def dumps
  parameters = NamespaceSerializer.dump Namespaces::RubyObjectNamespace.new(@parameters), false
  exception = NamespaceSerializer.dump Namespaces::RubyObjectNamespace.new(@exception), false

  backtrace_string = ""
  unless @exception.backtrace.nil?
    backtrace_string = @exception.backtrace.join "\n\t"
  end
  backtrace_object = Namespaces::RubyObjectNamespace.new(backtrace_string).tailor_limits!
  traceback = NamespaceSerializer.dump backtrace_object, false

  Com::Rookout::Error.new message: @message,
                          type: @type,
                          parameters: parameters,
                          exc: exception,
                          traceback: traceback
end