class KDBusServiceStarter |
|
A generic DBUS service starter, using KServiceTypeTrader.
The default implementation starts new processes, but this interface can
also be reimplemented by specific applications to provide dlopened in-process DBus objects.
This interface is similar to the startServiceByName() function found in QDBusBusService, but
with the added benefit of using KTrader (and, therefore, additional constraints and the
ability to search the standard KDE dirs).
Author David Faure |
|
|
|
Check if a given DBus service is available - from the serviceType it's supposed to implement.
The trader is queried to find the preferred application for this serviceType, with the constraint that its X-DBus-ServiceName property must be defined. Then the DBus server is checked. If the service is not available, this method will call startServiceFor to start it. serviceType - the type of service we're looking for constraint - see KServiceTypeTrader error - On failure, error contains a description of the error that occurred. If the pointer is 0, the argument will be ignored dbusService - On success, dbusService contains the DBus service name under which this service is available. If the pointer is 0 the argument will be ignored flags - for future extensions (currently unused) Returns an error code indicating success (== 0) or failure (> 0). |
|
|
Find an implementation of the given serviceType,
and start it, to use its DBus interface.
The default implementation uses KServiceTypeTrader to find the preferred Application,
and then starts it using KToolInvocation.startService...
However applications (like kontact) can reimplement this method, to provide an in-process way of loading the implementation for this service type. serviceType - the type of service we're looking for constraint - see KServiceTypeTrader error - On failure, error contains a description of the error that occurred. If the pointer is 0, the argument will be ignored dbusService - On success, dbusService contains the DBus service name under which this service is available. If the pointer is 0 the argument will be ignored flags - for future extensions (currently unused) Returns an error code indicating success (== 0) or failure (> 0). |