Home · Modules · All Classes · All Namespaces
dbus-tube-channel.h
1 
22 #ifndef _TelepathyQt_dbus_tube_channel_h_HEADER_GUARD_
23 #define _TelepathyQt_dbus_tube_channel_h_HEADER_GUARD_
24 
25 #ifndef IN_TP_QT_HEADER
26 #error IN_TP_QT_HEADER
27 #endif
28 
29 #include <TelepathyQt/TubeChannel>
30 
31 namespace Tp
32 {
33 
34 class TP_QT_EXPORT DBusTubeChannel : public TubeChannel
35 {
36  Q_OBJECT
37  Q_DISABLE_COPY(DBusTubeChannel)
38 
39 public:
40  static const Feature FeatureCore;
42 
43  static DBusTubeChannelPtr create(const ConnectionPtr &connection,
44  const QString &objectPath, const QVariantMap &immutableProperties);
45 
46  virtual ~DBusTubeChannel();
47 
48  QString serviceName() const;
49 
50  bool supportsRestrictingToCurrentUser() const;
51 
52  QHash<QString, Tp::ContactPtr> contactsForBusNames() const;
53 
54  QString address() const;
55 
56 protected:
57  DBusTubeChannel(const ConnectionPtr &connection, const QString &objectPath,
58  const QVariantMap &immutableProperties);
59 
60 Q_SIGNALS:
61  void busNameAdded(const QString &busName, const Tp::ContactPtr &contact);
62  void busNameRemoved(const QString &busName, const Tp::ContactPtr &contact);
63 
64 private Q_SLOTS:
65  TP_QT_NO_EXPORT void onRequestAllPropertiesFinished(Tp::PendingOperation*);
66  TP_QT_NO_EXPORT void onRequestPropertyDBusNamesFinished(Tp::PendingOperation *op);
67  TP_QT_NO_EXPORT void onDBusNamesChanged(const Tp::DBusTubeParticipants &added, const Tp::UIntList &removed);
68  TP_QT_NO_EXPORT void onContactsRetrieved(const QUuid &uuid, const QList<Tp::ContactPtr> &contacts);
69  TP_QT_NO_EXPORT void onQueueCompleted();
70 
71 private:
72  TP_QT_NO_EXPORT void setAddress(const QString &address);
73 
74  struct Private;
75  friend struct PendingDBusTubeConnection;
76  friend struct Private;
77  Private *mPriv;
78 
79 };
80 
81 } // Tp
82 
83 #endif
Definition: build/TelepathyQt/_gen/types.h:109
static const Feature FeatureBusNameMonitoring
Definition: dbus-tube-channel.h:41
static const Feature FeatureCore
Definition: dbus-tube-channel.h:40
The Feature class represents a feature that can be enabled on demand.
Definition: feature.h:41
Definition: build/TelepathyQt/_gen/types.h:1473
The TubeChannel class is a base class for all tube types.
Definition: tube-channel.h:34
The DBusTubeChannel class represents a Telepathy channel of type DBusTube.
Definition: dbus-tube-channel.h:34
Definition: pending-dbus-tube-connection.h:36
Definition: abstract-adaptor.cpp:31
The PendingOperation class is a base class for pending asynchronous operations.
Definition: pending-operation.h:45