23 #ifndef _TelepathyQt_client_registrar_h_HEADER_GUARD_
24 #define _TelepathyQt_client_registrar_h_HEADER_GUARD_
26 #ifndef IN_TP_QT_HEADER
27 #error IN_TP_QT_HEADER
30 #include <TelepathyQt/AccountFactory>
31 #include <TelepathyQt/ChannelFactory>
32 #include <TelepathyQt/ConnectionFactory>
33 #include <TelepathyQt/ContactFactory>
34 #include <TelepathyQt/Object>
35 #include <TelepathyQt/Types>
37 #include <QDBusConnection>
49 static ClientRegistrarPtr create(
const QDBusConnection &bus);
50 static ClientRegistrarPtr create(
51 const AccountFactoryConstPtr &accountFactory =
53 const ConnectionFactoryConstPtr &connectionFactory =
55 const ChannelFactoryConstPtr &channelFactory =
57 const ContactFactoryConstPtr &contactFactory =
59 static ClientRegistrarPtr create(
const QDBusConnection &bus,
60 const AccountFactoryConstPtr &accountFactory,
61 const ConnectionFactoryConstPtr &connectionFactory,
62 const ChannelFactoryConstPtr &channelFactory,
63 const ContactFactoryConstPtr &contactFactory);
64 static ClientRegistrarPtr create(
const AccountManagerPtr &accountManager);
68 QDBusConnection dbusConnection()
const;
70 AccountFactoryConstPtr accountFactory()
const;
71 ConnectionFactoryConstPtr connectionFactory()
const;
72 ChannelFactoryConstPtr channelFactory()
const;
73 ContactFactoryConstPtr contactFactory()
const;
75 QList<AbstractClientPtr> registeredClients()
const;
76 bool registerClient(
const AbstractClientPtr &client,
77 const QString &clientName,
bool unique =
false);
78 bool unregisterClient(
const AbstractClientPtr &client);
79 void unregisterClients();
83 const AccountFactoryConstPtr &accountFactory,
84 const ConnectionFactoryConstPtr &connectionFactory,
85 const ChannelFactoryConstPtr &channelFactory,
86 const ContactFactoryConstPtr &contactFactory);
89 friend struct Private;
92 static QHash<QPair<QString, QString>,
ClientRegistrar *> registrarForConnection;
static ConnectionFactoryPtr create(const QDBusConnection &bus, const Features &features=Features())
Definition: connection-factory.cpp:57
static ContactFactoryPtr create(const Features &features=Features())
Definition: contact-factory.cpp:48
The Object class provides an object with property notification.
Definition: object.h:39
static AccountFactoryPtr create(const QDBusConnection &bus, const Features &features=Features())
Definition: account-factory.cpp:58
static ChannelFactoryPtr create(const QDBusConnection &bus)
Definition: channel-factory.cpp:86
The ClientRegistrar class is responsible for registering Telepathy clients (Observer, Approver, Handler).
Definition: client-registrar.h:43