| Home · All Classes · All Namespaces · Modules · Functions · Files

# ConnectionInterfaceContactCapabilitiesInterface Class Reference
[Connection proxies]

`#include <TelepathyQt4/Connection>`

Inherits Tp::AbstractInterface.

List of all members.

## Public Slots

- QDBusPendingReply UpdateCapabilities (const Tp::HandlerCapabilitiesList &handlerCapabilities)
- QDBusPendingReply
  < Tp::ContactCapabilitiesMap > GetContactCapabilities (const Tp::UIntList &handles)

## Signals

- void ContactCapabilitiesChanged (const Tp::ContactCapabilitiesMap &caps)

## Public Member Functions

- ConnectionInterfaceContactCapabilitiesInterface (const QString &busName, const QString &objectPath, QObject *parent=0)
- ConnectionInterfaceContactCapabilitiesInterface (const QDBusConnection &connection, const QString &busName, const QString &objectPath, QObject *parent=0)
- ConnectionInterfaceContactCapabilitiesInterface (Tp::DBusProxy *proxy)
- ConnectionInterfaceContactCapabilitiesInterface (const Tp::Client::ConnectionInterface &mainInterface)
- ConnectionInterfaceContactCapabilitiesInterface (const Tp::Client::ConnectionInterface &mainInterface, QObject *parent)

## Static Public Member Functions

- static const char * staticInterfaceName ()

## Protected Member Functions

- virtual void invalidate (Tp::DBusProxy *, const QString &, const QString &)

## Detailed Description

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

## Constructor & Destructor Documentation

ConnectionInterfaceContactCapabilitiesInterface | ( | const QString & | busName,
|  | const QString & | objectPath,
|  | QObject * | parent = `0` |
| ) |  |  |

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

Parameters:

  | busName | Name of the service the object is on.
  | objectPath | Path to the object on the service.
  | parent | Passed to the parent class constructor.

ConnectionInterfaceContactCapabilitiesInterface | ( | const QDBusConnection & | connection,
|  | const QString & | busName,
|  | const QString & | objectPath,
|  | QObject * | parent = `0` |
| ) |  |  |

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

Parameters:

  | connection | The bus via which the object can be reached.
  | busName | Name of the service the object is on.
  | objectPath | Path to the object on the service.
  | parent | Passed to the parent class constructor.

ConnectionInterfaceContactCapabilitiesInterface | ( | Tp::DBusProxy * | proxy | ) |

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

Parameters:

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

ConnectionInterfaceContactCapabilitiesInterface | ( | const Tp::Client::ConnectionInterface & | mainInterface | ) | `[explicit]`

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

Parameters:

  | mainInterface | The proxy to use.

ConnectionInterfaceContactCapabilitiesInterface | ( | const Tp::Client::ConnectionInterface & | mainInterface,
|  | QObject * | parent |
| ) |  |  |

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

Parameters:

  | mainInterface | The proxy to use.
  | parent | Passed to the parent class constructor.

## Member Function Documentation

static const char* staticInterfaceName | ( |  | ) | `[inline, static]`

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

Returns:
  The D-Bus interface name.

QDBusPendingReply UpdateCapabilities | ( | const Tp::HandlerCapabilitiesList & | handlerCapabilities | ) | `[inline, slot]`

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

Alter the connection's advertised capabilities to include the intersection of the given clients' capabilities with what the connection manager is able to implement.

On connections managed by the ChannelDispatcher, processes other than the ChannelDispatcher SHOULD NOT call this method, and the ChannelDispatcher SHOULD use this method to advertise the capabilities of all the registered <tp:dbus-ref namespace="org.freedesktop.Telepathy">Client.Handler</tp:dbus-ref> implementations.On connections not managed by the ChannelDispatcher, clients MAY use this method directly, to indicate the channels they will handle and the extra capabilities they have.

Upon a successful invocation of this method, the connection manager will only emit the <tp:member-ref>ContactCapabilitiesChanged</tp:member-ref> signal for the user's <tp:dbus-ref namespace="org.freedesktop.Telepathy.Connection">SelfHandle</tp:dbus-ref> if, in the underlying protocol, the new capabilities are distinct from the previous state.

<tp:rationale>

The connection manager will essentially intersect the provided capabilities and the channel classes it implements. Therefore, certain properties which are never fixed for a channel class (such as the target handle, or the Parameters property of a tube channel) will almost certainly not be advertised. </tp:rationale>

This method MAY be called on a newly-created connection while it is still in the DISCONNECTED state, to request that when the connection connects, it will do so with the appropriate capabilities. Doing so MUST NOT fail.

Parameters:

  handlerCapabilities

  The capabilities of one or more clients. For each client in the given list, any capabilities previously advertised for the same client name are discarded, then replaced by the capabilities indicated. As a result, if a client becomes unavailable, this method SHOULD be called with a Handler_Capabilities structure containing its name, an empty list of channel classes, and an empty list of capabilities. When this is done, the connection manager SHOULD free all memory associated with that client name. This method takes a list of clients so that when the channel dispatcher first calls it (with a list of all the Handlers that are initially available), the changes can be made atomically, with only one transmission of updated capabilities to the network. Afterwards, the channel dispatcher will call this method with a single-element list every time a Handler becomes available or unavailable. The connection manager MUST ignore any channel classes and client capabilities for which there is no representation in the protocol or no support in the connection manager.

QDBusPendingReply<Tp::ContactCapabilitiesMap> GetContactCapabilities | ( | const Tp::UIntList & | handles | ) | `[inline, slot]`

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

Returns an array of enhanced capabilities for the given contact handles.

Parameters:

  | handles |

An array of contact handles for this connection.

The handle zero MUST NOT be included in the request.

Returns:

An array of structures containing:

- a dictionary mapping the channel properties to their values.
- an array of additional allowed properties

void ContactCapabilitiesChanged | ( | const Tp::ContactCapabilitiesMap & | caps | ) | `[signal]`

Represents the signal "ContactCapabilitiesChanged" on the remote object.

Announce that there has been a change of capabilities on the given handles. A single signal can be emitted for several contacts.

<tp:rationale>

The underlying protocol can get several contacts' capabilities at the same time. </tp:rationale>

Parameters:

  | caps | All the capabilities of the contacts

virtual void invalidate | ( | Tp::DBusProxy * | ,
|  | const QString & | ,
|  | const QString & |  |
| ) |  |  | `[protected, virtual]`