On Wed, 2008-06-18 at 23:48 -0700, Artem Kachitchkine wrote:
> The "signal between X and Y" or "X sends signal to Y" language is 
> confusing. DBus signals in general are not peer to peer, they are 
> messages broadcast on a bus. Arbitrary number of applications can listen 
> on the bus. It is possible, however, to establish a peer to peer DBus 
> connection between two applications, much like FIFOs or System V message 
> queues. You need to specify:
Artem,

Thanks for your review.

Here is updates on this part, please review.

  Network Printer (via SNMP):
  - Enable network printer discovery service, 
    svc:/network/device-discovery/printers:snmp
  - The hald network printer add-on broadcast a SNMP GET
  - Network printer which is SNMP capable would then respond to it
  - The SNMP agent then populates the HAL Device Tree with the network 
    printer data.
  - hald detected changes in the HAL device tree and deduces that these 
    are printers, it sends out the "DeviceAdded" DBUS signal.
  - ospm-applet, which is a user's session daemon, is waiting and 
    responding to these signals. Based on the unique udi (Unique Device 
    Identifier) it received from hald, it looks up the rest of the data 
    from the Hal device tree. Then it adds print queues for these
    printers in the background until these are all done.
  - ospm-applet pop-ups a generic message as a notification bubble 
    notifying the user that network print queues have been added. 
  - ospm-applet also sends out a DBUS message, "PrinterAdded".
  - If the Print Manager is running at the time, it will be notified by 
    the message "PrinterAdded", and will refresh its view immediately
    and hence shows the newly added queues. Otherwise, these messages
    are ignored.
> 
> - the path of the object(s) that implement the 
> org.opensolaris.ospm.applet interface
> 
> - which of the many possible DBus buses (system? session?) or private 
> connections the object is instantiated on
> 
> - signal parameters, if any (UDI? queue name?)
We're using two DBus signals. One is a system one "??????DeviceAdded",
another one is our application customized one "???PrinterAdded"
1.  ???DeviceAdded
   path: /org/freedesktop/Hal/Manager
   interface: ???org.freedesktop.Hal.Manager
   bus: system
   
2.  PrinterAdded
   path: ???/org/opensolaris/ospm/applet
   interface: ???org.opensolaris.ospm.applet
???   bus: session

Where need I mention this in the arc document?

Thanks,
Halton.

> 
> Also your proposal has three variations on the signal name: 
> PrinterAdded, printerAdded and Printeradded. Which one is it?
> 
> -Artem


Reply via email to