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