00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef _TelepathyQt4_cli_pending_channel_h_HEADER_GUARD_
00023 #define _TelepathyQt4_cli_pending_channel_h_HEADER_GUARD_
00024
00025 #ifndef IN_TELEPATHY_QT4_HEADER
00026 #error IN_TELEPATHY_QT4_HEADER
00027 #endif
00028
00029 #include <TelepathyQt4/Client/Channel>
00030 #include <TelepathyQt4/Client/PendingOperation>
00031
00032 #include <QString>
00033 #include <QVariantMap>
00034
00035 #include <QDBusPendingCallWatcher>
00036
00037 namespace Telepathy
00038 {
00039 namespace Client
00040 {
00041
00042 class Connection;
00043
00044 class PendingChannel : public PendingOperation
00045 {
00046 Q_OBJECT
00047 Q_DISABLE_COPY(PendingChannel)
00048
00049 public:
00050 ~PendingChannel();
00051
00052 Connection *connection() const;
00053
00054 bool yours() const;
00055
00056 const QString &channelType() const;
00057
00058 uint targetHandleType() const;
00059
00060 uint targetHandle() const;
00061
00062 QVariantMap immutableProperties() const;
00063
00064 ChannelPtr channel() const;
00065
00066 QString objectPath() const;
00067
00068 private Q_SLOTS:
00069 void onCallCreateChannelFinished(QDBusPendingCallWatcher *watcher);
00070 void onCallEnsureChannelFinished(QDBusPendingCallWatcher *watcher);
00071
00072 private:
00073 friend class Connection;
00074
00075 PendingChannel(Connection *connection,
00076 const QString &errorName, const QString &errorMessage);
00077 PendingChannel(Connection *connection,
00078 const QVariantMap &request, bool create);
00079
00080 struct Private;
00081 friend struct Private;
00082 Private *mPriv;
00083 };
00084
00085 }
00086 }
00087
00088 #endif