Home · Modules · All Classes · All Namespaces
Public Slots | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
Tp::Client::ConnectionInterfaceContactsInterface Class Reference

#include <TelepathyQt/Connection>

Inheritance diagram for Tp::Client::ConnectionInterfaceContactsInterface:
Inheritance graph
[legend]

Public Slots

QDBusPendingReply< Tp::ContactAttributesMapGetContactAttributes (const Tp::UIntList &handles, const QStringList &interfaces, bool hold, int timeout=-1)
 
QDBusPendingReply< uint, QVariantMap > GetContactByID (const QString &identifier, const QStringList &interfaces, int timeout=-1)
 

Public Member Functions

 ConnectionInterfaceContactsInterface (const QString &busName, const QString &objectPath, QObject *parent=0)
 
 ConnectionInterfaceContactsInterface (const QDBusConnection &connection, const QString &busName, const QString &objectPath, QObject *parent=0)
 
 ConnectionInterfaceContactsInterface (Tp::DBusProxy *proxy)
 
 ConnectionInterfaceContactsInterface (const Tp::Client::ConnectionInterface &mainInterface)
 
 ConnectionInterfaceContactsInterface (const Tp::Client::ConnectionInterface &mainInterface, QObject *parent)
 
Tp::PendingVariantrequestPropertyContactAttributeInterfaces () const
 
Tp::PendingVariantMaprequestAllProperties () const
 
- Public Member Functions inherited from Tp::AbstractInterface
virtual ~AbstractInterface ()
 
bool isValid () const
 
QString invalidationReason () const
 
QString invalidationMessage () const
 
void setMonitorProperties (bool monitorProperties)
 
bool isMonitoringProperties () const
 

Static Public Member Functions

static QLatin1String staticInterfaceName ()
 

Protected Member Functions

virtual void invalidate (Tp::DBusProxy *, const QString &, const QString &)
 
- Protected Member Functions inherited from Tp::AbstractInterface
 AbstractInterface (DBusProxy *proxy, const QLatin1String &interface)
 
 AbstractInterface (const QString &busName, const QString &path, const QLatin1String &interface, const QDBusConnection &connection, QObject *parent)
 
PendingVariantinternalRequestProperty (const QString &name) const
 
PendingOperationinternalSetProperty (const QString &name, const QVariant &newValue)
 
PendingVariantMapinternalRequestAllProperties () const
 

Additional Inherited Members

- Signals inherited from Tp::AbstractInterface
void propertiesChanged (const QVariantMap &changedProperties, const QStringList &invalidatedProperties)
 
- Protected Slots inherited from Tp::AbstractInterface

Detailed Description

Proxy class providing a 1:1 mapping of the D-Bus interface "org.freedesktop.Telepathy.Connection.Interface.Contacts".

Constructor & Destructor Documentation

◆ ConnectionInterfaceContactsInterface() [1/5]

Tp::Client::ConnectionInterfaceContactsInterface::ConnectionInterfaceContactsInterface ( const QString &  busName,
const QString &  objectPath,
QObject *  parent = 0 
)

Creates a ConnectionInterfaceContactsInterface associated with the given object on the session bus.

Parameters
busNameName of the service the object is on.
objectPathPath to the object on the service.
parentPassed to the parent class constructor.

◆ ConnectionInterfaceContactsInterface() [2/5]

Tp::Client::ConnectionInterfaceContactsInterface::ConnectionInterfaceContactsInterface ( const QDBusConnection &  connection,
const QString &  busName,
const QString &  objectPath,
QObject *  parent = 0 
)

Creates a ConnectionInterfaceContactsInterface associated with the given object on the given bus.

Parameters
connectionThe bus via which the object can be reached.
busNameName of the service the object is on.
objectPathPath to the object on the service.
parentPassed to the parent class constructor.

◆ ConnectionInterfaceContactsInterface() [3/5]

Tp::Client::ConnectionInterfaceContactsInterface::ConnectionInterfaceContactsInterface ( Tp::DBusProxy proxy)

Creates a ConnectionInterfaceContactsInterface associated with the same object as the given proxy.

Parameters
proxyThe proxy to use. It will also be the QObject::parent() for this object.

◆ ConnectionInterfaceContactsInterface() [4/5]

Tp::Client::ConnectionInterfaceContactsInterface::ConnectionInterfaceContactsInterface ( const Tp::Client::ConnectionInterface mainInterface)
explicit

Creates a ConnectionInterfaceContactsInterface associated with the same object as the given proxy. Additionally, the created proxy will have the same parent as the given proxy.

Parameters
mainInterfaceThe proxy to use.

◆ ConnectionInterfaceContactsInterface() [5/5]

Tp::Client::ConnectionInterfaceContactsInterface::ConnectionInterfaceContactsInterface ( const Tp::Client::ConnectionInterface mainInterface,
QObject *  parent 
)

Creates a ConnectionInterfaceContactsInterface associated with the same object as the given proxy. However, a different parent object can be specified.

Parameters
mainInterfaceThe proxy to use.
parentPassed to the parent class constructor.

Member Function Documentation

◆ staticInterfaceName()

static QLatin1String Tp::Client::ConnectionInterfaceContactsInterface::staticInterfaceName ( )
inlinestatic

Returns the name of the interface "org.freedesktop.Telepathy.Connection.Interface.Contacts", which this class represents.

Returns
The D-Bus interface name.

◆ requestPropertyContactAttributeInterfaces()

Tp::PendingVariant* Tp::Client::ConnectionInterfaceContactsInterface::requestPropertyContactAttributeInterfaces ( ) const
inline

Asynchronous getter for the remote object property ContactAttributeInterfaces of type QStringList.

A list of D-Bus interfaces for which GetContactAttributes is expected to work. This cannot change during the lifetime of the Connection.

Returns
A pending variant which will emit finished when the property has been retrieved.

◆ requestAllProperties()

Tp::PendingVariantMap* Tp::Client::ConnectionInterfaceContactsInterface::requestAllProperties ( ) const
inline

Request all of the DBus properties on the interface.

Returns
A pending variant map which will emit finished when the properties have been retrieved.

◆ GetContactAttributes

QDBusPendingReply<Tp::ContactAttributesMap> Tp::Client::ConnectionInterfaceContactsInterface::GetContactAttributes ( const Tp::UIntList handles,
const QStringList &  interfaces,
bool  hold,
int  timeout = -1 
)
inlineslot

Begins a call to the D-Bus method GetContactAttributes on the remote object.

Return any number of contact attributes for the given handles.

Note that timeout is ignored as of now. It will be used once http://bugreports.qt.nokia.com/browse/QTBUG-11775 is fixed.

Parameters
handles
An array of handles representing contacts.
interfaces
\htmlonly
<p>A list of strings indicating which D-Bus interfaces the calling
  process is interested in. All supported attributes from these
  interfaces, whose values can be obtained without additional network
  activity, will be in the reply.</p>

<p>Connection managers SHOULD ignore interfaces requested which they
  do not support (i.e. those not mentioned in the
   \endhtmlonly \link requestPropertyContactAttributeInterfaces() ContactAttributeInterfaces \endlink \htmlonly 
  property.)</p>

<div class="rationale">
  <p>This simplifies client-side code. Clients which care may
    distinguish between unsupported interfaces (e.g. this Connection
    does not support Avatars), and interfaces on which no information
    is known for these contacts (e.g. we don't know the avatar tokens
    of any of the contacts, so we omitted them all) by inspecting
     \endhtmlonly \link requestPropertyContactAttributeInterfaces() ContactAttributeInterfaces \endlink \htmlonly .</p>
</div>

<p>Attributes from the interface
   \endhtmlonly ConnectionInterface \htmlonly 
  are always returned, and need not be requested explicitly.</p>

<p>As well as returning cached information immediately, the
  connection MAY start asynchronous requests to obtain better
  values for the contact attributes. If better values are later
  obtained by this process, they will be indicated with the usual
  signals (such as  \endhtmlonly ConnectionInterfaceAliasingInterface::AliasesChanged() \htmlonly ).</p>

<div class="rationale">
  For instance, an XMPP connection manager could download vCards
  in response to a request for  \endhtmlonly ConnectionInterfaceAliasingInterface \htmlonly 
  attributes.
</div>
\endhtmlonly
hold
\htmlonly
<p>If true, all handles that appear as keys in the result have been
  held on behalf of the calling process, as if by a call to
   \endhtmlonly ConnectionInterface::HoldHandles() \htmlonly .
  (If  \endhtmlonly \link ConnectionInterface::requestPropertyHasImmortalHandles() ConnectionInterface::HasImmortalHandles \endlink \htmlonly  is true, which SHOULD be the
  case in all new connection managers, this has no effect.)</p>

<div class="rationale">
  <p>For further round-trip avoidance.</p>
</div>
\endhtmlonly
timeoutThe timeout in milliseconds.
Returns
\htmlonly
<p>A dictionary mapping the contact handles to contact attributes.
  If any of the requested handles are in fact invalid, they are
  simply omitted from this mapping. If contact attributes are not
  immediately known, the behaviour is defined by the interface;
  the attribute should either be omitted from the result or
  replaced with a default value.</p>

<p>Each contact's attributes will always include at least the
  identifier that would be obtained by inspecting the handle
  (<code>org.freedesktop.Telepathy.Connection/contact-id</code>).</p>
\endhtmlonly

◆ GetContactByID

QDBusPendingReply<uint, QVariantMap> Tp::Client::ConnectionInterfaceContactsInterface::GetContactByID ( const QString &  identifier,
const QStringList &  interfaces,
int  timeout = -1 
)
inlineslot

Begins a call to the D-Bus method GetContactByID on the remote object.

Return any number of contact attributes for the given identifier. This is for a single identifier to make it simpler to use for the most common use case. For multiple contacts case, GetContactAttributes should be used.

Note that timeout is ignored as of now. It will be used once http://bugreports.qt.nokia.com/browse/QTBUG-11775 is fixed.

Parameters
identifier
An identifier representing a contact.
interfaces
\htmlonly
<p>A list of strings indicating which D-Bus interfaces the calling
  process is interested in. All supported attributes from these
  interfaces, whose values can be obtained without additional network
  activity, will be in the reply.</p>
<p>See  \endhtmlonly GetContactAttributes() \htmlonly  for
  details.</p>
\endhtmlonly
timeoutThe timeout in milliseconds.
Returns
\htmlonly
<p>The contact's handle, as returned by  \endhtmlonly ConnectionInterface::RequestHandles() \htmlonly </p>
\endhtmlonly
\htmlonly
<p>All supported attributes of the contact on
  the given interfaces that can be returned without network
  round-trips. If contact attributes are not immediately known, the
  behaviour is defined by the interface; the attribute should either
  be omitted from the result or replaced with a default value.</p>

<p>The contact's attributes will always include at least the
  identifier that would be obtained by inspecting the handle
  (<code>org.freedesktop.Telepathy.Connection/contact-id</code>).</p>
\endhtmlonly

◆ invalidate()

void Tp::Client::ConnectionInterfaceContactsInterface::invalidate ( Tp::DBusProxy proxy,
const QString &  error,
const QString &  message 
)
protectedvirtual

Reimplemented from Tp::AbstractInterface.