Sha256: f1ad2455e694a918e4ee7816f91cfa5a7ecadf13e96a16054f72e0ebd24f12cb

Contents?: true

Size: 1.17 KB

Versions: 38

Compression:

Stored size: 1.17 KB

Contents

# encoding: ASCII-8BIT
# SOAP4R - Nested exception implementation
# Copyright (C) 2000-2007  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.

# This program is copyrighted free software by NAKAMURA, Hiroshi.  You can
# redistribute it and/or modify it under the same terms of Ruby's license;
# either the dual license version in 2003, or any later version.


module SOAP


module NestedException
  attr_reader :cause
  attr_reader :original_backtraace

  def initialize(msg = nil, cause = nil)
    super(msg)
    @cause = cause
    @original_backtrace = nil
  end

  def set_backtrace(backtrace)
    if defined?(@cause) and @cause.respond_to?(:backtrace)
      @original_backtrace = backtrace
=begin
      # for agressive backtrace abstraction: 'here' only should not be good
      here = @original_backtrace[0]
      backtrace = Array[*@cause.backtrace]
      backtrace[0] = "#{backtrace[0]}: #{@cause} (#{@cause.class})"
      backtrace.unshift(here)
=end
      # just join the nested backtrace at the tail of backtrace
      caused = Array[*@cause.backtrace]
      caused[0] = "#{caused[0]}: #{@cause} (#{@cause.class}) [NESTED]"
      backtrace += caused
    end
    super(backtrace)
  end
end


end

Version data entries

38 entries across 38 versions & 10 rubygems

Version Path
soybean-2.4.3 vendor/soap4r/soap/nestedexception.rb
soybean-2.4.2 vendor/soap4r/soap/nestedexception.rb
soybean-2.4.1 vendor/soap4r/soap/nestedexception.rb
soybean-2.4.0 vendor/soap4r/soap/nestedexception.rb
soybean-2.3.0 vendor/soap4r/soap/nestedexception.rb
soybean-2.2.2 vendor/soap4r/soap/nestedexception.rb
soybean-2.2.1 vendor/soap4r/soap/nestedexception.rb
soybean-2.2.0 vendor/soap4r/soap/nestedexception.rb
soybean-2.1.5 vendor/soap4r/soap/nestedexception.rb
soybean-2.1.4 vendor/soap4r/soap/nestedexception.rb
soybean-2.1.3 vendor/soap4r/soap/nestedexception.rb
soybean-2.1.2 vendor/soap4r/soap/nestedexception.rb
soybean-2.1.1 vendor/soap4r/soap/nestedexception.rb
soybean-2.1.0 vendor/soap4r/soap/nestedexception.rb
soybean-2.0.1 vendor/soap4r/soap/nestedexception.rb
soybean-2.0.0 vendor/soap4r/soap/nestedexception.rb
soybean-1.0.0 vendor/soap4r/soap/nestedexception.rb
rubyjedi-soap4r-1.5.8.20100619003610 lib/soap/nestedexception.rb