Home · Modules · All Classes · All Namespaces
connection-lowlevel.h
1 
23 #ifndef _TelepathyQt_connection_lowlevel_h_HEADER_GUARD_
24 #define _TelepathyQt_connection_lowlevel_h_HEADER_GUARD_
25 
26 #ifndef IN_TP_QT_HEADER
27 #error IN_TP_QT_HEADER
28 #endif
29 
30 #include <TelepathyQt/Constants>
31 #include <TelepathyQt/Types>
32 
33 namespace Tp
34 {
35 
36 class Connection;
37 class PendingChannel;
38 class PendingContactAttributes;
39 class PendingHandles;
40 class PendingOperation;
41 class PendingReady;
42 
43 class TP_QT_EXPORT ConnectionLowlevel : public QObject, public RefCounted
44 {
45  Q_OBJECT
46  Q_DISABLE_COPY(ConnectionLowlevel)
47 
48 public:
50 
51  bool isValid() const;
52  ConnectionPtr connection() const;
53 
54  PendingReady *requestConnect(const Features &requestedFeatures = Features());
55  PendingOperation *requestDisconnect();
56 
57  SimpleStatusSpecMap allowedPresenceStatuses() const;
58  uint maxPresenceStatusMessageLength() const;
59 
60  PendingOperation *setSelfPresence(const QString &status, const QString &statusMessage);
61 
62  PendingChannel *createChannel(const QVariantMap &request);
63  PendingChannel *createChannel(const QVariantMap &request, int timeout);
64  PendingChannel *ensureChannel(const QVariantMap &request);
65  PendingChannel *ensureChannel(const QVariantMap &request, int timeout);
66 
67  PendingHandles *requestHandles(HandleType handleType, const QStringList &names);
68  PendingHandles *referenceHandles(HandleType handleType, const UIntList &handles);
69 
70  PendingContactAttributes *contactAttributes(const UIntList &handles,
71  const QStringList &interfaces, bool reference = true);
72  QStringList contactAttributeInterfaces() const;
73 
74  void injectContactIds(const HandleIdentifierMap &contactIds);
75  void injectContactId(uint handle, const QString &contactId);
76 
77 private:
78  friend class Connection;
79  friend class ContactManager;
80  friend class PendingContacts;
81 
82  TP_QT_NO_EXPORT ConnectionLowlevel(Connection *parent);
83 
84  TP_QT_NO_EXPORT bool hasImmortalHandles() const;
85 
86  TP_QT_NO_EXPORT bool hasContactId(uint handle) const;
87  TP_QT_NO_EXPORT QString contactId(uint handle) const;
88 
89  struct Private;
90  friend struct Private;
91  Private *mPriv;
92 };
93 
94 } // Tp
95 
96 #endif
The PendingHandles class represents the parameters of and the reply to an asynchronous handle request...
Definition: pending-handles.h:46
The ContactManager class is responsible for managing contacts.
Definition: contact-manager.h:50
The PendingReady class represents the features requested and the reply to a request for an object to ...
Definition: pending-ready.h:40
Definition: build/TelepathyQt/_gen/types.h:109
Definition: build/TelepathyQt/_gen/types.h:3903
The ConnectionLowlevel class extends Connection with support to low-level features.
Definition: connection-lowlevel.h:43
The PendingContacts class is used by ContactManager when creating/updating Contact objects.
Definition: pending-contacts.h:46
The Connection class represents a Telepathy connection.
Definition: connection.h:61
The PendingChannel class represents the parameters of and the reply to an asynchronous channel reques...
Definition: pending-channel.h:44
The RefCounted class is a base class for shared objects used by SharedPtr.
Definition: shared-ptr.h:42
HandleType
Definition: build/TelepathyQt/_gen/constants.h:1375
The Features class represents a list of Feature.
Definition: feature.h:61
Definition: build/TelepathyQt/_gen/types.h:1677
The PendingContactAttributes class represents the parameters of and the reply to an asynchronous requ...
Definition: pending-contact-attributes.h:40
Definition: abstract-adaptor.cpp:31
The PendingOperation class is a base class for pending asynchronous operations.
Definition: pending-operation.h:45