On Freitag, 21. Juni 2013 12:17:38 CEST, Pali Rohár wrote:
On Friday 21 June 2013 12:06:52 Thomas Lübking wrote:
On Freitag, 21. Juni 2013 11:10:49 CEST, Pali Rohár wrote: ...

With akonadi I mean: There are akonadi client libraries and akonadi server (process). You need to have akonadi client libraries installed with KDE, but if you are not using akonadi, you can remove or disable akonadi server.

So if addressbook plugin using client/server model (not only akonadi!), it can check if server is installed and enabled in isValid() method.

The akonadi design implies to trigger the server on request, so you'd actually violate 
that design (and as long as trojitá would be to only client, it will ever be 
"invalid")
Also it doesn't seem reasonable to select the akonadi addressbook plugin if you 
don't like akonadi.

However, there may still be runtime checks, but i'd suggest to handle failure and fallback 
dynamicall alongside the jobs (if the dependency is a remote server, that can fail anytime) and in 
general, keep the option (or jsut add it) for a check for local runtime dependencies (subprocesses) 
open by adding some "IsUsable" enum for some "features()" virtual.

Cheers,
Thomas

Reply via email to