class DBus::ProxyObjectFactory
D-Bus proxy object factory class¶ ↑
Class that generates and sets up a proxy object based on introspection data.
Public Class Methods
introspect_into(po, xml)
click to toggle source
Investigates the sub-nodes of the proxy object po based on the introspection XML data xml and sets them up recursively.
# File lib/dbus/proxy_object_factory.rb, line 27 def self.introspect_into(po, xml) intfs, po.subnodes = IntrospectXMLParser.new(xml).parse intfs.each do |i| poi = ProxyObjectInterface.new(po, i.name) i.methods.each_value { |m| poi.define(m) } i.signals.each_value { |s| poi.define(s) } po[i.name] = poi end po.introspected = true end
new(xml, bus, dest, path, api: ApiOptions::CURRENT)
click to toggle source
Creates a new proxy object factory for the given introspection XML xml, bus, destination dest, and path.
# File lib/dbus/proxy_object_factory.rb, line 17 def initialize(xml, bus, dest, path, api: ApiOptions::CURRENT) @xml = xml @bus = bus @path = path @dest = dest @api = api end
Public Instance Methods
build()
click to toggle source
Generates, sets up and returns the proxy object.
# File lib/dbus/proxy_object_factory.rb, line 39 def build po = ProxyObject.new(@bus, @dest, @path, api: @api) ProxyObjectFactory.introspect_into(po, @xml) po end