Introduce a class for agents to interface with KAccounts

Authored by dvratil on Sep 11 2019, 7:16 AM.

Description

Introduce a class for agents to interface with KAccounts

Summary:
The interface is designed so that the agents can use it even when Akonadi
is compiled without KAccounts support, so we don't have to clutter all
agents code with #ifdefs. When KAccounts support is compiled in, the class
registers org.kde.Akonadi.Accounts interface on DBus which akonadi_control
uses to tell the resoure about the KAccounts account.

It also provides a simple wrappers to retrieve the OAuth tokens or
passwords.

In the future this interface will require a wider API to allow accessing
more of the account configuration (e.g. DAV server URL, paths etc.),
but this should be good enough for now.

Test Plan: Tested together with D23856

Reviewers: vkrause

Reviewed By: vkrause

Subscribers: kde-pim

Tags: KDE PIM

Differential Revision: https://phabricator.kde.org/D23858

Details