Home · All Classes · All Namespaces · Modules · Functions · Files
Public Slots | Signals | Public Member Functions | List of all members
Tp::Service::ConnectionManagerAdaptor Class Reference

#include <TelepathyQt/_gen/svc-connection-manager.h>

Inherits Tp::AbstractAdaptor.

Public Slots

Tp::ParamSpecList GetParameters (const QString &protocol, const QDBusMessage &dbusMessage)
 
QStringList ListProtocols (const QDBusMessage &dbusMessage)
 
QString RequestConnection (const QString &protocol, const QVariantMap &parameters, const QDBusMessage &dbusMessage, QDBusObjectPath &objectPath)
 

Signals

void NewConnection (const QString &busName, const QDBusObjectPath &objectPath, const QString &protocol)
 

Public Member Functions

Tp::ProtocolPropertiesMap Protocols () const
 
QStringList Interfaces () const
 
- Public Member Functions inherited from Tp::AbstractAdaptor
 AbstractAdaptor (const QDBusConnection &connection, QObject *adaptee, QObject *parent)
 
 ~AbstractAdaptor ()
 
QDBusConnection dbusConnection () const
 
QObject * adaptee () const
 

Detailed Description

Adaptor class providing a 1:1 mapping of the D-Bus interface "org.freedesktop.Telepathy.ConnectionManager".

Member Function Documentation

Tp::ProtocolPropertiesMap Tp::Service::ConnectionManagerAdaptor::Protocols ( ) const

Return the value of the exported D-Bus object property Protocols of type Tp::ProtocolPropertiesMap.

Adaptees should export this property as a Qt property named 'protocols' with type Tp::ProtocolPropertiesMap.

A map from protocol identifiers supported by this connection manager to the immutable properties of the corresponding ProtocolInterface objects.

Providing the immutable properties here means that when the API of Protocol objects has been finalized, most clients will only need one D-Bus round trip to interrogate the ConnectionManager about all its protocols.

If this map is empty or missing, clients SHOULD fall back to calling ListProtocols() and GetParameters() .

Returns
The value of exported property Protocols.
QStringList Tp::Service::ConnectionManagerAdaptor::Interfaces ( ) const

Return the value of the exported D-Bus object property Interfaces of type QStringList.

Adaptees should export this property as a Qt property named 'interfaces' with type QStringList.

A list of the extra interfaces provided by this connection manager (i.e. extra functionality that can be provided even before a connection has been created).

No interfaces suitable for listing in this property are currently defined; it's provided as a hook for possible future functionality.

To be compatible with older connection managers, if retrieving this property fails, clients SHOULD assume that its value is an empty list.

Connection managers with a non-empty list of Interfaces MUST represent them in the .manager file, if they have one, as an Interfaces key in the group headed [ConnectionManager], whose value is a list of strings each followed by a semicolon.

Returns
The value of exported property Interfaces.
Tp::ParamSpecList Tp::Service::ConnectionManagerAdaptor::GetParameters ( const QString &  protocol,
const QDBusMessage &  dbusMessage 
)
slot

Begins a call to the exported D-Bus method GetParameters on this object.

Adaptees should export this method as a Qt slot with the following signature: void getParameters(const QString& protocol, const Tp::Service::ConnectionManagerAdaptor::GetParametersContextPtr &context);

Implementations should call MethodInvocationContext::setFinished (or setFinishedWithError accordingly) on the received context object once the method has finished processing.

Get a list of the parameters which may be specified in the Parameters of an Account (or, for specialised applications which do not use the account manager, passed to RequestConnection). Some parameters are mandatory, and some parameters only make sense when registering new accounts with the server; see the Param_Spec documentation for more details.

Parameters
protocol
The required protocol name
Returns

An array of structs representing possible parameters.

QStringList Tp::Service::ConnectionManagerAdaptor::ListProtocols ( const QDBusMessage &  dbusMessage)
slot

Begins a call to the exported D-Bus method ListProtocols on this object.

Adaptees should export this method as a Qt slot with the following signature: void listProtocols(const Tp::Service::ConnectionManagerAdaptor::ListProtocolsContextPtr &context);

Implementations should call MethodInvocationContext::setFinished (or setFinishedWithError accordingly) on the received context object once the method has finished processing.

Get a list of protocol identifiers that are implemented by this connection manager.

Returns
The keys of the Protocols map.
QString Tp::Service::ConnectionManagerAdaptor::RequestConnection ( const QString &  protocol,
const QVariantMap &  parameters,
const QDBusMessage &  dbusMessage,
QDBusObjectPath &  objectPath 
)
slot

Begins a call to the exported D-Bus method RequestConnection on this object.

Adaptees should export this method as a Qt slot with the following signature: void requestConnection(const QString& protocol, const QVariantMap& parameters, const Tp::Service::ConnectionManagerAdaptor::RequestConnectionContextPtr &context);

Implementations should call MethodInvocationContext::setFinished (or setFinishedWithError accordingly) on the received context object once the method has finished processing.

Request a ConnectionInterface object representing a given account on a given protocol with the given parameters. The method returns the bus name and the object path where the new Connection object can be found, which should have the status of Connection_Status_Disconnected, to allow signal handlers to be attached before connecting is started with the ConnectionInterface::Connect() method.

Most applications should not use this method: they should instead use the the AccountInterface::Connection property on an AccountInterface object obtained from the AccountManagerInterface . This method is used internally by the account manager to create connections when needed.

The parameters which must and may be provided in the parameters dictionary can be discovered with the GetParameters() method. These parameters, their types, and their default values may be cached in files so that all available connection managers do not need to be started to discover which protocols are available.

To request values for these parameters from the user, a client must have prior knowledge of the meaning of the parameter names, so the well-known names and types defined by the Connection_Parameter_Name type should be used where appropriate.

Connection manager authors SHOULD avoid introducing parameters whose default values would not be serializable in a .manager file.

The same serialization format is used in Mission Control to store accounts.

Every successful RequestConnection call will cause the emission of a NewConnection() signal for the same newly created connection. The requester can use the returned object path and service name independently of the emission of that signal. In that case this signal emission is most useful for, e.g. other processes that are monitoring the creation of new connections.

Parameters
protocol
The protocol identifier
parameters
A dictionary mapping parameter names to values of the appropriate 
type, as indicated by GetParameters and the well-known list of 
names and value types documented on the Connection_Parameter_Name 
type.
objectPathOutput parameter
The D-Bus object path to the Connection on this service
Returns
A D-Bus service name where the new Connection object can be found
void Tp::Service::ConnectionManagerAdaptor::NewConnection ( const QString &  busName,
const QDBusObjectPath &  objectPath,
const QString &  protocol 
)
signal

Represents the exported D-Bus signal NewConnection on this object.

Adaptees should export this signal as a Qt signal with the following signature: void newConnection(const QString& busName, const QDBusObjectPath& objectPath, const QString& protocol);

The adaptee signal will be automatically relayed as a D-Bus signal once emitted.

Parameters
busName
The D-Bus service where the connection object can be found
objectPath
The object path of the Connection object on this service
protocol
The identifier for the protocol this connection uses


Copyright © 2008-2011 Collabora Ltd. and Nokia Corporation
Telepathy-Qt 0.9.7