17#ifndef LOMIRI_ACCOUNTSSERVICEDBUSADAPTOR_H
18#define LOMIRI_ACCOUNTSSERVICEDBUSADAPTOR_H
20#include <QDBusArgument>
21#include <QDBusContext>
22#include <QDBusInterface>
23#include <QDBusPendingReply>
28class AccountsServiceDBusAdaptor:
public QObject,
public QDBusContext
33 explicit AccountsServiceDBusAdaptor(QObject *parent = 0);
34 ~AccountsServiceDBusAdaptor() =
default;
36 QDBusPendingReply<QVariantMap> getAllPropertiesAsync(
const QString &user,
const QString &interface);
37 QDBusPendingReply<QVariant> getUserPropertyAsync(
const QString &user,
const QString &interface,
const QString &property);
38 QDBusPendingCall setUserPropertyAsync(
const QString &user,
const QString &interface,
const QString &property,
const QVariant &value);
41 void propertiesChanged(
const QString &user,
const QString &interface,
const QStringList &changed);
42 void maybeChanged(
const QString &user);
45 void propertiesChangedSlot(
const QString &interface,
const QVariantMap &changed,
const QStringList &invalid);
46 void maybeChangedSlot();
49 QDBusInterface *getUserInterface(
const QString &user);
50 QString getUserForPath(
const QString &path)
const;
52 QDBusInterface *m_accountsManager;
53 QMap<QString, QDBusInterface *> m_users;
55 bool m_ignoreNextChanged;