class DBus::Error

Represents a D-Bus Error, both on the client and server side.

Attributes

dbus_message[R]

for received errors, the raw D-Bus message

name[R]

error_name. message is inherited from Exception

Public Class Methods

new(msg, name = "org.freedesktop.DBus.Error.Failed") click to toggle source

If msg is a DBus::Message, its contents is used for initialization. Otherwise, msg is taken as a string and name is used.

Calls superclass method
   # File lib/dbus/error.rb
23 def initialize(msg, name = "org.freedesktop.DBus.Error.Failed")
24   if msg.is_a? DBus::Message
25     @dbus_message = msg
26     @name = msg.error_name
27     super(msg.params[0]) # or nil
28     if msg.params[1].is_a? Array
29       set_backtrace msg.params[1]
30     end
31   else
32     @name = name
33     super(msg)
34   end
35   # TODO: validate error name
36 end