Proposal and RFC: DAL, the Desktop Abstraction Layer

Jamie McCracken jamiemcc@blueyonder.co.uk
Wed Jan 19 08:03:49 PST 2005


John (J5) Palmieri wrote:
> On Wed, 2005-01-19 at 15:16 +0000, Jamie McCracken wrote:
> 
>>John (J5) Palmieri wrote:
>>
>>
>>>Services are just for routing.  Objects and interfaces should be used
>>>for identifying what piece of code should be run.  Try not to use
>>>multiple services in an application unless you can come up with a really
>>>good reason.  We also use services to track life-cycles of an
>>>application so if a service goes down we can assume the application has
>>>been closed.  Things get confusing if you have multiple services. 
>>>
>>
>>I totally agree with you but as we cant activate a non-running service 
>>by what interfaces it supports we have to blur the lines between 
>>services and interfaces a bit in those instances otherwise we wouldn't 
>>be able to say "activate a freedesktop compliant text editor".
> 
> 
> You should get a list of all services that export a particular interface
> and then activate the service you want.  We should fix D-Bus if it
> doesn't do what we want or create another daemon that keeps track of
> these things.  A spec which aims to be a standard should not try and
> workaround deficiencies.

Thats what I asked for earlier in this thread but Havoc is reluctant to 
implement that and not wishing to upset Havoc I accepted the compromise 
of multiple services for that.

I agree its much better to use interfaces here than services after all 
an interface is an agreed well defined contract so it seems pointless to 
make a service a well defined contract too in those cases. I should also 
add that only public (pre-defined) interfaces should be exported as you 
suggested (theres obviously no point asking for a propriety interface).

jamie.

> 



More information about the dbus mailing list