All pastes #254104 Raw Edit

hal_introspection

public text v1 · immutable
#254104 ·published 2006-11-21 14:16 UTC
rendered paste body
Java Howto:
	Introspectable Intro = (Introspectable) 
		conn.getRemoteObject(
			"org.freedesktop.Hal", 
			"/org/freedesktop/Hal{,Manager,devices,devices/whatever}",  
			Introspectable.class);

running against hal_0.5.8.1-3_i386.deb gives:

Hal:
	<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
	"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
	<node>
	  <interface name="org.freedesktop.DBus.Introspectable">
	    <method name="Introspect">
	      <arg name="data" direction="out" type="s"/>
	    </method>
	  </interface>
	  <node name="Manager"/>
	  <node name="devices"/>
	</node>


Hal.Manager:

	<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
	"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
	<node>
	  <interface name="org.freedesktop.DBus.Introspectable">
	    <method name="Introspect">
	      <arg name="data" direction="out" type="s"/>
	    </method>
	  </interface>

	  <interface name="org.freedesktop.Hal.Manager">
	    <method name="GetAllDevices">
	      <arg name="devices" direction="out" type="ao"/>
	    </method>
	    <method name="DeviceExists">
	      <arg name="does_it_exist" direction="out" type="b"/>
	      <arg name="udi" direction="in" type="o"/>
	    </method>
	    <method name="FindDeviceStringMatch">
	      <arg name="devices" direction="out" type="ao"/>
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="in" type="s"/>
	    </method>
	    <method name="FindDeviceByCapability">
	      <arg name="devices" direction="out" type="ao"/>
	      <arg name="capability" direction="in" type="s"/>
	    </method>
	    <method name="NewDevice">
	      <arg name="temporary_udi" direction="out" type="s"/>
	    </method>
	    <method name="Remove">
	      <arg name="udi" direction="in" type="s"/>
	    </method>
	    <method name="CommitToGdl">
	      <arg name="temporary_udi" direction="in" type="s"/>
	      <arg name="global_udi" direction="in" type="s"/>
	    </method>
	  </interface>

	</node>

Hal.devices:

	<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
	"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
	<node>
	  <interface name="org.freedesktop.DBus.Introspectable">
	    <method name="Introspect">
	      <arg name="data" direction="out" type="s"/>
	    </method>
	  </interface>

	  <node name="acpi_CPU1"/>
	  <node name="volume_uuid_62BC62F7BC62C55F"/>
	  <node name="volume_uuid_45a69638_b115_43e7_a37a_9f4df5d7458e"/>
	  <node name="volume_part3_size_1044610560"/>
	  <node name="storage_serial_3JX2CD3P"/>
	  <node name="DVD_GCC_4480B"/>
	  <node name="storage_model_HL_DT_STDVD_ROM_GDR8163B"/>
	  <node name="platform_floppy_0_storage"/>
	  <node name="computer_alsa_timer"/>
	  <node name="computer_alsa_sequencer"/>
	  <node name="computer_oss_sequencer_0"/>
	  <node name="computer_oss_sequencer"/>
	  <node name="platform_pcspkr_logicaldev_input"/>
	  <node name="platform_pcspkr"/>
	  <node name="platform_vesafb_0"/>
	  <node name="platform_serial8250"/>
	  <node name="platform_i8042_i8042_Aux_Port"/>
	  <node name="platform_i8042_i8042_Kbd_Port_logicaldev_input"/>
	  <node name="platform_i8042_i8042_Kbd_Port"/>
	  <node name="platform_i8042"/>
	  <node name="platform_floppy_0"/>
	  <node name="pci_1106_3116"/>
	  <node name="pci_1002_5961"/>
	  <node name="pci_1002_5941"/>
	  <node name="pci_1106_b091"/>
	  <node name="net_00_02_b3_d1_05_43"/>
	  <node name="pci_8086_1229"/>
	  <node name="usb_device_0_0_0000_00_10_0_if0"/>
	  <node name="usb_device_5e3_1205_noserial_if0_logicaldev_input"/>
	  <node name="usb_device_5e3_1205_noserial_if0"/>
	  <node name="usb_device_5e3_1205_noserial_usbraw"/>
	  <node name="usb_device_5e3_1205_noserial"/>
	  <node name="usb_device_0_0_0000_00_10_0_usbraw"/>
	  <node name="usb_device_0_0_0000_00_10_0"/>
	  <node name="pci_1106_3038_1"/>
	  <node name="usb_device_0_0_0000_00_10_1_if0"/>
	  <node name="usb_device_67b_2303_noserial_if0_serial_usb_0"/>
	  <node name="usb_device_67b_2303_noserial_if0"/>
	  <node name="usb_device_67b_2303_noserial_usbraw"/>
	  <node name="usb_device_67b_2303_noserial"/>
	  <node name="usb_device_0_0_0000_00_10_1_usbraw"/>
	  <node name="usb_device_0_0_0000_00_10_1"/>
	  <node name="pci_1106_3038_0"/>
	  <node name="usb_device_0_0_0000_00_10_2_if0"/>
	  <node name="usb_device_0_0_0000_00_10_2_usbraw"/>
	  <node name="usb_device_0_0_0000_00_10_2"/>
	  <node name="pci_1106_3038"/>
	  <node name="usb_device_0_0_0000_00_10_3_if0"/>
	  <node name="usb_device_0_0_0000_00_10_3_usbraw"/>
	  <node name="usb_device_0_0_0000_00_10_3"/>
	  <node name="pci_1106_3104"/>
	  <node name="pci_1106_3177"/>
	  <node name="pci_1106_571_ide_0_0"/>
	  <node name="pci_1106_571_ide_1_0"/>
	  <node name="pci_1106_571_ide_1_1"/>
	  <node name="pci_1106_571"/>
	  <node name="pci_1106_3059_alsa_playback_1"/>
	  <node name="pci_1106_3059_alsa_capture_1"/>
	  <node name="pci_1106_3059_oss_pcm_1"/>
	  <node name="pci_1106_3059_alsa_playback_0"/>
	  <node name="pci_1106_3059_alsa_capture_0"/>
	  <node name="pci_1106_3059_oss_pcm_0_0"/>
	  <node name="pci_1106_3059_oss_pcm_0"/>
	  <node name="pci_1106_3059_alsa_control__1"/>
	  <node name="pci_1106_3059_oss_mixer__1"/>
	  <node name="pci_1106_3059"/>
	  <node name="net_00_0c_6e_4c_4c_19"/>
	  <node name="pci_1106_3065"/>
	  <node name="pnp_PNP0a03"/>
	  <node name="pnp_PNP0700"/>
	  <node name="pnp_PNP0501_serial_platform_0"/>
	  <node name="pnp_PNP0501"/>
	  <node name="pnp_PNP0401"/>
	  <node name="pnp_PNPb02f"/>
	  <node name="pnp_PNP0200"/>
	  <node name="pnp_PNP0b00"/>
	  <node name="pnp_PNP0800"/>
	  <node name="pnp_PNP0c04"/>
	  <node name="pnp_PNP0303"/>
	  <node name="computer"/>

	</node>


/org/freedesktop/Hal/devices/volume_uuid_A070_C4A5:
	(DBus.Introspectable, Hal.Device, Hal.Volume)

	<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
	"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
	<node>
	  <interface name="org.freedesktop.DBus.Introspectable">
	    <method name="Introspect">
	      <arg name="data" direction="out" type="s"/>
	    </method>
	  </interface>

	  <interface name="org.freedesktop.Hal.Device">
	    <method name="GetAllProperties">
	      <arg name="properties" direction="out" type="a{sv}"/>
	    </method>
	    <method name="SetMultipleProperties">
	      <arg name="properties" direction="in" type="a{sv}"/>
	    </method>
	    <method name="GetProperty">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="out" type="v"/>
	    </method>
	    <method name="GetPropertyString">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="out" type="s"/>
	    </method>
	    <method name="GetPropertyStringList">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="out" type="as"/>
	    </method>
	    <method name="GetPropertyInteger">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="out" type="i"/>
	    </method>
	    <method name="GetPropertyBoolean">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="out" type="b"/>
	    </method>
	    <method name="GetPropertyDouble">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="out" type="d"/>
	    </method>
	    <method name="SetProperty">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="in" type="v"/>
	    </method>
	    <method name="SetPropertyString">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="in" type="s"/>
	    </method>
	    <method name="SetPropertyStringList">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="in" type="as"/>
	    </method>
	    <method name="SetPropertyInteger">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="in" type="i"/>
	    </method>
	    <method name="SetPropertyBoolean">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="in" type="b"/>
	    </method>
	    <method name="SetPropertyDouble">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="in" type="d"/>
	    </method>
	    <method name="RemoveProperty">
	      <arg name="key" direction="in" type="s"/>
	    </method>
	    <method name="GetPropertyType">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="type" direction="out" type="i"/>
	    </method>
	    <method name="PropertyExists">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="does_it_exist" direction="out" type="b"/>
	    </method>
	    <method name="AddCapability">
	      <arg name="capability" direction="in" type="s"/>
	    </method>
	    <method name="QueryCapability">
	      <arg name="capability" direction="in" type="s"/>
	      <arg name="does_it_have_capability" direction="out" type="b"/>
	    </method>
	    <method name="Lock">
	      <arg name="reason" direction="in" type="s"/>
	      <arg name="acquired_lock" direction="out" type="b"/>
	    </method>
	    <method name="Unlock">
	      <arg name="released_lock" direction="out" type="b"/>
	    </method>
	    <method name="StringListAppend">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="in" type="s"/>
	    </method>
	    <method name="StringListPrepend">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="in" type="s"/>
	    </method>
	    <method name="StringListRemove">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="in" type="s"/>
	    </method>
	    <method name="EmitCondition">
	      <arg name="condition_name" direction="in" type="s"/>
	      <arg name="condition_details" direction="in" type="s"/>
	      <arg name="rc" direction="out" type="b"/>
	    </method>
	    <method name="Rescan">
	      <arg name="call_had_sideeffect" direction="out" type="b"/>
	    </method>
	    <method name="Reprobe">
	      <arg name="call_had_sideeffect" direction="out" type="b"/>
	    </method>
	    <method name="ClaimInterface">
	      <arg name="interface_name" direction="in" type="s"/>
	      <arg name="introspection_xml" direction="in" type="s"/>
	      <arg name="rc" direction="out" type="b"/>
	    </method>
	    <method name="AddonIsReady">
	      <arg name="rc" direction="out" type="b"/>
	    </method>
	  </interface>

	  <interface name="org.freedesktop.Hal.Device.Volume">
	    <method name="Mount">
	      <arg name="mount_point" direction="in" type="s"/>
	      <arg name="fstype" direction="in" type="s"/>
	      <arg name="extra_options" direction="in" type="as"/>
	      <arg name="return_code" direction="out" type="i"/>
	    </method>
	    <method name="Unmount">
	      <arg name="extra_options" direction="in" type="as"/>
	      <arg name="return_code" direction="out" type="i"/>
	    </method>
	    <method name="Eject">
	      <arg name="extra_options" direction="in" type="as"/>
	      <arg name="return_code" direction="out" type="i"/>
	    </method>
	  </interface>
	</node>

/org/freedesktop/Hal/devices/net_00_02_b3_d1_05_43:
	(DBus.Introspectable, Hal.Device)

	<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
	"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
	<node>
	  <interface name="org.freedesktop.DBus.Introspectable">
	    <method name="Introspect">
	      <arg name="data" direction="out" type="s"/>
	    </method>
	  </interface>

	  <interface name="org.freedesktop.Hal.Device">
	    <method name="GetAllProperties">
	      <arg name="properties" direction="out" type="a{sv}"/>
	    </method>
	    <method name="SetMultipleProperties">
	      <arg name="properties" direction="in" type="a{sv}"/>
	    </method>
	    <method name="GetProperty">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="out" type="v"/>
	    </method>
	    <method name="GetPropertyString">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="out" type="s"/>
	    </method>
	    <method name="GetPropertyStringList">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="out" type="as"/>
	    </method>
	    <method name="GetPropertyInteger">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="out" type="i"/>
	    </method>
	    <method name="GetPropertyBoolean">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="out" type="b"/>
	    </method>
	    <method name="GetPropertyDouble">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="out" type="d"/>
	    </method>
	    <method name="SetProperty">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="in" type="v"/>
	    </method>
	    <method name="SetPropertyString">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="in" type="s"/>
	    </method>
	    <method name="SetPropertyStringList">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="in" type="as"/>
	    </method>
	    <method name="SetPropertyInteger">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="in" type="i"/>
	    </method>
	    <method name="SetPropertyBoolean">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="in" type="b"/>
	    </method>
	    <method name="SetPropertyDouble">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="in" type="d"/>
	    </method>
	    <method name="RemoveProperty">
	      <arg name="key" direction="in" type="s"/>
	    </method>
	    <method name="GetPropertyType">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="type" direction="out" type="i"/>
	    </method>
	    <method name="PropertyExists">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="does_it_exist" direction="out" type="b"/>
	    </method>
	    <method name="AddCapability">
	      <arg name="capability" direction="in" type="s"/>
	    </method>
	    <method name="QueryCapability">
	      <arg name="capability" direction="in" type="s"/>
	      <arg name="does_it_have_capability" direction="out" type="b"/>
	    </method>
	    <method name="Lock">
	      <arg name="reason" direction="in" type="s"/>
	      <arg name="acquired_lock" direction="out" type="b"/>
	    </method>
	    <method name="Unlock">
	      <arg name="released_lock" direction="out" type="b"/>
	    </method>
	    <method name="StringListAppend">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="in" type="s"/>
	    </method>
	    <method name="StringListPrepend">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="in" type="s"/>
	    </method>
	    <method name="StringListRemove">
	      <arg name="key" direction="in" type="s"/>
	      <arg name="value" direction="in" type="s"/>
	    </method>
	    <method name="EmitCondition">
	      <arg name="condition_name" direction="in" type="s"/>
	      <arg name="condition_details" direction="in" type="s"/>
	      <arg name="rc" direction="out" type="b"/>
	    </method>
	    <method name="Rescan">
	      <arg name="call_had_sideeffect" direction="out" type="b"/>
	    </method>
	    <method name="Reprobe">
	      <arg name="call_had_sideeffect" direction="out" type="b"/>
	    </method>
	    <method name="ClaimInterface">
	      <arg name="interface_name" direction="in" type="s"/>
	      <arg name="introspection_xml" direction="in" type="s"/>
	      <arg name="rc" direction="out" type="b"/>
	    </method>
	    <method name="AddonIsReady">
	      <arg name="rc" direction="out" type="b"/>
	    </method>
	  </interface>
	</node>