00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef _TelepathyQt4_pending_account_h_HEADER_GUARD_
00023 #define _TelepathyQt4_pending_account_h_HEADER_GUARD_
00024
00025 #ifndef IN_TELEPATHY_QT4_HEADER
00026 #error IN_TELEPATHY_QT4_HEADER
00027 #endif
00028
00029 #include <TelepathyQt4/Account>
00030 #include <TelepathyQt4/PendingOperation>
00031
00032 #include <QString>
00033 #include <QVariantMap>
00034
00035 class QDBusPendingCallWatcher;
00036
00037 namespace Tp
00038 {
00039
00040 class AccountManager;
00041
00042 class TELEPATHY_QT4_EXPORT PendingAccount : public PendingOperation
00043 {
00044 Q_OBJECT
00045 Q_DISABLE_COPY(PendingAccount);
00046
00047 public:
00048 ~PendingAccount();
00049
00050 AccountManagerPtr manager() const;
00051
00052 AccountPtr account() const;
00053
00054 QString objectPath() const;
00055
00056 private Q_SLOTS:
00057 void onCallFinished(QDBusPendingCallWatcher *watcher);
00058 void onAccountBuilt(Tp::PendingOperation *readyOp);
00059 void onNewAccount(const Tp::AccountPtr &account);
00060
00061 private:
00062 friend class AccountManager;
00063
00064 PendingAccount(const AccountManagerPtr &manager,
00065 const QString &connectionManager, const QString &protocol,
00066 const QString &displayName, const QVariantMap ¶meters,
00067 const QVariantMap &properties = QVariantMap());
00068
00069 struct Private;
00070 friend struct Private;
00071 Private *mPriv;
00072 };
00073
00074 }
00075
00076 #endif