Class | DBus::Interface |
In: |
lib/dbus/introspect.rb
|
Parent: | Object |
This class is the interface descriptor. In most cases, the Introspect() method call instantiates and configures this class for us.
It also is the local definition of interface exported by the program. At the client side, see ProxyObjectInterface
methods | [R] | The methods that are part of the interface. Hash: Symbol => DBus::Method |
name | [R] | The name of the interface. String |
signals | [R] | The signals that are part of the interface. Hash: Symbol => Signal |
Helper method for defining a method m.
# File lib/dbus/introspect.rb, line 62 def define(m) if m.kind_of?(Method) @methods[m.name.to_sym] = m elsif m.kind_of?(Signal) @signals[m.name.to_sym] = m end end
Defines a method with name id and a given prototype in the interface.
# File lib/dbus/introspect.rb, line 73 def define_method(id, prototype) m = Method.new(id) m.from_prototype(prototype) define(m) end
Validates a service name.
# File lib/dbus/introspect.rb, line 51 def validate_name(name) raise InvalidIntrospectionData if name.bytesize > 255 raise InvalidIntrospectionData if name =~ /^\./ or name =~ /\.$/ raise InvalidIntrospectionData if name =~ /\.\./ raise InvalidIntrospectionData if not name =~ /\./ name.split(".").each do |element| raise InvalidIntrospectionData if not element =~ InterfaceElementRE end end