Class: DBus::Wrapper::Bus
- Inherits:
-
Object
- Object
- DBus::Wrapper::Bus
- Defined in:
- lib/ruby-dbus-wrapper/bus.rb
Instance Attribute Summary collapse
-
#connection ⇒ Object
readonly
Returns the value of attribute connection.
Instance Method Summary collapse
-
#initialize(connection) ⇒ Bus
constructor
A new instance of Bus.
- #method_call(destination, path, interface, member, params = nil, &callback) ⇒ Object
- #monitor_signal(sender, path, interface, member, &callback) ⇒ Object
Constructor Details
#initialize(connection) ⇒ Bus
Returns a new instance of Bus.
6 7 8 |
# File 'lib/ruby-dbus-wrapper/bus.rb', line 6 def initialize(connection) @connection = connection end |
Instance Attribute Details
#connection ⇒ Object (readonly)
Returns the value of attribute connection.
4 5 6 |
# File 'lib/ruby-dbus-wrapper/bus.rb', line 4 def connection @connection end |
Instance Method Details
#method_call(destination, path, interface, member, params = nil, &callback) ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/ruby-dbus-wrapper/bus.rb', line 24 def method_call(destination, path, interface, member, params = nil, &callback) raise ArgumentError, "You must specify destination" if destination.nil? raise ArgumentError, "You must specify path" if path.nil? raise ArgumentError, "You must specify interface" if interface.nil? raise ArgumentError, "You must specify member" if member.nil? raise ArgumentError, "You must specify callback" unless block_given? = ::DBus::Message.new(::DBus::Message::METHOD_CALL) .path = path .destination = destination .interface = interface .member = member if params.is_a? Array params.each do |param| .add_param param[0], param[1] end end @connection.send_sync_or_async , &callback end |
#monitor_signal(sender, path, interface, member, &callback) ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/ruby-dbus-wrapper/bus.rb', line 11 def monitor_signal(sender, path, interface, member, &callback) raise ArgumentError, "You must specify interface" if interface.nil? raise ArgumentError, "You must specify member" if member.nil? raise ArgumentError, "You must specify callback" unless block_given? match_string = "type='signal',interface='#{interface}',member='#{member}'" match_string << ",path='#{path}'" unless path.nil? match_string << ",sender='#{sender}'" unless sender.nil? @connection.add_match match_string, &callback end |