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 <QSharedPointer>
00033 #include <QString>
00034 #include <QVariantMap>
00035
00036 #include <QDBusPendingCallWatcher>
00037
00038 namespace Telepathy
00039 {
00040 namespace Client
00041 {
00042
00043 class Connection;
00044
00045 class PendingChannel : public PendingOperation
00046 {
00047 Q_OBJECT
00048 Q_DISABLE_COPY(PendingChannel)
00049
00050 public:
00051 ~PendingChannel();
00052
00053 Connection *connection() const;
00054
00055 bool yours() const;
00056
00057 const QString &channelType() const;
00058
00059 uint handleType() const;
00060
00061 uint handle() const;
00062
00063 QVariantMap immutableProperties() const;
00064
00065 QSharedPointer<Channel> channel() const;
00066
00067 private Q_SLOTS:
00068 void onCallCreateChannelFinished(QDBusPendingCallWatcher *watcher);
00069 void onCallEnsureChannelFinished(QDBusPendingCallWatcher *watcher);
00070
00071 private:
00072 friend class Connection;
00073
00074 PendingChannel(Connection *connection,
00075 const QString &errorName, const QString &errorMessage);
00076 PendingChannel(Connection *connection,
00077 const QVariantMap &request, bool create);
00078
00079 struct Private;
00080 friend struct Private;
00081 Private *mPriv;
00082 };
00083
00084 }
00085 }
00086
00087 #endif